GPS PPS Separation

I set up two Raspberry Pi SBCs with GPS boards as NTP servers earlier this year. I used an oscilloscope to see how far apart the “pulse per second” (PPS) pulses that the GPS boards output.

I used two different GPS boards, both apparently using ublox GPS receivers.

Despite being in the same room next to a bay window facing east, the two receivers decide to use different GPS satellite for a fix. Perhaps this is due o different antennas - the NEO-M8T has a much better antenna.

The two serves I have using both RasPis as NTP servers invariably choose the RasPi 5 with the NEO-M8T as the “current best” server. The RasPi 3 with the GT-U7 is “combined” with the RasPi 5.

Each of the boards has a red LED that flashes once a second. To my eye, the flashes are a fraction of a second apart.

PPS separation via oscilloscope

I’ve got a Siglent SDS1104X-E oscilloscope, so I decided to see how far apart the PPS signals are. I clipped the ground lead of a probe to Pin 14 on each of the RasPis, and the appropriate probe to a PPS pin on each of the boards. I had the oscilloscope on “auto” as much as possible. It picked “DC Coupling”.

Oscilloscope trace of 2 PPS signals

Channel 1 (yellow) is the NEO-M8T. Channel 2 (purple) is the GT-U7.

Each of them has a 3.02V, 100ms step, and they’re very close. While I had the oscilloscope hooked up, the PPS signal did wander a tiny bit. The oscilloscope said that a max of 8ms “delay” happened sometimes. Both signals wandered at the same time, so this may be an artifact.

Oscilloscope trace of 2 PPS traces subtracted

Above, same channels and colors, but white is CH1 - CH2. There appears to be a tiny separation, but I’m not an electronics guy, that could just be ringing on the rising and trailing edges of the pulses.

Oscilloscope trace of tailing edge of 2 PPS traces

A zoom on the falling edge of the two PPS traces. As I set the cursors, the trailing edges are 0.1ms apart. I could not get the scope to show me leading edges. I am an oscilloscope newbie.