Skip to content

RBQ ROS2 SDK — Quick Start

Connect the RBQ robot to ROS 2 Humble in 4 steps.

1. Clone and install ROS

bash
git clone https://github.com/RainbowRobotics/RBQ.git
cd RBQ

# Install ROS 2 Humble (first time) — https://docs.ros.org/en/humble/Installation/Ubuntu-Install-Debs.html
sudo apt update && sudo apt install -y ros-humble-desktop \
    python3-colcon-common-extensions python3-rosdep \
    ros-humble-rmw-cyclonedds-cpp ros-humble-cyclonedds
sudo rosdep init && rosdep update
source /opt/ros/humble/setup.bash

2. Build the ROS2 SDK

bash
cd ros2
rosdep install --from-paths src -y --ignore-src
colcon build --symlink-install
cd ..

3. Run

Simulation:

bash
source ros2/install/local_setup.bash
bash scripts/sim.bash

Real robot:

bash
source ros2/install/local_setup.bash
bash scripts/start_ros_driver.bash

4. DDS setup (developer PC ↔ robot Wi-Fi)

Set in the terminal you use for ros2 topic commands:

bash
export CYCLONEDDS_URI='<CycloneDDS><Domain><Id>0</Id><General><Interfaces><NetworkInterface name="wlp4s0"/></Interfaces></General></Domain></CycloneDDS>'
export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp

Replace wlp4s0 with your Wi-Fi interface (ifconfig to check).

Quick command test

bash
# Enable HighLevel Command mode
ros2 topic pub --once /rbq/motion/switchControlMode std_msgs/msg/Bool "{data: true}"

# Stand up
ros2 topic pub --once /rbq/motion/switchGait std_msgs/msg/Int8 "{data: 1}"

# Walk forward 0.3 m/s
ros2 topic pub --once /rbq/motion/cmd_highLevel rbq_msgs/msg/HighLevelCommand \
'{vel_x: 0.3, vel_y: 0.0, omega_z: 0.0, gait_state: 3, gait_transition: false}'

# Check topics
ros2 topic list

List available topics

bash
source ros2/install/local_setup.bash
ros2 topic list

Full ROS2 reference: ROS2 SDK

This user manual is intended for RBQ users.