Skip to content

Low Level (RL Policy) — Quick Start ​

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

Runs a learned walking policy (ONNX) on the robot at 100 Hz via low-level joint control.

Build ​

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

Run ​

From RBQ/rbq_sdk/cpp/example/:

bash
# Use sudo for real-time thread; without sudo = normal thread
sudo ./bin/rbq_low_level -p <policyDir> [networkInterface]

# Simulator / on-robot stack — interface defaults to lo
sudo ./bin/rbq_low_level -p ../../../rbq_simulator/rbq_gym/policy/rbq10/

# Real robot — pass the interface that reaches it
sudo ./bin/rbq_low_level -p ../../../rbq_simulator/rbq_gym/policy/rbq10/ eth0

-p is required — pass a directory containing info.json and policy.onnx.
networkInterface is optional and defaults to lo.

Run with simulation ​

  1. From RBQ/ root, start the simulator:
    bash
    bash scripts/sim.bash --no-gui
  2. In the RBQ app on the same PC — started there, the desktop app finds this simulator on its own: Control → Auto Start → STAND. See Control home.
  3. Run the example:
    bash
    sudo ./bin/rbq_low_level -p ../../../rbq_simulator/rbq_gym/policy/rbq10/

Keyboard controls ​

KeyAction
xStand up (ready posture)
zSit down (ground posture)
cStart walking (loads policy)
qQuit

Policy directory ​

Pre-trained policies are in the repository at:

rbq_simulator/rbq_gym/policy/rbq10/
├── info.json
└── policy.onnx

Trained your own policy with Isaac Gym or Isaac Lab?
Point -p at the exported directory (policy.onnx + info.json).

State machine ​

StateHow to enterWhat happens
Idle(default)Mirrors the stack's final reference
Motionx or zInterpolates to ready / ground posture
ControlcRuns ONNX policy at 100 Hz, publishes joint references

→ Full reference: Low Level (RL Policy)

This user manual is intended for RBQ users.