Update docs and firmware for ESPHome bridge migration

- Replace gauge.py (MicroPython) references with gaugecontroller.yaml (ESPHome)
- Update CLAUDE.md and README.md to document ESPHome-native API integration
- Update LED wiring docs for separate main/indicator strips (D22/D36)
- Refactor Arduino firmware to drive two WS2812 strips independently
- Add per-gauge physical offset caching for main and indicator LEDs
- Frame-limit breathe effect (16ms) to reduce unnecessary strip refreshes
This commit is contained in:
2026-04-29 19:03:22 +02:00
parent 361cf52252
commit 8bdae1da9b
13 changed files with 130 additions and 72 deletions

View File

@@ -163,19 +163,22 @@ Also connect:
If your driver boards need separate motor power, supply that from the proper motor supply. Do not power motors from the Mega `5V` pin.
## WS2812B LED Strip
## WS2812 LED Strips
The current sketch expects one shared WS2812B chain.
The current sketch expects two LED data chains. Backlight and status LEDs stay
on the main strip; the red/green dial indicator LEDs are on their own strip.
| Mega Pin | WS2812B |
| Mega Pin | LED Strip |
|---|---|
| `D22` | `DIN` |
| `5V` | `5V` |
| `GND` | `GND` |
| `D22` | main backlight/status `DIN` |
| `D36` | indicator `DIN` |
| `5V` | both strips `5V` |
| `GND` | both strips `GND` |
Notes:
- the code expects `7 LEDs per gauge`, so `21 LEDs total`
- the command protocol still exposes `7 LEDs per gauge`
- logical indices `0-2` are backlight, `3-4` are indicators, and `5-6` are status
- use a proper 5V supply sized for the LED current
- keep LED ground common with the Mega