Synchronized clocks and precise timestamps can still misstate when a measurement occurred.
Timestamps are comparable only when the event timestamped, the place it was generated, and the clock that produced it are known.
Arrival time includes sensor, link, buffering, driver, and OS delay, and unequal delays can reverse the apparent acquisition order.
For fusion, timestamp at acquisition and carry that timestamp through aggregation, transport, and compute.
A multi-sensor system can have precise timestamps and synchronized clocks while still misrepresenting when sensor measurements occurred.
Consider four data streams entering the same perception system. The camera timestamp refers to exposure. The LiDAR carries an internal acquisition timestamp. The IMU marks each sensor sample at measurement time. A fourth stream receives a new timestamp when it reaches the host application.
These timestamps describe events at different points in the measurement and data delivery process. For temporal alignment, three properties matter: the event being timestamped, where the timestamp was generated, and the clock that produced it.
01 | A Timestamp Needs a Defined Event
Sensor data typically passes through several stages before reaching the application:
Physical event
→
Sensor acquisition
→
Interface / aggregation
→
Network transport
→
Driver / OS
→
Application
→
Sensor fusion
Aggregation can occur in a deserializer, FPGA, bridge, gateway, network switch, or at the compute platform ingress. It is a function in the data path, not a required standalone device.
A timestamp can be generated at any of these stages, or preserved from an upstream source. The table below describes timestamps generated locally at each stage.
Timestamp location
Event represented
Engineering implication
Sensor
Exposure, sampling, scan, internal processing, or transmission
The sensor must define which event it marks, and its clock must be related to the system time base
Interface / aggregation
Frame, packet, or data arrival at an intermediate ingress point
Arrival at aggregation already includes sensor processing and upstream link delay
Network interface (receive path)
Packet ingress at the receiving network interface
Packet ingress time includes upstream transport delay, not only acquisition time
Driver / OS
Packet or buffer processing
Interrupt, queueing, and scheduling add variable delay
Application
Data arrival or application processing
Arrival time is easily mistaken for measurement time
A driver or application can also carry forward an acquisition timestamp created earlier. In that case, the timestamp's meaning comes from where it was generated, not where it was read.
02 | Synchronized Clocks, Different Measurement Events
Timestamp generation records when an event occurred according to a particular clock. Synchronization establishes how that clock relates to the time base used elsewhere in the system.
PTP or gPTP establishes timing relationships across participating networked devices, and hardware timestamping reduces the uncertainty that software processing adds to clock synchronization.
Consider two cameras operating on synchronized clocks:
Camera A
Timestamps exposure.
Camera B
Timestamps packet transmission.
Their timestamps share a comparable time base, but refer to different points in the image acquisition and delivery process.
The reverse situation also occurs. Two sensors may timestamp the intended acquisition events while using independent clocks with no established relationship. Their timestamps cannot be compared until that relationship is known.
When integrating GNSS-derived time, PTP clocks, and host timestamps, the system must also account for the time scale and epoch used by each source, including required UTC offsets or clock-domain conversions.
03 | When Arrival Time Replaces Measurement Time
Assume a physical measurement occurs at time t₀. Before the data reaches the application, it passes through sensor processing, aggregation, network transmission, buffering, driver processing, and OS scheduling.
If t₀ and the application timestamp use the same time base, and the delay terms represent non-overlapping stages, an arrival-based timestamp can be represented conceptually as:
Some delays can be characterized and compensated for. Others vary with network contention, buffering, interrupts, OS scheduling, and application workload.
Suppose Sensor A acquires a measurement 1 ms before Sensor B, but its data arrives with 4 ms more delay. Application arrival timestamps would place Sensor A's measurement 3 ms after Sensor B's, reversing their apparent acquisition order.
At 100 km/h, a vehicle travels approximately 8 cm in 3 ms and 28 cm in 10 ms. If measurements are associated with vehicle poses from the wrong instants, timing offsets affect their spatial alignment. The resulting error depends on vehicle motion, sensor geometry, and the compensation applied.
Timing offset 3 ms~8 cmtravelled at 100 km/h
Timing offset 10 ms~28 cmtravelled at 100 km/h
Clock offset and drift introduce separate errors when timestamps originate from different clock domains. Diagnosing the problem requires distinguishing data-path delay from clock relationship errors.
04 | Different Sensors Have Different Timing Models
Sensor
Relevant timing event
Timing reference to define
Camera
Exposure / image acquisition
Exposure reference, trigger delay, and rolling-shutter timing where applicable
LiDAR
Point, column, packet, or scan acquisition
Acquisition timing at the granularity required by the application
IMU
Accelerometer / gyroscope measurement
Sampling instant
Radar
Chirp sequence / radar frame acquisition
Frame or chirp timing, including the acquisition interval
GNSS
Navigation measurement / solution epoch and external timing reference
Solution epoch; PPS edge with associated time information
Camera: Trigger Time and Exposure Time
A hardware trigger defines a trigger event. The relationship between trigger and exposure depends on the camera implementation.
Rolling-shutter cameras expose different image rows at different times. A single frame timestamp therefore identifies a defined reference within the frame timing, not the acquisition time of every pixel. On a moving platform, that difference affects how image measurements are associated with LiDAR, IMU, or vehicle pose.
LiDAR: One Scan, Multiple Acquisition Times
A LiDAR scan spans an acquisition interval, and the platform moves while individual points are collected.
When motion during the scan is significant, a single scan timestamp is insufficient. Deskewing uses finer-grained acquisition timing and platform motion estimates to transform points according to their measurement times.
GNSS: PPS and Time Context
A GNSS navigation solution has a measurement or solution epoch. PPS provides a precise timing edge for clock alignment, and associated time information identifies the absolute time of that edge. For example, a GNSS time message identifies which second a PPS edge represents.
05 | A Timestamping Strategy for Multi-Sensor Systems
Before selecting where to generate timestamps, trace the timing information carried by each sensor stream. Four questions establish the relevant timing relationships:
Question 1What event does the timestamp represent?Exposure, sampling, scan acquisition, packet arrival, or another defined event?
Question 2Where was the timestamp generated?Inside the sensor, at an interface or aggregation point, at the network interface, in the driver, or at the application?
Question 3Which clock produced it?A sensor-local clock, interface clock, NIC clock, host clock, GNSS-derived clock, or another time source?
Question 4How is that clock related to the time base used for the other sensor data?Through PTP, gPTP, PPS, clock mapping, another synchronization mechanism, or a known conversion?
A well-defined timestamping architecture makes these relationships explicit during system design, rather than requiring them to be reconstructed after integration.
For sensor fusion, the preferred approach is to associate timestamps with defined acquisition events and preserve that timing information through aggregation, transport, and compute. Acquisition timestamps can travel with sensor data as embedded metadata, packet fields, or separately associated records. The implementation must preserve the relationship between each timestamp and its corresponding frame, sample, or measurement.
Generate timestamps at acquisition when the sensor supports it. Otherwise, use a timestamping mechanism with a known relationship to the acquisition event. Downstream arrival timestamps can be retained separately for latency analysis.
When acquisition-related timestamps are unavailable, characterize the delay between measurement and timestamp generation. Compensate for known systematic delays and account for residual variation. The resulting timing uncertainty must remain within the application's requirements.
Measurements from different clock domains require a defined time base, time scale, and documented clock conversions. Timestamp granularity should reflect the acquisition model: a frame-level timestamp is sufficient for some workloads, while rolling-shutter images or moving LiDAR scans can require row-level or point-level timing.
A GNSS receiver in the AMR BOX controller provides the reference time, with the AMR BOX serving as the PTP grandmaster. Two FPGA-based Vision BOX units, each housing eight MIPI cameras, synchronize their FPGA clocks with the AMR BOX through PTP over fiber links and use that shared time base to trigger their cameras. The eight GMSL cameras connected directly to the AMR BOX receive PPS-referenced frame sync from the same controller.
Both camera acquisition paths therefore derive their timing references from the same GNSS-referenced clock architecture.
Validating the Timing Architecture
Validation should examine both clock relationships and measurement timing. Controlled visual events can help assess camera acquisition timing, while PPS comparisons can assess clock alignment. These tests address different parts of the timing architecture, so the validation method must match the event being measured.
The measured timing error and its variation must ultimately be evaluated against the application's alignment tolerance.
Planning a timing architecture for your own sensor set? Contact our team →