Skip to content

High Level Command — Quick Start

Source: rbq_sdk/cpp/example/src/rbq_high_level.cpp

Publishes HighLevelCommand at 50 Hz. Type gait names in the terminal; control velocity with a joystick.

Build

bash
cd RBQ/rbq_sdk/cpp/example
bash scripts/setup.bash
bash scripts/build.bash

Run

bash
./bin/rbq_high_level <networkInterface> [joystickPath]
./bin/rbq_high_level eth0

A joystick is required. The program auto-detects /dev/input/js* (prefers Logitech/Xbox by name).
Override with an explicit path: ./bin/rbq_high_level eth0 /dev/input/js1

Terminal usage

list              ← print the example's built-in list
standing          ← switch by name
3                 ← switch by ID (trotting)
waving            ← switch to wave gait

Supported gaits

NameIDNotes
sitting0Sit down
standing1Default at startup
trotting3MPC trot
trot_stairs4Stair-climbing trot
waving5Wave gait
docking10Auto-docking sequence

The example's built-in list also prints internal gaits that are not supported. Use only the gaits in the table above.

Joystick velocity

AxisCommandMax
L stick forward/backvel_x±1.2 m/s
L stick left/rightvel_y±0.5 m/s
R stick left/rightomega_z±60 deg/s

omega_z is in deg/s — QuadWalk converts to rad/s internally.

Important

The program sends switchControlMode = true at startup.
Without this, the robot ignores HighLevelCommand and stays in joystick mode.

Full reference: High Level Command

This user manual is intended for RBQ users.