Repository navigation
Repository README
Snapshot of
README.mdat commit707b4a0, preserved before the docs were compacted. History only: the current specs are in the repository.
ReactPods are reaction buzzers for training: an ESP32-C3 pod with an 18-LED ring and one big button. Several pods form a set. One pod is the central and runs the game program, the others are peripherals. Programs are JSON block graphs; the Config App builds, simulates and uploads them.
Config App: https://runningjoke.github.io/reactionButton/ (PWA, works offline, demo pod built in)
New here? Read the user manual: the pod, the games and the app, without technical terms. Coaches: training guide (layouts, games per goal, a sample session).
| Part | Folder | Docs |
|---|---|---|
| Firmware (PlatformIO, Arduino + ESP-IDF) | firmware/ | docs/firmware/ |
| Shipped game programs | firmware/data/ | programs.md |
| Config App (React + TypeScript PWA) | app/ | docs/app/spec.md |
| Reference clients and validator (Python) | tools/ | config-api.md |
| PCB (KiCad) and casing (FreeCAD) | hardware/ | |
| User manual, game modes | docs/user/ | manual.md |
| Community platform (Hono + Postgres): on hold, see ADR 0007 | platform/ | docs/platform/spec.md |
| Decisions | docs/decisions/ |
# firmware (from the repository root)
pio run -d firmware -e NewBoard -t upload # flash
pio run -d firmware -e NewBoard -t uploadfs # flash the programs
python tools/reactpod_serial.py monitor # log over USB
# app
cd app && npm install && npm run dev # http://localhost:5173In VS Code, open reactpod.code-workspace so PlatformIO finds the firmware project.
Firmware, app and hardware are versioned separately: tags fw-v2.7.0, app-v1.0.0,
hw-rev1. Firmware releases carry the binaries (flashed over USB; OTA is not planned, ADR 0006); see
CONTRIBUTING.md.
For users and coaches
Repository and workflow
Firmware
- Firmware Overview
- Firmware Architecture
- Firmware Link Protocol
- Firmware Config API
- Firmware Programs
- Firmware Testing
- Firmware Timing
- Firmware Host Syntax Check
Config App
Community platform (on hold)
Decisions (ADRs)
- Decisions
- ADR 0001 Repo Layout and Workflow
- ADR 0002 Versions and Firmware Delivery
- ADR 0003 Community Platform
- ADR 0004 Platform Architecture
- ADR 0005 Live Results over BLE
- ADR 0006 No OTA
- ADR 0007 Platform on Hold
Archive