The front camera is an OmniVision ov7725 and the datasheet is available on the web.
The bottom camera is a “cresyn qcif”, I could not find further information for this camera.
You can download a on-board c program (source+binary) to convert the drone into a giant optical mouse. Hold the drone at a fix distance above ground and the program will report the movement in the horizontal plane.
i2c bus
The cameras are configured via the i2c bus. The front camera is on /dev/i2c-1 address 0×21, the bottom camera is on /dev/i2c-0 address 0x5d.
Bottom Camera Initialization
i2cset -y 0 0x49 0x0a 0x85 - sets Vdd4 to 3.0V gpio 59 -d ho 1 - set CE enabled
After this the camara is visible on /dev/i2c-0 address 0x5d. Now send configuration via i2c. The configuration sent over the i2c bus can be extracted from a “strace” of program.elf, but I did not dig furter into this.
Front Camera Initialization
gpio 101 -d ho 0 - set PWDN_H 1=power down,0=active gpio 109 -d ho 1 - set CE_H 1=enabled,0=not enabled
However: This still does not make the camera visible on the i2c bus. Running program.elf does make it visible on the bus, after which “gpio 101 -d ho 1″, “gpio 101 -d i”, ”gpio 109 -d ho 0″, or “gpio 109 -d i” will make it disappear from the i2c bus.
Hello,
Its very nice code. So I belive you can help me. I have own program to detect some tags. So I just need to get a video from drone. I would you be so kind and write some code how can I get video data, just the actual frame in unsign char?
Just some function how to fill in unsigned char* image.
Thank you