webrtc_example / README.md
cduss's picture
update
bcd5ee8
|
Raw
History Blame Contribute Delete
2.15 kB
metadata
title: Reachy Mini WebRTC Demo
emoji: 🤖
colorFrom: blue
colorTo: indigo
sdk: static
pinned: false
hf_oauth: true
hf_oauth_expiration_minutes: 480
short_description: Single-file WebRTC demo  sign in with HF, drive the robot.
tags:
  - reachy_mini
  - reachy_mini_js_app

Reachy Mini WebRTC Demo

Single-file (index.html + style.css) WebRTC demo for Reachy Mini. No build step, no bundler — drop it on a Hugging Face Space with sdk: static and you're done.

Boots on the modern host-shell pattern documented in ts/APP_CREATION_GUIDE.md:

  • The host shell (loaded from jsDelivr on a standalone visit) owns HF OAuth + robot picker + the connect / leave button. No more hand-rolled login screen here.
  • The post-connect UI (sliders, audio, sound, animations, torque, volume, daemon logs) lives in this page's markup and runs inside the host's iframe via connectToHost(). Same features as before.

Features

  • Video streaming from the robot's camera
  • Head RPY sliders, body yaw (tank-coupled), antennas
  • Wake up / go to sleep / torque toggle
  • Sound playback (free-text + presets)
  • Speaker volume sync
  • Mic + speaker mute toggles
  • Live latency badge (RTT / buffer / jitter, colour-coded)
  • Daemon journalctl stream over the WebRTC data channel

How it works

  1. Visit the Space — the host shell renders sign-in.
  2. Sign in with Hugging Face (OAuth).
  3. The shell lists your reachable robots; pick one.
  4. The shell wakes the robot and iframes this page at ?embedded=1.
  5. All the controls below light up.

Requirements

  • Robot online on the central signaling server.
  • Robot daemon recent enough to expose subscribeLogs, getVolume, wakeUp, gotoSleep, setMotorMode over the data channel (anything ≥ 1.8 should be fine).

SDK pin

@pollen-robotics/reachy-mini-sdk@1.8.0-rc1-main.fd4354c, loaded from cdn.jsdelivr.net. Same exact pin as the three Pollen reference apps — mixing versions across the SDK, host shell, and daemon causes silent protocol drift (see APP_CREATION_GUIDE §10).