[UPDATE] "Unknown Reason for Transform Failure"
Running ROS1 noetic on Ubuntu 22.04. All is well except this "Unknown Reason for Transform Failure"
If I disable all the static transforms that are launched automatically, then I get the expected:
Then I issue this command:
rosrun tf static_transform_publisher 0 0 0 0 0 0 base_footprint scan_link 20
Which I verify like this:
I've tried a variety of things to get to the bottom of this, like running the static transfer on the robot itself, vs. on the remote computer. Note that my base publishes and updates the transform between odom and base_footprint.:
One more thing: if I change global fixed frame to scan_link, then the error goes away!
More details
Here's a short video showing the problem:
https://share.getcloudapp.com/8LuqRXqm
(by the way, that's a cool lightweight tool to make videos on Macos)
I have Methodically eliminated one suspect after another but the problem continues coming up. I fixed the IMU problem. It seems that the i2c address was different from the default, I suspect because I have the IMU daisy chained with another device on i2c.
The problem as you see in the video is that when I set odom as my global frame, the lidar, an error appears which I am unable to interpret further. It is coming out of RViz so I don't even know what source code to look at.
From the video you will see that tf_echo and tf_monitor look ok but seem to indicate a duplicate tf broadcaster possibly messing up the odom to base_footprint tf. rostopic echo /tf and /tf_static both look ok.