axol teleop) — and against either the real robot or the software simulator (no hardware needed; the sim just swaps the motors for a browser visualizer).
Before you start
- Axol installed — the one-command install on the robot machine, or a development install for sim.
- CAN up and motors verified (real robot only). The control panel does this for you on connect; on the CLI run
axol can.setuponce, then check a motor withaxol motor.info. - A Meta Quest on the same network, with the TLS certificate authorized once.
No CAN setup or motor check is needed in sim — there’s no hardware to talk to.
Authorize the TLS certificate
The VR app connects over a self-signed HTTPS/WSS link, so its certificate needs a one-time approval in the headset browser — otherwise the WebSocket handshake is silently rejected. The easiest way is from the app itself: when you press Connect and the certificate hasn’t been approved yet, the connection fails and an Authorize certificate button appears. Tap it, proceed past the warning in the popup, and the app reconnects automatically. You only need to do this once per headset (the cert is cached in~/.almond/vr/certs/ on the host). To approve it manually instead, open https://<hostname>.local:8000 or https://<local-ip>:8000 in the headset browser and proceed past the warning.
Run it
- Control Panel
- CLI
1
Connect the host and robot
Open the control panel and connect the Axol Host — the panel then brings up the robot automatically (running
can.setup the first time); if the Axol tile isn’t green, press Connect on it. For sim, you can skip the robot connection. See the Web Control Panel guide for the connect flow.2
(Optional) assign cameras
To see the robot’s camera feeds in the headset, open the Cameras settings tab and assign the ZED cameras to their slots. Skip this for camera-free teleop. See Cameras.
3
Select Teleoperation and Start
Pick Teleoperation from the operation selector. Toggle sim to drive the browser visualizer with no hardware. Press Start. The panel begins streaming and is ready for the headset to connect.
4
Connect the headset
Put on the Quest, open the VR app at axol.almond.bot, enter the host’s address, and press Connect — then Start to enter the session.
Controller layout

Grip is a toggle, not a hold. Press both grips together to start moving the arms; press either grip on its own to freeze them.
Network tip
If VR tracking feels jittery or arrives in bursts, configure the following on your router or access point:
These prevent the AP from batching packets between beacon intervals, which causes intermittent latency spikes that are especially noticeable in VR.
Next steps
Remote Teleop
Drive the robot over the internet from anywhere with Tailscale.
Data Collection
Record teleoperation episodes to a LeRobot dataset.
