¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io

Re: chrony GPS time offset on Build-a-Pi


 

Hi Vic. Again, sorry for the super-delayed reply.

The editing process is very simple - sudo nano /etc/chrony/chrony.conf opens the file, you use the arrow keys to navigate down to the line you want to edit (refclock SHM 0 offset 0.5 delay 0.2 refid NMEA), then you can edit what you like. Changes are not immediately applied, you must either save and exit (Ctrl + S and Ctrl + X), or as Jason prefers to do, use Ctrl + X, "y", and Enter to save the file. So I would not worry about making a major error unless you are SUPER uncomfortable with key combos or something... if that's the case I am sure you might have been scared off of BAP before you got here ;)

If you are seeing 0.6 offset normally, change offset to 0.0 and try that. It's worked reasonably well for me so far!

?

?

However, there are new updates that you and others may be interested in. The last paragraph has a very useful article, but I want to describe my process in order, not provide a straight recommendation for a solution that I have not fully put through its paces.

?

First off, I have changed my offset value from the original 0.5 and the updated -0.1, now to 0.045. This offset makes the NMEA source drift in "chronyc -n sources" under 5000 us (5 ms) and very comparable to the internet time sources. I believe this to be an appropriate value for my setup. The DT column in WSJT-X is not 0.0 for most received signals... but I suspect that 0.0 is not correct. I suspect there are several delays that are compiled in that number. Perhaps:
-processing time on the DX computer
-USB delays in the DX soundcard
-signal travel time between you and the DX (I am sure signal travel time over a 10,000 km path is some 10's of ms.... just a guess, not considering relativity or the speed of light through the atmosphere)
-USB delays in my soundcard
-processing time on my computer (Pi)

I also don't know what my transmitted DT was - I could have been -0.2 on the other end... I never tested that with anyone. I should spend some time reading the WSJT-X manual to see if there are any recommendations regarding system time and what is the "correct"/normal DT for two properly timesynced stations. Either way... chronyc -n sources says it's close to perfect... so I'll run with that. The article below describes a better method for determining an appropriate offset, but I have not had time to try it out yet.

?

Secondly, while what I have done so far has worked well, I think it's not perfect. It's taken some time, but I came across this article today and have been trying out some of the suggested changes and methods.

This article describes a more complete view of chrony.conf and configuring it. I have BAP installed, and I was previously messing around with finding the optimal offset, so I ignored steps 1, 2, 3b, 4, and 5. Step 3a, among other items, describes adding "poll 3" to the refclock line. This is EXACTLY the setting I was originally looking for. The article describes that "poll 3" tells chrony to poll this source every 2^3 seconds (8 seconds). I added "poll 2" to my chrony.conf file and now, when I run a watch command similar to the one described in the article ("watch -n 1 chronyc -n sources"), the "LastRx" column for the NMEA source stays below 10. My understanding is that means that chrony has always sampled the GPS time at least once within the last 10 seconds. This seems to be working extremely well for me, BUT I have not tested this on a POTA activation yet. I will try to update you all when I have that opportunity.

Again, the article describes a process to determine the correct offset. I have not had time to try that process but it seems like a good method!

?

I hope this is helpful!
73 VE3GKT

Join [email protected] to automatically receive all group messages.