Synchronization

Sensor Synchronization

At NVIDIA

This is even more important at NVIDIA, since we LOVE making things run FAST here. So every millisecond counts. If you look at the way we do this:

“Argus provides multi-camera frame synchronization”.

Ashwin explained to me how there are 2 ways:

  1. You can have a physical wire that forces the hardware to synchronize, called a Hardware Trigger
  2. You have some sort of software fix to account for the time offset (ahhh that’s like PTP + a software trigger, see TimeBeat + Lucid Camera, which I used for Code19)

Error at Enlighted

At Enlighted, I was working on a Create3 which was connected to a Raspberry Pi. Here, there is a time synchronization problem because there are actually 2 clocks being used:

  1. The Create3 has its own clock, which is the time that the sensors use
  2. The Rasperry Pi has its own system clock

Because of this, if you start up something like Rviz or Nav2 on the Raspberry Pi side, it will use Raspberry Pi’s time. However, the sensors are stamped with the Create3 time.

It seems that things are done over wire, but there were still latency issues.