35
Appendix D
Phase Output Data Binary Format
Two records are transmitted once per second by the GPS 25LP. 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 bits, no parity.
Records begin with a delimiter byte (10 hex). The second byte identifies the record type (28 hex for a
position record, 29 hex for a position record). 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 chksum 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 25LP the board will reset the Phase Output Data
baud rate to the same baud rate used for RTCM-104 data. If the differential inputs are used on the GPS
25LP then the RTCM-104 data must be sent to the GPS 25LP at 9600 baud (preferred) or 4800 baud.
RTCM-104, baud rates less than 4800 baud are not supported by the GPS 25LP since it would limit bus
bandwidth past the point where a once per second phase output data rate could be maintained.
Position Record
- 0x10
(dle is first byte)
- 0x28
(position record identifier)
- 0x36
(size of data)
- cpo_pvt_type
(see description below)
- one byte chksum
(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;
} cpo_pvt_type;
alt
ellipsoid altitude (mt)
epe
est pos error (mt)
eph
pos err, horizontal (mt)
epv
pos err, vertical (mt)
fix
0 = no fix; 1 = no fix; 2 = 2D; 3 = 3D; 4 = 2D differential; 5 = 3D differential;
6 and greater - not defined
gps_tow
gps time of week (sec)
lat
Latitude (rad)