From 8dab0ee5b64ce3ffb5b1dabc2a50a9d9db4d3409 Mon Sep 17 00:00:00 2001 From: Sam Rolfe Date: Wed, 14 Oct 2026 17:36:28 +1100 Subject: [PATCH] sam-4screen-desktop 2026-10-14:17:36:28 --- 000 daily/Daily Notes and To Do.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/000 daily/Daily Notes and To Do.md b/000 daily/Daily Notes and To Do.md index db18a3b..8bbde38 100644 --- a/000 daily/Daily Notes and To Do.md +++ b/000 daily/Daily Notes and To Do.md @@ -120,3 +120,30 @@ The unit showed a **green LED** (Wi-Fi joined) but published nothing to - Watchdog: alert (and ideally auto-heal) if `voice/audio_stream` is quiet for N hours. Needed because outages go unnoticed for days — and we are often away for over a week. + +--- + +## TO DO — Arduino / ESP32 flasher (added 2026-10-14) + +Set up ESP32 flashing so the voice firmware can be updated. +`hub_fixes` **AUD-93** is blocked on exactly this. + +**Why:** the ESP32 goes **silently deaf** after a broker restart — same bug as the +bridge. It shows a green LED (Wi-Fi joined) while publishing nothing. Fix = the +firmware must auto-reconnect **and re-subscribe**. + +- [ ] Install `arduino-cli` on **.27** (in nixpkgs, v1.5.1) +- [ ] Install the ESP32 core: `arduino-cli core install esp32:esp32` (~200 MB) +- [ ] Install the libraries: `PubSubClient`, `Freenove_WS2812_Lib_for_ESP32` +- [ ] Clone `sam/voice_assistant` to .27 +- [ ] **Compile (dry run)** — prove the firmware builds before touching hardware +- [ ] Plug the ESP32 into **.27** via USB (`/dev/ttyACM*`) +- [ ] Flash `voice_assistant.ino` + +**Then test the two DoD checks:** +- [ ] Restart the broker → the ESP32 **reconnects and publishes within 60 s**, + with **no power-cycle** +- [ ] Pull the Wi-Fi → the **LED stops showing green** + +Firmware source: `sam/voice_assistant` (`voice_assistant.ino`, `config.h`, +`led_control.h`, `okay_nabu.*`).