Skip to content

Clarification on potential TF conflict between diff_drive plugin and ekf_filter_node_odom in GPS waypoint follower demo #130

@Gianstiff

Description

@Gianstiff

While reviewing the gps_waypoint_follower_demo, I noticed that the robot SDF used in the demo includes a diff_drive plugin that publishes odometry:

https://github.com/ros-navigation/nav2_minimal_turtlebot_simulation/blob/8b63166dd76829aaa558bf8e801ac9c834a3a56c/nav2_minimal_tb3_sim/urdf/gz_waffle_gps.sdf.xacro#L545

At the same time, the demo uses robot_localization with the ekf_filter_node_odom, which (when world_frame == odom_frame) broadcasts its own odom → base_link transform.

According to the robot_localization documentation:
https://docs.ros.org/en/melodic/api/robot_localization/html/preparing_sensor_data.html#odometry

“Some robot drivers also broadcast this transform along with their odometry message. If users want robot_localization to be responsible for this transform, then they need to disable the broadcast of that transform by their robot’s driver.”

Given this, would it be appropriate to disable the diff_drive plugin’s odometry TF broadcast in the demo to ensure there are no conflicting TF publishers?

Thanks in advance!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions