# Do I need a static transform publisher when I have a joint between 2 links?

Specific question
Do I need to publish a static_transform publisher from one link frame to another when I already have a joint defined in my URDf file between those 2 links?

Scenario
I'm trying to attach a Velodyne VLP-16 lidar on top of a MAV. I'm using the RotorS simulator ROS package for this purpose. I included the description xacro file for the lidar in this mav's file and initialised the <VLP-16> macro. The macro establishes a joint between the base_link of the LIDAR and the base_link of the MAV. I realized I could not visualize the LIDAR data in RViz just by doing this. I had to run a static_transform_publisher node too, from the base_link of the LIDAR and the base_link of the MAV. Shouldn't there be any need for the transform between two frames when I already have a joint between the two links?

edit retag close merge delete

Which launch file(s) are you using ? If you launch the node robot_state_publisher you shouldn't need a static_transform_publisher (assuming the link is fixed, which it should be).