Locking on GPS without PLL.

Andre Kesteloot andre.kesteloot at verizon.net
Sat Aug 23 22:37:59 CDT 2003

-------- Original Message --------
Subject: LF: GPS Locked signalling
Date: Thu, 21 Aug 2003 09:08:37 +0100
From: Andy talbot <g4jnt at thersgb.net>
Reply-To: rsgb_lf_group at blacksheep.org
To: "'rsgb_lf_group at blacksheep.org'" <rsgb_lf_group at blacksheep.org>
CC: "'actalbot at dstl.gov.uk'" <actalbot at dstl.gov.uk>

A bit later than intended, I'm now in a position to receive GPS locked phase 
coded transmissions without the need for any lock up or clock recovery.  So I 
am looking for anyone who can transmit BPSK or higher level coding, locked to 
UTC seconds pulses, with a symbol period that can be any submultiple of two 
minutes, eg 5, 10, 12, 15, 20, 24, 30, 40, 60 or 120 seconds.   Ideally, 
frequency needs to be known, and stable, to a fraction of the symbol period. My 
receiver uses a DDS clocked at 10MHz accurate to a few parts in 10^-10, so 
carrier frequency resolution is to .00233Hz (429 minutes per cycle).   We'll 
need to agree a protocol, and start time, and the phase at the start of the 

The demodulation equipment is as follows :

The 1kHz output from the receiver is passed through a single opamp 100Hz 
bandpass filter to a pair of  op-amp demodulators driven from a quadrature 1kHz 
squarewave.   The I and Q outputs are passed through a pair of 10Hz cutoff 
Butterworth filters to two 8 bit A/D converters inside a PIC16C71 for 

Each second, timed by the GPS pulse, the PIC sums 240 readings of the I/Q 
outputs, the effect of the summing being to increase the resolution above the 8 
bits inherent in the A/D converter.  The summed result, a pair of twos 
complement 16 bit numbers, is output along a serial port to a PC.  For 
completeness, the PIC also reads the NMEA output from the GPS module and uses 
this to initialise a modulo 120 seconds counter clocked by the 1 PPS signal. 
 The value of this counter is also sent with the I/Q data.  Summing multiple 
asynchronous 8 bit readings gives an increase in resolution approximately equal 
to the square root of the number of averaged readings used, so here the 
resolution is approximately equal to 12 bit coding -  good for over  60dB 
dynamic range,  particularly when receiving signals buried in noise.

The PC takes in the received I/Q data and seconds count from the COM port, then 
depending on the integration time requested, averages the I and Q readings over 
the period.  It uses the modulo 120 second count transmitted with the data to 
synchronise timing.  Phase is calcluated by taking the ATAN2 function of the 
two integrated channels, and plotted.

So, any signalling period is possible, provided it is a submultiple of two 
minutes which I considered to be the longest symbol period likely to be of any 
use. It could be increased to 4 minutes with a very minor change to the PIC 
software.  The integration of separate one second readings is not quite ideal 
as an integration method over long symbol durations, but is a reasonable 
compromise to keep the PIC code simple and allow symbol times to be made 
arbitrary lengths set only in the PC.   The next generation of PIC software 
will truly integrate over a number of selectable periods.

Andy  G4JNT / G8IMR

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://localhost/pipermail/tacos/attachments/20030823/fa754573/attachment.html

More information about the Tacos mailing list