GlobalPositioningSystem

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.'''

Requirements
 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 &amp; 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)

 http://www.gps.gov/technical/icwg/ICD-GPS-200C.pdf (obsolete link: http://www.navcen.uscg.gov/gps/geninfo/ICD-GPS-200C%20with%20IRNs%2012345.pdf)

 http://www.gps.gov/ (obsolete link: http://www.navcen.uscg.gov/gps/default.htm)


 * GPS Support Center Website (Less flashy website for U.S. military GPS users?)

 obsolete, and unable to locate a new copy of this PDF document: http://www.schriever.af.mil/GpsSupportCenter/documents/icd_gps_200c_irn001thru005.pdf

 obsolete: http://www.schriever.af.mil/GpsSupportCenter/

Links to papers with details about software GPS implementations

 * obsolete, and unable to locate a current copy of this PDF document: http://www.datafusion.com/gps/baselinereceiver.pdf
 * http://kom.aau.dk/group/03gr942/public/10%20semester/swreceiver_paper5_ION.pdf (obsolete link: http://gps.ece.cornell.edu/swreceiver_paper5_ION.pdf)
 * obsolete, and unable to locate a current copy of this PDF document: http://csc.postech.ac.kr/publication/archive/comm-choi2002.pdf
 * http://www.navsys.com/Papers/
 * http://gnss-sdr.org/publications/

Overview of GPS Operation

 * http://www.collaborium.org/onsite/jos2000/related/GPS/DECODING.HTM
 * http://gpsinformation.net/main/gpslock.htm

General GPS Information

 * http://gpsinformation.net/
 * A decent introduction to GPS, and even better, SDR implementations thereof, is &quot;Fundamentals of Global Positioning System Receivers: A software approach&quot;, by James Bao-Yen Tsui (ISBN 0-471-38154-3).
 * http://gpstrackit.com/blog/
 * A regularly updated blog on the applications of GPS and GIS technology

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?)

OpenGNSS Community Information

 * Mailing List: http://lists.psas.pdx.edu/mailman/listinfo/opengnss
 * Wiki: http://psas.pdx.edu/GPS/OpenGnssProjects

Projects

 * 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&amp;A
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.