190-00879-08 GPS 18x Technical Specifications Rev. BPage 24APPENDIX B: GARMIN BINARY OUTPUT FORMATIn Binary Output mode, GPS 18x series products will transmit packets once per second. The record containsprimarily post-process information such as position and velocity information. For the GPS 18x PC, GPS 18x LVC,and GPS 18x-5Hz the record is sent at a default baud rate of 4800 baud, 8 data bits, and no parity.To turn this record on for the GPS 18x PC, GPS 18x LVC, and GPS 18x-5Hz versions, use the $PGRMC1 NMEAsentence as described in section 4 GPS 18x PC, GPS 18x LVC, & GPS 18x-5Hz Software Interface. Refer to theGarmin Device Interface Specification found in the Garmin Device Interface SDK for details on how to form andparse Garmin packets. At the time of this printing, these specs are available from the technical suppport section ofour Web site: www.garmin.com/support/commProtocol.html.Note: For the GPS 18x-5Hz, a baud rate of 9600 is not high enough to transmit all of the packets (since they areoutput at a 5 Hz rate). You will need to change the baud rate to at least 38400 to be able to transmit all of thepackets. Refer to Appendix C: Changing the Baud Rate in Garmin Mode for information.For the GPS 18x USB, the records must be enabled by commands to the unit. Refer to the Garmin Device InterfaceSpecification found in the Garmin Device Interface SDK for details on how to form and parse Garmin packets overUSB. At the time of this printing, these specs are available from the technical suppport section of our Web site:www.garmin.com/support/commProtocol.html. The ID of each command should be 10 decimal to signify that therecord is a command. The data portion of the packet should be one of the following:Function Command (base 10)Position Record On 49Position Record Off 50Note that the satellite data information is also enabled when the position record is enabled.Records sent over RS232 begin with a delimiter byte (10 hex). The second byte identifies the record type (33 hex fora position record, 34 hex for a receiver measurement and 72 hex for a satellite data record). The third byte indicatesthe size of the data. The fourth byte is the first byte of data. The data is then followed by a checksum byte, adelimiter byte (10 hex), and an end-of-transmission character (03 hex). Additionally, any DLEs (0x10) that appearbetween the delimeters are escaped with a second DLE. There is sample code at the end of this section that will stripoff the DLEs and ETXs.RS232 Packet:- 0x10 (DLE is first byte)- 0x## (Record ID – single byte)- 0x## (Number of data bytes – single byte)- data bytes (See descriptions below)- 0x## (2’s complement of the arithmetic sum of the bytes between the delimiters)- 0x10 (DLE)- 0x03 (ETX is last byte)USB packets contain a header with a USB transport ID, a record ID, and the size of the record data in bytes. Allunused reserved bytes in the header must be zero. Immediately following the header is the record data payload.Refer to the Garmin Device Interface Specification found in the Garmin Device Interface SDK for details on how toform and parse Garmin USB packets.USB Packet:- 0x## 0x00 0x00 0x00 (USB transport ID, 1 byte unsigned, 4 bytes reserved)- 0x## 0x## 0x00 0x00 (Record ID, 2 bytes unsigned, 4 bytes reserved)- 0x## 0x## 0x## 0x## (Number of data bytes in record, 4 bytes unsigned)- record data payloadThe data bytes of each packet contain the record specified by the record ID. A description of each record follows.