11-6 
 
3  Serial Data message definitions 
Two classes of messages are described in this document: industry-standard IEC 
61162/NMEA messages and special proprietary JRC messages.  
 
Each sentence begins with a '$' (or ‘!’) and ends with a carriage return/line feed sequence and 
can be no longer than 80 characters of valid characters (plus the line terminators <CR><LF>). 
The data is contained within this single line with data items separated by commas. The data 
itself is just ASCII text and is normally fully contained in one variable length sentence. The 
data may vary in the amount of precision contained in the message. Programs that read the 
data should only use the commas to determine the field boundaries and not depend on column 
positions. There is a provision for a checksum at the end of each sentence. The checksum is 
mandatory and calculated as the eight-bit EXCLUSIVE OR of the ASCII representation for 
all characters between the $ and * in the message. Typical messages including checksum are 
shown below.  
 
$VDDPT,24.5,,400*57 
$VDVBW,7.53,,A,7.83,0.51,A,,V,0.26,A*4B 
$TIROT,16.88,A*3C 
 
Note that some early implementations erroneously included the ‘$’ character in the 
checksum calculation! 
 
The checksum is omitted in all examples that follow in this document. 
 
The used definitions follow the IEC 61162/NMEA standard with the addition of a variable 
length integer field to simplify understanding for readers. Note that fields may be empty, i.e. 
without any character at all and immediately followed by the comma separator. 
Field Type  Symbol  Definition 
Status 
A 
Single character field: A=data valid, V=data invalid. 
Variable 
length 
floating 
x.x 
Normal definition of a floating format variable. The integer version 
separated into a new definition. 
Variable 
length 
integer 
i. 
JRC extension with variable length field. Normal definition of a 
short integer format variable. 
Fixed hex 
hh- 
Hex field with same number of hexadecimal characters as specified. 
MSB (Most Significant Bit) to the left. 
Variable text 
c—c 
Valid character field of variable length. 
Fixed alpha 
aa- 
Upper & lower case alpha characters [0..9, Aa, Bb, Cc, Dd, Ee, Ff]. 
Fixed 
number 
xx- 
Fixed length integer value. 
Fixed text 
cc- 
Fixed length valid characters.