Skip to content

Generic system assumes acceleration interface, though none is present #2694

@urfeex

Description

@urfeex

With the latest GenericSystem from #2571 I have the issue, that when starting the JTC (haven't checked with another controller) it requests an acceleration interface and the control node fails with

[ros2_control_node-1] [ERROR 2025-10-17 19:39:39.896] [controller_manager]: Exception of type : St13runtime_error thrown during read of the component 'ur5e': State interface not found: shoulder_pan_joint/acceleration in hardware component: ur5e. This should not happen.                                               
[ros2_control_node-1] [ERROR 2025-10-17 19:39:39.897] [controller_manager]: Deactivating following hardware components as their read cycle resulted in an error: [ ur5e ]

The joints have position, velocity and effort interface, but no acceleration interface.

I am pretty sure, that I didn't request an acceleration interface in the controller and running with our driver instead of GenericSystem, the error doesn't occur. Also, I can see that the GenericSystem checks for position, velocity and acceleration explicitly.

I haven't tick-tocked checking against pre #2571. We have only recently added the effort interface, but I am pretty sure that we had green pipelines with the effort interface and out mock hardware test already.

This isn't very urgent, so I will check building against pre #2571 on Monday and check again. However, since we have a mock hardware integration test in CI now, this will cause a downstream regression for ros2_control if it were released, so we should try to get it fixed before the next release.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions