HMR File

The 256 byte header contains information that is vital to processing and must be filled in. The C/C++ structure definition of the HMR header is as follows:

HMR Header Struct Definition

Word

Size

Type

Definition

szTitleStr

12

char[12]

“$IMUHEADING\0” – NULL terminated ASCII string

ucType

1

uint8_t

1 = values from external source

2 = values form dual antenna source

dBoreSightRotationZ

8

double

Heading boresight between the forward direction of travel and the vector between antennas. Positive rotation is clockwise about Z

dBoreSightRotationZStdDev

8

double

Accuracy of the boresight, 0.0 if not known

Extra

227

int8_t[227]

Reserved for future use

The single header is then followed by the 34-byte structure type below for each heading update record:

HMR Record Struct Definition

Word

Size

Type

Definition

dGpsTime

8

double

GPS seconds of week

sGpsWeek

2

int16_t

GPS week

dHeading

8

double

The heading update value in decimal degrees, positive rotation is clockwise from North

fHeadingStdDev

4

float

Standard deviation of the update in decimal degrees., 0.0 if not known

fBaselineLength

4

float

Distance between antennas in meters. Only use if ucType == 2

fPitch

4

float

Pitch between the two antennas in decimal degrees. Only use if ucType == 2

fPitchStdDev

4

float

Standard deviation of the pitch in decimal degrees, 0.0 if not known