Ask Your Question
1

[ROS2] tf2 "authority undetectable" / "no authority available"

asked 2021-07-13 12:17:07 -0500

shonigmann gravatar image

I'm playing around with tf2 in ROS2 Foxy using a Gazebo simulated robot, and get warning messages regarding the tf2 "authority".

For instance, running ros2 run tf2_ros tf2_monitor, I can see that the static and dynamic transforms are being published by "<no authority available>", e.g.:

Frame: back_right_wheel_link, published by <no authority available>, Average Delay: 0.000709075, Max Delay: 0.0118647
Frame: base_link, published by <no authority available>, Average Delay: 1.62619e+09, Max Delay: 1.62619e+09

TF buffers also mention the undetectable Authority. E.g. RViz also gives TF related warnings mentioning the Authority

Warning: TF_OLD_DATA ignoring data from the past for frame right_rocker_link at time 7.421000 according to authority Authority undetectable

I haven't found much in terms of documentation or search results referring to the "authority", so I was hoping someone could give some insight into what it is, how it is typically set, etc.

Thanks!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2021-07-14 12:34:34 -0500

shonigmann gravatar image

Took some digging, but the issues I was experiencing were due to the following reasons:

  • Overlap between the joints being published by gazebo_ros_pkgs' joint_state_publisher and ros2_control's joint_state_broadcaster
  • Issues with use_sim_time not being set on the joint_state_broadcaster using normal launch file parameter inclusion. The result was some joint transforms being published using the wall clock, and others being published using Gazebo's simulated clock. Setting use_sim_time in the yaml config file for each controller/broadcaster resolved this issue

But more to the point of my original question, the authority is meant to be the source of the transformation information. Presumably this is meant to be the name of the node that is publishing the transformation (e.g. your joint_state_broadcaster).

The "Authority undetectable" message stems from the fact that, as of the time this question was written, extracting the transformation's source is still a TODO in transform_listener.cpp and the authority is set to "Authority undetectable" by default.

edit flag offensive delete link more

Comments

Hi, I'm also using Gazebo and I couldn't retrieve any name of tf publisher nodes. If I get your experience, you achieve to retrieve it ?

TomSon gravatar image TomSon  ( 2021-10-15 04:09:59 -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

2 followers

Stats

Asked: 2021-07-13 12:17:07 -0500

Seen: 266 times

Last updated: Jul 14 '21