Skip to content

ur controller bringup script misleading stderr output #1778

Description

@Robert-Jia00129

Affected ROS2 Driver version(s)

5.0.0

Used ROS distribution.

Jazzy

Which combination of platform is the ROS driver running on.

Ubuntu Linux with standard kernel

How is the UR ROS2 Driver installed.

From binary packets

Which robot platform is the driver connected to.

UR E-series robot

Robot SW / URSim version(s)

How is the ROS driver used.

Through the robot teach pendant using External Control URCap

Issue details

ros2 launch ur_robot_driver ur_control.launch.py   ur_type:=ur5e   robot_ip:=192.168.100.3   reverse_ip:=192.168.100.77   launch_rviz:=true

UR control launch does not launch the robot. Robot is connected properly. And could be launched via custom bringup script.

The error output is also misleading. There is no problem between the connection between robot, pendant, and PC. After running my custom bringup script, this command works just fine. Does not work in the exact same clone container started from the same docker image. Attached below.

I suspect this is because of the active and inactive controllers being used.

Docker image to reproduce the issue:

ARG TARGETARCH=amd64
ARG BASE_IMAGE=nvcr.io/nvidia/isaac/ros:noble-ros2_jazzy_d3e84470d576702a380478a513fb3fc6-${TARGETARCH}
FROM ${BASE_IMAGE}

Relevant log output

ros@atas-fpg67-02:/opt/ur_ros2_ws$ ros2 launch ur_robot_driver ur_control.launch.py   ur_type:=ur5e   robot_ip:=192.168.100.3   reverse_ip:=192.168.100.77   launch_rviz:=true kinematics_params_file:=/home/ros/my_robot_calibration.yaml

[INFO] [launch]: All log files can be found below /home/ros/.ros/log/2026-04-21-18-28-31-567033-atas-fpg67-02.atas.gtri.org-595087

[INFO] [launch]: Default logging verbosity is set to INFO

[INFO] [dashboard_client-2]: process started with pid [595100]

[INFO] [controller_stopper_node-4]: process started with pid [595102]

[INFO] [ros2_control_node-1]: process started with pid [595099]

[INFO] [robot_state_helper-3]: process started with pid [595101]

[INFO] [urscript_interface-5]: process started with pid [595103]

[INFO] [robot_state_publisher-6]: process started with pid [595104]

[INFO] [rviz2-7]: process started with pid [595105]

[INFO] [trajectory_until_node-8]: process started with pid [595106]

[INFO] [spawner-9]: process started with pid [595107]

[INFO] [spawner-10]: process started with pid [595108]

[dashboard_client-2] [INFO] [1776796111.817784017] [UR_Client_Library:]: Starting primary client pipeline

[robot_state_publisher-6] [INFO] [1776796111.825927760] [robot_state_publisher]: Robot initialized

[controller_stopper_node-4] [INFO] [1776796111.828860871] [Controller stopper]: Waiting for switch controller service to come up on controller_manager/switch_controller

[robot_state_helper-3] [INFO] [1776796111.830283672] [UR_Client_Library:]: Starting primary client pipeline

[ros2_control_node-1] [INFO] [1776796111.841236429] [controller_manager]: Using Steady (Monotonic) clock for triggering controller manager cycles.

[ros2_control_node-1] [INFO] [1776796111.846721907] [controller_manager]: Subscribing to '/robot_description' topic for robot description.

[ros2_control_node-1] [INFO] [1776796111.847519546] [controller_manager]: update rate is 500 Hz

[ros2_control_node-1] [INFO] [1776796111.847530915] [controller_manager]: Overruns handling is : enabled

[ros2_control_node-1] [INFO] [1776796111.847534640] [controller_manager]: Spawning controller_manager RT thread with scheduler priority: 50

[ros2_control_node-1] [WARN] [1776796111.847575970] [controller_manager]: Could not enable FIFO RT scheduling policy: with error number <1>(Operation not permitted). 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-1] [INFO] [1776796111.848098711] [controller_manager]: Received robot description from topic.

[ros2_control_node-1] [INFO] [1776796111.848116961] [controller_manager]: Enforcing command limits is disabled. Command limits from URDF will be ignored.

[ros2_control_node-1] text not specified in the tf_prefix tag

[ros2_control_node-1] [INFO] [1776796111.851833258] [controller_manager]: Loading hardware 'ur5e' 

