-
Notifications
You must be signed in to change notification settings - Fork 72
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Environment
OS Version: Ubuntu 24.04.3 LTS (Desktop) / Ubuntu Mate 22.04 ARM64 (Raspberry Pi)
Source or binary build?: source, humble, latest commit (d8b2261)
Description
Serial communication with an Arduino Nano R4 version (clone board with a CH340 chip for USB<->serial) is returning timeout responses when using the motor demo app or the normal ROS 2 bringup for the Andino.
Expected behavior
No timeout as in the following, expected logs:
For the motor demo:
pi@andino:~/robot_ws$ motor_driver_demo --serial_port=/dev/ttyUSB_ARDUINO --msg='e'
Waiting 2 seconds for the Microcontroller to be ready...
Motor driver is connected: True
Sending message: e
Response: 0 0
For the andino bringup:
pi@andino:~/robot_ws$ ros2 launch andino_bringup andino_robot.launch.py
...
[INFO] [ros2_control_node-4]: process started with pid [12230]
[INFO] [spawner-5]: process started with pid [12232]
[ros2_control_node-4] [WARN] [1757587805.218468455] [controller_manager]: [Deprecated] Passing the robot description parameter directly to the control_manager node is deprecated. Use '~/robot_description' topic from 'robot_state_publisher' instead.
[ros2_control_node-4] [INFO] [1757587805.219449682] [resource_manager]: Loading hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587805.224960291] [resource_manager]: Initialize hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587805.225849482] [DiffDriveAndino]: On init...
[ros2_control_node-4] [INFO] [1757587805.226117053] [DiffDriveAndino]: Finished On init.
[ros2_control_node-4] [INFO] [1757587805.226204126] [resource_manager]: Successful initialization of hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587805.226757544] [resource_manager]: 'configure' hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587805.226835358] [DiffDriveAndino]: On configure...
[ros2_control_node-4] Waiting 2 seconds for the Microcontroller to be ready...
[spawner-5] [INFO] [1757587806.472607777] [spawner_joint_state_broadcaster]: waiting for service /controller_manager/list_controllers to become available...
[ros2_control_node-4] [INFO] [1757587807.254637684] [DiffDriveAndino]: Finished Configuration
[ros2_control_node-4] [INFO] [1757587807.254812589] [resource_manager]: Successful 'configure' of hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587807.254885699] [resource_manager]: 'activate' hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587807.254928365] [DiffDriveAndino]: On activate...
[ros2_control_node-4] [INFO] [1757587807.254964938] [DiffDriveAndino]: Finished Activation
[ros2_control_node-4] [INFO] [1757587807.255012845] [resource_manager]: Successful 'activate' of hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587807.302661838] [controller_manager]: update rate is 50 Hz
[ros2_control_node-4] [INFO] [1757587807.302881798] [controller_manager]: Spawning controller_manager RT thread with scheduler priority: 50
[ros2_control_node-4] [WARN] [1757587807.303633510] [controller_manager]: No real-time kernel detected on this system. See [https://control.ros.org/master/doc/ros2_control/controller_manager/doc/userdoc.html] for details on how to enable realtime scheduling.
[ros2_control_node-4] [INFO] [1757587807.484469746] [controller_manager]: Loading controller 'joint_state_broadcaster'
[spawner-5] [INFO] [1757587807.561317837] [spawner_joint_state_broadcaster]: Loaded joint_state_broadcaster
[ros2_control_node-4] [INFO] [1757587807.579811805] [controller_manager]: Configuring controller 'joint_state_broadcaster'
[ros2_control_node-4] [INFO] [1757587807.583305720] [joint_state_broadcaster]: 'joints' or 'interfaces' parameter is empty. All available state interfaces will be published
[spawner-5] [INFO] [1757587807.766725143] [spawner_joint_state_broadcaster]: Configured and activated joint_state_broadcaster
[INFO] [spawner-5]: process has finished cleanly [pid 12232]
[INFO] [spawner-6]: process started with pid [12320]
[ros2_control_node-4] [INFO] [1757587809.909685843] [controller_manager]: Loading controller 'diff_controller'
[spawner-6] [INFO] [1757587810.178853411] [spawner_diff_controller]: Loaded diff_controller
[ros2_control_node-4] [INFO] [1757587810.194774952] [controller_manager]: Configuring controller 'diff_controller'
[spawner-6] [INFO] [1757587810.295051892] [spawner_diff_controller]: Configured and activated diff_controller
[INFO] [spawner-6]: process has finished cleanly [pid 12320]
Actual behavior
Timeout error of type: Response to X timed out.
For the motor demo:
pi@andino:~/robot_ws$ motor_driver_demo --serial_port=/dev/ttyUSB_ARDUINO --msg='e'
Motor driver is connected: True
Waiting 2 seconds for the Microcontroller to be ready...
Sending message: e
Response to e timed out.
Response:
For the andino bringup:
pi@andino:~/robot_ws$ ros2 launch andino_bringup andino_robot.launch.py
...
[INFO] [ros2_control_node-4]: process started with pid [6113]
[INFO] [spawner-5]: process started with pid [6115]
[ros2_control_node-4] [WARN] [1757587337.107401851] [controller_manager]: [Deprecated] Passing the robot description parameter directly to the control_manager node is deprecated. Use '~/robot_description' topic from 'robot_state_publisher' instead.
[ros2_control_node-4] [INFO] [1757587337.111720243] [resource_manager]: Loading hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587337.117803564] [resource_manager]: Initialize hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587337.118817278] [DiffDriveAndino]: On init...
[ros2_control_node-4] [INFO] [1757587337.119055258] [DiffDriveAndino]: Finished On init.
[ros2_control_node-4] [INFO] [1757587337.119136868] [resource_manager]: Successful initialization of hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587337.119877029] [resource_manager]: 'configure' hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587337.119958010] [DiffDriveAndino]: On configure...
[ros2_control_node-4] [INFO] [1757587337.142689308] [DiffDriveAndino]: Finished Configuration
[ros2_control_node-4] [INFO] [1757587337.142944047] [resource_manager]: Successful 'configure' of hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587337.143056861] [resource_manager]: 'activate' hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587337.143087972] [DiffDriveAndino]: On activate...
[ros2_control_node-4] [INFO] [1757587337.143181564] [DiffDriveAndino]: Finished Activation
[ros2_control_node-4] [INFO] [1757587337.143211434] [resource_manager]: Successful 'activate' of hardware 'RealRobot'
[ros2_control_node-4] [INFO] [1757587337.288376396] [controller_manager]: update rate is 50 Hz
[ros2_control_node-4] [INFO] [1757587337.288530469] [controller_manager]: Spawning controller_manager RT thread with scheduler priority: 50
[ros2_control_node-4] [WARN] [1757587337.289329536] [controller_manager]: No real-time kernel detected on this system. See [https://control.ros.org/master/doc/ros2_control/controller_manager/doc/userdoc.html] for details on how to enable realtime scheduling.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] [INFO] [1757587338.611347716] [controller_manager]: Loading controller 'joint_state_broadcaster'
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[spawner-5] [INFO] [1757587340.394836184] [spawner_joint_state_broadcaster]: Loaded joint_state_broadcaster
[ros2_control_node-4] [INFO] [1757587340.399605720] [controller_manager]: Configuring controller 'joint_state_broadcaster'
[ros2_control_node-4] [INFO] [1757587340.400255066] [joint_state_broadcaster]: 'joints' or 'interfaces' parameter is empty. All available state interfaces will be published
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[spawner-5] [INFO] [1757587346.308309329] [spawner_joint_state_broadcaster]: Configured and activated joint_state_broadcaster
[INFO] [spawner-5]: process has finished cleanly [pid 6115]
[INFO] [spawner-6]: process started with pid [6291]
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[spawner-6] [INFO] [1757587348.755977706] [spawner_diff_controller]: waiting for service /controller_manager/list_controllers to become available...
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] [INFO] [1757587349.532744555] [controller_manager]: Loading controller 'diff_controller'
[ros2_control_node-4] Response to e timed out.
[spawner-6] [INFO] [1757587350.320167519] [spawner_diff_controller]: Loaded diff_controller
[ros2_control_node-4] [INFO] [1757587350.328255620] [controller_manager]: Configuring controller 'diff_controller'
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[spawner-6] [INFO] [1757587356.330254807] [spawner_diff_controller]: Configured and activated diff_controller
[INFO] [spawner-6]: process has finished cleanly [pid 6291]
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
[ros2_control_node-4] Response to m 0 0 timed out.
[ros2_control_node-4] Response to e timed out.
Steps to reproduce
On a clean installation of ROS 2, run either:
ros2 launch andino_bringup andino_robot.launch.py- or:
motor_driver_demo --serial_port=/dev/ttyUSB_ARDUINO --msg='e'
Output
Already provided in the Description section.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working
Type
Projects
Status
🆕 Backlog