Re: [chrony-users] Is my GPS receiver really less accurate than NTP servers?

[ Thread Index | Date Index | More chrony.tuxfamily.org/chrony-users Archives ]


 have no idea what those graphs mean.

 Yes, I have compared my gps against public time servers and the GPS is a few
 orders of magnitude better.

 One possibility is that you are triggering on the wrong edge of the pulse
 from the GPS.

William G. Unruh __| Canadian Institute for|____ Tel: +1(604)822-3273
Physics&Astronomy _|___ Advanced Research _|____ Fax: +1(604)822-5324
UBC, Vancouver,BC _|_ Program in Cosmology |____ unruh@xxxxxxxxxxxxxx
Canada V6T 1Z1 ____|____ and Gravity ______|_ www.theory.physics.ubc.ca/

On Sat, 16 Apr 2022, Dominick C. Pastore wrote:

[CAUTION: Non-UBC Email]

Hello everyone,

I'm sure a bunch of people on this list have seen or tried one of the guides out there for setting up a Raspberry Pi as a stratum 1 time server with a GPS receiver like one of these:

https://www.adafruit.com/product/2324
https://store.uputronics.com/index.php?route=product/product&path=60_64&product_id=81

I'm wondering, has anyone tried comparing their results from one of those guides against public time servers? If so, were the results positive (as in, at least as accurate and more precise than time from NTP servers)? I ask because after setting mine up, I plotted Chrony's reported offset from several public time servers ("Offset" column in measurements.log). I got some interesting results.

(Before I continue, for those who will wonder about my setup: I'm using a Raspberry Pi 3B+ with a Ublox MAX-M8Q GPS receiver and Chrony 4.0. I set the boot options to disable tickless mode and the serial console, installed cpufrequtils and set the cpu governor to full performance, enabled uart and pps and disabled bluetooth and wifi in /boot/config.txt, and uninstalled a few unnecessary daemons.)

First, I compared against NTP pool servers. The results here look pretty phenomenal: https://i.imgur.com/4At0m1d.png The accuracy from the GPS receiver seems to be great. The plot doesn't show the refclock's precision, but it was several orders of magnitude better than the servers as well.

Then I measured against public NTP servers run by large tech companies and NIST. Notably, apart from time.cloudflare.com, these are all stratum 1 servers. This is the plot: https://i.imgur.com/eu267CW.png Here, the picture doesn't look so rosy. In fact, taking those results at face value, I should just abandon the GPS, because it seems I'd get better accuracy by syncing with a few of these servers instead. (It makes no noticeable difference whether Chrony uses GPSd for the refclock or uses /dev/pps0 directly.)

The one thing that does seem a little suspicious is that the offsets for all the servers fall pretty uniformly between about 0 and +5 milliseconds. That seems a little too coincidental, like maybe 5ms is the granularity of the

Teh accuracy from a properly setup GPS is of the order of a few hundres of
nanoseconds, a factor of almost 1000000 from what you are getting. I nd no, 5ms is NOT the granularity of the timestamping, unless your system
clock is really bad.

timer used to timestamp the packets or something. But, admittedly, I have no other reason to believe the measurements aren't correct, and that sounds like an unlikely explanation. I suppose it's possible the PPS from the GPS receiver has a constant 2.5ms delay from somewhere, but I'd be a little surprised (it's not a timing GPS, but the datasheet still quotes a PPS accuracy within 60ns).
Or else your network could be introducing a delay of 2.5ms one way into the
signals from all the network sources.
So are these plots the difference between the offsets of the gps with those of
the verious sites.


So now I'm curious if anyone else with one of these Raspberry Pi setups has done any benchmarking like this. If so, what did your results look like? And does anyone have any theories about the positive offsets between 0 and 5ms in the second plot?

As I mentioned, you may be using the wrong edge of the pps pulse. (2.5ms
sounds like what the pulse width could be).

Thanks,
Nick

--
To unsubscribe email chrony-users-request@xxxxxxxxxxxxxxxxxxxx with "unsubscribe" in the subject. For help email chrony-users-request@xxxxxxxxxxxxxxxxxxxx with "help" in the subject.
Trouble?  Email listmaster@xxxxxxxxxxxxxxxxxxxx.



--
To unsubscribe email chrony-users-request@xxxxxxxxxxxxxxxxxxxx with "unsubscribe" in the subject. For help email chrony-users-request@xxxxxxxxxxxxxxxxxxxx with "help" in the subject.
Trouble?  Email listmaster@xxxxxxxxxxxxxxxxxxxx.


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/