¿ªÔÆÌåÓý

Re: GPS time synchronization with several Pi's at different locations.


 

¿ªÔÆÌåÓý

Having recently set up a RPi/GPS for the purpose of making a time server I learned that getting really accurate results requires more than just marrying a GPS to the RPi. For the record I wasn't after super accurate time, I only wanted to go through the exercise of seeing what I could end up with. I learned along the way that ...
1. the majority of USB GPS's are not capable of accurate time because they don't provide PPS. There are few exceptions but most convert RS232 to USB in the GPS and don't provide PPS
2. PPS is an absolute requirement for accurate time
3. Modern Linux kernels have "kernel pps" to minimise latency. Older kernels could be patched.
4. Navigation GPS units are not necessarily providers of really accurate time, timing grade GPS's are made for that purpose

My time server uses a uBlox LEA4 GPS which is not a timing standard unit, the uBlox MAX8 is MUCH better in that regard. My server is located in a steel clad shed with poor thermal stability and ntpstat currently reports 5mS accuracy, better than I need for my LAN. The RPi (model 2) is fitted with a DS2321 RTC, set up as per instructions on this site


There are numerous places on the web to gather information about accurate time, hardware requirements, and instructional howtos. Many utilise the RPi.






The third link above contains a link to suitable (and some unsuitable) GPS units. I followed the instructions on that site when setting up my RPi. To me, it seemed the most complete instructions ... and it worked.

Those links will answer questions you have asked, and questions you probably haven't thought about (;->)

HTH
Ray vk2tv

On 16/10/19 12:44 pm, Jeff Estal wrote:

I want to synchronize multiple raspberry pi's where each has it's own gps device.
They need to be extremely accurate. Something in the pico seconds range.

I have a cheap gps-usb device from Amazon and have been recieving data from it with python, but the time data only displays seconds always with .00 for any portion of the seconds which seems odd.

How might i approach this?
Is certain hardware better or worse?
When data is pulled from a gps device, is there timing considerations as to when to get the data or when to store it?
I"d probably need to also have a realtime clock to update.

thanks,

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