October 13, 2015

CWTD Episode #75

GPS Topics
The Continuing Adventures in GPS Data Display, Oscillator Timing and Temperature Control

With guest designers Dave AD7JT and Mike WA8BXN


This is Part 3 in our series of CWTD episodes chronicling the design and build of a GPS-Disciplined Oscillator.  In Part 1, we dealt with the VCXO.  In Part 2, we talked about Oven Controlled Crystal Oscillators and started going through the Oven Controller electronics.  But, as typical in so many of our various projects on the bench, we've found that the more we dig into a topic, the more we find that we need to better understand!


So this month we snug up a number of loops that we loosely tied in the previous two episodes concerning GPS receiver basics, timing and "oscillator disciplining" implications, oven control and temperature display.


We also "tear down" the popular NEO-6/7/8 GPS modules available on eBay these days for less than the cost of a sandwich and cup of coffee. No longer will it be intimidating to experiment with these postage stamp-sized boards and antennas. Taking the mystery out of them and showing how we can use these little gems in the shack is what it's all about.


We also touch on some select topics in a popular "GPS Compendium" document from u-blox, a popular manufacturer of little GPS receiver modules.  We are all guaranteed to learn something new in this part of the discussion.


Further, we report on some fabulous progress that the design team has been making on the GPS Display Terminal that we excitedly announced last time. In fact, we presented this really cool little instrument at the Mid-Atlantic States VHF Conference in Philadelphia last weekend ... and the audience interest was simply palpable! How exciting it was to learn that the same platform for the popular SNA Kit can also run our firmware for a hand-held GPS terminal displaying latitude, longitude, maidenhead grids, accurate time, satellite signal strength, etc ... *and* serve as an accurate RF signal generator.


*** *NEWS FLASH* *** We've now received the "CWTD Oven Control Kits" from our good friend Hans Summer of QRP Labs. As discussed last time, Hans created a derivative of his larger OCXO/Synth Kit containing only the circuits we need to control our VCXO boards. The CWTD Oven Control Kit is now posted and available for ordering at the bottom of last month's "Oven"

episode whiteboard ... http://www.cwtd.org/oven/index.html 


BTW, the VCXO Kits are now SOLD OUT, so we hope that everyone who wanted one got it already. If not, PCBs are still available, but you'll need to collect the parts yourself.


So sit back and listen in to our discussions ... and toss us some questions along the way too, based on your own experiences on the bench!

73, George N2APB and Joe N2CX


Chat Window during show ...

<20:39:50> "Mike WA8BXN": same data format as RS-232, just different voltages
<20:52:38> "Mike WA8BXN": https://www2.u-blox.com/images/downloads/Product_Docs/Timing_AppNote_(GPS.G6-X-11007).pdf
<20:58:53> "Mike WA8BXN": Fortunately you don't have to know the details of how it works to make use of the resource!
<21:01:47> "George N2APB": Ain't that the truth for so many things these days!
<21:05:52> "Joe N2CX": Ain't no tubes to replace these days!
<21:12:19> "Mike WA8BXN": The "wandering" gives you a speed and heading when standing still.
<21:12:44> "Dave_W4VU": US Civilian aviation - with ground based WAAS system is 3 meters 95% of the time - can bring an aircraft down to 200 feet from the runway
<21:12:57> "Mike WA8BXN": DOP is not in meters!
<21:13:18> "Joe N2CX": A couple of meters is close enough to aim a warhead...
<21:18:32> "George N2APB": Thank you Dr. Strangelove!
<21:27:14> "Mike WA8BXN": 99.9% of everything can be done with the touch screen, there is an onscreen keypad as well
<21:29:34> "Mike WA8BXN": More depth on some of this on the Yahoo group for CWTD
<21:31:53> "Mike WA8BXN": https://groups.yahoo.com/neo/groups/CWTD/info


1)  Our approach thus far with the OCXO Project

You can get a kit of the "Oven Control" parts that we discussed in the last episode (see Schematic 1 / 2 below, and pictured below), as a kit of parts that you can start adding to your VCXO.  This is a special kit for us from Hans Summers of QRP Labs, and contains the oven control component (that we will use), as well as a 10 MHz crystal oscillator components and enclosure pcb set that are included for our eventual use downstream.  In order to save us cost, it does not contain the Si5351 synthesizer chip that his standard kit has ... Hence this is the special "CWTD OCXO Kit" from QRP Labs ... thanks Hans!  [You can see the manual for assembling this at http://www.qrp-labs.com/ocxokit.html ... But remember to save the pcb enclosure and 10 MHz crystal oscillator for later!]

[Note:  To complete the GPS-DO project, we are designing a "motherboard" to to slip inside the enclosure, holding the VCXO, Oven Control board, temperature display circuits, power supply and the little NEO-xx GPS receiver boards ... Should be available by the next episode.]


Full information on the "special kit" that Hans is supplying for us is at ... http://www.qrp-labs.com/ocxokit.html






2) The CWTD "GPS Receiver Module"

