Blocked on Wait for device to boot.
during launch of robot with ros2_canopen ros2 control system
#329
Labels
bug
Something isn't working
The Problem
Everything compiles smoothly, but when I launch the robot, the ros2 control node stays blocked on "wait for device to boot" and nothing follows. It happens after the master has been instantiated, so it happens during the activation of the first slave node corresponding to the first joint.
Expected behavior
I monitor the can0 bus with candump and I only get
can0 701 [1] 00
While on "wait for device to boot", I run
cansend can0 000#8200
and I get:can0 000 [2] 82 00 can0 701 [1] 00 can0 733 [1] 00 can0 732 [1] 00
So I would expect to see the same command from the launch of the ros2_canopen library when instantiating the master (a reset of the communication before trying to load the slaves).
The Context
I am trying to use the ros2_canopen library to control two servo drives ingenia-NIX-10-48-C-C as part of a two joints robotic arm.
I followed the tutorial to use this library in ros2 control mode, and I set up my bus.yml accordingly.
The .eds file of the hardware can be found here: link_to_eds
Setup:
To Reproduce
I was able to reproduce the exact same behavior with the virtual vcan0 and the Pilz tutorial in the ros2_canopen manual.
Here are the exact steps I follow to get the same error with virtual can:
mkdir ~/ros2_canopen_ws/src
cd ~/ros2_canopen_ws/src
git clone [email protected]:ros-industrial/ros2_canopen.git
git clone [email protected]:hellantos/prbt_robot.git
cd ros2_canopen
git checkout humble
cd ../../
colcon build
source install/setup.bash
ros2 launch prbt_robot_moveit_config moveit_planning_execution.launch.py can_interface_name:=vcan0
The log from here is the following.
The ros2 control node is "wait for device to boot" on the first joint, exactly as it is for my real robot.
The full LOG when I launch the real robot is the following
--> The node is in DEBUG mode so the log is long but at the end you can see that it waits for device to boot.
The text was updated successfully, but these errors were encountered: