# robopark-pi-client — full robot client (reference)

The full on-robot client: enrollment, heartbeat, motor control, and a
LiveKit publish loop (`livekit_bridge.py`) that joins a standing per-device
room whenever `production_mode` is on. `pi_ui.py` serves a touchscreen UI
with a manual "Join Conversation" button — the human-in-the-loop trigger.

This is a reference implementation shipped for Pi deployment; it is not
currently wired into `robopark setup --robot` (which uses `../scheduler/
preview_agent.py` for the on-demand preview + vision-trigger flow — see
`../vision/README.md`). `client.py`'s standing-room model and the scheduler's
`request-session`-per-trigger model are two different session strategies;
reconciling them into one is follow-up work, not done here.

Install: `pip install -r requirements.txt` (`livekit`/`livekit-api` are
commented out — Pi-only, install separately with the `livekit` SDK).
`install.sh`/`*.service` are Linux/Pi systemd wrappers.
