VIS, Alexa, Google Home und Apple Home
Gibt es eine fertige VIS-Ansicht für die WLED-Steuerung?
Kurz: Nein, der Adapter bringt weder eine fertige VIS-Ansicht noch eigene Widgets mit. Du baust die Steuerung aus den Standard-Widgets von VIS und bindest sie an die Datenpunkte unten. Alternativ bettest du die Weboberfläche des WLED-Geräts per iFrame ein.
Diese Datenpunkte bindest du
Alle Datenpunkte liegen unter wled.0.<Gerät>. Für ein Gerät mit einem Segment nimmst du Segment 0.
| Bedienelement | Widget | Datenpunkt | Wert |
|---|---|---|---|
| Ein/Aus | Schalter | on | true / false |
| Helligkeit | Schieberegler | bri | 0 bis 255 |
| Farbe | Farbwähler | seg.0.col.0_HEX | #RRGGBB |
| Effekt | Auswahlliste (Dropdown) | seg.0.fx | Nummer, Namen kommen aus dem Datenpunkt |
| Palette | Auswahlliste (Dropdown) | seg.0.pal | Nummer, Namen kommen aus dem Datenpunkt |
| Geschwindigkeit des Effekts | Schieberegler | seg.0.sx | Zahl |
| Intensität des Effekts | Schieberegler | seg.0.ix | Zahl |
| Preset | Tasten oder Zahlenfeld | ps | Nummer des Presets |
So baust du die Ansicht
- Leg in VIS eine neue Ansicht an.
- Setz einen Schalter und verbinde ihn mit
wled.0.<Gerät>.on. - Setz einen Schieberegler für
wled.0.<Gerät>.brimit Minimum 0 und Maximum 255. Willst du 0 bis 100 %, bindest du stattdessen einen Prozent-Alias (siehe unten). - Setz einen Farbwähler und verbinde ihn mit
wled.0.<Gerät>.seg.0.col.0_HEX. - Setz zwei Auswahllisten für
seg.0.fxundseg.0.pal. Die Namen der Effekte und Paletten stehen im Datenpunkt selbst, du musst sie nicht abtippen. - Für Presets setzt du eine Taste je Preset, die die Presetnummer in
psschreibt. - Prüf die Ansicht im Laufzeitmodus: Jede Änderung muss am Streifen sichtbar sein.
IMPORTANT
Nimm für den Farbwähler den HEX-Datenpunkt seg.0.col.0_HEX, nicht den RGB-Datenpunkt seg.0.col.0. Der RGB-Datenpunkt erwartet Text wie [255,0,0], den ein Farbwähler nicht liefert.
Bis v0.9.2: Schreibst du einen HEX-Wert, setzt der Adapter bei RGBW-Streifen den Weißkanal auf voll, und die Tertiärfarbe seg.0.col.2_HEX wirkt nicht.
Ab v0.9.3: Ein 6-stelliger HEX-Wert (#RRGGBB) lässt den Weißkanal unverändert. Mit einem 8-stelligen Wert (#RRGGBBWW) setzt du den Weißkanal mit (#907). Die Tertiärfarbe 2_HEX wirkt (#906).
TIP
Ein eigenes Bild je Preset liefert der Adapter nicht. Das löst du in VIS: Leg für jedes Preset ein Bild-Widget an und mach es nur sichtbar, wenn ps die passende Nummer hat.
Weboberfläche von WLED einbetten
Willst du alle Funktionen von WLED in VIS haben, bettest du die Weboberfläche des Geräts mit einem iFrame-Widget ein. Als Adresse trägst du http://192.168.x.y ein, die IP deines WLED-Geräts. Die Bedienung läuft dann direkt am Gerät, nicht über den Adapter.
Siehe auch:
- Wie nutze ich die Helligkeit in Prozent (0 bis 100), zum Beispiel für Alexa?
- Wie schalte ich WLED-Presets per Datenpunkt (ps) in VIS, Blockly oder Skript?
- Welchen Datenpunkt nehme ich für den Farbwähler in VIS, und wie zeige ich die aktuelle Farbe an?
- Warum friert der VIS-2-Editor ein, wenn ich seg.0.fx im Dropdown wähle?
Welchen Datenpunkt nehme ich für den Farbwähler in VIS, und wie zeige ich die aktuelle Farbe an?
Dieser Abschnitt wird noch geschrieben.
Wie wähle ich Effekt und Palette in VIS als Dropdown?
Dieser Abschnitt wird noch geschrieben.
Wie binde ich WLED in den iot-Adapter ein und schalte Effekte, Presets und Farbe per Alexa oder Google Home?
Kurz: Der Adapter legt keine fertige Lampe für den iot-Adapter an. Du baust sie dir mit einem Alias-Gerät aus on, bri und seg.0.col.0_HEX und gibst ihm im iot-Adapter einen Smart-Namen. Presets und Effekte schaltest du über einen Hilfsdatenpunkt, den Alexa oder Google Home wie eine Szene auslöst.
Die Datenpunkte des Adapters haben passende Rollen: on ist switch.light, bri ist level.brightness mit 0 bis 255, die Farbe seg.0.col.0_HEX ist level.color.hex. Der iot-Adapter erkennt ein Licht aber erst, wenn diese Teile in einer gemeinsamen Struktur liegen. Diese Struktur legst du mit einem Alias selbst an.
Ein/Aus, Helligkeit und Farbe als Lampe
Öffne im Admin den Reiter „Objekte“ und lege unter
alias.0einen Ordner für die Lampe an, zum Beispielalias.0.WLED.Wohnzimmer.Lege darin drei Datenpunkte an:
Datenpunkt im Alias Rolle Typ Ziel ( alias.id)Umrechnung onswitch.lightbooleanwled.0.<Gerät>.onkeine helligkeitlevel.dimmer, 0 bis 100, Einheit%numberwled.0.<Gerät>.briLesen Math.round(val / 2.55), SchreibenMath.ceil(val * 2.55)farbelevel.color.rgbstringwled.0.<Gerät>.seg.0.col.0_HEXkeine Öffne den Reiter des iot-Adapters, such dort das Alias-Gerät und gib ihm einen Smart-Namen, zum Beispiel „Wohnzimmer Streifen“.
Lass Alexa oder Google Home nach neuen Geräten suchen.
Prüf es mit „Wohnzimmer Streifen auf 50 Prozent“:
wled.0.<Gerät>.brimuss auf128springen.
Wie du den Prozent-Alias im Einzelnen anlegst, steht unter Wie nutze ich die Helligkeit in Prozent (0 bis 100), zum Beispiel für Alexa?.
TIP
Brauchst du nur Ein/Aus und Helligkeit, reicht oft auch ein Smart-Name direkt auf wled.0.<Gerät>.bri. Weil bri Minimum und Maximum hat, rechnet der iot-Adapter Prozent selbst auf 0 bis 255 um.
Presets und Effekte als Szene
Sprachassistenten kennen keine WLED-Presets oder -Effekte. Du legst darum je Preset einen Hilfsdatenpunkt an, den Alexa oder Google Home einschaltet, und ein kleines Skript schreibt die Presetnummer nach ps.
Leg einen Datenpunkt vom Typ
booleanmit der Rollebuttonan, zum Beispiel0_userdata.0.WLED.Kaminfeuer.Gib ihm im iot-Adapter einen Smart-Namen, zum Beispiel „Kaminfeuer“.
Leg im JavaScript-Adapter dieses Skript an. Die
5ersetzt du durch die Nummer deines Presets in WLED:json({ id: '0_userdata.0.WLED.Kaminfeuer', val: true, ack: false }, () => { setState('wled.0.<Gerät>.ps', 5); });Sag „Alexa, schalte Kaminfeuer ein“.
wled.0.<Gerät>.psmuss auf5springen.
Genauso kannst du statt ps einen Effekt schreiben, zum Beispiel setState('wled.0.<Gerät>.seg.0.fx', 9). Wie das Schreiben von ps im Einzelnen funktioniert und worauf du dabei achten musst, steht unter Wie schalte ich WLED-Presets per Datenpunkt (ps) in VIS, Blockly oder Skript?.
NOTE
WLED selbst hat eine eigene Alexa-Anbindung, die ohne ioBroker auskommt. Sie läuft direkt in der WLED-Firmware und hat mit dem Adapter nichts zu tun.
Grenzen
- Farbe beendet keinen Effekt. Ein Farbbefehl schreibt nur die Farben des Segments. Läuft gerade ein Effekt, läuft er mit der neuen Farbe weiter. Willst du eine ruhige Farbe, wähl vorher ein Preset mit einem einfarbigen Effekt.
- Ein Alias je Segment. Das Alias-Gerät oben steuert nur Segment
0. Für weitere Segmente brauchst du eigene Aliase aufseg.<Segment>.on,seg.<Segment>.briundseg.<Segment>.col.0_HEX. - Effekte und Paletten nur über Hilfsdatenpunkte. Eine direkte Auswahl per Sprache gibt es nicht.
- Keine Rückmeldung für Szenen. Der Hilfsdatenpunkt zeigt nicht an, ob das Preset noch aktiv ist.
Bis v0.9.2: Schreibt der iot-Adapter eine Farbe auf einen RGBW-Streifen, schaltet der Adapter den Weißkanal auf voll.
Ab v0.9.3: Eine Farbe mit 6 Stellen (#RRGGBB) lässt den Weißkanal unverändert (#907).
Siehe auch:
- Gibt es eine fertige VIS-Ansicht für die WLED-Steuerung?
- Wie steuere ich den Weißkanal (RGBW, SK6812, warmweiß)?
Wie bekomme ich einen Farbwähler für WLED in Apple Home (Yahka)?
Dieser Abschnitt wird noch geschrieben.