How to create a custom hardware_interface? [closed]
I have created my own joint_trajectory_controller and hardware interface. When I launch my driver with it, it complains that "This controller requires a hardware interface of type 'hardware_interface::PosVelAccErrJointInterface'. Make sure this is registered in the hardware_interface::RobotHW class." PosVelAccErrJointInterface is the name of my own hardware interface.
So the controller seems to be loaded fine (controller manager can finds it) but it's complaining it's not able to find its corresponding hardware interface. I have put my own custom hardware interface inside the hardware_interface package. In driver, I have following code inside my own hardware_interface::RobotHW class:
hardware_interface::PosVelAccErrJointInterface pvaeji;
registerInterface(&pvaeji);
Everything builds fine, but I don't see what else is missing. Do I have to code somewhere to ensure the plugin lib adds my own hardware interface?
Any clue here?