[clug] GPS and temperature

David Tulloh david at tulloh.id.au
Thu Apr 26 14:19:09 GMT 2007

The GPS chips use a crystal of a known frequency, this is then scaled to 
get the frequency that they scan for the GPS signals.  The more accurate 
the frequency the less the GPS chip has to scan to find the satellites.  
Once it's found the satellites it adjusts it's knowledge of the crystal 
frequency based on the error it found and uses this calibrated value to 
track the satellites while it's running.

The issue with all of this is that you assume that the crystal provides 
a perfect set frequency.  In reality they don't, the frequency they 
provide changes with the age of the crystal and the temperature.  So 
they try to compensate for the temperature drift and allow for a degree 
of frequency movement.  There are limits to how much they can do, if the 
temperature changes too rapidly or the crystal is flawed the receiver 
will lose it's tracking.

You can try this using one of those freeze spray cans.  Monitor the 
number of satellites that the GPS device is tracking and then spray a 
little of the freeze stuff onto the crystal, or just spray a whole lot 
into the GPS box.  You should see it lose all the satellites, gradually 
find the first one or two and then rapidly reacquire all the rest.


Mike Carden wrote:
> During GPS discussions this evening I made a comment about temperature
> and oscillator stability in GPS receivers.
> Now, I know my etrex cares about temperature. If I put it into service
> mode via UP + Page + power on, I get a look at all sorts of internal
> bits including the output of its internal temp sensor.
> So I had a bit of a look online and pretty well every GPS chipset out
> there is keen to boast about how good its temperature compensation is.
> Seems it's used to make the internal clock more accurate and speed up
> the process of acquiring an initial fix.
> So I wasn't entirely dreaming. :-)

More information about the linux mailing list