Gary,
Thanks for the reply. I'm a fan of gpsd, but haven't needed to delve in the details previously.
Hope this isn't a waste of your time.
> Why are you using NMEA on a u-blox board?
I'm using whatever gpsd decides to use. gpspipe shows $GPGBS $GPGGA $GPGSA $GPGSV $GPRMC $GPZDA
>> Using gpsd git head the NMEA offset oscillates between about 140 msec
>> (duration ~440 sec) and then 580 msec (duration ~440 sec).
>Normal.
Normal?? Not from what I've seen.
>The PPS is keeping your time accurate, ignore the NMEA time.
Two problems with this. Some people use NMEA timestamps without PPS. [I know this is suboptimal]
Using PPS + ntpd with gpsd git-head gives noticeable poor results. I've seen over 1 msec offsets.
ntpshmmon and ntpd agree that the GPS NMEA arrival time stamp suddenly changes
::: DATE 2021-03-13 01:06:05
remote refid st t when poll reach delay offset jitter
===============================================================================
x127.127.28.0 .GPS. 0 u 6 16 377 0.000 -37.437 1.589
x127.127.22.0 .PPS. 0 u 4 16 377 0.000 0.012 0.003
10.1.10.95 .GPS. 1 u 10 16 377 0.171 0.036 0.006
10.1.10.96 10.1.10.95 2 u 9 16 377 0.236 0.030 0.042
::: DATE 2021-03-13 01:06:15
remote refid st t when poll reach delay offset jitter
===============================================================================
x127.127.28.0 .GPS. 0 u - 16 377 0.000 -464.747 425.979
x127.127.22.0 .PPS. 0 u 14 16 377 0.000 0.012 0.003
10.1.10.95 .GPS. 1 u 4 16 377 0.171 0.036 0.007
10.1.10.96 10.1.10.95 2 u 3 16 377 0.287 0.045 0.030
FWIW, ntpd=ntpd ntpsec-1.2.0 2021-03-12T16:35:34Z.
ntp.conf
driftfile /var/lib/ntpsec/ntp.drift
leapfile /usr/share/zoneinfo/leap-seconds.list
refclock shm unit 2 minpoll 4 maxpoll 4 refid PPS
refclock shm unit 0 minpoll 4 maxpoll 4 time1 0.108 refid GPS
server 10.1.10.95 minpoll 4 maxpoll 4 noselect
server 10.1.10.96 minpoll 4 maxpoll 4 noselect
restrict default kod nomodify nopeer noquery limited