Femto Bolt doesn't keep exactly 30.0 FPS

I tried 3 different Femto Bolt and they have different FPS. We’re using the last firmware available: 1.0.9.

  1. FPS_CAM1: 30.14
  2. FPS_CAM2: 30.028
  3. FPS_CAM3: 30.063

We have measured these values via ‘Orbbec Viewer’ software looking at FrameIndex and Device Timestamp in two different moment T1 and T2:
T1: after 30 seconds the channels Color and Depth have been opened.
T2: after 240 seconds the channels Color and Depth have been opened.
FPS = (FrameIndex@T2 - FrameIndex@T1) / (DeviceTS@T2 - DeviceTS@T1)

I also compared the values of DeviceTimestamp with different stopwatches and it is quite precise, the problem is that I receive a different amount of frames than expected.

We want to replace Microsoft K4Azure with Femto Bolt in all our manufacturing lines but we can’t if the camera doesn’t have a precise FPS of 30.00, because we synchronize it with other sensors and after 1 minute it goes out of sync.

Is there a way to get a precise FPS, at least between 29.999 and 30.001?


1 Like

thank for your message,
we will look into this issue and reproduce it

Hello @xuchongyan,
do you have any update on this issue?

We have made the same test on 10 Femto Bolt and every camera has different FPS values, so it’s very important for us that this problem will be fixed to allow the synchronization of the camera with other sensors.


I too am eager to see this resolved. Being able to keep it in sync with other sensors is very important in my application for the Femto Bolt.

Received, I will give my verification results this week

The issue you reported regarding the framerate not consistently being 30FPS, I have been able to successfully reproduce it. After analyzing the problem together with our engineers, we’ve come to the following conclusions:

  1. Although a single Bolt unit’s framerate is not exactly 30FPS, the frame intervals are stable and can be fixed at a certain value.
  2. Indeed, when multiple Bolt units are in operation, maintaining a consistent 30FPS across all of them is not possible. This instability is due to variations in the hardware clock signals (crystal oscillators) across different units.
    This two AzureKinect Frame interval :

    This is two Bolt Frame intervals: