Hello,
I am looking for suggestions for using our ROSBot 3’s for the coming semester of teaching. We will also be using our existing ROSbot 2’s so I am hoping to have a software setup as similar as possible between the platforms.
A quick summary:
- Our ROSbot 2’s are on 22.04 + ROS2 Humble + dockerised setup, including hardware, and nav2/slam stack.
- Our ROSBot 3’s are (as shipped) 24.04 + ROS2 Jazzy + Snaps, hardware, and web ui only (no nav/slam)
- The Husarion ROS2 tutorials are very useful for the students
From my understanding of the current software availabilities:
- ROSBot 3 are usable with the humble docker containers, but need compatible firmware.
- Alternatively, the ROS2 Jazzy software stack can be easily used (without needing snap/docker)
- ROSbot 2 won’t have Jazzy setup.
- ROS2 tutorials are currently for Humble (and ROSbot 2)
At the moment, I’m thinking of using Humble docker containers on the ROSBot 3, so that we can easily reference the current tutorials, and it keeps the ROSbot 2 use the same. The sensors will be different, but most of the algorithms we use should be compatible. However, I’ve no idea what to do for the firmware, so some assistance here would be appreciated.
However, I’m also open to alternative suggestions/ideas.
Thank you and Regards,
Tim
Hello @Tim_RMIT,
Thank you for describing the problem. As I understand it, you are most interested in both platforms behaving identically, so that ROS2 Tutorial works without any problems on both robots.
The simplest and fastest solution would be to run ROS 2 Humble on ROSbot 3. To do this, you need to:
- Disable snap with the command:
sudo snap disable rosbot
- Then copy the
compos.yaml
from ROSbot 2R to ROSbot 3. Please note that the camera and LiDAR are different from those on ROSbot 2R. Therefore, there is no need to copying them.
- Flash firmware for humble (set
<image_version>
the same as in compose.yaml
):
docker run --rm -it --privileged husarion/rosbot:humble-<image_version> flash-firmware.py -f /root/firmware.bin
(the occurrence of -f
flag depends on version).
- Start the containers using the command:
docker compose up
With this setup, when going through ROS 2 Tutorials we still have ROS Jazzy natively installed, so it is a good idea to do these tutorials in a ROS 2 Humble Docker container to avoid incompatibility.
I am glad to hear that ROS Tutorials on Humble are being used. If something is unclear or there are problems, please contact me.
Regards,
Hello @RafalGorecki ,
Thank you for the information. I’ll investigate this option.
For the Rosbot 3 sensors:
Regards,
Tim
Hello @Tim_RMIT,
All the links you sent make sense and should work. We also have 2 simple articles that describe the repositories you mentioned. In these repositories, you may need to tweak the compose configuration so that the topics are accessible outside the container.
Regards
1 Like