Hi everyone ![]()
In the time-honoured tradition of conference-driven development, we’re announcing this exactly two days before ROSCon Singapore. The dev was, of course, finished well in advance ![]()
We’ve released pre-built Docker images for the Open-RMF stack, plus a step-by-step tutorial for authoring your own site in the RMF Site Editor and running it in simulation.
Repo: https://github.com/Nexsoss/Open-RMF
Why
Getting a first Open-RMF demo running usually means a long colcon build, a dashboard build and some dependency archaeology before you see a robot move. We wanted docker compose up and a dashboard in your browser, so you can spend that time on your actual site.
What’s in it
- Layered images: a shared RMF base, a sim / fleet-adapter image (Gazebo +
rmf_demos/rmf_simulation), thermf-webAPI server, and a static build of thermf-dashboard-frameworkdemo dashboard. rmw_zenohthroughout, with azenoh-routerservice on the same zenoh revision as the RMF nodes.- Tested images on https://quay.io/nexsoss/open-rmf:
<tag>, and nightlies on https://ghcr.io/nexsoss/open-rmf:nightly_<tag>. - One branch per ROS 2 distro, starting with
lyrical. - Compose stays headless. Gazebo, RViz and the Site Editor run via distrobox, so there’s no X11 plumbing in compose files.
- Worlds are generated from Site Editor
.site.jsonfiles at image build time (not traffic-editor.building.yaml).
Quick start
git clone https://github.com/nexsoss/Open-RMF.git
cd Open-RMF
git checkout lyrical
docker compose up -d # pulls pre-built images
Then open the dashboard at http://localhost:3000. The API is at http://localhost:8000 (docs at /docs). The default world is an example site with two tinyRobots.
Draw your own site
The tutorial walks through the whole loop:
- Take a floorplan PNG.
- Draw walls, lanes and waypoints in the RMF Site Editor.
- Add tinyRobots.
- Build an image from the site template and run it in sim.
The Site Editor (v0.0.3) can be installed from crates.io, or run with no Rust toolchain:
distrobox create --name rmf-site-editor --image quay.io/nexsoss/open-rmf:rmf-site-editor
distrobox enter rmf-site-editor -- /usr/local/bin/rmf_site_editor
Small things we patched along the way
- A
respawnworkaround for the schedule visualizer segfaults (open-rmf/rmf#546, #637). - A few exporter fixes for headless world generation (see
docker/patches/).
The goal being to push these patches upstream as PRs, if that’s valuable.
Why we’re doing this
At Nexsoss we build on Open-RMF for robots in commercial buildings, and we want the on-ramp to be easier for everyone. We’ll keep maintaining these images as Open-RMF and ROS 2 move forward.
Feedback, issues and PRs are very welcome.
If you’re at ROSCon Singapore, come say hi!
Cheers,
Akash, Nexsoss