It wasn’t much more precise then the USB GPS.
The accuracy was about the same.
My USB PPS GPS:
https://community.ntppool.org/t/usb-gps-with-pps-and-pretty-cheap-too/1586
So I combined it with my Garmin RS-232 GPS+PPS as listed above.
I reach a pretty good accuracy now:
210 Number of sources = 8
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
GPS 17 10 257 +37.458 83.403 -12ms 5924us
GPS2 19 9 290 +5.619 7.475 -6640us 710us
PPS 6 6 38 -0.225 3.238 -70ns 11us
PPS 7 4 48 -8.022 5.128 -61us 25us
210 Number of sources = 8
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
#- GPS 0 4 377 14 -19ms[ -19ms] +/- 53ms
#- GPS2 0 4 377 13 -6066us[-6065us] +/- 51ms
#* PPS 0 3 377 6 +2635ns[+3819ns] +/- 13us
#- PPS 0 3 377 8 +155us[ +155us] +/- 32us
I fugured that since both receivers don’t have the same reception receiver and antenna, they combined give a far better accuracy then each of them alone.
The config I’m using now it this:
# GPS on RS232 isn't needed for total time.
refclock SHM 0 poll 4 refid GPS offset 0.532 precision 1e-3 maxlockage 32 delay 0.1
refclock SHM 2 poll 4 refid GPS2 offset 0.134 precision 1e-3 maxlockage 32 delay 0.1
refclock SHM 1 poll 3 refid PPS lock GPS offset 0.00075 precision 1e-8 prefer
refclock SHM 3 poll 3 refid PPS lock GPS2 offset 0.1013 precision 1e-8 prefer
It depends on where the sat’s are on the horizon if one or the other is better or not.
At the list of TimeTeamBelgium I’m pretty good listed most of the time, where I used to be almost always the least accurate.
remote refid st t when poll reach delay offset jitter
==============================================================================
+ntp-main-1.oma. .EXT. 1 u 143 512 377 10.255 +0.257 1.753
*ntp-main-2.oma. .MRS. 1 u 327 512 377 8.724 -0.208 0.997
-heppen.be .PPS. 1 u 249 512 377 27.182 +0.018 1.313
+ntp0.nl.uu.net .GPS. 1 u 128 512 377 21.547 +2.366 1.313
+time1.esa.int .MRS. 1 u 74 512 377 16.187 -0.089 10.944
+ptbtime1.ptb.de .PTB. 1 u 111 512 377 26.447 +0.060 1.228
+ptbtime2.ptb.de .PTB. 1 u 493 512 377 27.515 +0.308 1.567
+ntp1.rrze.uni-e .DCFp. 1 u 342 512 377 21.880 -1.098 2.282
+ntp2.rrze.uni-e .MBGh. 1 u 467 512 377 22.517 +0.435 1.172
I’m mostly in the upper part of accuracy now and not dead last
In short, it helps to use multiple GPS+PPS devices and put them about 1 meter apart of eachother.
Different brands have different antenna’s and different receiver-chips, combine them does help, help a lot.
However, if you do want to use just 1 GPS+PPS, I can recommend the Garmin RS-232 version (soldering needed), else the USB version is good second.
I also set Chronyd and GPSD at Nice -20 and Realtime-scheduling in systemd.
nano /lib/systemd/system/chrony.service
then add this under [Service]
Nice=-20
CPUSchedulingPriority=rr
Do the same for GPSD. It will improve accuracy a lot as the CPU gives it maximum CPU-time and priority above everything else.