[ntp:questions] NTP & PPS, part 2 ;)

Sander Smeenk ssmeenk at freshdot.net
Thu Dec 11 16:14:19 UTC 2014

Quoting Sander Smeenk (ssmeenk at freshdot.net):

> 1) Can i get a 'true PPS sync' with this setup?
> 2) What could i possibly do to get NTP to sync/accept the NMEA data,

Thanks for all tips about the other reference drivers and personal
experiences. I've got driver 20 (GENERIC_NMEA) running, but driver 22

During startup ntp logs:
| ntpd[20600]: refclock_newpeer: clock type 22 invalid
| ntpd[20600]: interface -> (none)

But i'm quite sure driver 22 is compiled in the binary i'm running.
I'm using Ubuntu's ntp pacakge (1:4.2.6.p5+dfsg-3ubuntu2) and it
compiles with --enable-all-clocks. Also, the strings from the source
code are in the binary:
| # strings /usr/sbin/ntpd | grep PPS
| PPS enabled
| PPS disabled
| PPS no signal
|     PPS is from UTC
|     PPS is from GPS
| PARSE receiver #%d: new PPS phase adjustment %.6f s
| PARSE receiver #%d: PPStime %s
| PARSE receiver #%d: reference clock "%s" (I/O device %s, PPS device %s)
| added
| PARSE receiver #%d: rootdelay %.6f s, phase adjustment %.6f s, PPS phase
| adjustment %.6f s, %s IO handling
| PARSE receiver #%d: %sPPS support%s
| PPS Clock Discipline (22)

JFYI, i did "attach" the PPS discipline to the serial port, kernel logs:
| [000d00h18m50s] pps pps0: new PPS source serial0
| [000d00h18m50s] pps pps0: source "/dev/ttyS0" added
Also, gpsd is not running anymore, but has no trouble finding the PPS
when started and 'ppswatch /dev/pps0' shows a stable PPS pulse.

My ntp.conf as of now:
| driftfile /var/lib/ntp/ntp.drift
| disable monitor
| # NMEA  http://doc.ntp.org/4.2.6/drivers/driver20.html
| server mode 2 minpoll 4 maxpoll 4 noselect
| fudge time1 0.000 refid NMEA
| # PPS   http://doc.ntp.org/4.2.6/drivers/driver22.html
| server minpoll 4 maxpoll 4 noselect
| fudge time1 0.000 refid PPS
| # External NTP servers
| server iburst prefer
| server iburst
| server iburst
| server iburst
| # Defaults for all hosts
| restrict default nomodify noquery nopeer notrap
| restrict -6 default nomodify noquery nopeer notrap
| restrict :: nomodify noquery nopeer notrap
| restrict
| restrict ::1

| Oh, i'm sorry! Were you waiting for me to give a damn?
| 4096R/20CC6CD2 - 6D40 1A20 B9AA 87D4 84C7  FBD6 F3A9 9442 20CC 6CD2

More information about the questions mailing list