ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

tf represents coordinate frames and the transforms between them as a tree. This means each frame_id can only have one parent (but can have many children). You currently have three separate nodes publishing a transform from different frames into base_link: robot_pose_ekf, rgbd_odometry, and odom.

In other words, renaming only the odom frame coming from robot_pose_ekf isn't enough. If you had instead/also renamed the child_frame_id (base_link), it would have worked. Alternatively and preferably, the rgbd_odometry node may have a parameter that stops it from publishing its transform. Finally, you appear to have a third node publishing that transform (the odom node).