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.