This is a log of my day-to-day technical learning and experience
Got Raspberry Pi up and running Raspbian OS. Installed GPIO libraries for python scripting on RPI. Installed PROCESSING IDE on RPI. Faced problem with Java in "processing" installation and got it fixed with the guidance from this link
http://cagewebdev.com/index.php/raspberry-pi-running-processing-on-your-raspi/
http://cagewebdev.com/index.php/raspberry-pi-running-processing-on-your-raspi/
Implemented third order IIR digital low pass filter on MSP430G2553 and bench marked it with the implementation in MATLAB. Learnt how to convert design of a filter from analog to digital domain. Used Energia IDE for MSP430 on MSP430 launchpad. Presented the same in my college. An easy tool for programming MSP430 is here http://www.energia.nu/
Developed a system for monitoring athletes' physical parameters like temperature, skin resistance and pulse rate and observe it live on android mobile with wireless connectivity between the system and android mobile. An excellent tool for developing android apps in minutes is ANDROID APP INVENTOR. One does not need to be a java expert to develop apps with this tool.
Installed OPENCV (a library for image processing) on RPI with PROCESSING as IDE and developed a blob detection algorithms for digital images. This could detect all visibly distinct parts of the image and print them as a binary image. Go to my blog for more details.
Integrated pi4j library into processing IDE on RPi for controlling/accessing GPIO pins through front end java applications on RPI, opening doors for rapid integrated development of front end software and hardware control. For details check blog.
Developed applications for RPi on Simulink 2013a and had it run on RPi through TCP/IP link between host PC and RPi in peer-to-peer communication mode. Felt like a rapid development route for RPi applications, including audio and video processing. The setup demanded a compatible version of Raspbian wheezy to be running on RPi. For details, check blog page.
Best moments of my life..!! Sat inside the cockpit of HAWK fighter jet in HAL, Bangalore to study the electronics control inside it. Simple "THE' most exciting moments of my life..!
Installed RASPBIAN WHEEZY on Raspberry Pi. Removed Python and other unwanted games. Installed libre office suite and VLC media player. Overclocked to 800MHz. And guess what??! I got my TV converted into a light weight computer to do some paper work, accounts, watch movies, listen to audio and surf the internet, all sitting back on my sofa..!!
Demonstratively learnt to assign static IP address in Linux using commands on raspberry pi. The network interfaces file is to be edited for achieving that. The following command will open the network interfaces file. sudo nano /etc/network/interfaces. Then replace "iface eth0 inet dhcp" with
iface eth0 inet static
address 192.168.1.10
netmask 255.255.255.0
gateway 192.168.1.1
network 192.168.1.0PI
broadcast 192.168.1.255
The IP address can be of your choice. DO NOT FORGET TO REBOOT THE SYSTEM FOR CHANGES TO TAKE PLACE.
iface eth0 inet static
address 192.168.1.10
netmask 255.255.255.0
gateway 192.168.1.1
network 192.168.1.0PI
broadcast 192.168.1.255
The IP address can be of your choice. DO NOT FORGET TO REBOOT THE SYSTEM FOR CHANGES TO TAKE PLACE.
Started playing with multiple threads on a multi core processing platform with POSIX threads. It is now easy to understand the way multi core processors work. It is now realized how threads are to be generated generically keeping in mind the fure of multi core processing. May be I'm very very late to appreciate. "Better late than never". The idea of using multiple cores on single semiconductor die, instead of increasing the clock frequency of a single core, so as to avoid more power consumption and high heat dissipation is really working good. Let me see is a raspberry pi addict like me can play with threads on RPI. Tools used for the game are: Ubuntu as OS, with GCC compiler, running on my dual core Intel Core i5 PC.
Had to do lots of hardware and software tweaks to make a portable computer out of raspberry pi. Things that were done....
1. Car reverse parking display (works on RCA) was opened up to make it work on 5V. (The power connector in it accepts nothing less than 12V ). The display was fed with 5V from the GPIO pins of RPI.
2. Audio amplifier system that draws power from the GPIO pins was also integrated.
3. A plastic box was tortured with slits and slots here and there to fit the connectors of RPI.
And at last, it works on a SINGLE 5V 2000mA POWER SUPPLY..!!
1. Car reverse parking display (works on RCA) was opened up to make it work on 5V. (The power connector in it accepts nothing less than 12V ). The display was fed with 5V from the GPIO pins of RPI.
2. Audio amplifier system that draws power from the GPIO pins was also integrated.
3. A plastic box was tortured with slits and slots here and there to fit the connectors of RPI.
And at last, it works on a SINGLE 5V 2000mA POWER SUPPLY..!!
Installed VNC server on Raspberry Pi and now its so cool to access RPI's desktop remotely on my Laptop's desktop. RPI and my laptop are connected to the same router.
Use command sudo apt-get install tightvncserver to install the VNC server on RPI. Then use any freely available VNC viewer on any PC connected to the same access point to view RPIs desktop. You need to know the IP address of RPI for this. It will be a smart move if RPI's IP address is made static, so that you need not check the IP address every time you boot the PI.
Use command sudo apt-get install tightvncserver to install the VNC server on RPI. Then use any freely available VNC viewer on any PC connected to the same access point to view RPIs desktop. You need to know the IP address of RPI for this. It will be a smart move if RPI's IP address is made static, so that you need not check the IP address every time you boot the PI.
Developed a simple algorithm for quadrotor so that it takes the nearest position in the list of possible positions in air, already fed to it.
Coding - C programming language
Target - Arduino Mega 2560
Coding - C programming language
Target - Arduino Mega 2560
Used Python's SMTP library for Raspberry Pi and coded a python script that would send a mail on pressing a button.
Find the python script on my blog post here
Opening new doors for physical computing with internet interaction...!!
Find the python script on my blog post here
Opening new doors for physical computing with internet interaction...!!
Coded a sketch for arduino that will use the ethernet shield to communicate to xively page and upload the temperature, relative humidity and ambient noise level in a room. The statistics can be seen live on xively and graphs can be plotted for reference. Sensors used are DS18B20 for temperature sensing, DHT11 for relative humidity measurement.
Used GSPREAD library of python on raspberry pi to build an electronic shelf label, that displays the shelf label electronically on an LCD display. The library has rich set of APIs to interact with Google spreadsheet by sending and getting data from it. The library is so flexible that the APIs allow the programmer to access each worksheet and even by cell index. Thus the script was developed to read from Google spread sheet and print the same on LCD..!
Conceptualized and designed a coffee sugar syrup dispensing machine using Arduino and four illuminated buttons.
Button 1: Click - 1/2 sugar
Button 2: Click - 1 sugar, double click - 2 sugar
Button 3: Click - 2 sugar, double click - 4 sugar
Button 4: Click - 3 sugar, double click - 6 sugar
Triple click on any button would stop sugar flow from the pump. Used Arduino, 5V relay and 12V DC pump for the setup.
Button 1: Click - 1/2 sugar
Button 2: Click - 1 sugar, double click - 2 sugar
Button 3: Click - 2 sugar, double click - 4 sugar
Button 4: Click - 3 sugar, double click - 6 sugar
Triple click on any button would stop sugar flow from the pump. Used Arduino, 5V relay and 12V DC pump for the setup.
Used Processing IDE and Arduino IDE to develop a medical parameter data logging and plotting system with Cooking Hacks' E-Health Sensor Kit. Challenges were encountered while interfacing the real time system (Sensor + Arduino) with the non real time system (the PC). Use of libraries like G4P and Grafica in Processing helped establish, text controls, button controls and 2D Plots. Serial library is used to fetch data from the serial port (ie Arduino).