InertialPacket
InertialPacket
InertialDataPacket

A class that contains packet information about an Inertial packet

Types
Response State
MIP_ACK_NACK_ERROR_NONE

0  - No Error

MIP_ACK_NACK_ERROR_UNKNOWN_COMMAND

1  - Error: Unknown command was sent to the device

MIP_ACK_NACK_ERROR_CHECKSUM_INVALID

2  - Error: Invalid checksum was recieved by the device

MIP_ACK_NACK_ERROR_PARAMETER_INVALID

3  - Error: Invalid parameter was received by the device

MIP_ACK_NACK_ERROR_COMMAND_FAILED

4  - Error: The command has failed

MIP_ACK_NACK_ERROR_COMMAND_TIMEOUT

5  - Error: The command has timed out

MIP_ACK_NACK_ERROR_UNKNOWN_DESCRIPTOR_SET

6  - Error: Unknown descriptor set was recieved by the device

Payload

typedef for the bytes that make up a payload in a packet

Variables
m_descriptorSet
uint8 m_descriptorSet

The descriptor set (packet type) of the InertialPacket

m_payload
Payload m_payload

The payload bytes in the packet

Functions
payload
void payload(
const Bytes &bytes
)

Sets the payload bytes of the packet

Parameters
bytes
const Bytes&

The payload of the packet, as a vector of bytes

type

Sets the descriptor set of the InertialPacket

Parameters
set

The descriptor set value to set

isDataPacket
bool isDataPacket() const

Gets whether or not the packet is a data packet

Returns

true if the packet is a data packet, false otherwise

descriptorSet
uint8 descriptorSet() const

Gets the descriptor set of the InertialPacket

Returns

The descriptor set value of the packet

payload
const std::vector<uint8> payload() const

Gets the payload bytes of the packet

Returns

The payload of the packet, as a vector of bytes

InertialPacketInfo

Contains constants representing information on Inertial MIP Packets

Types
Inertial Packet Bytes
INERTIAL_PACKET_START_OF_PACKET

0x7565  - The full start of packet value of any inertial packet

INERTIAL_PACKET_SOP1

0x75  - The first (start of packet) byte of any inertial packet

INERTIAL_PACKET_SOP2

0x65  - The second (start of packet) byte of any inertial packet

COMMAND_SET_BASE

0x01  - The Base command set is common to many MicroStrain devices.  With the Base command set it is possible to identify many properties and do basic functions on a device even if you do not recognize its specialized functionality or data.  The commands work the same way on all devices that implement this set.

COMMAND_SET_3DM

0x0C  - The 3DM command set is common to the MicroStrain Inertial sensors that support the MIP packet protocol.  Because of the unified set of commands, it is easy to migrate code from one inertial sensor to another.

COMMAND_SET_NAV_FILTER

0x0D  - The Navigation Filter command set is specific to MicroStrain Inertial Navigation sensors.

COMMAND_SET_SYSTEM

0x7F  - The System Command set provides a set of advanced commands that are specific to devices such as the 3DMGX3-35 that have multiple intelligent internal sensor blocks.  These commands allow special mode such as talking directly to the native protocols of the embedded sensor blocks.  For example, with the 3DM-GX3-35, you may switch into a mode that talks directly to the internal u-blox chip or directly to the embedded 3DM-GX3-25 AHRS.  This allows you to use code or utilities written specifically for the native u-blox protocols (NMEA or UBX) and 3DM-GX3-25 protocols (original single byte commands or ASPP packet protocol).

Inertial Packet Information
MIP_MIN_PACKET_SIZE

8  - The minimum number of bytes to make a valid MIP packet (0x75, 0x65, Descriptor Set, Payload Len, Payload, Checksum)

MIP_NUM_BYTES_BEFORE_PAYLOAD

4  - The number of bytes in the MIP packets before the payload

MIP_NUM_BYTES_AFTER_PAYLOAD

2  - The number of bytes in the MIP packets after the payload

DescriptorSet

Contains enums representing Descriptor sets for Inertial Packets

Types
Inertial Packet Descriptor Sets
DESC_SET_CMD_BASE

0x01  - Command Packet, Base Set

DESC_SET_CMD_3DM

0x0C  - Command Packet, 3DM Set

DESC_SET_CMD_NAV

0x0D  - Command Packet, Navigation Filter Set

DESC_SET_CMD_SYS

0x7F  - Command Packet, System Set

DESC_SET_DATA_SENSOR

0x80  - Data Packet, Sensor Set

DESC_SET_DATA_GPS

0x81  - Data Packet, GPS Set

DESC_SET_DATA_EST_FILTER

0x82  - Data Packet, Estimation Filter Set