Electronic – Genlock two OV5642 camera modules on Arduino with ArduCam


I need to shoot stereo video or stills at about 10 FPS possibly in perfect sync. My plan is to set up a 3D stereo rig (2 standalone units – each consisting of Arduino UNO + ArduCam shield + OV5642 camera module) an then fire both units via single remote shutter. Such a setup might already result in a pretty good synchronization since the hardware is very simple, but I was told in this post that I could probably do real genlock – sync both OV5642 modules with an single external clock signal fed from oscillator. This would likely result in a 100% frame synchronization.

According to this datasheet (corresponding eBay item) the OV5642 supports "external frame synchronization in frame exposure mode". I am not sure if "frame exposure mode" means still imaging only (no video?) – I do not mind this since I will rather work with still image files than with video file. Is it correct that I can do a single genlock for both cameras? If so, could someone please tell me how exactly this can be done?

My hardware building/hacking knowledge is close to zero though, so I prefer an easy solution. I am not sure if the oscillator signal can be fed from one of Arduino boards or whether it needs to come from other external source. A major plus of the solution will be low cost and use of small embedded hardware (no big boxes needing lot of power) so that can be used in mobile environment.

The application of my stereo will be mobile road/terrain 3D scanner in a passenger car moving up to say 100 km/h – another issue could be rolling shutter and I understand I wont get global shutter cheaply. I hope on short enough exposure time to minimize rolling shutter or simply on reducing vehicle speed. Sure I could get a global shutter sensor but I am poised to explore the low-cost way first.

In case someone know about a similar solution (in terms of size and cost) using another hardware altogether (camera etc.) I will be happy to hear about it.

Best Answer

Looking at the User Guide, it looks like pin 8 on the "alternative connector" is the trigger input. I assume if you drive a 3.3V active-high signal into the trigger pins on your two modules, they'd fire at (relatively) the same time.

However, I don't see anything on ArduCam's web site to indicate this thing is capable of shooting streams of video -- and I don't know how fast you can shoot still photos. They're basically using a CPLD to read out the DVP's data, buffer it a bit, and shove it on the SD card. No idea how fast it is.