Skip to content

Effekte und Presets nutzen ​

Wie schalte ich WLED-Presets per Datenpunkt (ps) in VIS, Blockly oder Skript? ​

Kurz: Leg das Preset in der WLED-Oberfläche an und schreib seine Nummer als Zahl in wled.0.<MAC>.ps, und zwar als Steuerbefehl (ack=false). Ob das Licht dabei an- oder ausgeht, entscheidet das Preset selbst, nicht der Adapter.

Der Adapter reicht den Wert unverändert als {"ps":3} an das Gerät weiter, per WebSocket oder HTTP. Die Presets selbst liegen nur in WLED. Der Adapter kennt ihre Nummern, aber nicht ihre Namen, und legt auch keine Liste der Presets an.

Welche Presets du brauchst ​

  1. Öffne die WLED-Oberfläche des Geräts im Browser und stell Farbe, Effekt und Helligkeit so ein, wie das Preset aussehen soll.
  2. Speichere den Zustand mit „Create Preset“. Die Nummer unter „Save to ID“ ist die Zahl, die du später in ps schreibst. Erlaubt sind 1 bis 250.
  3. Entscheide beim Speichern, ob „Include brightness“ an sein soll. Davon hängt ab, ob das Preset das Licht ein- oder ausschaltet (siehe unten).

So setzt du ps ​

WoSo geht es
Objektbaum im AdminBei wled.0.<MAC>.ps die Nummer eintragen und speichern.
JavaScriptsetState('wled.0.<MAC>.ps', 3); (ohne drittes Argument ist das ein Steuerbefehl)
BlocklyBlock „steuere“ mit dem Objekt ps und der Zahl als Wert. Nicht „aktualisiere“ nehmen.
VISEin Widget, das einen festen Wert schreibt, zum Beispiel ein Knopf mit der Preset-Nummer, oder eine Auswahlliste mit den Preset-Nummern als Werten und den Namen als Texten.

Der Adapter schickt nur Werte mit ack=false an das Gerät. Ein Wert mit ack=true („aktualisiere“ in Blockly) gilt als Rückmeldung vom Gerät und wird nicht gesendet.

ps ist ein Datenpunkt vom Typ Zahl. Schreib deshalb 3 und nicht "3". WLED versteht zwar auch den Text, aber ioBroker meldet dann eine Warnung zum falschen Datentyp.

Hat es geklappt, zeigt ps kurz darauf die Nummer, die das Gerät zurückmeldet. Hast du danach in WLED etwas von Hand verändert, meldet WLED -1, weil kein Preset mehr aktiv ist.

Warum geht das Licht beim Preset-Wechsel an oder aus? ​

Ein Preset speichert mit „Include brightness“ auch den Ein/Aus-Zustand und die Helligkeit zum Zeitpunkt des Speicherns. Wurde es bei ausgeschaltetem Licht gespeichert, schaltet es beim Aufruf aus. Wurde es bei eingeschaltetem Licht gespeichert, schaltet es ein. Ohne „Include brightness“ bleibt das Licht so, wie es ist, also auch aus, wenn es vorher aus war.

Ablauf beim Setzen von ps: Ist die Nummer schon aktiv, passiert nichts. Sonst lädt WLED das Preset, und „Include brightness“ entscheidet über Ein/Aus und Helligkeit.

So bekommst du das gewünschte Verhalten:

  • Preset soll immer einschalten: Preset bei eingeschaltetem Licht mit „Include brightness“ neu speichern.
  • Preset soll nur Effekt und Farbe ändern: ohne „Include brightness“ speichern und das Licht getrennt über wled.0.<MAC>.on schalten.
  • Einschalten und Preset in einem Befehl: {"on":true,"ps":3} in den Datenpunkt wled.0.<MAC>.action schreiben. WLED wertet on vor ps aus.

IMPORTANT

