By default, joint_state_broadcaster publishes all available states when none are specified in its parameters. If there are no states at all (none present in the urdf), it throws a confusing error message [joint_state_broadcaster]: None of requested interfaces exist. Controller will not run. This message implies that there are joint states that are supposed to exist but don't, when in reality there are simply no states to publish
This behavior can be undesirable for example, when a project is in development it can often make sense to first implement open loop control to verify the hardware is working, before moving on to closed loop control.
I propose replacing this behavior with a simple warning indicating that no states exist to publish
By default, joint_state_broadcaster publishes all available states when none are specified in its parameters. If there are no states at all (none present in the urdf), it throws a confusing error message
[joint_state_broadcaster]: None of requested interfaces exist. Controller will not run. This message implies that there are joint states that are supposed to exist but don't, when in reality there are simply no states to publishThis behavior can be undesirable for example, when a project is in development it can often make sense to first implement open loop control to verify the hardware is working, before moving on to closed loop control.
I propose replacing this behavior with a simple warning indicating that no states exist to publish