Ask Your Question

No transform between base_footprint and base_link

asked 2016-12-09 12:35:33 -0500

clyde gravatar image

updated 2017-01-07 23:17:25 -0500

I have an URDF file with a fixed joint between base_footprint & base_link, but robot_state_publisher isn't publishing a tf transform between those 2 links. My understanding is that robot_state_publisher will publish & latch a static transform for fixed joints, but I'm not seeing it in any of my tests.


My base is irobot create2, using the create_autonomy base; source here:

The URDF file has this snippet:

<joint name="base_footprint_joint" type="fixed">
  <origin xyz="0 0 0.017" rpy="0 0 0" />
  <parent link="base_footprint" />
  <child link="base_link" />

I can't [yet] upload pictures, but my rqt_tf_tree shows: odom => base_footprint; and base_link => [ left_wheel_link, camera_link, right_wheel_link ]

(I added the base_link => camera_link transform using a static_transform_publisher; it's not in the create_autonomy URDF file.)

I can work around this, but I'm puzzled, and would like to find & fix the bug.

Thanks in advance!

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2017-01-01 18:56:58 -0500

clyde gravatar image

False alarm -- it's working. I tried various debugging tools and learned the pros & cons of each. Here's what I tried:

  • rosrun tf view_frames doesn't show a link in frames.pdf (thus my confusion)
  • rosrun tf tf_echo base_footprint base_link does show a link, at time 0.000
  • rosrun tf tf_monitor base_footprint base_link does show a link, with unknown_publisher
  • Rviz shows the hierarchy correctly
edit flag offensive delete link more


Hm. The fact that view_frames doesn't show it is troubling. Could ros/geometry#136 be related?

gvdhoorn gravatar image gvdhoorn  ( 2017-01-02 04:06:56 -0500 )edit

Ah, quite likely. Thanks for the link; it's good to know that this is a regression vs. expected behavior. Also ros/geometry#117?

clyde gravatar image clyde  ( 2017-01-02 16:12:19 -0500 )edit

answered 2017-01-04 10:06:51 -0500

bluehash gravatar image

updated 2017-01-04 10:10:53 -0500

This might help for now.

There was a recent update to view_frames. I ran into the same issue and used a work-around proposed here by setting use_tf_static to false to the robot_state_publisher node .

 <arg name="use_tf_static" default="false"/> 
 <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" >
          <param name="use_tf_static" value="$(arg use_tf_static)"/>
edit flag offensive delete link more

Your Answer

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

Add Answer

Question Tools



Asked: 2016-12-09 12:35:33 -0500

Seen: 3,832 times

Last updated: Jan 04 '17