WLED lädt ein Preset nicht noch einmal, wenn es schon das aktive Preset ist. Das gilt auch, wenn du das Licht zwischendurch über on ausgeschaltet hast: ps zeigt dann weiter dieselbe Nummer, und dieselbe Nummer noch einmal zu schreiben, bewirkt nichts. Schalte in diesem Fall mit on ein oder schick {"on":true,"ps":3} über action.

TIP

Den aktuellen Zustand speicherst du aus ioBroker als Preset, indem du die gewünschte Nummer in wled.0.<MAC>.psave schreibst.

Siehe auch: Presets per Bewegungsmelder schalten · Nacheinander durch Presets schalten · Playlist starten · Skript setzt ps oder on nicht · ps springt auf -1

Wie wechsle ich per Taste oder Skript nacheinander durch Presets? ​

Dieser Abschnitt wird noch geschrieben.

Wie starte ich eine WLED-Playlist über den Adapter? ​

Kurz: Eine Playlist ist in WLED ein Preset mit eigener Nummer. Du startest sie deshalb wie jedes Preset, indem du ihre Nummer in wled.0.<MAC>.ps schreibst. Der Datenpunkt pl zeigt nur an, welche Playlist gerade läuft. Ihn zu beschreiben, startet keine Playlist.

Playlist über ps starten ​

  1. Leg die Playlist in der WLED-Oberfläche an. Sie bekommt beim Speichern eine Nummer wie jedes Preset.
  2. Schreib diese Nummer in wled.0.<MAC>.ps, zum Beispiel per JavaScript setState('wled.0.<MAC>.ps', 9); oder in Blockly mit „steuere“.
  3. Während die Playlist läuft, zeigt pl ihre Nummer und ps das gerade aktive Preset daraus. Läuft keine Playlist, zeigt pl den Wert -1.

Wie ps genau funktioniert, steht unter Presets per Datenpunkt ps schalten.

Playlist ohne gespeichertes Preset über action starten ​

Über den Datenpunkt wled.0.<MAC>.action kannst du eine Playlist auch direkt als JSON schicken, ohne sie vorher in WLED zu speichern. Dieses Beispiel zeigt die Presets 1, 2 und 3 je 30 Sekunden lang, wiederholt das endlos und schaltet dabei ein:

json
{"on":true,"playlist":{"ps":[1,2,3],"dur":[300,300,300],"transition":0,"repeat":0}}
SchlüsselBedeutung
psDie Preset-Nummern in der Reihenfolge, in der sie laufen sollen
durWie lange jedes Preset bleibt, in Zehntelsekunden (300 = 30 Sekunden)
transitionÜberblendzeit zum nächsten Preset, in Zehntelsekunden
repeatWie oft die ganze Playlist läuft; 0 heißt endlos
endPreset, das nach dem letzten Durchlauf geladen wird; wirkt nicht bei repeat = 0

Playlist weiterschalten oder beenden ​

  • Zum nächsten Preset springen: {"np":true} an action schicken. Das gibt es ab WLED-Firmware 0.15.
  • Beenden: Setz ein anderes Preset über ps oder ändere ein Segment direkt, zum Beispiel den Effekt. Damit endet die Playlist.

NOTE

Der Adapter legt pl als beschreibbaren Datenpunkt an. WLED wertet einen geschriebenen Wert aber nicht aus, die WLED-JSON-API führt pl als „read-only“. Nutze zum Starten deshalb ps oder action.

Siehe auch: Nacheinander durch Presets schalten · Kompletten JSON-Befehl senden

Wo finde ich die Nummern und Namen von Effekten und Paletten für Skripte? ​

Dieser Abschnitt wird noch geschrieben.

Wie steuere ich den Effekt "Percent" und zeige einen Wert als Balken an? ​

Dieser Abschnitt wird noch geschrieben.

Wie ändere ich den Text des Effekts "Scrolling Text" oder den Segmentnamen? ​

Dieser Abschnitt wird noch geschrieben.

Wie bleiben Effekt und Palette nach einem Stromausfall erhalten, und wie startet WLED danach? ​

Dieser Abschnitt wird noch geschrieben.

Knowledge has no value unless you use and share it