ad: Schulman-1

GPS Referenced Oscillator Project

Discussion in 'Amplitude Modulation' started by W8KHK, Oct 12, 2018.

ad: L-HROutlet
ad: l-rl
ad: Subscribe
ad: Left-3
ad: abrind-2
ad: L-MFJ
ad: Left-2
  1. W8KHK

    W8KHK Ham Member QRZ Page

    After reading Dennis' (W7TFO) thread in august about WWV et al getting the axe, I started looking at alternatives. I collaborated with my friend Richard, W4BYT, on this project and many others.

    Many GPS Disciplined or Referenced oscillators were available on Amazon and the bay, starting around $200.00. Looking at these I decided which features were desirable, but then considered building instead of buying. I find that I learn a lot with each new project I build. Such was the case with the GPSRO.

    It was a surprise that QEX offered a perfect solution by Elwood Downey (WB0OEW), four pages of information on design criteria and the basic circuit. His website can be viewed here:

    and the entire QEX article may be found here:

    I am rather tired of hand-wiring these solid state projects with #30 wire (fishline), so I decided to prototype the circuit, evaluate the software, and then create a PC board to make the build a bit easier. I also wish to explore other methods and components for similar applications, so I am in the process of designing a universal GPS VFO board that may be used with a combination of different components.

    The cost of all the major components was less than $120 for this build, however it is possible to achieve the same results, sans graphic display, for around $40.00. (This option will be available as soon as the universal board layout is completed.) Major parts required are:

    $37 GPS module
    $14 GPS antenna (with amplifier)
    $39 TFT LCD touchscreen display
    $16 or $8 for DDS generator, (with or without temperature compensation)
    $4 Arduino Nano Microcontroller
    $3 Rotary encoder

    Other parts include the PC board ($35 for ten including shipping from Shenzhen, China)
    2 resistors, 2 diodes, 12 capacitors, 4 regulators (one switcher, 3 linear) enclosure, wire, and hardware

    I will share photos here of the bare boards as received from JLCPCB, the major components, and the assembled board. In additional posts I will show photographs of the populated board, front and back views of working unit, initial test results, and inside and front views of the completed / packaged unit.

    BareBoard.JPG MajorComponents.JPG
    Last edited: Oct 12, 2018
    K6CLS likes this.
  2. W8KHK

    W8KHK Ham Member QRZ Page

    Here are photos of the assembled board, and a front and back view with the board populated. The TFT LCD display plugs directly into the front of the board, while all other components plug into the component side. The only detached component is the rotary encoder, which is connected by a ribbon of five dupont wires.



    K6CLS likes this.
  3. W8KHK

    W8KHK Ham Member QRZ Page

    The following photos show the initial test results, inside view of the assembled instrument, and a front view of the completed product in operation.....


    You can see that after the device runs for a while, instead of an individual dot, it traces a line as the satellite moves about the sky overhead.

    The leading edge of the extremely accurate one-second pulse from the GPS module is used as a gate to count the output of the reference oscillator (25MHz) for ten seconds. The count is evaluated, then the variance from actual 25 MHz crystal frequency is determined. This factor is then applied to the calculation required to program the DDS to output the desired exact frequency. The "error" indicates tenths and hundredths of a single cycle the output frequency is off from the displayed (desired) frequency during the last ten seconds of operation. The program continually updates the frequency to adjust for minor reference oscillator drift. The result is an output frequency that is a fractional cycle (hundredths of a cycle) off from actual bureau of standards frequency. The frequency range of the DDS is from 500 KHz to 42 MHz continuous coverage.


    In this view, a less-expensive GPS module is mounted on the back panel (far side) instead of being plugged directly into the PC board. Dupont ribbon wires are used here, instead of a coaxial cable from the GPS module to the back panel.

    In the center of the back panel is a switch-mode regulator, providing eight volts to the PC board regulators. This allows an input voltage of from 9 to 32 volts, without the heating problems of linear regulators. The PC board has three separate 7805 regulators, providing separate, isolated voltage sources for the GPS, the LCD display, and all other digital components. The GPS is relatively sensitive to noise on the power bus, so separate regulators address this, as well as eliminate the need for heat-sinking in a closed environment with the aid of the fixed 8-volt input.

    This particular GPS module (NEO-6M) from Amazon (or eBay) cost less than $7 with free shipping!


    The completed unit, operating on our favorite frequency. If you look carefully, you can see the 000 underlined, indicating that the rotary encoder will change the units, tens, and hundreds digits of the desired frequency. Touching the KHz, MHz, or tenths/hundredths digits on the display will move the underline to the desired area, making tuning a breeze.
    Last edited: Oct 12, 2018
    KA0HCP, WA6MHZ, K6CLS and 3 others like this.
  4. K4KYV

    K4KYV Premium Subscriber QRZ Page

    Besides a highly accurate and stable VFO for the transmitter, this would be useful as a lab-grade test oscillator.

    How stable is the phase of the output of the oscillator? It might make an alternative to the Costas Loop for demodulating DSB suppressed carrier signals, setting the transmitting and receiving stations' VFOs to the same frequency and using a simple L-C network to fine tune the initial phase of the signal at the input stage of the receiver, although vagaries of the ionosphere might randomly shift the phase of the received signal enough to make this impractical for sky wave reception.
    W8KHK likes this.
  5. W8KHK

    W8KHK Ham Member QRZ Page

    Don, that is a good idea, and it might be possible. Here are the issues I see at first glance;

    The Silicon Labs Si5351 generator provides three outputs, Clk0, Clk1, and Clk2. Each provides only a square-wave output, which is a good facsimile of a square wave up to above 5 MHz, then the corners roll off, but it is still useful as an accurate frequency reference. In this implementation, Clk0 is the user output, Clk1 is the reference output for computer calculated drift correction, and Clk2 is not used. The Universal version of the GPS oscillator will support the Analog Devices AD9850 which provides sine and square waves (two phase, quadrature) on separate output pins, and the AD9833 can provide either sine, square, or triangle waves under program control on the same output, and has a separate clock signal output pin. For your purposes, you may want a sine wave, or you might just want to lock a separate oscillator in phase with the GPS reference. Depending upon how you wish to lock your reference oscillator, the GPS could provide a multiple frequency, or a sub-multiple frequency, and still be programmed to display your operating frequency.

    Looking at how the GPS updates the frequency, the Clk1 signal is actually programmed to 1/5 of the crystal frequency, so the microcontroller is actually using a 5 MHz signal as an indicator of crystal drift. It is this drift that I think will be the issue as far as phase locking the receiver. (As you stated, variations in the ionospheric path delay are probably a larger issue with regard to phase locking to demodulate a DSB signal with no reference carrier.)

    The Si5351A module comes in both the temperature compensated and non compensated versions. I have done most of my testing with the temperature compensated, but I have not seen much difference between them in a stable environment. Enclosed in a case, in an air conditioned environment, the frequency correction appears to be rare, indicating the oscillator is stable. If no error is detected, the software need not apply any change to the frequency calculation parameters, so the phase of the DDS output should be stable. But just how stable?

    After about 15 minutes warm-up (due to dissipation of the logic and power supply linear regulators) the correction factor seems to never go greater than .03 or .04 cycles per second error of the 7 MHz output frequency. I believe .5 cycles error would indicate the output phase changed approximately 180 degrees. So perhaps .03 or .04 cycles would not be significant. Or would even a few hundredths of a cycle at the output frequency cause a CONTINUING phase change between the sending and receiving stations? I think any fractional-cycle difference in frequency over time would necessarily result in a continuing phase change.

    I think the fallacy is that using a crystal oscillator that needs even minute correction in a GPS-Referenced oscillator may be inadequate for this application due to continuing phase change, but a truly GPS-Defined oscillator without the local crystal oscillator variations might be more capable of addressing this need (when employed at both ends of the communication).

    My original application for this version of the project was simply to have a traceable reference for calibration of generators, counters, oscilloscopes, etc. I also planned to use this as an external clock for my old HP 5245A counter, thus making it extremely accurate, enabling counts of high frequencies for ten or more seconds gate time to increase the measurement precision.

    I planned to use a separate unit with sine output and integral buffer amplifier and filter, with receiver offset control, such that it could be used on AM for transceive mode as a local oscillator for boat anchor receivers (such as HRO, RME, etc) with direct frequency readout, and as a transmit VFO at the same time. The idea is that I would listen to a CQ or net, turn on the BFO, and then either zero-beat or beat to a reference audio tone. Then the receiver pass-band would be centered exactly on the transmitting station, and my transmit VFO frequency would already be zero-beat with the station I am receiving. Through a simple menu algorithm, the receiver type, and band would be selected, and the microcontroller would know the required offset, up or down, to produce the required local oscillator signal. With a little software effort, it could even produce the heterodyne oscillator signals needed to replace the first mixer crystal oscillators in the Collins 75A series of receivers. It would be easy to switch between PTO and external oscillator source for cruising the band, because the RF sections would not tract the external oscillator when the DDS encoder dial is turned. But when ready to transmit, switching to the GPS-based DDS would enable much easier frequency control than having to zero-beat a separate VFO with the receiver.
    Last edited: Oct 12, 2018
  6. K6CLS

    K6CLS Ham Member QRZ Page

    Outstanding!! Thanks for sharing.
    W8KHK likes this.
  7. K6CLS

    K6CLS Ham Member QRZ Page

    Definitely prefer a sine wave for zero crossing detection, square wave has too much crap in the harmonics
    W8KHK likes this.
  8. W8KHK

    W8KHK Ham Member QRZ Page

    I suppose there are folks here that would like to see a SCHEMATIC. This is the schematic used to generate the board layout. Not a lot of wires, but lots of "connectors". These actually make it easier to read, and much less effort to draw. Not all component values are correct, (D3, D4 are 1N4148) and there are a few extraneous bypass capacitors as well.

  9. W9JSW

    W9JSW Ham Member QRZ Page


    Do you have any boards available, or perhaps share your gerbers?

  10. W8KHK

    W8KHK Ham Member QRZ Page

    Yes, I have boards and the fab files. These were fabricated by This version of the board implements a GPS referenced oscillator described in QEX, and requires the specific touch-screen color display. The QEX implementation was all hand-wired. I have another board, which Is somewhat more "universal" in that it can use any I2C or serial or parallel display, and it supports a multitude of processors, several alternative GPS modules, as well as some 12 bit A-D converters.
    In addition to the Nano, it supports four different "ESP" variants, including the Node-MCU. We can discuss what your requirements are offline, if you wish.

Share This Page