Firmware
The timer runs ESP-IDF on the ESP32-C5, built with PlatformIO and the pioarduino platform (upstream PlatformIO has no C5 support yet).
Status: sessions, settings, USB, ESP-NOW and Bluetooth output are written and unit-tested. The radio capture is still a stub, so you get laps only from the
simcommand for now.
Build and flash
pio run -e c5_mini -t upload
pio device monitor
pio test -e native
The C5's native USB shows up as a serial port (CDC-ACM). No driver is needed.
USB console
Send plain text lines. Every command replies OK or ERR. Settings can only change while the timer is idle.
| Command | What it does |
|---|---|
get |
Prints every setting as S:<key>=<value> |
set chan R4 |
Video channel (or set freq <MHz>) |
set enter <dB> / set exit <dB> |
Gate thresholds above the baseline |
set minlap <ms> |
Minimum lap time, 1000–30000 |
set park on|off / set maxpeak <ms> |
Ignore parked quads |
set link ble|espnow |
Radio output (one or the other) |
set phrase <bind phrase> |
ELRS bind phrase for ESP-NOW |
set event <name> / set prefix <text> / set heat <n> |
Event name, heat prefix and next heat number |
set msg.event|msg.heat|msg.start|msg.laps|msg.best on|off |
Which race messages to send |
set mode practice|race |
What a BOOT long press arms |
set race.limit laps|time, race.laps <n>, race.time <s>, race.hold on|off |
Race defaults |
save / defaults |
Save to flash, or reset (not saved) |
arm practice / arm race [laps <n>|time <s>] |
Start a heat |
disarm, heat next, restart |
End, advance or rerun the heat |
rssi on|off |
Stream R:<dB> for calibration |
sim |
Inject a fake gate pass |
set chan R4
set event Thursday Backyard
set link ble
save
arm race laps 3
sim
F:212A03020139300000
Lap and race events come back as F:<hex> lines. See Protocol.