qrb_ros_simulation is a Gazebo-based simulation environment for the AMRs and manipulators that the qrb_ros_samples catalog targets. Its purpose is simple: let you evaluate QRB ROS code paths without buying hardware.
Honest framing — this is a convenience layer on top of Gazebo, not a unique simulation engine. The value is the pre-built URDFs, meshes, controllers, and launch files for QRB AMRs and arms, so the same Nav2 / MoveIt2 / control code that runs on a real robot also runs in sim.
What it ships
Two ROS 2 packages, working together:
Standard topics published by the simulation include
/clock, /tf, /tf_static, /robot_description, /joint_states, and /camera/color/camera_info — so any node that consumes sensor_msgs or follows the standard ROS 2 conventions sees a real-looking robot.
When to use it
- Pre-purchase evaluation — verify your stack runs end-to-end against a QRB AMR or arm before committing to hardware.
- CI / regression testing — run navigation and manipulation stacks in headless Gazebo on every commit.
- Algorithm prototyping — iterate on Nav2, MoveIt2, or control logic without owning a robot.
Quick start
1
Install Gazebo and ROS 2 Jazzy
Follow the standard Gazebo Harmonic install and Install ROS Jazzy for your platform. No Qualcomm hardware required.
2
Build from source
3
Launch a sim world
See the upstream Usage section for the current launch commands. The simulation samples in
qrb_ros_samples (e.g., simulation_sample_amr_simple_motion, simulation_sample_pick_and_place) are designed to run against this environment.Why this helps
It’s a convenience layer, not a new sim engine — but it’s the fastest way to run QRB ROS samples and exercise the same code paths that target real Qualcomm-powered robots, with no hardware in the loop.
Related
qrb-ros-samples.mdx— sample pipelines whosesimulation_*entries run against this environment.- Upstream:
qualcomm-qrb-ros/qrb_ros_simulation.

