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


      





Showing posts with label Pandaboard. Show all posts
Showing posts with label Pandaboard. Show all posts

Sunday, March 25, 2012

viSparsh Experience at TechEd2012

viSparsh Prototype 2




We have finally been able to come up with the 2nd prototype of the belt as shown in the pic. Although, the size of the belt still looks similar to the previous version, we have done some major technical upgradations in the belt. The belt has now more robust power management system with single ON-OFF button and less components. Previous post provides the list of changes in this new prototype.
After making it functionally robust, our next aim is to decrease the size of the belt.



In the next version, we are trying to make a sleek design by considering various possibilities like replacing bigger PandaBoard with small BeagleBone, removing Kinect's plastic casing to use only the required components etc.
One of our main focus at present is to build a sleek design before adding more functionalities.




mbed Removed

We have finally succeeded in removing one major component from the belt. The initial design of the belt had mbed in it. We were using mbed to generate PWM (Pulse width Modulation) to be sent to the actuators (vibration motors in our case). However, we eventually figured out that the same functionalities can be provided by PandaBoard without incurring that extra component cost of mbed.

PandaBoard has on-board GPIO (General Purpose Input Output) pins that can be used to render multiple functionalities. We configured three GPIO pins as output and created three software threads to generate variable-duty PWM. This PWM further actuates the vibration motors to guide the visually impaired in obstacle-detection.

Removal of mbed is a major breakthrough for us as we are continuously working on decreasing the size of the belt to make a sleek wearable design.

Monday, January 16, 2012

viSparsh: A touch of light

We are continuously fine-tuning the belt according to the feedback obtained from various blind organizations. We have been visiting National Association for Blinds(NAB), Delhi and obtained valuable feedback from Mohd. Wasim.


Mohd. Wasim is blind since his birth. He really appreciated the concept of a haptic belt that makes his hands and ear free and gives a broader perception of obstacles in the path. Here is a brief video describing the concept and working of viSparsh-

Wednesday, January 4, 2012

Test Drive-2: Rigorous Testing

This is the second test drive of viSparsh belt. We prepared an obstacle course in a closed hall and and simulated a special test environment with dummies and different sort of obstacles. The obstacles were of different materials, heights and widths. The test results were quite encouraging.


There has been some significant changes from our last test drive- 
1. We have increased number of vibrators from three to six to give a better indication of obstacle to the user. 
2. An autorun script has been created and deployed which starts the viSparsh belt automatically when we switch it on.  


Here is a video snippet of this test drive-


Tuesday, November 29, 2011

Test Drive-1: GET, SET……… GO!!!!!!!!!!


After the hard work of one and a half month finally we finished first phase of our project. We have designed the viSparsh v1.0. The belt includes a plastic box which contains PandaBoard, Mbed and Voltage Convertor and the Kinect fixed at the front of the belt. Currently we are using three vibration motors on three sides which we plan to increase to six in version 1.1.

We had our test drive today in our hostel and it worked exceptionally well with no false alarm. Some of the other fellows helped us in shooting the video and becoming the obstacles. Here is the video for this test drive-






Power Supply Issues

After powering the circuit from AC mains, it was time to switch on to batteries as the viSparsh belt would be mobile. So, we purchased a Chinese 12V 2100mAh battery pack to run Kinect and used 7805 voltage regulator to power mbed and PandaBoard with 5V. The batteries were drained out in a couple of minutes and situation got worst after recharging it. Hence, this Chinese battery proved useless for us.
We, then, used 8 AA size Kodak 2100 mAh rechargeable cells. Though it powered our setup for 15 odd minutes but not what we required. Then we got 8 more to power Kinect separately. Still, the power dissipation from 7805 was huge and we thought why not to eliminate that. As one cell is rated 1.2V (though it measures between 1.3-1.4), so we connect 4 cells in series to draw slightly more than 5V from it.
Here is the final number of cells we have used in the project:

1. Mbed:                  4 AA Size 1.2V 1000mAh          Output: Slightly more than 5V
2. PandaBoard:        4 AA Size 1.2V 2100mAh          Output: Slightly more than 5V
3. Kinect                  8 AA Size 1.2V 2500mAh          Output: Slightly more than 10V

Here, we were able to eliminate 7805 voltage regulator from our circuit and hence we minimized the power dissipation.We tested the belt for around half an hour and it worked perfectly with this configuration.
We may add 4 more cells in parallel to power PandaBoard.

