feat(light): Farbe und Farbtemperatur ueber alle Segmente
In Home Assistant liessen sich nur Szenen und Helligkeit stellen, keine Farben - device/state traegt naemlich keine. Die steht je Segment, und die Segmente hat der Koordinator bisher gar nicht gelesen. Jetzt holt er device/segments mit (fuenfte Anfrage je Zyklus), und die Lichtentitaet bietet rgb_color und color_temp_kelvin an: * Setzen schreibt in ALLE Segmente, aber nur die Farbfelder - Grenzen, Namen und Helligkeit bleiben stehen. Die Einteilung eines Strips ist von Hand gemacht, die reisst eine Farbwahl nicht ein. Geschrieben wird die ganze Liste auf einmal, danach zurueckgelesen statt angenommen. * Angezeigt wird nur, worauf sich alle Segmente einigen. Zwei Farben und eine Entitaet - da waere jede Angabe gelogen, also gibt es keine. * Farbtemperatur nur, wenn alle auf "white" stehen; sonst RGB, sonst blendete HA den Farbkreis aus, sobald ein Segment einen Effekt faehrt. * Die Farbe geht VOR dem Einschalten raus, sonst leuchtet der Strip kurz in der alten auf. Die Spanne 2700-6500 K ist die, die die Firmware auf die Weisskanaele umrechnet (nl_ct.h); ohne Weisskanaele naehert sie sie in RGB an. Dazu: das Markenbild ist jetzt dasselbe wie bei ninlight - Michaels Wunsch, die beiden Integrationen gehoeren zusammen. Das Skript fuer ein eigenes Motiv bleibt als Ausgangspunkt liegen.
This commit is contained in:
@@ -46,7 +46,7 @@ Ohne mDNS geht es auch von Hand über Adresse und Token.
|
||||
|
||||
| Entität | |
|
||||
|---|---|
|
||||
| `light` | Hauptschalter und Helligkeit des ganzen Strips |
|
||||
| `light` | Hauptschalter, Helligkeit, Farbe und Farbtemperatur des ganzen Strips |
|
||||
| `select` | aufgeschaltete Szene (acht Plätze in der Firmware) |
|
||||
| `button` | Neustart |
|
||||
| `sensor` | IP-Adresse, WLAN-Signal, Laufzeit, freier Speicher, Leistungsbegrenzung |
|
||||
@@ -63,8 +63,19 @@ Signal, Laufzeit und freier Speicher sind aus; die braucht man erst im
|
||||
Fehlerfall.
|
||||
|
||||
**Eine Lichtentität je Gerät, nicht je Segment.** `device/state` ist der
|
||||
Hauptschalter und trägt keine Farbe — bei mehreren Segmenten gäbe es keine
|
||||
eine Farbe, die stimmen würde. Die Segmente stellt man über Szenen.
|
||||
Hauptschalter und trägt keine Farbe — die steht je **Segment**. Die
|
||||
Lichtentität schreibt eine gewählte Farbe deshalb in **alle** Segmente und
|
||||
lässt deren Grenzen, Namen und Helligkeit stehen; die mühsam von Hand gemachte
|
||||
Einteilung bleibt also erhalten.
|
||||
|
||||
Zeigen kann sie nur **eine** Farbe. Sind sich die Segmente nicht einig, meldet
|
||||
sie gar keine, statt sich eine auszusuchen — jede Angabe wäre dann gelogen.
|
||||
Farbtemperatur meldet sie nur, wenn **alle** Segmente auf `white` stehen;
|
||||
sobald eines einen Effekt fährt, ist es RGB. Die Spanne ist 2700–6500 K, das
|
||||
rechnet die Firmware auf die Weißkanäle um (`nl_ct.h`); Strips ohne
|
||||
Weißkanäle bekommen dieselbe Spanne als RGB-Näherung.
|
||||
|
||||
Für einzelne Segmente gibt es noch keine Entitäten.
|
||||
|
||||
## Noch nicht drin
|
||||
|
||||
@@ -138,11 +149,15 @@ eingebunden, der Quellcode bleibt in diesem Repo.
|
||||
|
||||
### Markenbilder
|
||||
|
||||
`scripts/make_brand.py` zeichnet die vier PNGs unter
|
||||
`custom_components/ninstrip/brand/`. Ab Home Assistant 2026.3 liefert HA sie
|
||||
für eine eigene Integration von dort aus; ohne sie bleibt in der
|
||||
Geräteübersicht ein Platzhalter. Das Motiv ist ein Strip mit fünf leuchtenden
|
||||
Pixeln — ninlight hat an derselben Stelle eine Glühbirne.
|
||||
Die vier PNGs unter `custom_components/ninstrip/brand/` sind **dieselben wie
|
||||
in ha-ninlight**: die beiden Integrationen gehören zusammen, und zwei
|
||||
verschiedene Motive in derselben Geräteübersicht stiften nur Verwirrung. Ab
|
||||
Home Assistant 2026.3 liefert HA sie für eine eigene Integration von dort
|
||||
aus; ohne sie bleibt ein Platzhalter.
|
||||
|
||||
`scripts/make_brand.py` zeichnet ein eigenes Motiv (ein Band mit fünf
|
||||
leuchtenden Pixeln) und liegt als Ausgangspunkt bereit, falls doch einmal
|
||||
eines gewünscht ist — in Gebrauch ist es nicht.
|
||||
|
||||
### Tests
|
||||
|
||||
|
||||
Reference in New Issue
Block a user