NMEA 0183

NMEA 0183

The NMEA standard calls for data communication in the form of coded "sentences." Each sentence begins with the character "$" and ends with a carriage return and line feed (CR LF). CR and LF are two special characters, or "control" characters and are not normally printed (for this reason they are customarily shown enclosed in brackets).

Between the beginning and end of each sentence are "fields" of data, each field separated by a comma. The first field in any sentence (field 0) begins with the two letter talker mnemonic code ("talkers" are devices that send out information, "listeners" take it in) followed by the three letter code for the sentence. Data follows in the standard format for that sentence.

Here's an example of a standard NMEA sentence:

$LCGLL,4001.74,N,07409.43,W

NMEA 0183 is a set of serial data interface operating at 4.8 kbits/s utilizing standard asynchronous communications of the type found on the serial port of an original (IBM) PC.

More information about NMEA 0183 coded data can be found in "The NMEA 0183 Protocol" document.


When a GPS is sending it's data as NMEA 0183 sentences it looks like this at the USB or serial port:

$GPRMC,060001,A,3348.795,N,11754.064,W,000.0,000.0,110698,013.7,E*62
$GPRMB,A,,,,,,,,,,,,V*71
$GPGGA,060001,3348.795,N,11754.064,W,1,07,1.0,65.8,M,-31.9,M,,*4F
$GPGSA,A,3,14,15,16,18,22,25,29,,,,,,2.2,1.0,1.9*38
$GPGSV,2,1,07,14,70,322,55,15,31,212,53,16,32,317,54,18,10,282,47*7C
$GPGSV,2,2,07,22,40,120,53,25,36,045,52,29,28,073,50,,,,*4B
$GPGLL,3348.794,N,11754.064,W,060002,A*3E