[TangerineSDR] Notes from PSWS / TangerineSDR call

John Ackermann N8UR jra at febo.com
Tue May 25 10:27:54 EDT 2021


Following up on last night's conversation about holdover... (This is way 
longer than anyone wants to read, but I think this is a good opportunity 
to document the holdover details.)

As background, in a traditional GPSDO you get a free low-jitter PPS 
signal derived from the XO because the the phase comparator uses GPS PPS 
and local PPS as inputs and steers local to match GPS.  In holdover, the 
local PPS remains locked to the XO without any glitches or phase jumps 
(in theory).  The "PPS OUT" spigot on the GPS is normally the local 
signal, as it will have lower jitter than the GPS PPS.

Our scheme doesn't use PPS for phase comparison, so we don't get that 
free signal to work with.  Therefore, PPS during holdover needs to be 
derived elsewhere.

When I tested the u-blox F9T to see what its PPS output looked like when 
GPS lock is lost, the result wasn't pretty.  The PPS phase jumped 
quickly away from the locked signal and bounced around after that.  We 
don't want to use the no-lock GPS PPS for timing.  (I should have 
recorded some data but didn't; will try to do so next time I have the 
gear set up.)

So, we don't want to rely on the GPS PPS during holdover.  To make 
things more interesting, there is no hardware signal from the GPS to 
reliably indicate lock status.  The status is available via both the 
u-blox binary and NMEA message streams, but that requires computation to 
detect.

Several NMEA messages include a field that indicates fix/lock status: 
GLL, RMC, GGA, VTG, and GNS, though the return values are different 
(some return "V" for invalid, others numeral 0, and in one case "N").

The u-blox binary messages that provide fix/lock status include 
UBX-NAV-PVT, UBX-NAV-STATUS, and UBX-NAV-TIMEUTC (there are probably 
others).

u-blox recommends that a 1 Hz rate be used for messages, and I do not 
think that polling more frequently will result in faster loss-of-lock 
detection.

Last night I said that the u-blox receivers didn't have a way to control 
PPS when lock is lost.  That was in error.  The UBX-CFG-TP5 message 
allows you to set different pulse parameters for when the receiver is 
locked and unlocked.  So you can, e.g., set the pulse width to 0 in 
unlock to disable the PPS output.  Then we could simply test for 
presence of GPS PPS and respond accordingly.  I don't know if that's 
something we want to do, or not.  It's easily changeable via config, so 
we can experiment.

So, finally, after all that...

What Scotty and I have talked about is to have a counter in the Data 
Engine FPGA that derives a PPS signal from the 122.88 MHz clock (which 
comes from the GPSDO and has the holdover stability/accuracy of the 
TCXO), and use that as the system PPS.

At boot, and at reasonable intervals thereafter, the FPGA will check the 
GPS to determine lock status.  If it is locked, the FPGA will compare 
the phase of the local PPS to the GPS PPS, making an adjustment if 
necessary. [ Assuming normal operation the 122.88 will be loosely phase 
locked to GPS and there should be no time gained or lost, so adjustment 
should never be needed; this is primarily a sanity check. ]

If GPS lock is lost, the system PPS output will continue unperturbed and 
have the stability/accuracy of the TCXO in the CKM module.  When lock is 
regained, the FPGA will once again set the system PPS to be in phase 
with GPS PPS (whether this should be a jam-sync or steered is an open 
question).

Question: do we need to synthesize a timestamp message for holdover, to 
replace a GPS time message?  (e.g., will any service need a 
once-per-second current-time message?)

That's my story, and if you don't like it, well, I have others. :-)

73,
John
----

On 5/24/21 10:19 PM, Tom McDermott via TangerineSDR wrote:
> 
> Notes from PSWS / TangerineSDR call of 05-24-2021
> 
> 1. John and Scotty located a replacement TCXO for the clock module and 
> they are on order (the previous unit was not available for production). 
> Scotty received the 7-port Ethernet chip. The USB3 (mid August delivery) 
> and FPGA (date not yet committed) are the only components not yet promised.
> 
> 2. Discussion on power supply bypassing for low conducted noise. Scotty 
> will send Tom part numbers of the output bypass caps he is planning for 
> the +12v to +5v switcher.
> 
> 3. Discussion on PPS during holdover. John recommends having the FPGA 
> generate PPS from the synthesizer and update/synchronize that against 
> GPS PPS when GPS in-lock, and holdover when GPS out-of-lock. The new 
> TCXO has good holdover performance ( +/- 40 ppb over 24 hours at 
> constant temperature).
> 
> -- Tom, N5EG
> 
> 



More information about the TangerineSDR mailing list