[ntp:questions] ntpd syncs to NMEA message but not PPS

Chris Stankevitz cstankevitz at toyon.com
Sun Jan 25 02:09:44 UTC 2009


Hello,

I believe ntp is syncing to NMEA messages and not my PPS.  I have some
specific questions below.

Facts:

1. My kernel is patched to support LinuxPPS

2. ntpd-4.2.4 patched to support LinuxPPS
http://ftp.enneenne.com/pub/misc/linuxpps/refclocks/nmea/

3. I am using a Garmin GPS18 LVC with PPS tied to DCD

4. ntpd was configured with --disable-all-clocks --disable-parse-clocks
--enable-NMEA --enable-LOCAL-CLOCK

5. ntp.conf contains:
server 127.127.20.0 minpoll 4 prefer
server 127.127.20.0 flag3 1 flag2 0

6. PPS signals are received by the kernel evidenced by entries in
/var/log/messages:
Jan 24 16:57:04 gps kernel: [  136.314349] PPS event at 4294902783
Jan 24 16:57:05 gps kernel: [  136.947295] PPS event at 4294903033

7. The NMEA clock is offset from a stratum 2 server by 600ms:
root at gps:~/ntp-4.2.4p6# ntpq -p
     remote           refid      st t when poll reach   delay   offset
jitter
==============================================================================
 europium.canoni 193.79.237.14    2 u   13   64    1  154.790  548.684
 0.001
 GPS_NMEA(0)     .GPS.            0 l   11   16    1    0.000  -63.337
 0.001

8. ntpdc -c kern makes no reference to pps:
root at gps:~/ntp-4.2.4p6# ntpdc -c kern
pll offset:           -0.017965 s
pll frequency:        82.619 ppm
maximum error:        0.012304 s
estimated error:      1.6e-05 s
status:               0040  unsync
pll time constant:    4
precision:            1e-06 s
frequency tolerance:  512 ppm
root at gps:~/ntp-4.2.4p6#

9. According to ntpdc_ops.c, the pps variables are displayed only if
ik_shift evaluates to true.


Questions:

a) Why doesn't ik_shift evaluate to true in ntpdc_ops.c?

b) How can I confirm that ntp is aware of my PPS signal?

c) How can I get ntp to use PPS?

Thank you,

Chris



More information about the questions mailing list