Another option we may consider is to order a customized battery with our specifications.

Booting Ubuntu on Pandaboard EA3

STEP1: Download the Ubuntu image
Use this link to download the pre-installed image of ubuntu 10.10. 

STEP2: Prepare the SD card
Insert the SD card in your PC and unmount it. Then use this command to copy the pre-built image on the card.

COMMAND:
sudo sh -c 'zcat ./ubuntu-netbook-10.10-preinstalled-netbook-armel+omap4.img.gz|dd bs=4M of=/dev/sdb; sync'

STEP3: Download and copy required u-boot and MLO files
For Pandaboard version A2 and later follow these instructions. In our case we had a EA3 version so we followed it.  

2.      Untar with "tar -jxf panda.tar.bz2"
3.      Mount the first partition of the imaged SD card
4.      Copy MLO and u-boot.bin (extracted from the tar file) to the mounted partition.

STEP4: Boot from Pandaboard
Now unmounts the SD card and insert it in Pandaboard and give it the power. It shall start booting.

STEP5: Now use the same procedure to install OpenNI and Kinect that we used for BeagleBoard.



Wednesday, November 23, 2011

Solving the Response Time Problem


The response time of the data transmitted by the Kinect to the BeagleBoard came to around 4-5 seconds which was quite contrary to our expectations. By 'Response Time' we mean the 'time lag' between two samples of data transmitted by the Kinect to the BeagleBoard.

In order to solve this problem we tried running the same on the PandaBoard and Hurray! the problem got solved. Response time decreased to a few milliseconds. Though both have the 1Ghz processor but BeagleBoard has 512MB DDR RAM whereas PandaBoard has 1GB DDR2 RAM.

Active USB Hub: The way out for our Kinect Detection Problem



To our utter surprise, Kinect stopped working all of a sudden. On running Kinect sample programs, it was not able to detect the device as mentioned in one of our previous posts. However few days back, we were able to find the solution for this. After trying all possible combinations like the software error possibilities etc., we were finally left with trying out the Active USB Hub option. And Hurray!, it actually worked. The problem was that although Kinect runs on a 12V adapter , it still draws ample amount of current from the USB port to which it is connected. Thus, while connecting Kinect to BeagleBoard/PandaBoard, Kinect was not able to draw to draw sufficient amount of current from the board. Thus, on connecting Kinect through the Active USB Hub instead of the board directly, we were able to remove Kinect detection problem.

Friday, November 4, 2011

PandaBoard- All thanks to Texas Instruments

Yes!!! Now we have with us the power of PandaBoard and all thanks to Texas Instruments for providing us the board for our project and guess what..it's sponsored by them.

After half an hour long conference with Vikas Joshi representing TI, he sent to us PandaBoard which will give a special edge to our project. We have already installed Ubuntu OS image on it and we are heading towards our next step to complete Phase I of the project.

Thank You Texas Instruments!!!

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 :-) .

Thursday, October 13, 2011

Crossing Barriers

As was the case with the non-availability of PandaBoard so was with mbed. We were in a crisis situation as one of the main components (mbed) was again out of stock. However, we didn't lose hope and started figuring out other possibilities of getting a mbed to work on. While the search was still on, our teammate Tushar gave us a surprise that we had actually won a free mbed (form was secretly filled by him). We took a sigh of relief as we had crossed another barrier and saved some money :-) . As a back up we had earlier thought of buying 2 mbeds. Luckily we were fortunate enough and after few days mbed was again in stock. Since one of the required two mbeds was already won (:-) ), we thought of placing the order for the 2nd one for our safety.

After we received the mbed yesterday, one of our tasks was to get accustomed to the product as we all three were new to it. We successfully implemented some serial transmission codes through the mbed online compiler.

Slight modification in components

As mentioned in our previous blog, we had initially planned of buying PandaBoard considering the project's future advancements to make use of WiFi/Bluetooth and other upgraded hardware configuration requirements However, things never work as planned :-( and so was the case with us. There was no PandaBoard availability in India before 15th Nov. '11. Our time was passing by swiftly and surely we could not afford to wait so long. In order to keep our deadlines we had to resort to buying 1 BeagleBoard instantly for the initial work while waiting for the PandaBoard's availibility.
Showing posts with label Pandaboard. Show all posts
Showing posts with label Pandaboard. Show all posts

