190-00228-08
GPS 16x Technical Specifications
Rev. C
Page 23
Note:
The following applies to all software versions of GPS 16xLVS and GPS 16xHVS.
APPENDIX B: GARMIN BINARY OUTPUT FORMAT
Two records are transmitted once per second by the GPS 16x series products. One record contains primarily post-
process information, such as position and velocity information. The second record contains receiver measurement
information. The records are sent at a default baud rate of 9600 baud, 8 data bits, and no parity.
Records begin with a delimiter byte (10 hex). The second byte identifies the record type (33 hex for a position
record, 34 hex for a receiver measurement). The third byte indicates the size of the data. The fourth byte is the first
byte of data. The data is then followed by a checksum byte, a delimiter byte (10 hex), and an end-of-transmission
character (03 hex).
Note:
If RTCM-104 differential data is sent to the GPS sensor, the board will reset the Garmin Binary Output Data
baud rate to the same baud rate used for RTCM-104 data. If the differential inputs are used on the GPS sensor, the
RTCM-104 data must be sent to the GPS sensor at 9600 baud (preferred) or 4800 baud. RTCM-104 baud rates less
than 4800 baud are not supported by the GPS sensors as it would limit bus bandwidth past the point where a once-
per-second Garmin binary output data rate could be maintained.
Position Record
- 0x10
(DLE is first byte)
- 0x33
(Position record identifier)
- 0x40
(Size of data)
- cpo_pvt_data
(See description below)
- one-byte checksum
(The addition of bytes between the delimiters should equal 0)
- 0x10
(DLE)
- 0x03
(ETX is last byte)
typedef struct
{
float
alt;
float
epe;
float
eph;
float
epv;
int
fix;
double
gps_tow;
double
lat;
double
lon;
float
lon_vel;
float
lat_vel;
float
alt_vel;
float
msl_hght;
int
leap_sec;
long
grmn_days;
} cpo_pvt_data;