GPS Protocols

From Bellman
Jump to navigation Jump to search

How GPS receivers talk to computers


NMEA = National Maritime Electronics Association

NMEA data is generated by just about every GPS device out there. (Also by other things like depth sounders as well.)

The data is in plain ASCII text, divided into comma delimited sentences. Each sentence has a type, some data, a checksum no one pays attention to, and a newline. It is very easy to parse.

The sentence structure is described here:

You can get information from http:/ but unless you need the official docs you will be disappointed there because they cost money. The NMEA 2000 standard is $3800, ha ha ha! If you are designing a new device and you have the bucks, you have to pony up.

If all you want to do is grab data from your handheld and process it, the manufacturer manuals from both Garmin and Trimble are a very good source of information.

Trimble TSIP and TAIP

These are the proprietary Trimble protocols. TSIP is binary and TAIP is ASCII. I have not tried TAIP yet. The Lassen SQ really wants to be in TSIP mode though you can switch it to NMEA 0183/RTCM. (I should say, Trimble's software wants it to be in TSIP mode.)

The protocol is documented in the back of the Lassen manuals. It is supported by third party software such as ESRI ArcPad.

Other dialects that I have not had to deal with yet.

Garmin binary, reasonably well documented

DeLBin - DeLorme's binary protocol.

SIRF binary

UBX - U-Blox binary protocol

How GPS receivers exchange DGPS data


RINEX = Receiver Independent Exchange Format


Using RINEX to do differential postprocessing on your GIS data.

  1. Collect raw data using Garmin equipment or U-Blox or or SIRF or Trimble...
  2. Conversion of Raw Observation Data and Navigation Message Data to RINEX See TEQC software and GRINGO software
  3. Download CORS data
  4. Postprocess; using P4 (companion to Gringo)

JEEPS is a library that you are supposed to be able to use to build Garmin and post-processing applications. I don't think this means DGPS post-processing though...

Prairie has an interesting collection of information on using Garmin and Rhino products for DGPS. Rhino is a product of US Positioning.

"Proven Success With Rhino" (and therefore probably with RINEX conversion software?)

eTrex, eTrex Summit, eTrex Vista, eTrex Legend, GPS 12, GPS II +, GPS III, GPS III +, GPS V, GPS 16, GPS 16A, GPS 17N, GPS MAP 76, GPS MAP 76S, GPS MAP 176, GPS MAP 176C


RTCM = Radio and Telephony Communications Maritime or something like that.

RTCM is another standards body in the business of selling information that really probably should be distributed for free. The publication set on differential GPS is $100. NTRIP which is the standard for distribution of the data over IP networks (via HTTP) is $50.