ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Hi,

At first I thought your issue was due to the lack of zeros at velocity and effort message fields for each joint. I tested adding them to the message, but the issue was still there, exactly as you explained.

My best guess is that joint_state_publisher was developed expecting you to choose one (and only) input source for your angles. The package documentation suggests (but does not confirm) it:

There are four possible sources for the value of each JointState:  
 1. Values directly input through the GUI
 2. JointState messages that the node subscribes to 
 3. The value of another joint
 4. The default value

It makes sense after all. Unless the sliders from the GUI autoupdate their values, there would be two different set of values competing against each other:

  • the one from the topic described in source_list;
  • and the one from the GUI.

Which one should the joints assume in dispute cases? Maybe the simple assumption was best suited at the time.

Hi,

At first I thought your issue was due to the lack of zeros at velocity and effort message fields for each joint. I tested adding them to the message, but the issue was still there, exactly as you explained.

My best guess is that joint_state_publisher was developed expecting you to choose one (and only) input source for your angles. The package documentation suggests (but does not confirm) it:

There are four possible sources for the value of each JointState:  
 1. Values directly input through the GUI
 2. JointState messages that the node subscribes to 
 3. The value of another joint
 4. The default value

It makes sense after all. Unless the sliders from the GUI autoupdate their values, there would be two different set of values competing against each other:

  • the one from the topic described in source_list;
  • and the one from the GUI.

Which one should the joints assume in dispute cases? Maybe the simple assumption was best suited at the time.

P.S.: The issue you described was marked as a bug in this Github issue.