GPS receivers page



Home
About
Contact
Donate
Download
Frequently Asked Questions
Documentation
Support and Mailing List
PointShare exchange
Tools and Resources
Articles


GPS receivers: How they work

From space, GPS satellites transmit their signals to earth on different frequencies containing a multitude of data. It is the GPS receiver's task to filter out these signals and convert them to data that can be used by navigational software such as Loadstone-GPS. To be able to do this, a GPS receiver is a powerful computer by itself. A complete GPS navigation unit therefore exists of two computers, the one in the receiver and the one on your PDA or phone.

In the late nineties cheap GPS navigation units hit the market with names such as Garmin, Lowrance and Magellan. These units looked like a rather big mobile phone, included a screen, keyboard and navigational software. With the introduction of wireless connections such as Bluetooth, stand-alone GPS receivers like the ones made by Holux, Globalsat en RoyalTec became popular. Today the navigational unit consists of a GPS receiver, a transceiver (Bluetooth) and a PDA or smartphone that runs the software that communicates the data coming from the receiver to the user.

Satellite signals

A Block II-RM GPS satellite transmits three types of signals:

  1. The almanac. This dataset contains information on the current and expected positions of the satellites in the GPS constellation. An almanac can be used for several months to compute the status of the constellation for position data.
  2. The ephemeris (Greek for 'daily'). This signal contains current orbital data per satellite and has a valid lifetime of 4 to 6 hours. The almanac and the ephemeris together form the 'Navigation Message (NM)'.
  3. The 'C/A-code' and de 'P-code'. These are the important signals in the spectrum. They contain the time information as generated by the atomic clocks in each satellite. This time signal is crucial to compute the distance between the receiver and the satellite.

The C/A-code (Coarse Acquisition code) is the signal used for civil navigation and contains the 1023 bit long 'pseudo-random' code, transmitted with a speed of 1.023 MHz. This means that a time message is sent every 1 millisecond. The message also contains the identification code of the satellite.
The P-code is equal to the C/A-code, but is transmitted only in 'anti spoofing mode'. This means, that the signal is encrypted and can only be decrypted by a 'keyholder', in this case the US military. The encrypted signal is called the P(Y) code and is transmitted with a speed of 10.230 MHz.

All three signals are transmitted to earth on a frequency of 1575.42 MHz, known as the L1 band. The P(Y) signal is duplicated on the L2 band, on a frequency of 1227.60 MHz.

While the time signal is transmitted in a high speed, the NM takes considerably longer to reach earth. Transmitted with a speed of 50 Hz this 37500 bit message takes 12.5 minutes to arrive in a GPS receiver. The ephemeris part of the NM is repeated every 30 seconds in this signal, so obtaining orbital data is completed long before a complete almanac can be retrieved.

The GPS receiver at work

To determine its position, a GPS receiver first needs to know what time it is. Obtaining the exact GPS time is done by synchronizing the (simple quartz) internal clock with the atomic clocks in the GPS satellites. A modern receiver can receive up to 12 satellites at the same time, compensate for minor errors in the synchronization and obtain the identity of each satellite from the C/A code. The identity is used to look up the exact position of the satellite from the ephemeris data in the NM.

Now the receiver calculates the delay in the satellites signal by generating a reference time and comparing this time with the time code in the signal. The distance to each satellite is then calculated by multiplying this delay by the speed of light. This distance is known as the 'pseudo range'.

After these calculations the receiver knows:

  1. The number of satellites in view.
  2. The signal strength of each satellite.
  3. The position of each satellite.
  4. The distance to each satellite.

Next a calculation known as 3D trilateration (see Wickeypedia) starts and results in the final GPS time correction and the latitude and longitude of the position of the receiver. Now it's time to send the obtained information to the navigation software. This is done using so called NMEA codes.

The NMEA codes of the SiRF3* chipset

