Skip to content

Joint State Broadcaster fails to configure on Raspberry Pi 5 #1905

@louietouie

Description

@louietouie

Description
When running demos like example 10, the rrbot.launch.py launch file fails when running as instructed. The failures are occurring on a Raspberry Pi 5 with Jazzy (ros-jazzy-ros-base, ros-jazzy-ros2-control, ros-jazzy-ros2-controllers, ros-jazzy-xacro)

Reproduce

  1. colcon build (in the folders example_10 and ros2_control_demo_description)
  2. source install/local_setup.bash
  3. ros2 launch ros2_control_demo_example_10 rrbot.launch.py

Expected behavior
Runs normally

Environment (please complete the following information):

  1. Raspberry Pi 5
  2. Ubuntu 24.04.1 LTS
  3. Memory: 7.7 GiB memory
  4. OS-Type: 64-bit
  5. Kernel: Linux 6.8.0-1015-raspi
  6. Jazzy

Errors

[spawner-5] [INFO] [1733117855.734730114] [spawner_joint_state_broadcaster]: Loaded joint_state_broadcaster
[ros2_control_node-1] [INFO] [1733117855.740230128] [controller_manager]: Configuring controller: 'joint_state_broadcaster'
[ros2_control_node-1] [INFO] [1733117855.740658192] [joint_state_broadcaster]: 'joints' or 'interfaces' parameter is empty. All available state interfaces will be published
[ros2_control_node-1] Exception thrown during init stage with message: Resource temporarily unavailable 
[ros2_control_node-1] [WARN] [1733117855.755595928] [joint_state_broadcaster]: Error occurred while doing error handling.
[ros2_control_node-1] [ERROR] [1733117855.756544168] [controller_manager]: After configuring, controller 'joint_state_broadcaster' is in state 'unconfigured' , expected inactive.
[spawner-5] [ERROR] [1733117855.762393727] [spawner_joint_state_broadcaster]: Failed to configure controller
[ERROR] [spawner-5]: process has died [pid 9693, exit code 1, cmd '/opt/ros/jazzy/lib/controller_manager/spawner joint_state_broadcaster --ros-args'].
[ros2_control_node-1] [INFO] [1733117925.183339910] [controller_manager]: Loading controller : 'joint_state_broadcaster' of type 'joint_state_broadcaster/JointStateBroadcaster'
[ros2_control_node-1] [INFO] [1733117925.183398244] [controller_manager]: Loading controller 'joint_state_broadcaster'
[ros2_control_node-1] [INFO] [1733117925.204228872] [controller_manager]: Controller 'joint_state_broadcaster' node arguments: --ros-args --params-file /home/[name]/Documents/ros2_control_demos/example_10/install/ros2_control_demo_example_10/share/ros2_control_demo_example_10/config/rrbot_controllers.yaml 
[ros2_control_node-1] Stack trace (most recent call last) in thread 9864:
[ros2_control_node-1] #3    Object "", at 0, in 
[ros2_control_node-1] #2    Object "/opt/ros/jazzy/lib/liblifecycle_msgs__rosidl_typesupport_introspection_c.so", at 0xffffbd6ba7df, in 
[ros2_control_node-1] #1    Object "/opt/ros/jazzy/lib/liblifecycle_msgs__rosidl_typesupport_introspection_c.so", at 0xffffbd6591d3, in 
[ros2_control_node-1] #0    Object "/opt/ros/jazzy/lib/liblifecycle_msgs__rosidl_typesupport_introspection_c.so", at 0xffffbd658f97, in 
[ros2_control_node-1] signal 11
[ERROR] [ros2_control_node-1]: process has died [pid 9830, exit code -11, cmd '/opt/ros/jazzy/lib/controller_manager/ros2_control_node --ros-args --params-file /home/[name]/Documents/ros2_control_demos/example_10/install/ros2_control_demo_example_10/share/ros2_control_demo_example_10/config/rrbot_controllers.yaml'].
[spawner-5] [WARN] [1733117935.206845319] [spawner_joint_state_broadcaster]: Failed getting a result from calling /controller_manager/load_controller in 10.0. (Attempt 1 of 3.)

Also of note, when doing ctrl-c, I often get the error...

^C[WARNING] [launch]: user interrupted with ctrl-c (SIGINT)
[robot_state_publisher-2] [INFO] [1733118012.387450808] [rclcpp]: signal_handler(signum=2)
[ros2_control_node-1] [INFO] [1733118012.387450845] [rclcpp]: signal_handler(signum=2)
[ros2_control_node-1] Stack trace (most recent call last):
[ros2_control_node-1] #7    Object "/usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1", at 0xffffffffffffffff, in 
[ros2_control_node-1] #6    Object "/opt/ros/jazzy/lib/controller_manager/ros2_control_node", at 0xaaaae2dd51ef, in _start
[INFO] [robot_state_publisher-2]: process has finished cleanly [pid 9981]
[ros2_control_node-1] #5    Source "../csu/libc-start.c", line 360, in __libc_start_main_impl [0xffffab268597]
[ros2_control_node-1] #4    Source "../sysdeps/nptl/libc_start_call_main.h", line 58, in __aarch64_ldadd4_relax [0xffffab2684c3]
[ros2_control_node-1] #3    Object "/opt/ros/jazzy/lib/controller_manager/ros2_control_node", at 0xaaaae2dd48bf, in main
[ros2_control_node-1] #2    Object "/opt/ros/jazzy/lib/controller_manager/ros2_control_node", at 0xaaaae2dd5527, in 
[ros2_control_node-1] #1    Object "/opt/ros/jazzy/lib/librclcpp.so", at 0xffffab8da8e3, in rclcpp::Executor::~Executor()
[ros2_control_node-1] #0    Object "/opt/ros/jazzy/lib/librclcpp.so", at 0xffffab8d24fc, in 
[ros2_control_node-1] Segmentation fault (Address not mapped to object [0xffffa25ee028])

Additional context
I also made it a stack overflow question, but moved it to this when I realized that it wasn't only happening on my code, but on official examples too.

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