21 #ifndef SELKIELoggerLPMS_Types
22 #define SELKIELoggerLPMS_Types
58 _Static_assert(
sizeof(
float) == 4,
"LPMS support requires 32bit floats");
78 float gyro_aligned[3];
83 float euler_angles[3];
84 float accel_linear[3];
100 #define LPMS_IMU_ACCEL_RAW 0
101 #define LPMS_IMU_ACCEL_CAL 1
102 #define LPMS_IMU_GYRO_RAW 3
103 #define LPMS_IMU_GYRO_CAL 5
104 #define LPMS_IMU_GYRO_ALIGN 7
105 #define LPMS_IMU_MAG_RAW 8
106 #define LPMS_IMU_MAG_CAL 9
107 #define LPMS_IMU_OMEGA 10
108 #define LPMS_IMU_QUATERNION 11
109 #define LPMS_IMU_EULER 12
110 #define LPMS_IMU_ACCEL_LINEAR 13
111 #define LPMS_IMU_PRESSURE 14
112 #define LPMS_IMU_ALTITUDE 15
113 #define LPMS_IMU_TEMPERATURE 16
115 #define LPMS_HAS(x, y) (((x) & (1 << y)) == (1 << y))
float altitude
Altitude [m].
float temperature
Temperature [Celsius].
uint32_t timestamp
Counted in 0.002s increments.
uint32_t present
Bitmask indicating set/valid members.
float pressure
Atmospheric pressure [kPa].
uint16_t length
Length of data, in bytes.
uint16_t checksum
Sum of all preceding message bytes.
uint8_t * data
Pointer to data array.
uint16_t id
Source/Destination Sensor ID.
uint16_t command
Message type.