Skip to main content
A single 6-axis IMU (3-axis gyroscope plus 3-axis accelerometer, no magnetometer) sits inside the back-of-hand module, with two subscription APIs:
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 ROS sensor_msgs/Imu. Sample raw frame from imu_palm():
Python: See the Python API examples earlier on this page.