The fused orientation comes from an SDK complementary filter that starts when the first subscriber opens the stream. Roll and pitch initialize from the first accelerometer frame against gravity and stay stable long term, while yaw has no absolute reference — it zeroes at stream start and drifts slowly over time. Yaw resets only after every subscriber, including indirect ones such as
tf, has unsubscribed and the stream restarts.IMU data is compatible with ROS
sensor_msgs/Imu and can be plugged directly into a ROS integration. Both streams can be recorded to MCAP files with TopicRecorder. See the SDK Data Recording page.ImuData
IMU sensor data, compatible with ROSsensor_msgs/Imu.
Sample raw frame from
imu_palm():
- Python
- C
Python: See the Python API examples earlier on this page.