A Touch of Light

A step towards enlightenment for those living in the world of darkness.

A Young India Fellowship Initiative in collaboration with University of Pennsylvania


      





Tuesday, October 25, 2011

A new ray of hope amidst Diwali festivities


Huh! After days of searching for the PandaBoard, we finally have found a ray of hope. As mentioned in the previous post we had planned to buy PandaBoard for the project. However, non-availability of it in the market gave us a setback. In order to meet the deadlines we had to start our project with BeagleBoard till the time we found a PandaBoard for our project. We were sure that the unmatched feature set and ease of usage of the PandaBoard would help us in developing a good product quickly. Due to these reasons we kept searching for all the possibilities of getting a chance to work on the PandaBoard. Hurray! We finally have got a new hope from Texas Instruments who have given a positive signal for lending a PandaBoard to us atleast till the end of our ELM. We are excited to try our hands on the same. We wish Diwali brings good news from across the corners for you all too. Happy Diwali Guys and Gals :-) .

Sunday, October 23, 2011

Serially the way out


In order to transmit the data from BeagleBoard to Mbed microcontroller to actuate the vibration motors we need to transmit data serially. Hence we successfully tested serially full duplex communication from Linux (x86 processor) to other PC terminal. Next target is running the Kinect and OpenNi on Ubuntu (we have already succesfully checked the same on Windows7).

Down to the basics


Next, we succesfully tested serial transmission and reception from mbed(through 9th & 10th serial port pins). 

For testing data transmission, we made use of ebox (as we didn't had PC) that was already available with us. To convert the voltages( ttl to RS-232), we had to make use of MAX 232. The circuit looked as follows:
It must be noted that the PCB shown in the diagram on the right is used only for the usage of MAX232 IC in that circuit(since we didn't have spare IC).

Parallel Action on mbed



While other stuff was being done, we registered mbed online and started exploring it using its online available compiler. We tried simple LED programs and PWM and they worked without any problem.

Getting to the technicalities



As mentioned in the previous post, we faced certain issues with Ubuntu. We had different concerns for Natty and Maverick. In case of Natty, our main concern was the extra amount of space being taken up by the OS that we had to eventually buy another 8GB SD Card. Thus, as we figured out the main problem with installing Natty is the space constraint.
In case of Maverick, even after strictly following the steps given in the wiki link:https://wiki.ubuntu.com/ARM/OMAPMaverickInstall



We were not able to successfully install it. We were following the installing procedures for BeagleBoard xM ver A3 and later. However, later we discovered that although the procedure for all other versions of BeagleBoard xM after A3 is same, ver C is an expection to it. We figured out that since our BeagleBoard xM was Rev C, we had to adopt different procedure instead of the normal procedure (also mentioned in above link) as an exception.

Time to explore :-)


Since we had worked on Windows CE7 before, we thought of exploring other Operating Systems. Spending some time on this process was necessary as we want to test the pros and cons of various OS before choosing one.

We tried installing and booting the OS on BeagleBoard for testing purposes.


1. Angstorm: : We started with Angstorm with worked perfectly fine without creating any issues.


2. Ubuntu Flavors: Next we applied the same procedure of testing the image on Natty and Maverick separately. We came up with certain difficulties in this (discussed in the next post). However, we were able to resolve them soon.

3. Android: Considering the Android revolution going on at present with high graphic capabilities, we thought it also try our hands on it. This would help us later in integrating our product with State of the Art application, features.

Thus, we were finally able to successfully test install all main OS on BeagleBoard. During this process we learned that for an OS to successfully boot this process is needed-

1. Partitioning the SD card into two parts-

             SD card            : /dev/sdb  [4 GB]
______________________________________________
     Name                     Path              Space                 Type
______________________________________________
boot partition    |       /dev/sdb1     |    74 MB         |   FAT32
rootfs partition  |       /dev/sdb2     | Rest Space      |   EXT3
______________________________________________

2. Copying appropriate files into these partitions-

__________________________________________________
     Name                     Path                           Files
__________________________________________________
boot partition    |       /dev/sdb1     |   MLO, u-boot.bin.ift, uImage
rootfs partition  |       /dev/sdb2     |   vmlinuz
__________________________________________________


These four files are the main files for BB-xm we need 'boot.scr' too.

What's in the name ...

After considering various options we had earlier come out with 'viSparsh' as the name of our project. This word has been coined by our team. It is a conglomeration of two words namely vision (Vis) & Touch (Sparsh). We felt the name ViSparsh truly depicted the purpose of our project which was to aid the visually impaired people through the sense of Touch. We also thought this as an apt name for our team too whereby the same word would signify our team's aim of touching the lives of several people through our vision. 

Since we have also built a small lab for the first time at YIF we thought of giving it a name too. One of our fellows (Mr. Balaji) helped us in searching a name and we all finally agreed on 'e-Capsule Lab' as the name of our laboratory. The reason for this were manifolds. Firstly, the size of the lab was that of a capsule. Secondly, 'e' would signify electronics in the word 'e-capsule'. Thirdly, we aim to make electronic solutions for the society with the same aim as capsules are made in the medicine field for the betterment of mankind. Thus, we thought this name to be apt for our lab. We hope that future students of YIF would carry forward the name and build great solutions under this lab that would help our society in path-breaking ways.

Tuesday, October 25, 2011

A new ray of hope amidst Diwali festivities


Huh! After days of searching for the PandaBoard, we finally have found a ray of hope. As mentioned in the previous post we had planned to buy PandaBoard for the project. However, non-availability of it in the market gave us a setback. In order to meet the deadlines we had to start our project with BeagleBoard till the time we found a PandaBoard for our project. We were sure that the unmatched feature set and ease of usage of the PandaBoard would help us in developing a good product quickly. Due to these reasons we kept searching for all the possibilities of getting a chance to work on the PandaBoard. Hurray! We finally have got a new hope from Texas Instruments who have given a positive signal for lending a PandaBoard to us atleast till the end of our ELM. We are excited to try our hands on the same. We wish Diwali brings good news from across the corners for you all too. Happy Diwali Guys and Gals :-) .