[ros2_control_node-1] [INFO] [1776796111.856532757] [controller_manager]: Loaded hardware 'ur5e' from plugin 'ur_robot_driver/URPositionHardwareInterface'

[ros2_control_node-1] [INFO] [1776796111.856606766] [controller_manager]: Initialize hardware 'ur5e' 

[ros2_control_node-1] [INFO] [1776796111.858637301] [controller_manager]: Successful initialization of hardware 'ur5e'

[ros2_control_node-1] [INFO] [1776796111.859589859] [resource_manager]: 'configure' hardware 'ur5e' 

[ros2_control_node-1] [INFO] [1776796111.859604831] [URPositionHardwareInterface]: Starting ...please wait...

[ros2_control_node-1] [INFO] [1776796111.859620218] [URPositionHardwareInterface]: Initializing driver...

[rviz2-7] QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-ros'

[dashboard_client-2] [INFO] [1776796111.946687725] [dashboard_client]: Connecting to Dashboard Server at 192.168.100.3 with policy G5

[dashboard_client-2] [INFO] [1776796111.947161519] [UR_Client_Library:]: DashboardClient created for host 192.168.100.3

[dashboard_client-2] [INFO] [1776796111.948038388] [UR_Client_Library:]: Connected: Universal Robots Dashboard Server

[dashboard_client-2] 

[dashboard_client-2] [INFO] [1776796111.952517919] [dashboard_client]: Successfully connected to Dashboard Server at 192.168.100.3. Robot has version 5.12.6.0

[ros2_control_node-1] [WARN] [1776796111.955860409] [controller_manager]: Overrun detected! The controller manager missed its desired rate of 500 Hz. The loop took 2.114037 ms (missed cycles : 2).

[ros2_control_node-1] [INFO] [1776796112.065700712] [UR_Client_Library:]: Negotiated RTDE protocol version to 2.

[ros2_control_node-1] [INFO] [1776796112.065944555] [UR_Client_Library:]: Received URControl version 5.12.6.0

[ros2_control_node-1] [INFO] [1776796112.065954562] [UR_Client_Library:]: Setting up RTDE communication with frequency 500.000000

[ros2_control_node-1] [INFO] [1776796112.073290327] [UR_Client_Library:]: Starting primary client pipeline

[spawner-10] [INFO] [1776796112.074016389] [spawner_joint_trajectory_controller]: waiting for service /controller_manager/list_controllers to become available...

[rviz2-7] [INFO] [1776796112.329177371] [rviz2]: Stereo is NOT SUPPORTED

[rviz2-7] [INFO] [1776796112.329250783] [rviz2]: OpenGl version: 4.6 (GLSL 4.6)

[rviz2-7] [INFO] [1776796112.413444231] [rviz2]: Stereo is NOT SUPPORTED

[ros2_control_node-1] [INFO] [1776796113.075043043] [UR_Client_Library:]: Stopping primary client pipeline

[ros2_control_node-1] [FATAL] [1776796113.153077779] [URPositionHardwareInterface]: Could not get configuration package within timeout, are you connected to the robot?(Configured timeout: 1 sec)

[ros2_control_node-1] [ERROR] [1776796113.153130405] [resource_manager]: Failed to 'configure' hardware 'ur5e'

[ros2_control_node-1] terminate called after throwing an instance of 'std::runtime_error'

[ros2_control_node-1]   what():  Failed to set the initial state of the component : ur5e to active

[ros2_control_node-1] Stack trace (most recent call last):

[ros2_control_node-1] #18   Object "", at 0xffffffffffffffff, in 

[ros2_control_node-1] #17   Object "/opt/ur_ros2_ws/build/controller_manager/ros2_control_node", at 0x590c74875554, in _start

[ros2_control_node-1] #16   Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x72b50ecca28a, in __libc_start_main

[ros2_control_node-1] #15   Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x72b50ecca1c9, in 

[ros2_control_node-1] #14   Object "/opt/ur_ros2_ws/build/controller_manager/ros2_control_node", at 0x590c74874aa9, in main

[ros2_control_node-1] #13   Object "/opt/ros/jazzy/lib/librclcpp.so", at 0x72b50f2aef03, in rclcpp::executors::MultiThreadedExecutor::spin()

