# Revision history [back]

For integration with robot_pose_ekf, you'll want to make sure that your IMU actually computes and returns an orientation, since robot_pose_ekf only cares about the orientation component of it's input sensor_msgs/IMU. For example, if I recall correctly, the Wiimote IMU does not compute an orientation component, as the Wiimote only outputs accelerations (and angular velocities if you have a MotionPlus either addon or builtin to the newer Wiimotes).

I'm not familiar with the imu_9drazor driver, but we do use that IMU in our own projects and have been extremely happy with it. Some reasons we've been happy with it:

Relatively inexpensive ($125) Easily hackable (it's basically just an Arduino with the sensors wired in and some pre-exisiting firmware) Gyros don't really drift, so we are able to use a static bias correction instead of calculating it on the fly  Hopefully this helps. For integration with robot_pose_ekf, you'll want to make sure that your IMU actually computes and returns an orientation, since robot_pose_ekf only cares about the orientation component of it's input sensor_msgs/IMU. For example, if I recall correctly, the Wiimote IMU does not compute an orientation component, as the Wiimote only outputs accelerations (and angular velocities if you have a MotionPlus either addon or builtin to the newer Wiimotes). I'm not familiar with the imu_9drazor driver, driver specifically, but we do use that IMU in our own projects (with an unreleased driver) and have been extremely happy with it. Some reasons we've been happy with it: Relatively inexpensive ($125)
Easily hackable (it's basically just an Arduino with the sensors wired in and some pre-exisiting firmware)
Gyros don't really drift, so we are able to use a static bias correction instead of calculating it on the fly


Hopefully this helps.

For integration with robot_pose_ekf, you'll want to make sure that your IMU actually computes and returns an orientation, since robot_pose_ekf only cares about the orientation component of it's input sensor_msgs/IMU. For example, if I recall correctly, the Wiimote IMU does not compute an orientation component, as the Wiimote only outputs accelerations (and angular velocities if you have a MotionPlus either addon or builtin to the newer Wiimotes).

I'm not familiar with the imu_9drazor driver specifically, but we do use that Sparkfun 9DOF Razor IMU in our own projects (with an unreleased driver) and have been extremely happy with it. Some reasons we've been happy with it:

Relatively inexpensive (\$125)
Easily hackable (it's basically just an Arduino with the sensors wired in and some pre-exisiting firmware)
Gyros don't really drift, so we are able to use a static bias correction instead of calculating it on the fly


Hopefully this helps.