Sunday, March 25, 2012

viSparsh Experience at TechEd2012

viSparsh Prototype 2




We have finally been able to come up with the 2nd prototype of the belt as shown in the pic. Although, the size of the belt still looks similar to the previous version, we have done some major technical upgradations in the belt. The belt has now more robust power management system with single ON-OFF button and less components. Previous post provides the list of changes in this new prototype.
After making it functionally robust, our next aim is to decrease the size of the belt.



In the next version, we are trying to make a sleek design by considering various possibilities like replacing bigger PandaBoard with small BeagleBone, removing Kinect's plastic casing to use only the required components etc.
One of our main focus at present is to build a sleek design before adding more functionalities.




mbed Removed

We have finally succeeded in removing one major component from the belt. The initial design of the belt had mbed in it. We were using mbed to generate PWM (Pulse width Modulation) to be sent to the actuators (vibration motors in our case). However, we eventually figured out that the same functionalities can be provided by PandaBoard without incurring that extra component cost of mbed.

PandaBoard has on-board GPIO (General Purpose Input Output) pins that can be used to render multiple functionalities. We configured three GPIO pins as output and created three software threads to generate variable-duty PWM. This PWM further actuates the vibration motors to guide the visually impaired in obstacle-detection.

Removal of mbed is a major breakthrough for us as we are continuously working on decreasing the size of the belt to make a sleek wearable design.

Monday, January 16, 2012

viSparsh: A touch of light

We are continuously fine-tuning the belt according to the feedback obtained from various blind organizations. We have been visiting National Association for Blinds(NAB), Delhi and obtained valuable feedback from Mohd. Wasim.


Mohd. Wasim is blind since his birth. He really appreciated the concept of a haptic belt that makes his hands and ear free and gives a broader perception of obstacles in the path. Here is a brief video describing the concept and working of viSparsh-

Wednesday, January 4, 2012

Test Drive-2: Rigorous Testing

This is the second test drive of viSparsh belt. We prepared an obstacle course in a closed hall and and simulated a special test environment with dummies and different sort of obstacles. The obstacles were of different materials, heights and widths. The test results were quite encouraging.


There has been some significant changes from our last test drive- 
1. We have increased number of vibrators from three to six to give a better indication of obstacle to the user. 
2. An autorun script has been created and deployed which starts the viSparsh belt automatically when we switch it on.  


Here is a video snippet of this test drive-


Tuesday, November 29, 2011

Test Drive-1: GET, SET……… GO!!!!!!!!!!


After the hard work of one and a half month finally we finished first phase of our project. We have designed the viSparsh v1.0. The belt includes a plastic box which contains PandaBoard, Mbed and Voltage Convertor and the Kinect fixed at the front of the belt. Currently we are using three vibration motors on three sides which we plan to increase to six in version 1.1.

We had our test drive today in our hostel and it worked exceptionally well with no false alarm. Some of the other fellows helped us in shooting the video and becoming the obstacles. Here is the video for this test drive-






Power Supply Issues

After powering the circuit from AC mains, it was time to switch on to batteries as the viSparsh belt would be mobile. So, we purchased a Chinese 12V 2100mAh battery pack to run Kinect and used 7805 voltage regulator to power mbed and PandaBoard with 5V. The batteries were drained out in a couple of minutes and situation got worst after recharging it. Hence, this Chinese battery proved useless for us.
We, then, used 8 AA size Kodak 2100 mAh rechargeable cells. Though it powered our setup for 15 odd minutes but not what we required. Then we got 8 more to power Kinect separately. Still, the power dissipation from 7805 was huge and we thought why not to eliminate that. As one cell is rated 1.2V (though it measures between 1.3-1.4), so we connect 4 cells in series to draw slightly more than 5V from it.
Here is the final number of cells we have used in the project:

1. Mbed:                  4 AA Size 1.2V 1000mAh          Output: Slightly more than 5V
2. PandaBoard:        4 AA Size 1.2V 2100mAh          Output: Slightly more than 5V
3. Kinect                  8 AA Size 1.2V 2500mAh          Output: Slightly more than 10V

Here, we were able to eliminate 7805 voltage regulator from our circuit and hence we minimized the power dissipation.We tested the belt for around half an hour and it worked perfectly with this configuration.
We may add 4 more cells in parallel to power PandaBoard.

