ioBroker Blockly Anleitung: Blöcke, Beispiele und Funktionen einfach erklärt
Mit Blockly lassen sich in ioBroker Automationen erstellen, ohne direkt JavaScript schreiben zu müssen. Statt Code werden einzelne Blöcke miteinander verbunden. Damit lassen sich einfache Schaltungen genauso umsetzen wie umfangreichere Abläufe mit Bedingungen, Zeitsteuerungen, Variablen und eigenen Funktionen.
Gerade für Einsteiger ist Blockly ein guter Weg, um die Logik hinter einer Smart-Home-Automation zu verstehen. Gleichzeitig bleibt die Oberfläche flexibel genug, um später auch komplexere Abläufe zu bauen.
Was ist ioBroker Blockly?
Blockly ist ein grafischer Editor für Skripte. Anstelle von geschriebenem JavaScript werden Bausteine verwendet, die sich wie Puzzleteile miteinander verbinden lassen. Jeder Block übernimmt dabei eine bestimmte Aufgabe.
- Trigger reagieren auf Änderungen oder Ereignisse.
- Logik-Blöcke prüfen Bedingungen.
- Aktionen schalten Geräte oder verändern Werte.
- Zeit-Blöcke führen Aufgaben zu bestimmten Zeiten aus.
- Variablen speichern Werte innerhalb eines Skripts.
- Funktionen fassen wiederkehrende Abläufe zusammen.
Im Hintergrund erzeugt ioBroker daraus JavaScript. Du musst diesen Code für normale Blockly-Automationen aber nicht selbst schreiben.

Blockly-Skript in ioBroker erstellen
Blockly-Skripte werden über den JavaScript-Adapter verwaltet. Voraussetzung ist deshalb, dass der JavaScript-Adapter in ioBroker installiert und aktiv ist.
- Öffne die ioBroker-Administration.
- Gehe zum Bereich Skripte.
- Erstelle ein neues Skript.
- Wähle als Typ Blockly.
- Vergib einen eindeutigen Namen.
- Baue anschließend die gewünschte Automation aus einzelnen Blöcken zusammen.
Ein Blockly-Skript besteht meistens aus mindestens einem Auslöser und einer Aktion. Häufig kommen zusätzlich Bedingungen dazu.
Die wichtigsten Blockly-Blöcke
Trigger
Trigger bestimmen, wann ein Skript ausgeführt wird. Ein typisches Beispiel ist eine Änderung an einem Datenpunkt. Das kann ein Bewegungsmelder, ein Taster, eine Temperatur oder ein anderer Sensor sein.
Ein häufig verwendeter Trigger lautet sinngemäß: Wenn sich der Wert eines bestimmten Datenpunkts ändert, führe die darunterliegenden Blöcke aus.
Logik
Mit Logik-Blöcken lassen sich Bedingungen prüfen. Dadurch reagiert ein Skript nur dann, wenn bestimmte Voraussetzungen erfüllt sind.
- Wert ist wahr oder falsch
- Wert ist größer oder kleiner als ein Grenzwert
- Mehrere Bedingungen gleichzeitig
- Alternative Aktion über einen Sonst-Zweig
Aktionen
Aktionen verändern Datenpunkte oder lösen konkrete Vorgänge aus. Damit kannst du zum Beispiel ein Licht einschalten, einen Rollladen fahren oder einen Sollwert verändern.
Zeit
Zeit-Blöcke werden für feste Uhrzeiten, Intervalle oder zeitabhängige Automationen verwendet. Damit lassen sich beispielsweise Geräte jeden Abend zu einer bestimmten Uhrzeit ausschalten.
Variablen
Variablen speichern Werte innerhalb des Skripts. Das ist praktisch, wenn ein Wert mehrfach verwendet oder während eines Ablaufs verändert werden soll.
Funktionen
Eigene Funktionen helfen dabei, wiederkehrende Abläufe übersichtlich zu halten. Statt denselben Block mehrfach zu bauen, wird eine Funktion einmal erstellt und später mehrfach aufgerufen.
Beispiel 1: Licht bei Bewegung einschalten
Ein klassisches Beispiel für Blockly ist die Verbindung eines Bewegungsmelders mit einer Lampe. Sobald Bewegung erkannt wird, schaltet das Skript das Licht ein. Wird keine Bewegung mehr erkannt, kann das Licht wieder ausgeschaltet werden.

Der Aufbau besteht aus einem Trigger, einer Bedingung und zwei möglichen Aktionen.
- Der Trigger reagiert auf den Bewegungsmelder.
- Die Bedingung prüft, ob Bewegung erkannt wurde.
- Bei wahr wird das Licht eingeschaltet.
- Bei falsch wird es wieder ausgeschaltet.
In der Praxis sollte man bei Bewegungsmeldern häufig noch eine Verzögerung einbauen. Sonst geht das Licht sofort aus, sobald der Sensor keine Bewegung mehr erkennt.
Beispiel 2: Licht automatisch um 22 Uhr ausschalten
Für feste Uhrzeiten eignet sich ein Zeitplan. Im folgenden Beispiel wird ein Licht jeden Abend um 22 Uhr ausgeschaltet.

Solche Zeitpläne eignen sich zum Beispiel für Beleuchtung, Weihnachtsbeleuchtung, Außenlampen oder Geräte, die nachts nicht eingeschaltet bleiben sollen.
Beispiel 3: Variablen und eigene Funktionen verwenden
Sobald Blockly-Skripte größer werden, helfen Variablen und Funktionen dabei, die Übersicht zu behalten. In einer Variablen kann beispielsweise eine gewünschte Helligkeit gespeichert werden.

