Electronic – good method for transmitting a syncronization pulse wirelessly to multiple devices

RF

I'm working on an object tracking system comprised of 3 cameras. The cameras are up to 50ft apart, and each contains a raspberry pi 4, and an arducam OV9281.

I would like to synchronize the frames captured by these cameras to make triangulation simpler. Specifically I'm planning on using the OV9281 external trigger input.

I would like the sync pulse to be accurate within 100uS between the cameras.

The issue is, that I would like these units to be wireless if possible. The pi's can connect to each other via wifi without issues, but I'm not confident that I can synchronize the pi's with adequate precision over this network, and besides that I will still need some hardware in each box to generate the trigger pulses which will feed into the OV9281s. Again, I don't think the rapsberry pi GPIOs will be accurate enough to generate this pulse directly.

The backup option which I'm considering right now is to use 3.5mm audio cable to carry a sync signal.

What I'd like to do is use simple radio of some sort to transmit periodic pulses which each camera can receive, or receive a signal of this sort that already exists (even indoors).

Does anyone know of a method that could achieve this? I know this could easily be done with a custom radio, but I would like to use radio modules of some sort to keep the complexity down.

Edit: Just to clarify, the sync signal will go directly to the camera external trigger input, it will not go through the pi. I agree the pi would not be accurate enough for that with a regular task-scheduled os.

Best Answer

The NNTP protocol can sync your R-pi's wall-clock times together and periodically correct for any drift. So at least at the system level there is a solution.

However,the R-pi CSI-2 connector specifically lacks any provision for hardware sync or master clock, so that kind of kneecaps the whole scheme. Without frame sync, over time each camera's framing will drift, ruining the frame correlation you need to properly sense distance.

If your camera has its own sync pins available you could possibly use another approach (e.g., infrared) to provide a master sync reference.