[time-nuts] New design for a GPS disciplined OCXO or Rubidium

Pavel Kořenský pavel.korensky at gmail.com
Mon May 13 20:04:12 UTC 2024


Hello,

I used a modified Brooks Shera GPSDO (with some Gollidge OCXO an 
Motorola OnCore UT+ GPS) since 1999 as a timebase for my workshop 
(signal generator, counter etc.).

At the beginning of 2024, the unit died an I found that the whole thing 
is beyond repair, because capacitors are old, the whole plastic box is 
already decomposing etc. etc. So, I decided to design a brand new GPSDO 
with a different approach.

I bought the uBlox F9T timing GPS module: 
https://www.sparkfun.com/products/18774 and I designed a relatively 
simple circuit with 74HCT4046A and Pi Pico.

The whole design works as follows:

The 4046 is using its phase comparator OC1 (exclusive-or) for phase 
comparison of 10 MHz signal from oscillator (divided by 16 with 
74HCT393) and 1.25 MHz signal from F9T GPS (divided by 2). Ideally, if 
those two signals are locked, there should be exactly 50% duty cycle 
signal on the OC1 output. The sinus signals from local oscillator and 
GPS are connected to the 4046 via AC-coupled Schmitt buffers (74LVC1G97).

The OC1 output duty cycle is measured constantly by two PIO modules of 
Pi Pico. Pi Pico software implements a PI regulator (loop run each 
100ms) and is steering a local oscillator with 20bit SPI-DAC ( MAX5719) 
with a precision 5V reference (LT1021).

The GPS output signal 1.25 MHz is in F9T internally locked to 1PPS 
signal from GPS satellites and is pretty precise by itself. Far better 
than was the 1PPS from my old Motorola Oncore UT+ back in 1999. At those 
times, there was a SA in GPS signal.

But the GPS signal is not ideal, there are phase differences and spikes 
couple of ns here and there. So, with the help of my colleague, we 
implemented the Kalman filter which is used for measured duty cycle 
filtration in PI loop.

The whole solution is able to recover from smaller sudden phase 
differences during couple of seconds. From large sudden phase 
differences, the recovery time is around 30-35 seconds, because firstly 
the Kalman filter is disconnected and cleared, the normal PI loop lock 
fast again and after 30 seconds of lock, the Kalman filter is switched 
on again.

Currently the whole design is running on breadboard, using one old 
HP-10811A double-oven OCXO as a local oscillator,  the power supply is a 
chaotic mess of cheap DC-DC converters etc. but the measured results are 
quite good. See the picture, where my design is compared to TM4313 
GPSDO. I measured both devices with my Agilent 53132A which has a 
non-disciplined Rubidium standard (Efratom FRS-C) as a timebase.


In the next phase, I will build a decent linear power supply for the 
whole thing, I will put the design (without local oscillator) on the PCB 
and in the box. I want to use my existing Efratom FRS-C as a local 
oscillator with much better short term stability than the HP-10811A. The 
only difference (from electronic point of view) is that FRS-C has a 
control voltage 0-5V and HP-10811A has a control voltage -5V to +5V.

The only thing which I do not know is how to test the final design, 
because I do not have access to third, more precise "reference" 
frequency in the form of either cesium frequency standard or hydrogen maser.

What do you think about my design  ? Did I missed something ?

PavelK




-------------- next part --------------
A non-text attachment was scrubbed...
Name: Sn??mekobrazovky2024-05-13202444.png
Type: image/png
Size: 107300 bytes
Desc: not available
URL: <http://febo.com/pipermail/time-nuts_lists.febo.com/attachments/20240513/ab614cd5/attachment.png>


More information about the Time-nuts_lists.febo.com mailing list