PPS
The pulse-per-second (PPS) is a timing signal that can be used to synchronize the 3DM-CV7 with other systems.
The 3DM-CV7 can accept an external PPS or generate one as an output derived from the internal clock. Both input and output signals use a configurable digital control line available through the GPIO pins .
IMPORTANT: the PPS source and the assigned GPIO pin are separate configurations.
The PPS time sync status can be monitored by using the Time Sync Status (0xA0,0x02) data descriptor. This message tells the user when a PPS lock has been achieved.
Once the GPIO and PPS source have been configured, the user can set the whole number of seconds using the Time Broadcast Command (0x01,0x72). The user must send a separate instance of this command to set the week number. See shared GPS Timestamp (0xFF,0xD3) for more information.
To receive data timestamps referenced to the PPS (whether input or output), use the following messages from the Shared Data (0xFF) set: GPS Timestamp (0xFF,0xD3), Delta Time (0xFF,0xD4) , External Timestamp (0xFF,0xD7), External Time (0xFF,0xD8).
TIP: Time synchronization via command or data packets is not very accurate due to transmission and processing delays. Typical delays might be on the order of a few to tens of milliseconds, or even longer. The 3DM-CV7's PPS offers a very precise, very low-latency alternative.
Outputting a PPS
When configured to provide a PPS output, the 3DM-CV7 will generate a square wave pulse with a 50% duty cycle and a period that defines one second. The rising edge of the pulse signals the beginning of a new second.
Use the PPS Source (0x0C,0x28) command to set the PPS source. To generate a PPS from the 3DM-CV7's internal clock, set source to generated.
The 3DM-CV7's GPIOs must be configured to provide a PPS through the GPIO Configuration (0x0C,0x41). See User GPIO for a list of GPIOs that support PPS output and instructions on GPIO configuration.
Inputting a PPS
When configured to receive a PPS input, the user should provide a square wave signal with a period that defines one second and whose rising edge signals the start of a new second.
Set the PPS source to GPIO using the PPS Source (0x0C,0x28). Configure the appropriate GPIO pin as a PPS input using the GPIO Configuration (0x0C,0x41) command. See User GPIO for more details.