Femto Bolt doesn't keep exactly 30.0 FPS

@Rudi please reference multiple device sync ;OrbbecSDK/examples/cpp/Sample-MultiDeviceSync at main · orbbec/OrbbecSDK · GitHub
You need to enable sync interval time feature;

   // Start the multi-device time synchronization function
   context.enableDeviceClockSync(600000);  // ms , update and sync every 10 minutes

@xuchongyan thanks for the info.
Why is this method necessary?
Do the cameras not keep synchronization over time?

I need each frame captured by each camera to correspond to the exact same instant of time, and that this is maintained over time.
Is this possible?

@Rudi
You’re currently using three FemtoBolt devices for synchronization, with one acting as the master and the other two as slaves. After connecting the hardware for synchronization, it’s confirmed that each frame is exposed and captured simultaneously (with a 160 µs interval between each device to avoid laser interference). However, the frame timestamps are generated by the Linux kernel, and since each device generates its own timestamps, there may be drift in the timestamps. To address this issue, we offer two methods to mitigate timestamp drift: 1) interval synchronization, and 2) synchronization reset of the devices. The SDK defaults to the first method.

@xuchongyan thanks for the clarification.
I just have one point left.

I guess that with 3 Bolt cameras connected with each other, the global FPS of the system correspond to the FPS of the primary camera, so it won’t be exactly 30.000 FPS.
With the Orbbec Multi-camera Sync hub Pro device the global FPS will be more precise?

@Rudi
If you need extremely precise 30.000 fps, I recommend using a synchronization hub with an external precise 30.000 fps trigger source, with all three FemtoBolt devices set as slaves. This setup will ensure hardware-triggered accuracy. However, if one of the FemtoBolts cannot achieve the 30.000 fps precision, the synchronization will be limited by the least accurate device

@xuchongyan ok thanks for the information.