NEO-7M GPS Receiver:  

NEO-7M ... http://www.ebay.com/itm/Ublox-NEO-7M-000-GPS-Module-MWC-APM2-6-Replace-NEO-6M-GYGPSV3-NEO7M-/400938194993?hash=item5d59c75831  ... $14.30, free shipping

Specs ...

NEO-8M module:

NEO-8M ... http://www.ebay.com/itm/New-Flight-Controller-GPS-Module-for-PX4-Pixhawk-V2-4-5-APM2-56-APM-NEO-M8N-/400880452240?hash=item5d56564290  ... $21.25, free shipping

Specs ...

  • 100% brand new and high quality
    GPS Chip parameters:
  • Receiver type 72-channel u-blox M8 engine
  • GPS/QZSS L1 C/A, GLONASS L10F, BeiDou B1
  • Galileo-ready E1B/C (NEO-M8N)
  • Nav. update rate1 Single GNSS: up to 18 HZ
  • Concurrent GNSS: up to 10 Hz
  • Position accuracy2 2.0 m CEP
  • Acquisition2 Cold starts: 26 s
  • Aided starts: 2 s
  • Reacquisition: 1.5 s
  • Sensitivity2 Tracking & Nav: –167 dBm
  • Cold starts: –148 dBm
  • Hot starts: –156 dBm
  • Assistance AssistNow GNSS Online
  • AssistNow GNSS Offline (up to 35 days)3
  • AssistNow Autonomous (up to 6 days)
  • OMA SUPL & 3GPP compliant
  • Oscillator TCXO (NEO-M8N/Q),
  • Crystal (NEO-M8M)
  • RTC crystal Built-In
  • Noise figure On-chip LNA (NEO-M8M). Extra LNA for
  • lowest noise figure (NEO-M8N/Q)
  • Anti jamming Active CW detection and removal. Extra
  • onboard SAW band pass filter (NEO-M8N/Q)
  • Memory ROM (NEO-M8M/Q) or Flash (NEO-M8N)
  • Supported antennas Active and passive
  • Odometer Travelled distance
  • Data-logger For position, velocity, and time (NEO-M8N)
  • Operating temp. –40 C to 85 C
  • Storage temp. –40 C to 85 C (NEO-M8N/Q)
    –40 C to 105 C (NEO-M8M)
  • RoHS compliant (lead-free)
  • Qualification according to ISO 16750
  • Manufactured and fully tested in ISO/TS 16949 certified production sites
  • Uses u-blox M8 chips qualified according to AEC-Q100
  • Supply voltage 1.65 V to 3.6 V (NEO-M8M)
  • 2.7 V to 3.6 V (NEO-M8N/Q)
  • Power consumption4 23 mA @ 3.0 V (continuous)
  • 5 mA @ 3.0 V Power Save Mode
  • (1 Hz, GPS mode only)
  • Backup Supply 1.4 to 3.6 V
  • NEO-M8N-0 u-blox M8 Concurrent GNSS LCC Module,
  • TCXO, flash, SAW, LNA,
  • Timepulse Configurable 0.25 Hz to 10 MHz



Connector & Cable for the GPS Boards

2X U.FL Mini PCI to RP-SMA Pigtail Antenna WiFi Cable ... $3.40, free shipping






3) GPS Compendium Topics ... https://www.u-blox.com/en/technology/GPS-X-02007.pdf 


Select Topics ...

1) Definition

Satellite Navigation is a method employing a Global Navigation Satellite System (GNSS) to accurately determine position and time anywhere on Earth. Satellite Navigation receivers are currently used by both private individuals and businesses for positioning, locating, navigating, surveying, and determining the exact time in an ever growing list of personal, leisure and commercial applications.    Using a GNSS system, the following values can accurately be determined anywhere on the globe (Figure 1): 1. Exact position (longitude, latitude and altitude coordinates) accurate to within 20m to approx. 1mm. 2. Exact time (Universal Time Coordinated, UTC) accurate to within 60ns to approx. 5ns. Speed and direction of travel (course) can be derived from these values, which are obtained from satellites orbiting the Earth. Speed of travel may also be determined directly by means of Doppler shift measurements.

GPS (the full name of the system is: NAVigation System with Timing And Ranging Global Positioning System, NAVSTAR-GPS) is intended for both civilian and military use. The civilian signal SPS (Standard Positioning Service) can be used freely by the general public, while the military signal PPS (Precise Positioning Service) is available only to authorized government agencies. The first satellite was placed in orbit on February 22, 1978, and it is planned to have up to 32 operational satellites orbiting the Earth at an altitude of 20,180 km on 6 different orbital planes. The orbits are inclined at 55 to the equator, ensuring that at least 4 satellites are in radio communication with any point on the planet. Each satellite orbits the Earth in approximately 12 hours and has four atomic clocks onboard.

