DDS for ROSBOT XL with ROS2 Humble not connected to my laptop

Hello,

I am trying to work with DDS on ROSBOT XL (ROS2 Humble version) so I can run some heavy algorithms from my laptop (Ubuntu 22.04 with ROS2 humble installed) integrated with the robot. I have already installed CycloneDDS on both the ROSBOT XL and my laptop. They are both on the same wifi network and I am also able to ping from my laptop to robot and vice versa. But when I run the command “ros2 topic list”, it shows all the topics only in the robot, but not on my laptop. Can someone please help in this regard? I am not sure what am i missing here.

You are using the driver you have running in Docker (older solution) or from the rosbot snap.

Yes I am using the docker (rosbot-xl-autonomy). So basically I follow these commands to start the rosbot:

>cd rosbot-xl-autonomy

>just start-rosbot

Then when I open another terminal I view the ros2 topic list and I can see all the topics here. I suppose, through DDS, the robot and my laptop can connect and show me the same topic list on my laptop too. Please correct me if I am wrong.

Sending ROS data and DDS configuration
Docker sends data as root by default, which causes problems with data transfer. We’ve included several ready-made configurations in snaps, including the recommended one: udp (multicast), which addresses this issue by running nodes as root.

sudo snap set <snap> ros.transport=udp # udp is default configuration

Recommendation
I encourage you to use the rosbot-autonomy repository, preferably from the main branch.
This is currently the easiest configuration to run, with the new Husarion OS, which uses snaps. There’s no need to reinstall the entire system; you can install the rosbot and husarion-rplidar snaps.