Eine eigene Funktion kann anschließend diesen Wert übernehmen und an den entsprechenden Datenpunkt schreiben. Dadurch muss die gleiche Logik nicht an mehreren Stellen erneut gebaut werden.
Typische Bedingungen in Blockly
Viele Automationen benötigen mehr als einen einfachen Trigger. Häufig soll eine Aktion nur unter bestimmten Voraussetzungen ausgeführt werden.
- Licht nur einschalten, wenn es dunkel ist
- Heizung nur aktivieren, wenn ein Fenster geschlossen ist
- Rollladen nur fahren, wenn niemand die Terrassentür geöffnet hat
- Benachrichtigung nur senden, wenn niemand zu Hause ist
- Gerät nur einschalten, wenn der Stromverbrauch unter einem Grenzwert liegt
Dafür lassen sich mehrere Bedingungen miteinander verknüpfen. Typische Verknüpfungen sind UND und ODER.
Datenpunkte in Blockly auswählen
Ein wichtiger Teil jeder Blockly-Automation ist die Auswahl der richtigen Datenpunkte. ioBroker stellt die Datenpunkte aller eingebundenen Adapter zentral bereit.
Bei einem Bewegungsmelder kann ein Datenpunkt zum Beispiel den Zustand true oder false liefern. Eine Lampe besitzt häufig einen Datenpunkt für Ein und Aus sowie weitere Datenpunkte für Helligkeit oder Farbe.
Wenn ein Skript nicht funktioniert, lohnt sich deshalb zuerst ein Blick auf den verwendeten Datenpunkt. Oft liegt der Fehler nicht in Blockly selbst, sondern an einem falschen Objekt oder einem unerwarteten Wert.
Blockly und JavaScript
Blockly ist eng mit JavaScript verbunden. ioBroker erzeugt aus den grafischen Blöcken automatisch JavaScript-Code. Für Einsteiger ist das praktisch, weil sich Automationen zunächst ohne Programmierkenntnisse erstellen lassen.
Wer später komplexere Skripte benötigt, kann sich schrittweise mit JavaScript beschäftigen. Viele Grundprinzipien aus Blockly bleiben dabei erhalten, zum Beispiel Trigger, Bedingungen, Variablen und Funktionen.
Häufige Fehler bei ioBroker Blockly
Skript ist nicht aktiviert
Ein neu erstelltes Skript muss aktiviert sein. Ist es ausgeschaltet, werden auch korrekt aufgebaute Blockly-Blöcke nicht ausgeführt.
Falscher Datenpunkt
Bei vielen Geräten gibt es mehrere ähnlich benannte Datenpunkte. Prüfe deshalb im Objektbaum, welcher Datenpunkt tatsächlich verändert wird.
Datentyp passt nicht
Ein Datenpunkt kann zum Beispiel einen Wahrheitswert, eine Zahl oder einen Text enthalten. Eine Bedingung mit einem falschen Datentyp liefert häufig nicht das gewünschte Ergebnis.
Trigger reagiert zu häufig
Ein Trigger kann bei jeder Änderung eines Datenpunkts ausgeführt werden. Je nach Sensor kann das sehr häufig passieren. In solchen Fällen sollte genauer festgelegt werden, auf welche Änderung das Skript reagieren soll.
Blockly übersichtlich halten
Bei kleinen Automationen ist die Übersicht meist kein Problem. Größere Blockly-Skripte können allerdings schnell unübersichtlich werden.
- Verwende sprechende Skriptnamen.
- Teile sehr große Automationen in mehrere Skripte auf.
- Nutze Variablen für Werte, die mehrfach verwendet werden.
- Verwende Funktionen für wiederkehrende Abläufe.
- Nutze Log-Ausgaben bei der Fehlersuche.
Blockly-Beispiele für das Smart Home
Mit Blockly lassen sich sehr viele typische Smart-Home-Aufgaben umsetzen. Einige Beispiele:
- Beleuchtung bei Bewegung einschalten
- Rollläden abhängig von Uhrzeit oder Sonnenstand steuern
- Temperaturwerte überwachen
- Fensterkontakte mit der Heizung verbinden
- Stromverbrauch überwachen
- Benachrichtigungen bei bestimmten Ereignissen senden
- Geräte zeitgesteuert ein- und ausschalten
- Werte verschiedener Sensoren miteinander vergleichen
Blockly oder JavaScript: Was ist besser?
Für viele Smart-Home-Automationen reicht Blockly vollkommen aus. Gerade wenn nur einige Geräte miteinander verbunden werden sollen, lässt sich die Logik damit schnell nachvollziehen.
JavaScript bietet mehr Möglichkeiten, wenn Abläufe sehr komplex werden oder spezielle Funktionen benötigt werden. Blockly hat dafür den Vorteil, dass man die Struktur einer Automation direkt sehen kann.
Wer gerade mit ioBroker beginnt, kann deshalb problemlos mit Blockly starten und später bei Bedarf auf JavaScript umsteigen.
Fazit
ioBroker Blockly ist ein guter Einstieg in die Automatisierung des eigenen Smart Homes. Trigger, Bedingungen und Aktionen lassen sich grafisch miteinander verbinden und bleiben auch bei kleineren Projekten gut nachvollziehbar.
Mit Variablen, Zeitsteuerungen und eigenen Funktionen lassen sich später auch umfangreichere Abläufe umsetzen. Wer die Grundlagen verstanden hat, kann damit einen großen Teil typischer ioBroker-Automationen ohne selbst geschriebenen JavaScript-Code erstellen.