2) Basic Principles of Satellite Navigation

3) At least 4 satellites are necessary ...

4) Coordinate Systems

5) Satellite Coverage



6) The GPS Signal

Satellite navigation signals are generated using a process known as DSSS (Direct Sequence Spread Spectrum) modulation18 . This is a procedure in which a nominal or baseband (not to be confused with the baseband chip in the receiver) frequency is deliberately spread out over a wider bandwidth through superimposing a higher frequency signal. The principle of spread-spectrum modulation was first devised in the 1940s in the United States, by screen actress Hedy Lamarr and pianist George Anthell19 . This process allows for secure radio links even in difficult environments.

GPS satellites are each equipped with four extremely stable atomic clocks (possessing a stability of greater than 2010-12 ) 20. The nominal or baseband frequency of 10.23MHz is produced from the resonant frequency of one of these onboard clocks. In turn, the carrier frequency, data pulse frequency and C/A (coarse/acquisition) code are all derived from this frequency (Figure 43). Since all the GPS satellites transmit on 1575.42 MHz, a process known as a CDMA (Code Division Multiple Access) Multiplex 21 is used.   The C/A code plays an important role in the multiplexing and modulation. It is a constantly repeated sequence of 1023 bits known as a pseudo random noise (PRN) code. This code is unique to each satellite and serves as its identifying signature.

The C/A code is generated using a feedback shift register22. The generator has a frequency of 1.023 MHz and a period of 1023 chips23 , which corresponds to 1ms. The C/A code is a Gold Code24 , which has advantageous correlation properties. This has important implications later on in the navigation process in the calculation of position.

7) GLONASS: the Russian System

8) The Three GNS Systems:  GPS, GLONASS, GALILEO



4) The Midnight GPS Display Terminal ("GDT")

... A handheld terminal that dynamically interprets and displays the live NMEA serial data feed coming from any GPS receiver module! 

The Midnight GPS Display Terminal (GDT) monitors the output of a GPS receiver and displays satellite signal strength as well as location and time information.  It can also control the frequency and duty cycle of a timing signal generated by the GPS receiver and synchronized with the precision atomic clocks in the GPS satellites.  The result is an inexpensive but very precise signal generator tunable from 1 Hz to 10 MHz in increments of 1 Hz.

The GDT dynamically interprets and displays the live NMEA serial data feed from any GPS receiver module with a serial interface.  Additional screens show raw NMEA messages and non-NMEA proprietary messages.  Messages can be recorded in files on an SD card using the GDT's FAT16 file system which is compatible with virtually all Windows and Linux systems.  Recorded messages can be played back on the GDT or transferred to a PC for further analysis.

Another screen controls the TimePulse output of a u-blox GPS receiver.  This feature provides an extremely accurate time base in a signal generator format.  The frequency range covered ranges from below audio up into the HF range.

Another screen turns the GDT into an atomic clock displaying local time and UTC time.  The clock time is synchronized with the clocks on board the GPS satellites.

The GDT software also runs on the Midnight Scalar Network Analyzer (SNA) hardware that can easily and quickly be installed in a MSNA thus converting it to a GDT.  The GDT can be converted back to an MSNA just as easily.  The GDT application will also run on other existing and future QVGA 16 platforms (e.g., the NAT).

GDT Firmware  ... is ready-made to load right onto your NAT and SNA instruments!  Just right-click and save to your local computer, place onto the NAT/SNA SD Card and use the UPLD command to load it.

GDT Quick Reference Guide ... Beta Version 1.0 'oh'

Inexpensive handheld unit with color graphic display and touch panel displaying GPS receiver data & more!


Live display of GPS Receiver Data* ... Time, Date, Lat/Log, Satellite Signal Strength, ...


Super Accurate Clock ... Displays UTC and Local time


Signal Generator ... Programmable "timepulse" output (1pps, x-MHz)**


NMEA Data Stream ... Displays NMEA sentences for all satellites being received


Setup Mode ... Specify serial baud, timezone, LCD orientation, ...


SD Card ... For software updating, GPS data collection, ...


DOS File System ... On SD Card, file/data management 


320x240 pixel color graphic LCD ... On SD Card, file/data management 


Touch-Screen ... For convenient field use or as display on bench


Keyboard input (optional) ... For convenient data entry/edit



 Requires external connection of GPS receiver (not included); 3.3V serial data (Rxd/TxD)

**  Not all GPS receivers have ability to generate output frequencies.  Supported receivers currently include u-Blox Rx family.



  GPS-G display:

