[ntp:questions] NTP NMEA driver

Val Schmidt vschmidt at ccom.unh.edu
Sun Feb 10 11:30:17 UTC 2013

Hello everyone,
I have a handful of questions regarding the implementation of the NTP NMEA (and 1PPS) driver. 

As I'm sure many of you know, these drivers synchronize a local clock using any of a handful of NMEA sentences (ZDA, RMC, GGA, GLL, etc.) received on a serial port and, if present and configured to do so, further synchronizes using a 1 PPS signal. 

First, it is unclear to me why one would use a time stamp from any sentence other than that provided in the ZDA message. Time stamps in the other messages mark the time of a position fix, also reported in those messages, not the current time or even the time of the 1 PPS signal. Only the ZDA specifically marks the time associated with the 1-PPS signal. So it is unclear to me why the NMEA driver would accept those other time stamps. 

Presumably it is because when the 1-PPS is present an assumption is made that the 1-PPS is marking the top of the second and one need only know which second is being marked. In this case, perhaps the other time stamps should be sufficient. However, I think it is true that not all GPS receivers produce 1-PPS signals coincident with the top of the second. Indeed, I've a SIRF-III based receiver that does not. It seems to me to know the exact time one must receive both the 1-PPS pulse and the ZDA message to know the exact time associated with that pulse.  I'll admit a SIRF-III receiver is not a high-end model. 

I saw a comment in a bug report (https://bugs.ntp.org/show_bug.cgi?id=1083) discussion about this larger issue, that one of the reasons for using the other sentences is that there is no statius indication in the ZDA message that the time is valid. This is a good point, in my opinion, as the ZDA time message may report a meaningless time if the GPS receiver has no fix. For example, I've a receiver the drops the fractional portion of the second from the ZDA message when the GPS fix is lost. Obviously one would never want to use this jump in time as an indication of when the fix is lost. So I see a need to be able to read the other GPS sentences to ensure a valid fix is being obtained, and the ZDA message to actually mark the time.  



Val Schmidt
University of New Hampshire
Chase Ocean Engineering Lab
24 Colovos Road
Durham, NH 03824
e: vschmidt [AT] ccom.unh.edu
m: 614.286.3726

More information about the questions mailing list