Skip to Content
GuidesRobotics with ROS2

Robotics with ROS2

Build Ubuntu images with Robot Operating System 2 (ROS2).

Prompt (Development)

Create a ROS2 development workstation with: Base: Ubuntu 24.04 ROS2: - Distribution: Jazzy - Desktop installation (full) - Gazebo Harmonic simulator - RViz2 visualization Tools: - VS Code with ROS extension - Python 3.12 with colcon - C++ build tools (cmake, gcc) - Git Packages: - ros-jazzy-desktop - ros-jazzy-gazebo-ros-pkgs - ros-jazzy-navigation2 - ros-jazzy-slam-toolbox - ros-jazzy-moveit User: robot (sudo, dialout groups)

Prompt (Robot Runtime)

Create a ROS2 robot runtime with: Base: Ubuntu 24.04 minimal ROS2: - Distribution: Jazzy - Base only (no GUI) - CycloneDDS Features: - Headless - SSH access - Real-time kernel (PREEMPT_RT) Hardware: - USB serial (dialout group) - I2C, SPI, GPIO access - Camera support (v4l2) Packages: - ros-jazzy-ros-base - ros-jazzy-sensor-msgs - ros-jazzy-tf2-ros User: robot (sudo, dialout, i2c, gpio, video) Auto-start ROS nodes. Enable watchdog.

Adding Tests

After OpenFactory generates the recipe, add verification tests:

Add tests to verify: - ROS2 daemon starts successfully - Can create and destroy nodes - DDS discovery works - Hardware interfaces are accessible - Real-time kernel is running (if enabled)

OpenFactory will add these as automated tests that run after the image builds.