Time standards: How accurate is GPS modules? - Page 1
Forum section: electronics / general

author: technix
author_rank: Super Contributor
timestamp: November 16, 2016, 08:39:01 pm
content: I have a GPS module based on u-blox 6010 chipset. How accurate would its PPS signal be? I am running a Stratum 1 NTP server disciplined by the PPS output of that module and backed by a DS3231 TCXO RTC chip on one of my Raspberry Pi.(You can test it with ntp.maxchan.info, but I cannot guarantee accuracy yet.)

author: edavid
author_rank: Super Contributor
timestamp: November 16, 2016, 09:56:37 pm
content: Here's a good explanation from u-blox:https://www.u-blox.com/sites/default/files/products/documents/Timing_AppNote_%28GPS.G6-X-11007%29.pdf

author: kc8apf
author_rank: Regular Contributor
timestamp: November 17, 2016, 03:28:26 am
content: My memory is fuzzy. Depending on interrupt latency, you should be able to get within 50ns to 10us of the PPS period. You'd need to check the PPS offset reported by the receiver to see how closely the PPS is aligned with the actual GPS second edge. When I was playing with this a few months ago, I found chrony to have fairly detailed stats of PPS quality including jitter, etc. Tracking down delays in the PPS path can be really tricky so getting absolute accuracy against GPS is hard.Sent from my Nexus 5X using Tapatalk

author: technix
author_rank: Super Contributor
timestamp: November 18, 2016, 08:41:01 pm
content: Quote from: kc8apf on November 17, 2016, 03:28:26 amWell since my module is a general purpose one instead of a receiver designed to provide a reference clock, and I have to run it inside gpsd on the Pi, there is no way to check the PPS accuracy.

author: kc8apf
author_rank: Regular Contributor
timestamp: November 18, 2016, 08:58:23 pm
content: chrony is an alternative to ntpd that can be integrated with gpsd.Sent from my K88 using Tapatalk

author: technix
author_rank: Super Contributor
timestamp: November 18, 2016, 09:12:16 pm
content: Quote from: kc8apf on November 18, 2016, 08:58:23 pmCan it accept PPS signal from elsewhere than gpsd? On Raspberry Pi the traditional PPS-on-Serial connection doesn't work as there is no flow control pins, instead pps-gpio is used to use the GPIO infrastructure and related interrupts to drive PPS.

author: kc8apf
author_rank: Regular Contributor
timestamp: November 18, 2016, 09:21:25 pm
content: Quote from: technix on November 18, 2016, 09:12:16 pmYes. You add a pps reference and link it to the GPS source. I ended up not using gpsd at all in my system. I wrote a spare daemon that speaks Ublox UBX and feeds the time samples directly to chrony via a socket reference source. PPS was handled via an FPGA that delivered an interrupt which had a driver that feed into kpps in the kernel.Sent from my K88 using Tapatalk

author: nfmax
author_rank: Super Contributor
timestamp: November 18, 2016, 09:23:14 pm
content: Everything you could ever want to know about using a Raspberry Pi as a GPS-locked ntp server:http://satsignal.eu/raspberry-pi/index.html

author: technix
author_rank: Super Contributor
timestamp: November 18, 2016, 09:57:04 pm
content: Quote from: nfmax on November 18, 2016, 09:23:14 pmI followed some of the notes there to build the server actually...(And I do want to build the NTP-enabled wall clock too, just not using Raspberry Pi - I want to implement it using Arduino with ESP8266-based Wi-Fi.)

author: bitseeker
author_rank: Super Contributor
timestamp: November 19, 2016, 01:53:30 am
content: Quote from: technix on November 18, 2016, 09:57:04 pmI look forward to seeing that, technix. I recently picked up one of the inexpensive Ublox-based modules and have several ESP8266 lying around.

author: technix
author_rank: Super Contributor
timestamp: November 19, 2016, 11:37:51 am
content: Quote from: blueskull on November 19, 2016, 09:54:27 amWhat if I am trying to syncing a 32768Hz oscillator to the GPS module?On a design of mine I have a GPS module, a DS3231 and an ATmega328P all connected to the Pi. The ATmega is clocking its Timer 1 on the 32768Hz from the DS3231 while interrupting on the PPS, allowing some algorithm on the ATmega to calibrate the DS3231 against the GPS.