Do not get messages from /tf and /tf_static


After I launch robot_state_publisher, I check that tf_tree has already transformation from base_link to head_link. But when I echo from /tf and /tf_static, I do not get any messages from these 2 topics.

Could you explain why?


Hi @NguyenDuyDuc, could you give a little more context to the robot URDF you are using?

If you see base_link -> head_link, my guess is that it’s a static TF, which would appear on /tf_static. Be aware though that this topic only gets published once, and it uses the latched publisher mechanism.

The /tf topic is for dynamic transform, so if there is no frame like odom, then maybe the robot_state_publisher is not publishing any.

I created a robot follow the course.
I spawned a robot in gazebo, show in Rviz2, have tf_tree

Everything is fine. But when I echo /tf_static, I do not get any messages.
If the /tf_static is latched publisher, I think I can get the last message that it published but I do not

  1. That’s why I want to ask?

  2. And after I use joint_state_gui to move a wheel, I get messages from /tf. But at the beginning, if I do not move any thing, I will not get any messages from /tf. But I still have tf_tree

I’m glad to see everything is fine. You don’t see anything in /tf_static because there are no static TFs in your model.

You only see messages in /tf when you move the joints because that is when the dynamic TFs should report that they have moved. You can also run a tf_echo to check all TFs.

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.