[ntp:questions] questions] GPS/PPS and "enable calibrate"

David J Taylor david-taylor at blueyonder.co.uk
Fri Sep 6 14:09:12 UTC 2013

Sorry for top posting, but Outlook is quoting things correctly.

I did check out your site and based my original setup on it.  Lots of 
impressive stuff there!

The part I couldn't figure out the fudge time2 values.  Using the one that 
was pointed out to me by Wolfgang is working very nicely with the other 

I am curious how that value is determined.  I am assuming someone that 
understood it used the calibrate capability to come up with the 0.496 number 
that works for rpi-gpio cases.


I'm replying by e-mail as I haven't seen your reply appear on the Usenet 
server - so far.

Providing your serial data is with, say, 0.5 seconds of true PPS, there's 
likely no need to do anything, especially if you have other servers which 
can provide you with the nearest second.  Otherwise, the calibration steps 
basically are (as I understand it):

- set the time fudge to zero, but the serial device to noselect.

- run NTP as normal, either with Internet servers, local servers, or the PPS 
source as the servers.  You can simply use all three, if you like.

- after some time, perhaps a few minutes is enough, watch the reported 
offset values for the serial source.  You should see that it never has a 
tally code in the  ntpq -pn  output, as it's marked  noselect.

- alter the time1 fudge factor (in seconds) to match the negative value of 
reported offset (which is in milliseconds).  So if the offset is -353.00, 
set the fudge to +0.353.  Likely you will see the offset vary perhaps by as 
much as tens of milliseconds, so guess (or measure) an average value.

- restart NTP, and see that the reported offset for the serial data is now 
near to zero (within a hundred milliseconds either way is fine).

- repeat and refine the offset value if you feel it is necessary.

I see you mention time2.  As far as I can see, time2 for the type 20 driver 
serves the same function as time1 for the type 28 (SHM) driver, which is 
what I did the tests on for the data I mentioned above.  In principle, you 
could also use a 'scope to determine the offset, but I don't know whether 
you would time the start of the serial data, the end of the serial data, or 
the end of the first sentence of the serial data as it may differ across 
different implementations.

SatSignal Software - Quality software written to your requirements
Web: http://www.satsignal.eu
Email: david-taylor at blueyonder.co.uk 

More information about the questions mailing list