I teach ROS 2 at an engineering college in India, and this semester we moved to
Jazzy on Ubuntu 24.04. A lot of the good learning material out there is written for
Humble, so I’ve been porting AntoBrandi’s arduinobot workspace across and
documenting it as I go.
Repo: GitHub - prasad914/arduinobot_ws: ros2 tutorial · GitHub
(Apache 2.0, original by Antonio Brandi — this is my Jazzy port.)
Status so far: arduinobot_description builds and displays in RViz. Gazebo,
ros2_control and MoveIt 2 are still in progress.
Two things that cost me time, in case they save someone else:
-
Passing a URDF as a parameter from the CLI fails if the file has XML comments
containing a colon. The ros2 CLI parses the value as YAML, and “” looks like a mapping. You get “ScannerError: mapping values are not
allowed here”, which tells you nothing. Wrap it in single quotes or use
–params-file with a block scalar. -
Nothing in package.xml installs your urdf folder. It only declares dependencies.
The install(DIRECTORY urdf DESTINATION share/${PROJECT_NAME}) rule in
CMakeLists.txt is what actually ships it. Obvious in hindsight, and a
surprisingly common confusion among my students.
I also recorded a full walkthrough if it’s useful to anyone starting out:
Happy to answer questions about the port.