Dear Ytai and all other IOIO developers,

Just thought that I would give a brief status update on this.

A couple of years ago I developed an IOIO/Android-based anemometer which 
measures wind speed and wind direction at my local windsurfing spot. The 
system sends data each minute (24/7) over the mobile network to a web 
server for storage. The information is presented graphically and textually 
on a web page.

The idea is to extend the anemometer with a camera which takes pictures 
over the water and publishes the pictures on the web page along with the 
measured wind information. This way we can get a feeling of the conditions 
(waves, other surfers already out there.

I bought the following camera which provides uncompressed or compressed 
(JPEG) pictures through a UART interface:
http://www.aliexpress.com/store/product/UART-TTL-JPEG-serial-port-camera-module-OV528-communication-protocol-SPI-camera/1147396_1968783102.html

The camera uses the Omnivision Serial Brigde OV528 chip which uses a simple 
command set described here:
http://www.datasheetspdf.com/PDF/OV528/785618/1

With the Christmas and New Year holidays, I finally got some time to try it 
out :)

I started out with hooking up the camera module to my development computer 
(PC/Ubuntu) using a USB-to-Serial adapter (based on the Prolific PL2303 
chip) and using a terminal emulator to send commands to the camera and 
receive data from it. This way I could get familiar with the commands 
involved to get picture in a simple way without introducing the IOIO.

Once I got a good grip of the camera's behaviour, I continued by connecting 
the camera to an IOIO-OTG board. In order to have as rapid development loop 
as possible, I decided to connect the IOIO to my computer and leave the 
Android phone out to begin with. I downloaded the HelloIOIOConsole 
application and modified it to open up an UART interface and send the 
commands necessary to take a JPEG compressed picture. This involves sending 
sync commands to establish baudrate and get a working UART connection 
between the camera and IOIO board. The next step is to send commands to 
initialize the camera (setting picture size, compression, number of colors, 
package size). After initiaization, the camera is ready to take pictures. 
By issuing a snapshot command, the camera stores one image frame in its 
internal memory. The snapshot can then be transferred as a sequence of 
packets (512 bytes/package in my case).

So to conclude, I can now take snapshots and download them to my PC using 
the camera module and the IOIO as a bridge. The next step is to migrate the 
program to my Android anemometer app and add the capability to send the 
pictures over the net and store them on the web server for presentation.

Happy hacking,
JP

-- 
You received this message because you are subscribed to the Google Groups 
"ioio-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/ioio-users.
For more options, visit https://groups.google.com/d/optout.

Reply via email to