GPS Data:
1. Current UTC time and date synced to satellite clocks.
2. Fix: None (< 3 sat), 2-D fix (3 sat), or 3-D fix (> 3 sat).
3. Current location, speed and heading.
4. PDOP (Position Dilution Of Precision) … smaller is better.

1. Carrier to Noise ratio (Car/Noise) shown in dB.
2. Car/Noise not shown for values too low for receiver to track.
3. Only 12 of In View satellites are shown at a time; tap screen [SPACE] to toggle between three groups of 12 satellites.
4. Total number of satellites In view is fixed by receiver location and time.
5. Total number being tracked depends on Car/Noise ratios.
6. White satellite numbers (Sat) are US GPS satellites, pink numbers are Russian GNOASS satellites.

1. Current TimePulse n frequency (1 Hz to 10 MHz).
2. Current TimePulse n duty cycle (in percent of period).
3. Four configurations (see Signal Generator mode)


 GPS-C display:

  • Shows local and UTC time and date continually updated with data from receiver
  • Large display readable from a distance.
  • User can select of which time is displayed in large characters and on permanent buttons
  • Time is synchronized with atomic clocks on board GPS satellites.
  • GDT will maintain time when receiver disconnects or loses lock
  • Main time display changes from black characters to red characters when GDT takes over
  • Local Maidenhead coordinate shown too.
  • User enters local time zone offset from UTC in Setup mode (- for West of Greenwich, + for East).  Format:  sHHMMSS.



  • Gives user control over frequency and duty cycle of receiver TimePulse signal(s).
  • Digital square wave outputs at 3.3 V logic levels.
  • Provides a precision reference frequency synced with the atomic clocks on the GPS satellites.
  • Most u-blox receivers have one TimePulse output, receivers with special timing capabilities have two TimePulse outputs.  These receivers have a 'T' suffix on their model numbers (e.g., "NEO-M8T").
  • Each TimePulse has two settings, one for when receiver does not have satellite lock and one for when receiver has satellite lock. 
  • Each of the four TimePulse combinations can be independently set.
  • Virtual buttons select one of the four combinations
  • Once set, TimePulse parameters are retained by receiver until power is cycled.
  • GDT can command the receiver to save TimePulse parameters so same parameters are used after each power up.
  • Frequency range from 1 Hz to 10 MHz in 1 Hz steps
  • Duty cycle range from 0.00001% to 99.99999%.
  • Frequency and duty cycle of the currently selected TimePulse combination is displayed on the GPS-G display.
  • Application: precision digital signal generator for testing digital circuit performance.
  • Application: tweaking system clock frequency to improve precision.
  • Application: precision testing of Pulse Width Modulation (PWM) logic.
  • Application: (with output shaping) precision signal generator for general RF use and testing.
  • Application: "discipline" a VCXO ( "GPS Disciplined Oscillator" or "GPSDO").
  • Application: provide precision reference timing for PLL control.
  • Application: propagation delay measurements. 
  • Possible future application: user controlled delays could be used to generate two TimePulse outputs with a precise phase relationship.




GPS receivers broadcast one NMEA message set per second. Messages are parsed to extract the data shown on GPS-Graphic and GPS-Clock Displays.

Messages are color coded as follows:

1. WHITE - Recognized messages containing data we use.
2. GREEN - Recognized messages containing no data we use.
3. YELLOW - Recognized messages containing information about satellites not in the first 12 in view.
4. LIGHT RED - Unrecognized NMEA messages including NMEA-sanctioned proprietary messages.





Using the GPS Display Terminal with a GPS Receiver:




1)  John Miles, KE5FX site ... <www.ke5fx.com> ... A great assemblage of links having to do with high precision, accuracy and stability techniques can be found on the. You can literally spend days reading up on techniques, software, measurement results and the history of timing and frequency control here. Just plan on spending an afternoon to browse it.

2) “Resources for Precision Timing, Stability, and Noise Analysis” ... <http://www.ke5fx.com/stability.htm> ... If you want in-depth knowledge this is THE place to go. Plus, you can download plenty of extremely valuable application notes and technical papers for future reference. 

3) PLL reference papers that are a good read ...


AN-885 Introduction to Single Chip Microwave PLL's (TI’s LMX1501A)



MM74HC4046 CMPS Phase Lock Loop ...



Experiment #4 - CMOS 4046 Phase-Locked Loop...



CMOS Phase-Locked-Loop Applications Using the CD54/74HC/HCT4046A and CD54/74HC/HCT7046A ...



CD4046B Phase-Locked Loop: A Versatile Building Block for Micropower Digital and Analog Applications ...



ADF4110 PLL …



ADF4001 PLL …




4) And a simple Phase Detector chip + a simple VCO ...


Phase/Frequency detector ...



Supposedly "goes well" with ...


VCO with vvc control ...