3.1 KiB
3.1 KiB
Infinity Controller auf WLED-MM-Basis
Zielbild
Die Installation wird als dedizierter Master-ESP plus sechs WLED-MM Nodes betrieben. Die sechs Nodes rendern lokal auf je drei Ausgaengen mit je 106 LEDs. Der Master empfaengt Web-UI und DMX/grandMA-Steuerung und verteilt nur synchronisierte Szenenparameter, keine laufenden Pixelstreams.
Bestehende Basis
- Node-Firmware-Target:
rfp_esp32s3_wroom1_n16r8_3x106 - Node-Ausgaenge:
GPIO4,GPIO5,GPIO6 - Pixel pro Ausgang:
106,106,106 - Logische Node-Segmente:
top = 0-105,middle = 106-211,bottom = 212-317 - DDP bleibt Debug/Fallback und wird nicht als Show-Sync verwendet.
Implementierungsplan
- Node-Target beibehalten und um Infinity-Node-Rolle erweitern.
- Neues Master-Target
rfp_esp32s3_wroom1_n16r8_masteranlegen. - Master-IP-Default als
192.168.178.10dokumentieren und im Infinity-Modul verwenden. - Node-IP-Defaults als
192.168.178.11bis192.168.178.16verwenden. - Physische DMX-Eingabe am Master ueber
WLED_ENABLE_DMX_INPUTaktivieren. - DMX-Defaultpins:
RX=16,TX=17,EN=18,UART=2. - Eigenes UDP-Protokoll
Infinity Sync v1getrennt von WLED-Notifier und DDP implementieren. - Web-UI unter
/infinityund JSON API unter/json/infinitybereitstellen. - DMX-Modus
DMX_MODE_INFINITYmit 32 Kanaelen einbauen.
Sync-Modell
Der Master sendet ClockSync, SceneState und BeatTrigger per UDP-Unicast. Nodes senden NodeStatus zurueck. Nodes rendern lokal gegen master_time_us, dadurch bestimmt nicht die Paketankunft den sichtbaren Frame.
SceneState enthaelt:
- Effekt-ID
- Preset-ID
- Brightness
- Speed
- Intensity
- Palette
- Primaer-/Sekundaer-/Tertiaerfarbe
- Group-Mask
- Direction
- Seed
- Phase
- Transition
apply_at_us
DMX/grandMA Personality v1
| Kanal | Funktion |
|---|---|
| 1 | Dimmer |
| 2 | Enable / Blackout |
| 3 | Preset |
| 4 | Effect |
| 5 | Speed |
| 6 | Intensity |
| 7 | Palette |
| 8 | Hue |
| 9 | Saturation |
| 10 | Value |
| 11 | Direction / Flags |
| 12 | Transition |
| 13 | Group Mask |
| 14 | Top Dimmer |
| 15 | Middle Dimmer |
| 16 | Bottom Dimmer |
| 17 | Beat Trigger |
| 18 | Sync Reset |
| 19 | Custom 1 |
| 20 | Custom 2 |
| 21 | Custom 3 |
| 22 | Seed |
| 23 | Reserved |
| 24 | Safety / Fade |
| 25-32 | Reserved |
Testplan
- Node-Target bauen.
- Master-Target bauen.
- Fresh-Config: drei Busse mit je 106 LEDs pruefen.
- Segment-Test: Top, Middle, Bottom einzeln blinken lassen.
- Sync-Test: zwei Nodes, danach sechs Nodes mit gleichem
apply_at_us. - DMX-Test: physisches DMX steuert Master-State und Nodes folgen ohne DDP.
- Reconnect-Test: Node rebootet und uebernimmt aktuellen SceneState.
- Failsafe-Test: Master weg, DMX weg, Netzwerk weg, Paketverlust.
- Show-Test: mindestens 8 Stunden Dauerbetrieb.
Annahmen
- Ein siebter ESP32-S3 wird als Master verwendet.
- Node-Reihenfolge bleibt
node-01bisnode-06. - Node-IPs bleiben
.11bis.16im Netz192.168.178.0/24. - LED-Reihenfolge bleibt
top/GPIO4,middle/GPIO5,bottom/GPIO6. - Lokale bestehende Aenderungen im WLED-MM-Repo werden nicht zurueckgesetzt.