The 'National Marine Electronics Association' (NMEA) has given its name to the protocol that is used to send GPS data between navigation units. Commonly used codes are:

GGA: Time, position, and fix related data for a GPS receiver.
GLL: Latitude and longitude of present position, time of position fix and status.
GSA: GPS receiver operating mode, satellites used in the position solution, and DOP values.
GSV: The number of GPS satellites in view satellite ID numbers, elevation, azimuth, and SNR values.
RMC: Time, date, position, course and speed data provided by the GPS receiver.
VTG: The actual course and speed relative to the ground.
MSS: Signal-to-noise ratio, signal strength, frequency, and bit rate from a radio-beacon receiver.
ZDA: UTC time and date.

Here's an example of a GGA message:
$GPGGA,161229.487,3723.2475,N,12158.3416, W,1,07,1.0,9.0,M, , , ,0000*18

The NMEA message always starts with a $ sign, two letters to identify the sender (GP for GPS receiver) and ends with the checksum of the string (*18). Each NMEA message can be output at a maximum rate of 1 per second and at a minimum rate of 1 per 255 seconds.

A message is sent as soon as the receiver has collected all the data for the message, so no pre-defined sequence is used.

Programming the GPS receiver

Before a GPS receiver leaves the factory, a manufacturer can define several features. A number of this features is semi-hard coded and cannot be changed by the user. A well known feature is 'Static Navigation (SN)'. By defining a threshold of e.g. 4 kilometers for SN, the receiver will stop transferring data to the software when the travelling speed drops below this speed. SN was introduced to compensate for the 'drift', the random behavior that appears when the receivers speed is not enough to calculate the heading. Since Geo-cashing and hiking using GPS has become popular, most manufacturers have disabled SN in their receivers. In Loadstone-GPS you have the option to apply a user defined amount of SN with a receiver that has SN off. However, if the receiver is set to have SN on, Loadstone-GPS cannot change this.

Features defined by manufacturers are also called 'masks'. Here are a few examples:

Enable Track: Enables smoothing of the calculated positions. Smoothing based on acceptable variances from the last calculated position. This assists in eliminating any sporadic position jumps possibly caused by multipath, for example.
Enable Altitude: Restrict any variations in the altitude to 10% of currently calculated horizontal variation. This assists in creating a smoother ground track.

Degrade Mode: Defines the behavior in case of less than 3 satellites (2D mode).
DOP Mask: Sets the value of 'Dilution of Precision' masks.
Elevation Mask: Sets the value for the elevation mask.
Power Mask: Sets the value for the power mask.
DGPSS rc: The source for correction signals.
DGPS Mode: WAAS/EGNOS on/off.

DOP (Dilution of Precision) defines the reliability of the satellite's signal. A manufacturer can define a value below which no messages are transferred to the receiver. The elevation mask may be set to accept no satellites with a position of 10 degrees or less above the horizon. The power mask may do the same for signals with a strength below a certain threshold.

In Loadstone GPS the HDOP (Horizontal Dilution of Precision) value is found by pressing the #2 key while in navigation mode. We called it 'accuracy', but in fact many other factors play a role where real 'accuracy' is concerned. HDOP values can be read as follows:

1: Ideal
This is the highest possible confidence level to be used for applications demanding the highest possible precision at all times.
2-3: Excellent
At this confidence level, positional measurements are considered accurate enough to meet all but the most sensitive applications.
4-6: Good
Represents a level that marks the minimum appropriate for making business decisions. Positional measurements could be used to make reliable in-route navigation suggestions to the user.
7-8: Moderate
Positional measurements could be used for calculations, but the fix quality could still be improved. A more open view of the sky is recommended.
9-20: Fair
Represents a low confidence level. Positional measurements should be discarded or used only to indicate a very rough estimate of the current location.
21-50: Poor
At this level, measurements are inaccurate by as much as half a football field and should be discarded.

he 'User Error Range' in Loadstone is a multiplication factor to adjust these numbers in understandable values like meters or yards.

