Das Gerät zum ersten Mal steuern
Welchen Datenpunkt nehme ich zum Ein- und Ausschalten, das ganze Gerät oder nur ein Segment?
Dieser Abschnitt wird noch geschrieben.
Wie nutze ich die Helligkeit in Prozent (0 bis 100), zum Beispiel für Alexa?
Kurz: bri arbeitet wie WLED selbst mit Werten von 0 bis 255, nicht in Prozent. Für 0 bis 100 % legst du einen Alias auf bri an, der beim Lesen durch 2,55 teilt und beim Schreiben mit 2,55 malnimmt.
Der Adapter stellt bri nicht auf Prozent um, weil 255 Stufen feiner sind und eine Umstellung bestehende Skripte und Visualisierungen brechen würde. Der Datenpunkt hat die Rolle level.brightness mit Minimum 0 und Maximum 255. Das gilt für die Gesamthelligkeit wled.0.<Gerät>.bri und genauso für die Segmenthelligkeit wled.0.<Gerät>.seg.<Segment>.bri.
Brauchst du überhaupt eine Umrechnung?
Für Alexa und Google Home über den iot-Adapter meist nicht: Weil bri Minimum und Maximum mitbringt, kann der iot-Adapter eine Prozentangabe selbst auf 0 bis 255 umrechnen. Den Alias brauchst du, wenn du Prozent in VIS, in Skripten oder in einer anderen Integration sehen oder schreiben willst, oder wenn die Umrechnung im iot-Adapter bei dir nicht greift.
So legst du einen Prozent-Alias an
- Öffne im Admin den Reiter „Objekte“ und lege unter
alias.0einen Datenpunkt an, zum Beispielalias.0.WLED.Wohnzimmer.helligkeit. - Gib ihm den Typ
number, die Rollelevel.dimmer, Minimum0, Maximum100und die Einheit%. - Trag als Ziel des Alias den WLED-Datenpunkt ein:
wled.0.<Gerät>.bri. - Trag die Umrechnung ein. Lesen:
Math.round(val / 2.55). Schreiben:Math.ceil(val * 2.55). - Speichere und setze den Alias testweise auf
50.brimuss dann auf128springen, und der Streifen leuchtet mit halber Helligkeit.
Im Objekt sieht der Alias-Teil so aus:
"common": {
"name": "Helligkeit Wohnzimmer",
"type": "number",
"role": "level.dimmer",
"min": 0,
"max": 100,
"unit": "%",
"read": true,
"write": true,
"alias": {
"id": "wled.0.<Gerät>.bri",
"read": "Math.round(val / 2.55)",
"write": "Math.ceil(val * 2.55)"
}
}TIP
Beim Schreiben rundest du auf (Math.ceil). Sonst wird aus 1 % der Wert 0 und das Licht geht aus, obwohl du es nur sehr dunkel haben wolltest.
WARNING
Bau die Umrechnung nicht mit zwei Skripten, die sich gegenseitig auslösen (Prozent-Datenpunkt schreibt bri, bri schreibt den Prozent-Datenpunkt). Durch das Runden können die beiden Werte hin- und herspringen. Ein Alias hat dieses Problem nicht, weil es nur einen echten Wert gibt.
Siehe auch: Wie binde ich WLED in den iot-Adapter ein und schalte Effekte, Presets und Farbe per Alexa oder Google Home?
Wo wähle ich Effekt und Palette aus?
Kurz: Effekt und Palette stellst du je Segment ein: wled.0.<Gerät>.seg.<Segment>.fx für den Effekt und wled.0.<Gerät>.seg.<Segment>.pal für die Palette. Beide Datenpunkte haben eine Auswahlliste mit den Namen, die dein WLED-Gerät meldet.
Das erste Segment hat die Nummer 0. Hast du in WLED mehrere Segmente angelegt, hat jedes eigene Datenpunkte fx und pal. Gespeichert wird jeweils die Nummer des Effekts oder der Palette; die Auswahlliste zeigt dazu den Namen an.
So gehst du vor
- Öffne im Admin den Reiter „Objekte“ und gehe zu
wled.0.<Gerät>.seg.0. - Klick beim Datenpunkt
fxauf den Wert. Es öffnet sich eine Liste mit den Effektnamen deines Geräts. Wähle einen aus. - Mach dasselbe bei
palfür die Palette. - Der Streifen wechselt sofort. Im Datenpunkt steht danach die Nummer des gewählten Eintrags.
Daneben gehören zum Effekt seg.<Segment>.sx (Geschwindigkeit) und seg.<Segment>.ix (Intensität).
Im Skript schreibst du die Nummer, zum Beispiel setState('wled.0.<Gerät>.seg.0.fx', 9). Welche Nummer zu welchem Namen gehört, steht in der Auswahlliste im Objekt (common.states).
Neue Effekte nach einem Firmware-Update fehlen in der Liste
Die Namen liest der Adapter aus dem Gerät, die Liste hängt also von deiner WLED-Firmware ab.
Bis v0.9.2: Der Adapter setzt die Auswahlliste nur einmal je Adapterlauf. Effekte und Paletten, die mit einem Firmware-Update dazugekommen sind, erscheinen erst, wenn du die Adapter-Instanz neu startest.
Ab v0.9.3: Der Adapter schreibt die Listen bei jedem Verbindungsaufbau mit dem Gerät neu. Weil WLED beim Firmware-Update neu startet und sich danach wieder verbindet, erscheinen neue Effekte ohne Neustart des Adapters (#912).
TIP
Fehlt die Auswahlliste ganz oder ist sie veraltet, starte die Instanz wled.0 einmal neu. Das hilft in jeder Version.
Siehe auch: