Skip to content

Quick Start

TURFPTAx edited this page May 30, 2026 · 1 revision

Quick Start (USB tethered, no certs)

The fastest path to having the OpenMuscle WebXR client running in your headset. Uses a USB cable + adb reverse so the Quest sees the server as http://localhost:8000. Localhost counts as a secure context, so WebXR + hand tracking work without HTTPS — no mkcert dance.

Time: ~5 minutes if you already have Android platform-tools installed.

You need

  • Meta Quest 3 or 3S, in developer mode (turn on via the Meta Quest mobile app: Menu → Devices → your headset → Developer Mode)
  • A USB-C cable that supports data (not charge-only — they look identical, frustrating)
  • Windows PC (Linux/Mac launcher is a TODO — manual steps work)
  • The OpenMuscle-Software repo cloned

Steps

  1. Plug in the Quest via USB. Put on the headset; accept the "Allow USB debugging?" dialog that pops up inside VR. Tick "Always allow from this computer".

  2. Verify ADB sees it:

    & "$env:LOCALAPPDATA\Android\Sdk\platform-tools\adb.exe" devices

    Should list your headset with status device (not unauthorized or offline).

  3. Install OpenMuscle PC tools (one time):

    cd D:\path\to\OpenMuscle-Software\pc
    pip install -e .
  4. Run the launcher:

    .\start-vr.bat            # right arm, VR mode (default)
    .\start-vr.bat right ar   # right arm, AR/passthrough mode
    .\start-vr.bat left  ar   # left arm,  AR/passthrough mode

    It checks ADB, starts openmuscle web in its own window, polls until ready, runs adb reverse tcp:8000 tcp:8000, and launches Quest Browser to /vr via an ADB intent.

  5. In the headset:

    • Set both controllers down on a flat surface (Quest auto-switches to hand tracking within 2-5 seconds)
    • The Quest Browser page loads /vr with three green checkmarks (HTTPS secure-context, WebXR supported, server reachable)
    • Tap Enter VR (or START AR in AR mode)
  6. Stop: close the "OpenMuscle VR Server" console window. ADB reverse persists until you disconnect the Quest or run adb reverse --remove tcp:8000; harmless either way.

What you should see in the headset

  • Heatmap panel floating in front (will show "waiting for FlexGrid…" until you plug in the bracelet)
  • 3×2 menu below it: REC / SESSION / PREDICT / TRAIN / RECENTER / EXIT VR
  • Blue spheres on your captured arm, green spheres on your off-hand
  • Blue ray from your off-hand index pointer

If FlexGrid is streaming, the heatmap animates. Tap REC with your off-hand pointer to start a capture session.

Next steps

Clone this wiki locally