Hi Everyone,
Following on from my previous thread which so many people helped with (thanks), I am zooming in on problems with my S1 servers, which are currently set to only get time from Satellite. I want to see this working before adding other servers for resiliency, so for current purposes each is a standalone device.
3 x Raspberry Pi 4 with adafruit ultimate gps hat, sharing 1 Marine GPS antenna, running latest raspian
1 x Raspberry Pi 3b+ with adafruit ultimate gps hat, 1 magnetic puck antenna, running latest raspian
They all behave exactly the same, which makes me suspect my config or a software bug… Most likely my mistakes.
My Config
# /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help
driftfile /var/lib/ntp/ntp.drift
leapfile /usr/share/zoneinfo/leap-seconds.list
statsdir /var/log/ntpstats/
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
server 127.127.20.0 mode 84 minpoll 3 iburst
fudge 127.127.20.0 stratum 0 flag1 1 flag2 0 flag3 0 flag4 0 time1 0.00 time2 +0.537 refid GPS0
restrict -4 default kod notrap nomodify nopeer noquery limited
restrict -6 default kod notrap nomodify nopeer noquery limited
restrict 127.0.0.1
restrict ::1
restrict source notrap nomodify noquery
Before the problem occurs:
Below is recorded after about 10 minutes after NTP has been restarted and offsets and rootdisp has settled. Everything looks good.
root@raspberrypi:/etc# ntpq -pn -c rv
remote refid st t when poll reach delay offset jitter
==============================================================================
o127.127.20.0 .GPS0. 0 l 5 8 377 0.000 0.001 0.001
associd=0 status=0415 leap_none, sync_uhf_radio, 1 event, clock_sync,
version="ntpd 4.2.8p12@1.3728-o (1)", processor="armv7l",
system="Linux/4.19.97-v7+", leap=00, stratum=1, precision=-20,
rootdelay=0.000, rootdisp=1.075, refid=GPS0,
reftime=e221cfef.55b3ebca Sun, Mar 22 2020 14:52:15.334,
clock=e221cff4.d42ce8bb Sun, Mar 22 2020 14:52:20.828, peer=20443, tc=3,
mintc=3, offset=0.001064, frequency=-2.489, sys_jitter=0.000954,
clk_jitter=0.006, clk_wander=0.004, tai=37, leapsec=201701010000,
expire=202006280000
Associations
root@raspberrypi:/etc# ntpq -pn -c ass
remote refid st t when poll reach delay offset jitter
==============================================================================
o127.127.20.0 .GPS0. 0 l 5 8 377 0.000 -0.001 0.003
ind assid status conf reach auth condition last_event cnt
===========================================================
1 20443 971a yes yes none pps.peer sys_peer 1
root@raspberrypi:/etc#
PPSTest
root@raspberrypi:/etc# ppstest /dev/pps0
trying PPS source "/dev/pps0"
found PPS source "/dev/pps0"
ok, found 1 source(s), now start fetching data...
source 0 - assert 1584878216.999999638, sequence: 7451 - clear 0.000000000, sequence: 0
source 0 - assert 1584878217.999998981, sequence: 7452 - clear 0.000000000, sequence: 0
source 0 - assert 1584878218.999999312, sequence: 7453 - clear 0.000000000, sequence: 0
source 0 - assert 1584878219.999999119, sequence: 7454 - clear 0.000000000, sequence: 0
source 0 - assert 1584878220.999999913, sequence: 7455 - clear 0.000000000, sequence: 0
Then after about 60 minutes everything goes wrong:
Notice the “no_sys_peer” entry and x on the server entry.
root@raspberrypi:/etc# ntpq -pn -c rv
remote refid st t when poll reach delay offset jitter
==============================================================================
x127.127.20.0 .GPS0. 0 l 1 8 377 0.000 -20.345 1.154
associd=0 status=0018 leap_none, sync_unspec, 1 event, no_sys_peer,
version="ntpd 4.2.8p12@1.3728-o (1)", processor="armv7l",
system="Linux/4.19.97-v7+", leap=00, stratum=1, precision=-20,
rootdelay=0.000, rootdisp=902.523, refid=GPS0,
reftime=e221e077.55ac2657 Sun, Mar 22 2020 16:02:47.334,
clock=e221e1e0.523212b0 Sun, Mar 22 2020 16:08:48.321, peer=0, tc=3,
mintc=3, offset=-8.531103, frequency=30.136, sys_jitter=431.788750,
clk_jitter=38.617, clk_wander=12.217, tai=37, leapsec=201701010000,
expire=202006280000
Associations
root@raspberrypi:/etc# ntpq -pn -c ass
remote refid st t when poll reach delay offset jitter
==============================================================================
x127.127.20.0 .GPS0. 0 l 6 8 377 0.000 -23.204 1.160
ind assid status conf reach auth condition last_event cnt
===========================================================
1 20443 911a yes yes none falsetick sys_peer 1
PPSTest
PPS is now out of whack.
root@raspberrypi:/etc# ppstest /dev/pps0
trying PPS source "/dev/pps0"
found PPS source "/dev/pps0"
ok, found 1 source(s), now start fetching data...
source 0 - assert 1584882546.021158350, sequence: 11780 - clear 0.000000000, sequence: 0
source 0 - assert 1584882547.021191766, sequence: 11781 - clear 0.000000000, sequence: 0
source 0 - assert 1584882548.021221952, sequence: 11782 - clear 0.000000000, sequence: 0
source 0 - assert 1584882549.021255523, sequence: 11783 - clear 0.000000000, sequence: 0
Can anybody suggest how I can solve this?
I have tried flag3 to both options of Clock discipline and Kernel discipline. Doesnt make any difference.
Thanks in advance,
Alex