How do I make sure works the robot_pose_ekf working correctly with imu sensor.
I want to use the output of robot_pose_ekf (/odom_combined) with gmapping. I subscribe to published odometry (/odom) and imu (/imu_data) topics. I am running node robot_pose_ekf and it gives me odom_combined output. The launch file is as follows.
<launch>
<node pkg="robot_pose_ekf" type="robot_pose_ekf" name="robot_pose_ekf">
<param name="output_frame" value="odom_combined"/>
<param name="base_footprint_frame" value="base_footprint"/>
<param name="freq" value="50.0"/>
<param name="sensor_timeout" value="1.0"/>
<param name="odom_used" value="true"/>
<param name="imu_used" value="true"/>
<param name="vo_used" value="false"/>
<remap from="imu" to="combined_odometry/odom" />
</node>
</launch>
when i start driving my robot and check it out, i see no difference between odometry and odom_combined. as if it didn't include the imu data in the calculation at all. I am also doing this conversion.
rosrun tf2_ros static_transform_publisher 0 0 0 0 0 0 odom odom_combined
I see that the imun has no link in the node tree.
and I'm adding my tf tree below. Can anyone tell me where I'm doing wrong. I spent a long time on this.