Panther needs multiple reboots before ROS2 topics show up

Hey!

We have a Husarion Panther where occasionally the robot doesn’t show all the ros2 topics via

ros2 topic list

We only see -

/parameter_events

/rosout

… and none of the other ros2 topics.

On shutting the robot down and rebooting it, it usually gets better after a few tries. The issue is quite annoying as we spend quite some time trying to get the base functionalities to work. It always works eventually after a maximum of 3-4 reboots and occurs sporadically.

Curious to know if this is an issue others faced and what fixed it.

Hello @Chandran_N,

Please describe:

  1. What computer and how is it connected to the network (Ethernet/WiFi).
  2. What ROS distribution are you talking about? Is it the same on the robot and your device?
  3. Do you have export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp installed and permanently set?
  4. Have you checked whether the ping connection between devices is successful?

To check the robot driver, you can run run:

ssh husarion@10.15.20.2 // pswd: husarion
docker ps

Hey @RafalGorecki

  1. ZEDBox Orin and connected via ethernet internally to the RPi.
  2. I see now that the Rpi has Jazzy while the User computer has Humble. Ill try to upgrade Humble to Jazzy on the User computer and let you know if that resolves the issue today.
  3. Yes that is done
  4. husarion@husarion:~$ ping -c 5 10.15.20.234
    PING 10.15.20.234 (10.15.20.234) 56(84) bytes of data.
    64 bytes from 10.15.20.234: icmp_seq=1 ttl=64 time=0.260 ms
    64 bytes from 10.15.20.234: icmp_seq=2 ttl=64 time=0.253 ms
    64 bytes from 10.15.20.234: icmp_seq=3 ttl=64 time=0.224 ms
    ^C
    --- 10.15.20.234 ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 2079ms
    rtt min/avg/max/mdev = 0.224/0.245/0.260/0.015 ms
    

Let me try the ROS upgrade. If that doesnt resolve it Ill get back to you, Thanks for the prompt reply!

Hi @Chandran_N,

In the case of ZED Box Orin, there is no official support for jazzy. From what I understand, the image under the jazy will only be released in Q2 this year.

What I recommend is to change the built-in computer image from jazzy to humble. The last image for humble is named: husarion/husarion-ugv:humble-2.2.2-20250702

There are additional things to consider, such as changing the webui distribution and restoring the pod’s humble configuration parameters. Therefore, I’m sending a script that should be executed on the built-in computer.

#!/bin/bash

echo "Reinstall WebUI"
sudo snap remove husarion-webui
sudo snap install husarion-webui --channel humble
sudo snap set husarion-webui ros.namespace=${ROBOT_MODEL_NAME} ros.transport=rmw_cyclonedds_cpp webui.layout=husarion-ugv

echo "Set ROS 2 humble"
URL="https://raw.githubusercontent.com/husarion/husarion_ugv_ros/refs/heads/humble/docker/demo/compose.hardware.yaml"
COMPOSE_PATH="/home/husarion/compose.yaml"
curl -fsSL "$URL" -o "$COMPOSE_PATH"

echo "Download and run Husarion UGV driver"
docker compose -f "$COMPOSE_PATH" pull
docker compose -f "$COMPOSE_PATH" up --force-recreate -d
docker exec husarion_ugv_ros bash -c 'source /ros2_ws/install/setup.bash && update_config_directory'
docker compose -f "$COMPOSE_PATH" up --force-recreate -d

echo "Run WebUI"
sudo husarion-webui.start