[LinuxPPS] 2.6.34 64 bit not working

William S. Brasher billb958 at door.net
Tue Jun 29 06:04:44 CEST 2010


On Mon, 28 Jun 2010, Shane W wrote:

> Hi,
> 
> I did try restarting ntpd a few times. My ntpd.conf:
> server 127.127.20.0 minpoll 4 prefer
> fudge 127.127.20.0 flag3 1 flag2 0 flag1 1 time1=0.000
> 
> It is indeed a gpc 18 LVC but has never been a problem in
> previous kernels.
> 
> Shane
> 
> On Sat, Jun 26, 2010 at 06:58:08AM +0200, Udo van den Heuvel wrote:
> > On 2010-06-25 19:19, Shane W wrote:
> > > Any ideas?
> > 
> > Maybe.
> > I saw the same ~160ms offset on the local ntpd server. (with a Garmin
> > GPS18LVC)
> > 
> > In #ntp on freenode we reserached this a bit; I do not recall all
> > details; it appears the NMEA sentence is around 160 ms in length.
> > (depending on which sentence)
> > Did you try to restart ntpd a few times?
> > What is your config? GPS? GPS-config?
> > 
> > _______________________________________________
> > LinuxPPS mailing list
> > LinuxPPS at ml.enneenne.com
> > http://ml.enneenne.com/cgi-bin/mailman/listinfo/linuxpps
> > Wiki: http://wiki.enneenne.com/index.php/LinuxPPS_support
> 
> _______________________________________________
> LinuxPPS mailing list
> LinuxPPS at ml.enneenne.com
> http://ml.enneenne.com/cgi-bin/mailman/listinfo/linuxpps
> Wiki: http://wiki.enneenne.com/index.php/LinuxPPS_support
> 
> 


Guys,

I have three machines, and on two of them ntpd refuses to sync to PPS if 
there is another, external server configured in ntp.conf.

It seems that something like this happens:

The ntpd daemon starts and syncs to the NMEA source after a (short) bit of 
time. A little later ntpd syncs to the external server, and then reports 
an offset between that server and NMEA of about 160 ms.  Finally, ntpd 
'sees' that the external server(s) and NMEA are too far apart, so ntpd 
rejects the NMEA time source. 

That means that ntpd won't sync to PPS, since it doesn't have the NMEA 
present.


So, I removed the external servers from ntp.conf - by changing "server 
<...> iburst" to "server <...> noselect".  While this 'fixes' the problem, 
it means there is no external server available if something happens to the 
GPS signal.


Finally, the NMEA driver supports a fudge factor, time2, which "Specifies 
the serial end of line time offset calibration factor, in seconds and 
fraction, with default 0.0."  I suspect this fudge factor may be used to 
bring the NMEA offset close enough to zero that ntpd will use both the 
local GPS clock and the external servers.



At the moment, my boxes show the following: 

Via C3 running linux 2.4:
server             remote           refid      st t when poll reach   delay   offset  jitter
============================================================================================
chronos       +GPS_NMEA(0)     .GPS.            0 l   21   64  377    0.000    0.000   0.001
chronos       oPPS(0)          .PPS.            0 l   55   64  377    0.000    0.000   0.001


Via C3, linux 2.6.34, HZ=100:
server             remote           refid      st t when poll reach   delay   offset  jitter
============================================================================================
tara          oGPS_NMEA(0)     .GPS.            0 l    8   16  377    0.000    0.001   0.002
tara          +chronos         .PPS.            1 u   12   64  377    0.152   -0.005   0.022
tara           tick            .INIT.          16 u    - 1024    0    0.000    0.000   0.000
tara           tock            .INIT.          16 u    - 1024    0    0.000    0.000   0.000
tara           frodo           192.168.48.2     2 u   12   64  377    0.160   -3.527   0.426
tara           merlin          192.168.48.2     2 u   66   64  377    0.160    6.861   0.075
tara           gandalf         192.168.48.2     2 u   51   64  377    0.174   -1.214   0.032
tara           alpha           192.168.48.2     2 u    1   64  377    0.187    0.161   0.012


Via C7, HZ=1000, CONFIG_NO_HZ=y:
server             remote           refid      st t when poll reach   delay   offset  jitter
============================================================================================
inara         oGPS_NMEA(0)     .GPS.            0 l    1   16  377    0.000    0.000   0.001
inara          chronos         .PPS.            1 u   20   64  377    0.150    0.005   0.004
inara          frodo           192.168.48.2     2 u   34   64  377    0.145   -3.599   0.502
inara          merlin          192.168.48.2     2 u   41   64  377    0.141    6.833   0.070
inara          gandalf         192.168.48.2     2 u   59   64  377    0.177   -1.265   0.056
inara          alpha           192.168.48.2     2 u   12   64  377    0.180    0.146   0.007


Via 64 bit, HZ=100: 
server             remote           refid      st t when poll reach   delay   offset  jitter
============================================================================================
spectre       oGPS_NMEA(0)     .GPS.            0 l    3   16  377    0.000    0.000   0.001
spectre        chronos         .PPS.            1 u   49   64  377    0.101    0.001   0.005
spectre        frodo           192.168.48.2     2 u   25   64  377    0.110   -2.827   0.514
spectre        merlin          192.168.48.2     2 u   52   64  377    0.097    6.853   0.084
spectre        gandalf         192.168.48.2     2 u   49   64  377    0.100   -1.213   0.043
spectre        alpha           192.168.48.2     2 u   52   64  377    0.138    0.147   0.005



More information about the LinuxPPS mailing list