Sunday, October 23, 2011

Serially the way out


In order to transmit the data from BeagleBoard to Mbed microcontroller to actuate the vibration motors we need to transmit data serially. Hence we successfully tested serially full duplex communication from Linux (x86 processor) to other PC terminal. Next target is running the Kinect and OpenNi on Ubuntu (we have already succesfully checked the same on Windows7).

Down to the basics


Next, we succesfully tested serial transmission and reception from mbed(through 9th & 10th serial port pins). 

For testing data transmission, we made use of ebox (as we didn't had PC) that was already available with us. To convert the voltages( ttl to RS-232), we had to make use of MAX 232. The circuit looked as follows:
It must be noted that the PCB shown in the diagram on the right is used only for the usage of MAX232 IC in that circuit(since we didn't have spare IC).

Parallel Action on mbed



While other stuff was being done, we registered mbed online and started exploring it using its online available compiler. We tried simple LED programs and PWM and they worked without any problem.

Getting to the technicalities



As mentioned in the previous post, we faced certain issues with Ubuntu. We had different concerns for Natty and Maverick. In case of Natty, our main concern was the extra amount of space being taken up by the OS that we had to eventually buy another 8GB SD Card. Thus, as we figured out the main problem with installing Natty is the space constraint.
In case of Maverick, even after strictly following the steps given in the wiki link:https://wiki.ubuntu.com/ARM/OMAPMaverickInstall



We were not able to successfully install it. We were following the installing procedures for BeagleBoard xM ver A3 and later. However, later we discovered that although the procedure for all other versions of BeagleBoard xM after A3 is same, ver C is an expection to it. We figured out that since our BeagleBoard xM was Rev C, we had to adopt different procedure instead of the normal procedure (also mentioned in above link) as an exception.

Time to explore :-)


Since we had worked on Windows CE7 before, we thought of exploring other Operating Systems. Spending some time on this process was necessary as we want to test the pros and cons of various OS before choosing one.

We tried installing and booting the OS on BeagleBoard for testing purposes.


1. Angstorm: : We started with Angstorm with worked perfectly fine without creating any issues.


2. Ubuntu Flavors: Next we applied the same procedure of testing the image on Natty and Maverick separately. We came up with certain difficulties in this (discussed in the next post). However, we were able to resolve them soon.

3. Android: Considering the Android revolution going on at present with high graphic capabilities, we thought it also try our hands on it. This would help us later in integrating our product with State of the Art application, features.

Thus, we were finally able to successfully test install all main OS on BeagleBoard. During this process we learned that for an OS to successfully boot this process is needed-

1. Partitioning the SD card into two parts-

             SD card            : /dev/sdb  [4 GB]
______________________________________________
     Name                     Path              Space                 Type
______________________________________________
boot partition    |       /dev/sdb1     |    74 MB         |   FAT32
rootfs partition  |       /dev/sdb2     | Rest Space      |   EXT3
______________________________________________

2. Copying appropriate files into these partitions-

__________________________________________________
     Name                     Path                           Files
__________________________________________________
boot partition    |       /dev/sdb1     |   MLO, u-boot.bin.ift, uImage
rootfs partition  |       /dev/sdb2     |   vmlinuz
__________________________________________________


These four files are the main files for BB-xm we need 'boot.scr' too.

What's in the name ...

After considering various options we had earlier come out with 'viSparsh' as the name of our project. This word has been coined by our team. It is a conglomeration of two words namely vision (Vis) & Touch (Sparsh). We felt the name ViSparsh truly depicted the purpose of our project which was to aid the visually impaired people through the sense of Touch. We also thought this as an apt name for our team too whereby the same word would signify our team's aim of touching the lives of several people through our vision. 

Since we have also built a small lab for the first time at YIF we thought of giving it a name too. One of our fellows (Mr. Balaji) helped us in searching a name and we all finally agreed on 'e-Capsule Lab' as the name of our laboratory. The reason for this were manifolds. Firstly, the size of the lab was that of a capsule. Secondly, 'e' would signify electronics in the word 'e-capsule'. Thirdly, we aim to make electronic solutions for the society with the same aim as capsules are made in the medicine field for the betterment of mankind. Thus, we thought this name to be apt for our lab. We hope that future students of YIF would carry forward the name and build great solutions under this lab that would help our society in path-breaking ways.