[ros2_control_node-1] #12   Object "/opt/ros/jazzy/lib/librclcpp.so", at 0x72b50f2aebe6, in rclcpp::executors::MultiThreadedExecutor::run(unsigned long)

[ros2_control_node-1] #11   Object "/opt/ros/jazzy/lib/librclcpp.so", at 0x72b50f29c179, in rclcpp::Executor::execute_any_executable(rclcpp::AnyExecutable&)

[ros2_control_node-1] #10   Object "/opt/ros/jazzy/lib/librclcpp.so", at 0x72b50f29ba4a, in rclcpp::Executor::execute_subscription(std::shared_ptr<rclcpp::SubscriptionBase>)

[ros2_control_node-1] #9    Object "/opt/ur_ros2_ws/install/controller_manager/lib/libcontroller_manager.so", at 0x72b50f5bf506, in rclcpp::Subscription<std_msgs::msg::String_<std::allocator<void> >, std::allocator<void>, std_msgs::msg::String_<std::allocator<void> >, std_msgs::msg::String_<std::allocator<void> >, rclcpp::message_memory_strategy::MessageMemoryStrategy<std_msgs::msg::String_<std::allocator<void> >, std::allocator<void> > >::handle_message(std::shared_ptr<void>&, rclcpp::MessageInfo const&)

[ros2_control_node-1] #8    Object "/opt/ur_ros2_ws/install/controller_manager/lib/libcontroller_manager.so", at 0x72b50f52d422, in controller_manager::ControllerManager::robot_description_callback(std_msgs::msg::String_<std::allocator<void> > const&)

[ros2_control_node-1] #7    Object "/opt/ur_ros2_ws/install/controller_manager/lib/libcontroller_manager.so", at 0x72b50f4e644f, in controller_manager::ControllerManager::init_resource_manager(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) [clone .cold]

[ros2_control_node-1] #6    Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.33", at 0x72b50ef9b390, in __cxa_throw

[ros2_control_node-1] #5    Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.33", at 0x72b50ef85a54, in std::terminate()

[ros2_control_node-1] #4    Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.33", at 0x72b50ef9b0d9, in 

[ros2_control_node-1] #3    Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.33", at 0x72b50ef85ff4, in 

[ros2_control_node-1] #2    Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x72b50ecc88fe, in abort

[ros2_control_node-1] #1    Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x72b50ece527d, in raise

[ros2_control_node-1] #0    Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x72b50ed3eb2c, in pthread_kill

[ros2_control_node-1] Aborted (Signal sent by tkill() 595099 1001)

[ERROR] [ros2_control_node-1]: process has died [pid 595099, exit code -6, cmd '/opt/ur_ros2_ws/install/controller_manager/lib/controller_manager/ros2_control_node --ros-args --params-file /opt/ur_ros2_ws/install/ur_robot_driver/share/ur_robot_driver/config/ur5e_update_rate.yaml --params-file /tmp/launch_params_t_91gqjr'].

[spawner-10] [FATAL] [1776796122.080958188] [spawner_joint_trajectory_controller]: Could not contact service /controller_manager/list_controllers

[ERROR] [spawner-10]: process has died [pid 595108, exit code 1, cmd '/opt/ur_ros2_ws/install/controller_manager/lib/controller_manager/spawner --controller-manager /controller_manager --controller-manager-timeout 10 --inactive joint_trajectory_controller forward_velocity_controller forward_position_controller forward_effort_controller force_mode_controller passthrough_trajectory_controller freedrive_mode_controller tool_contact_controller --ros-args'].

[spawner-9] [INFO] [1776796123.146575973] [spawner_joint_state_broadcaster]: waiting for service /controller_manager/list_controllers to become available...

[spawner-9] [FATAL] [1776796133.151992296] [spawner_joint_state_broadcaster]: Could not contact service /controller_manager/list_controllers

[ERROR] [spawner-9]: process has died [pid 595107, exit code 1, cmd '/opt/ur_ros2_ws/install/controller_manager/lib/controller_manager/spawner --controller-manager /controller_manager --controller-manager-timeout 10 joint_state_broadcaster io_and_status_controller speed_scaling_state_broadcaster force_torque_sensor_broadcaster tcp_pose_broadcaster ur_configuration_controller friction_model_controller scaled_joint_trajectory_controller --ros-args'].

Accept Public visibility

  • I agree to make this context public

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions