NMEA driver - off by 1024 weeks but says 4096

Fred Wright fw at fwright.net
Thu Nov 2 22:03:16 UTC 2017

On Mon, 30 Oct 2017, Hal Murray via devel wrote:
> fallenpegasus at gmail.com said:
> > I suggest running it with gpsd for a while instead of NTPsec, and see if
> > gpsd's logging identifies the issue.
> > Or if the ntpd log contains the NMEA strings, it may be possible to
> > reconstruct a gpsd playback file, and play it into gpsd, and see what it
> > says.  ESR and GEM might could help with that.
> I know what the device is sending.  ntpd records it in clockstats.
> It's off by 1024 weeks, and I can fudge it back to working well.
> What I don't know is why the nmea driver is printing out something about 4096
> weeks and or what that code that doesn't appear to do anything other than
> print a misleading message is supposed to do.  If it doesn't do anything, we
> can just nuke it rather than debug it.
> I was hoping that somebody would remember adding that code.  No off list
> responses yet.  I'll add it to my list of quirks to investigate.

I don't know anything about this code specifically, but I can suggest a
theory.  If someone believed the false claims about GPS now using 13-bit
week numbers, and also chose to use half the wraparound interval as the
size of the disambiguation window (which can make sense in certain
circumstances), then the result would be a 4096-week window.  And since
the 4096-week window is too wide to correct a 1024-week wraparound, it
could also explain why the error wasn't corrected (assuming it's trying to
correct it, rather than just complaining).

Fred Wright

More information about the devel mailing list