Only a few NMEA messages can be sent to a SiRF3* chipset receiver. Most modern receivers have the possibility to use the correction signals transmitted by WAAS or EGNOS, however, this option is switched off by default. Power modes allow for a reduction of power usage in modern receivers. The default setting usually is 'full power'.

To enable WAAS or EGNOS and to change from 'full power' to 'trickle power' the navigation software must support the sending of the appropriate NMEA messages to the GPS receiver. In Loadstone-GPS you will find these options in the Options/GPS/Commands menu.

Other commands that can be sent to the receiver include:

Hot start: Initiates a re-start using the stored almanac and ephemeris.
Warm start: Initiates a re-start using the stored almanac, deletes ephemeris data and downloads new ephemeris data from the GPS constellation.
Cold start: Initiates a re-start, deletes both the almanac and the ephemeris and downloads new data from the GPS constellation.

A 'cold start' happens after a receiver hasn't been used for a longer period, or when the receiver is activated at a large distance from the place where the stored almanac was retrieved. A cold start can take up to 50 seconds. A warm start happens after a certain period of 'no coverage' and should not take more than 35 seconds. A hot start may happen after a short loss of coverage and is usually shorter than 10 seconds.

Atmospheric and weather conditions

No matter how well a GPS receiver is designed, it relies on signals from remote satellites that reach us through the protective layer that surrounds our planet. We live pretty close to a huge nuclear reactor, the sun, and without the atmosphere life would be impossible on earth. The ionosphere is a multi-layered shell that absorbs and transforms the sun's radiation, but also influences the way radio signals reach the surface. Solar activity causes the ionosphere to be unstable and so conductivity of radio signals changes all the time. There are more factors that influence radio signals, but an important factor is the humidity of the air. Water particles, clouds, raindrops or mist all can have their own electro-magnetic charge and disturb the way these signals reach a GPS receiver. Finally there are the man-made obstacles, buildings and constructions that absorb or reflect radio signals.

A delay of one microsecond (one milionth of a second) causes an error of 300 meters in a GPS receiver. Clear and undisturbed reception of the GPS signals is therefore of vital importance for position determination. As stated above, this clear and undisturbed reception is not possible and therefore the GPS signal is only accurate within certain margins. Ionospheric disturbance by itself is enough to reduce GPS accuracy to 15 meters. But the GPS constellation is not perfect either. A satellite's orbit is never completely stable and regular corrections need to be performed to keep a satellite 'on track'. Orbital changes are responsible for errors up to 5 meters. So called 'Multipath Reflections', where signals bounce off buildings or constructions account for further reduction of the accuracy. And last but not least the orbital planes and their inclination make for best reception near the equator and cause inaccuracies when the receiver is used near the poles.

Summary

With the introduction of the SiRF3* chipset GPS receivers have become super sensitive multi- channel receivers with powerful computation features. But nothing is perfect. Atmospheric conditions and environmental circumstances still influence the way they predict position, altitude and speed. But with prices under $100 they have become an affordable means of navigation for everybody, including the blind and visually impaired.



------------------------------------------------------------

Although Loadstone-GPS is free to use, it has used up thousands of development and testing hours since February 2004. In order for us to continue funding this project, adding features, improving functionality, and strengthening the support and documentation we need your help.

Please consider making a donation (Large or small - any amount is gratefully received) and will ensure development of this project continues well into the future.


Select this link to donate to the Loadstone-GPS project

------------------------------------------------------------


Google
 

------------------------------------------------------------


Use of this web site or any products, programs, and information associated with the Loadstone GPS project constitutes that you have read and understood the disclaimers set forth on the Legalities page

All brands, company names, and product names are trademarks or registered trademarks of their respective holder.
COPYRIGHT 2005 - 2008 - The Loadstone GPS team, All rights reserved
This page has had 996 unique hits since 24/June/2006
This page last edited: 09 Apr 2008