Description

The EulerAngleStream command is used to enable or disable the Euler angle stream.

The Euler angles are read in degrees and they have the following ranges: $$Yaw \in [-180,180]$$ $$Pitch \in [-90,90]$$ $$Roll \in [-180,180]$$

The angles are represented by one fractional digit precision using the following equation:

\[angle_{est} = floor(angle_{ref} \times 10)\]

For instance, the angle \(-104.731^{\circ}\) is rounded to \(-104.7^{\circ}\), and is represented as the integer number -1047.

Protocol

This command uses the Command-Ack-Response-Data protocol.

Command

Byte Name C Type Value
0 Control Byte ( Packet Type (7:5) / SubSystem (4:0) ) uint8_t 0x41 ( 0b010 / 0b00001 )
1 Payload Length uint8_t 1
2 CRC uint8_t Calculated
3 Command uint8_t 0x05

Payload

Byte Name C Type Value
4 State uint8_t 0x00 (Disable) or 0x01 (Enable)

Response

Header

Byte Name C Type Value
0 Control Byte ( Packet Type (7:5) / SubSystem (4:0) ) uint8_t 0x01 ( 0b000 / 0b00001 )
1 Payload Length uint8_t 4
2 CRC uint8_t Calculated
3 Command uint8_t 0x05

Payload

Byte Name C Type Value
4 - 5 Downsample uint16_t Varies
6 - 7 Rate uint16_t Varies

Data

Header

Byte Name C Type Value
0 Control Byte ( Packet Type (7:5) / SubSystem (4:0) ) uint8_t 0x61 ( 0b011 / 0b00001 )
1 Payload Length uint8_t 10
2 CRC uint8_t Calculated
3 Command uint8_t 0x05

Payload

Byte Name C Type Value
4 - 7 Timestamp uint32_t Varies
8 - 9 Yaw int16_t Varies
10 - 11 Pitch int16_t Varies
12 - 13 Roll int16_t Varies