Another option we may consider is to order a customized battery with our specifications.

Booting Ubuntu on Pandaboard EA3

STEP1: Download the Ubuntu image
Use this link to download the pre-installed image of ubuntu 10.10. 

STEP2: Prepare the SD card
Insert the SD card in your PC and unmount it. Then use this command to copy the pre-built image on the card.

COMMAND:
sudo sh -c 'zcat ./ubuntu-netbook-10.10-preinstalled-netbook-armel+omap4.img.gz|dd bs=4M of=/dev/sdb; sync'

STEP3: Download and copy required u-boot and MLO files
For Pandaboard version A2 and later follow these instructions. In our case we had a EA3 version so we followed it.  

2.      Untar with "tar -jxf panda.tar.bz2"
3.      Mount the first partition of the imaged SD card
4.      Copy MLO and u-boot.bin (extracted from the tar file) to the mounted partition.

STEP4: Boot from Pandaboard
Now unmounts the SD card and insert it in Pandaboard and give it the power. It shall start booting.

STEP5: Now use the same procedure to install OpenNI and Kinect that we used for BeagleBoard.



Wednesday, November 23, 2011

Solving the Response Time Problem


The response time of the data transmitted by the Kinect to the BeagleBoard came to around 4-5 seconds which was quite contrary to our expectations. By 'Response Time' we mean the 'time lag' between two samples of data transmitted by the Kinect to the BeagleBoard.

In order to solve this problem we tried running the same on the PandaBoard and Hurray! the problem got solved. Response time decreased to a few milliseconds. Though both have the 1Ghz processor but BeagleBoard has 512MB DDR RAM whereas PandaBoard has 1GB DDR2 RAM.

Active USB Hub: The way out for our Kinect Detection Problem



To our utter surprise, Kinect stopped working all of a sudden. On running Kinect sample programs, it was not able to detect the device as mentioned in one of our previous posts. However few days back, we were able to find the solution for this. After trying all possible combinations like the software error possibilities etc., we were finally left with trying out the Active USB Hub option. And Hurray!, it actually worked. The problem was that although Kinect runs on a 12V adapter , it still draws ample amount of current from the USB port to which it is connected. Thus, while connecting Kinect to BeagleBoard/PandaBoard, Kinect was not able to draw to draw sufficient amount of current from the board. Thus, on connecting Kinect through the Active USB Hub instead of the board directly, we were able to remove Kinect detection problem.

Friday, November 4, 2011

PandaBoard- All thanks to Texas Instruments

Yes!!! Now we have with us the power of PandaBoard and all thanks to Texas Instruments for providing us the board for our project and guess what..it's sponsored by them.

After half an hour long conference with Vikas Joshi representing TI, he sent to us PandaBoard which will give a special edge to our project. We have already installed Ubuntu OS image on it and we are heading towards our next step to complete Phase I of the project.

Thank You Texas Instruments!!!

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 :-) .

Thursday, October 13, 2011

Crossing Barriers

As was the case with the non-availability of PandaBoard so was with mbed. We were in a crisis situation as one of the main components (mbed) was again out of stock. However, we didn't lose hope and started figuring out other possibilities of getting a mbed to work on. While the search was still on, our teammate Tushar gave us a surprise that we had actually won a free mbed (form was secretly filled by him). We took a sigh of relief as we had crossed another barrier and saved some money :-) . As a back up we had earlier thought of buying 2 mbeds. Luckily we were fortunate enough and after few days mbed was again in stock. Since one of the required two mbeds was already won (:-) ), we thought of placing the order for the 2nd one for our safety.

After we received the mbed yesterday, one of our tasks was to get accustomed to the product as we all three were new to it. We successfully implemented some serial transmission codes through the mbed online compiler.

Slight modification in components

As mentioned in our previous blog, we had initially planned of buying PandaBoard considering the project's future advancements to make use of WiFi/Bluetooth and other upgraded hardware configuration requirements However, things never work as planned :-( and so was the case with us. There was no PandaBoard availability in India before 15th Nov. '11. Our time was passing by swiftly and surely we could not afford to wait so long. In order to keep our deadlines we had to resort to buying 1 BeagleBoard instantly for the initial work while waiting for the PandaBoard's availibility.