[ntp:questions] Configuring FreeBSD 6.2 for use with Garmin GPS 18 LVC

Spoon root at localhost.invalid
Tue Dec 18 09:15:28 UTC 2007


Dennis Hilberg, Jr. wrote:

> Thanks to everyone who replied to this thread.  The server is running 
> successfully.  I had no problems recompiling and booting the kernel.  If 
> only the Linux kernel recompile process was as easy!
> 
> The only issue I have is the GPS is loosing satellite sync periodically, 
> whereas it rarely lost sync when it was hooked to the Linux box.
> 
> Also, initially ntpd would stop using the GPS as the system peer shortly 
> after startup, even though the GPS still had sync.  I rebooted the 
> system, thinking perhaps the links weren't created correctly, and that 
> seems to have fixed that issue for now.
> 
> I see a lot of this behavior in the ntp log:
> 
> 16 Dec 12:06:21 ntpd[814]: synchronized to 164.67.62.194, stratum 1
> 16 Dec 12:06:21 ntpd[814]: kernel time sync status change 2101
> 16 Dec 12:07:04 ntpd[814]: synchronized to GPS_NMEA(0), stratum 0
> 16 Dec 12:07:04 ntpd[814]: kernel time sync status change 2107
> 16 Dec 15:30:05 ntpd[814]: synchronized to 164.67.62.194, stratum 1
> 16 Dec 15:34:26 ntpd[814]: kernel time sync error 2007
> 16 Dec 15:43:16 ntpd[814]: synchronized to GPS_NMEA(0), stratum 0
> 16 Dec 15:43:16 ntpd[814]: kernel time sync status change 2101
> 16 Dec 15:43:32 ntpd[814]: kernel time sync status change 2107
> 16 Dec 17:54:38 ntpd[814]: synchronized to 164.67.62.194, stratum 1
> 16 Dec 17:57:38 ntpd[814]: synchronized to GPS_NMEA(0), stratum 0
> 16 Dec 18:07:59 ntpd[814]: kernel time sync error 2307
> 16 Dec 18:08:17 ntpd[814]: kernel time sync status change 2107
> 16 Dec 21:13:28 ntpd[814]: synchronized to 164.67.62.194, stratum 1
> 16 Dec 21:22:12 ntpd[814]: synchronized to GPS_NMEA(0), stratum 0
> 16 Dec 21:28:30 ntpd[814]: synchronized to 164.67.62.194, stratum 1
> 16 Dec 21:32:16 ntpd[814]: synchronized to GPS_NMEA(0), stratum 0
> 16 Dec 21:33:54 ntpd[814]: synchronized to 164.67.62.194, stratum 1
> 16 Dec 21:36:43 ntpd[814]: synchronized to GPS_NMEA(0), stratum 0
> 16 Dec 21:44:27 ntpd[814]: synchronized to 164.67.62.194, stratum 1
> 16 Dec 21:51:25 ntpd[814]: synchronized to 64.125.78.85, stratum 1
> 16 Dec 21:55:16 ntpd[814]: synchronized to GPS_NMEA(0), stratum 0
> 16 Dec 23:15:18 ntpd[814]: kernel time sync error 2307
> 16 Dec 23:15:33 ntpd[814]: kernel time sync status change 2107
> 
> I don't know what 'kernel time sync error' and 'kernel time sync status 
> change' mean, but I'm assuming that when ntpd switches from the GPS to 
> one of the other internet servers that it's loosing sync.  Thoughts?

cf. kernel/sys/timex.h

/*
  * Status codes (timex.status)
  */
#define STA_PLL		0x0001	/* enable PLL updates (rw) */
#define STA_PPSFREQ	0x0002	/* enable PPS freq discipline (rw) */
#define STA_PPSTIME	0x0004	/* enable PPS time discipline (rw) */
#define STA_FLL		0x0008	/* select frequency-lock mode (rw) */

#define STA_INS		0x0010	/* insert leap (rw) */
#define STA_DEL		0x0020	/* delete leap (rw) */
#define STA_UNSYNC	0x0040	/* clock unsynchronized (rw) */
#define STA_FREQHOLD	0x0080	/* hold frequency (rw) */

#define STA_PPSSIGNAL	0x0100	/* PPS signal present (ro) */
#define STA_PPSJITTER	0x0200	/* PPS signal jitter exceeded (ro) */
#define STA_PPSWANDER	0x0400	/* PPS signal wander exceeded (ro) */
#define STA_PPSERROR	0x0800	/* PPS signal calibration error (ro) */

#define STA_CLOCKERR	0x1000	/* clock hardware fault (ro) */

2107 = STA_PLL | STA_PPSFREQ | STA_PPSTIME | STA_PPSSIGNAL | 0x2000

(Where is 0x2000 defined?)

2307 adds STA_PPSJITTER (PPS signal jitter exceeded).




More information about the questions mailing list