All data is transmitted in the form of sentences . Only printable ASCII characters are allowed, plus CR (carriage return) and LF (line feed). Each sentence starts with a "$" sign and ends with <CR><LF>. There are three basic kinds of sentences: talker sentences , proprietary sentences and query sentences.
Talker Sentence s. The general format for a talker sentence is:
$ttsss,d1,d2,....<CR><LF>
The first two letters following the „$” are the talker identifier. The next three characters (sss) are the sentence identifier, followed by a number of data fields separated by commas, followed by an optional checksum, and terminated by carriage return/line feed. The data fields are uniquely defined for each sentence type. An example talker sentence is:
$HCHDM,238,M<CR><LF>
where "HC" specifies the talker as being a magnetic compass, the "HDM" specifies the magnetic heading message follows. The "238" is the heading value, and "M" designates the heading value as magnetic.
A sentence may contain up to 80 characters plus "$" and CR/LF. If data for a field is not available, the field is omitted, but the delimiting commas are still sent, with no space between them. The checksum field consists of a "*" and two hex digits representing the exclusive OR of all characters between, but not including, the "$" and "*".
Proprietary Sentence s. The standard allows individual manufacturers to define proprietary sentence formats. These sentences start with "$P", then a 3 letter manufacturer ID, followed by whatever data the manufacturer wishes, following the general format of the standard sentences. Some proprietary sentences, mainly from Garmin, Inc., are listed in chapter 6.
Query sentence s. A query sentence is a means for a listener to request a particular sentence from a talker. The general format is:
$ttllQ,sss,[CR][LF]
The first two characters of the address field are the talker identifier of the requester and the next two characters are the talker identifier of the device being queried (listener). The fifth character is always a "Q" defining the message as a query. The next field (sss) contains the three letter mnemonic of the sentence being requested. An example query sentence is:
$CCGPQ,GGA<CR><LF>
where the "CC" device (computer) is requesting from the "GP" device (a GPS unit) the "GGA" sentence. The GPS will then transmit this sentence once per second until a different query is requested.
Talker Sentence s. The general format for a talker sentence is:
$ttsss,d1,d2,....<CR><LF>
The first two letters following the „$” are the talker identifier. The next three characters (sss) are the sentence identifier, followed by a number of data fields separated by commas, followed by an optional checksum, and terminated by carriage return/line feed. The data fields are uniquely defined for each sentence type. An example talker sentence is:
$HCHDM,238,M<CR><LF>
where "HC" specifies the talker as being a magnetic compass, the "HDM" specifies the magnetic heading message follows. The "238" is the heading value, and "M" designates the heading value as magnetic.
A sentence may contain up to 80 characters plus "$" and CR/LF. If data for a field is not available, the field is omitted, but the delimiting commas are still sent, with no space between them. The checksum field consists of a "*" and two hex digits representing the exclusive OR of all characters between, but not including, the "$" and "*".
Proprietary Sentence s. The standard allows individual manufacturers to define proprietary sentence formats. These sentences start with "$P", then a 3 letter manufacturer ID, followed by whatever data the manufacturer wishes, following the general format of the standard sentences. Some proprietary sentences, mainly from Garmin, Inc., are listed in chapter 6.
Query sentence s. A query sentence is a means for a listener to request a particular sentence from a talker. The general format is:
$ttllQ,sss,[CR][LF]
The first two characters of the address field are the talker identifier of the requester and the next two characters are the talker identifier of the device being queried (listener). The fifth character is always a "Q" defining the message as a query. The next field (sss) contains the three letter mnemonic of the sentence being requested. An example query sentence is:
$CCGPQ,GGA<CR><LF>
where the "CC" device (computer) is requesting from the "GP" device (a GPS unit) the "GGA" sentence. The GPS will then transmit this sentence once per second until a different query is requested.