Global Positioning System (GPS)¶
GNU Radio can be used to create GNSS receivers. The DBSRX daughterboard for the USRP is capable of receiving signal from all contemporary GNSS systems.
- For civilian accuracy, the equivalent of $100 GPS receivers, the signal of interest (C/A) is at 1575.42MHz(L1) with a bandwidth of ~2.046MHz.
- For surveying accuracy, the signals of interest (C/A & P(Y)) are at 1575.42MHz(L1) and 1227.6MHz(L2) with a bandwidth of ~20.46MHz at each frequency.
- For military accuracy, you have to add the restricted decrypting hardware on top of the surveying requirements.
The Complete Specification¶
- U.S. Coast Guard Website (This looks like where civilians should go)
- GPS Support Center Website (Less flashy website for U.S. military GPS users?)
Links to papers with details about software GPS implementations¶
Overview of GPS Operation¶
General GPS Information¶
- A decent introduction to GPS, and even better, SDR implementations thereof, is "Fundamentals of Global Positioning System Receivers: A software approach", by James Bao-Yen Tsui (ISBN 0-471-38154-3).
SBAS/WAAS/EGNOS/MSAS information here¶
- http://www.faa.gov/ASD/international/GUIDANCE_MATL/2892b_c1.pdf - FAA WAAS Specification (non-canonical link, a C version exists somewhere)
- http://gps.losangeles.af.mil/prn/sbas_ranging_codes.htm - currently registered C/A PN codes for SBAS satellites
- http://www.rtca.org/downloads/doclist_1004.htm#_Toc86220673 - RTCA/DO-229 (What is this?)
- <put your tidbits here>
OpenGNSS Community Information¶
- Mailing List: http://lists.psas.pdx.edu/mailman/listinfo/opengnss
- Wiki: http://psas.pdx.edu/GPS/OpenGnssProjects
- http://code.google.com/p/opengnss Trond Danielsen, GPLv2 python-based GPS receiver, last change 2007
- http://github.com/gps-sdr/gps-sdr Gregory W. Heckler, USRP-based, but not GNU Radio, used to be http://www.gps-sdr.com/
- There is an OSS implementation of the decoding part in OpenSourceGPS at http://home.earthlink.net/~cwkelley/
- There is a project at the proof-of-concept stage at http://www.kamieniecki.com/krys/gps/ which currently processes simulated signals with software correlators.
- One of the most interesting projects ever dealing with GPS and GLONASS in a single package was done by Matjaz Vidmar, S53MV. It is available here http://lea.hamradio.si/~s53mv/navsats/theory.html (software, hardware designs, etc.)
- Andrew Holme has made a discrete component RF frontend for GPS L1 based on Matjaz Vidmar's work: http://www.holmea.demon.co.uk/GPS/Main.htm
- http://gnss-sdr.org/ An open source project started by Catalunya's CTTC (Centre Tecnològic de Telecomunicacions de Catalunya)
The Russian GLONASS¶
- http://www.glonass-ianc.rsa.ru/pls/htmldb/f?p=202:1:12061333542270124939 The Russians added needless complications when they selected a silly time-scale for their system and decided to share the spreading codes between satellites. GLONASS also consumes a lot more bandwidth. However, this would be an excellent demonstration of an SDR's adaptability, since a working software GPS receiver has all the necessary components that a GLONASS receiver requires. One just rearranges them differently. GALILEO falls into the same category.
Q: What about DGPS for GPS positioning accuracy improvement?
A: For the continental US, WAAS is more reasonable. The marine DGPS beacons that operate at LF (~300kHz) would require another RF path and related antenna.
Q: What about WAAS, EGNOS (Europe), MSAS (Japan / Asia) for GPS positioning accuracy improvement?
A: WAAS is broadcast on the same L1 frequency as GPS itself. So WAAS support is a pure software feature.