Ask Your Question

Do we need to publish odom in tf if we are using robot_localization?

asked 2021-07-20 03:25:49 -0500

Yehor gravatar image


My question could seem simple, however I didn't find clear answer for that. I have noticed that if I am using robot_localization pkg I don't need to provide more than 1 absolute source of robot position.

My question, do we need provide for example tf changes in the driver node, I mean odom->base_footprint, if I am using robot_localization. Because robot_localization providing odom->base_footprint as well.

Thank you!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2021-07-20 21:01:51 -0500

Mike Scheutzow gravatar image

If your ros system uses odometry, you should make sure that only one node publishes transform odom->base_footprint, and only one node publishes transform map->odom. This is why the nodes in the robot_localization package usually have a parameter to enable/disable publishing to /tf.

edit flag offensive delete link more


@Mike Scheutzow so If robot_localization publish odom->base_footprint transformation, I shouldn't publish odom->base_footprint from driver?

Am I correct?

Yehor gravatar image Yehor  ( 2021-07-21 02:55:56 -0500 )edit

Correct. Some ros systems have multiple sources of odom->base_footprint, and in that case they must all be combined into a "best guess" before one node publishes the value.

Mike Scheutzow gravatar image Mike Scheutzow  ( 2021-07-21 07:39:48 -0500 )edit

@Mike Scheutzom Thank you!

Yehor gravatar image Yehor  ( 2021-07-21 08:35:55 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2021-07-20 03:25:49 -0500

Seen: 41 times

Last updated: Jul 20