Smart Home – #4 – ioBroker Teil 1

Nachdem ich euch einen Überblick meiner verwendeten Hard- und Software gegeben habe, soll es heute um den ioBroker gehen. Die IoT-Plattform ioBroker ist Open-Source und kann daher kostenfrei genutzt werden. Durch eine riesige Gemeinschaft, wurden bis heute über 400 Adapter erstellt, durch die verschiedenste Smart-Home Systeme miteinander kombiniert werden können.

Doch zuerst möchte ich einen Schritt zurück gehen. In meinem letzten Beitrag der Smart-Home Serie habe ich davon berichtet das ich Docker verwende. Wer genau hingesehen hat, konnte erkennen das ich einen ioBroker Docker Container laufen habe. Diesen Docker Container stelle ich auf Docker Hub zur Verfügung und wurde durch André ‚Buanet‘ Germann inspiriert. Wen du diesen Container nutzen möchtest, solltest du jedoch Docker auf einem Gerät mit ARM Architektur (wie einem Raspberry Pi) betreiben. Auf einem Gerät mit CPU von Intel oder AMD läuft der Container hingegen nicht.

Beginnen wir aber nun mit dem ioBroker selber. Nach der Installation ruft man in der Regel die Administrations Oberfläche mit der URL http://<IP>:8081 und wird anschließend von der Seite „Überblick“ begrüßt. Neben dem Menü auf der linken Seite bekommt man auch schon erste Informationen zum System und gegebenenfalls auch zu einzelnen Adaptern zu Gesicht. Wie man unschwer auf dem folgenden Bild erkennen kann, werden vier Systeme verlinkt (HomeMatic, Lovelace, simpleAPI und TR-064) und Informationen zur verwendeten Node.js und NPM Version angezeigt.

ioBroker - Überblick

ioBroker – Überblick

Bei einem jungfräulichen ioBroker sind nur wenige Adapter installiert, jedoch kann man unter dem Menü-Eintrag Adapter den Katalog der über 400 Adapter einsehen und diese von dort aus installieren. In dem folgenden Bild werden nur die auf meinem System installierten Adapter in einer Liste angezeigt. Dies kann man über die runden Steuerelemente einstellen.

ioBroker - Adapter

ioBroker – Adapter

Ist ein Adapter erst einmal installiert, wird meist auch eine Instanz erstellt. Je nach Adapter müssen die Instanzen konfiguriert werden. Zum Bespiel muss bei der HM-REGA und HM-RPC Adapter die Daten der Homematic CCU hinterlegt werden, damit die Kommunikation zwischen den beiden System aufgebaut werden kann. Bei einem Wetter Adapter hingegen stellt man meistens den Wohnort ein. Außerdem ist es möglich mehrere Instanzen von einem Adapter zu betreiben. In dem folgenden Bild kann man dies bei dem HM-RPC Adapter erkennen. Grund für die beiden Instanzen ist in meinem Fall die Verwendung von HomeMatic und HomeMatic IP Komponenten.

ioBroker - Instanzen

ioBroker – Instanzen

Um dir einen kurzen Überblick über meine verwendeten Adapter zu geben, hier eine Liste mit einer kurzen Erklärung, warum bzw. wofür ich diesen Adapter verwende.

  • admin: Die Konfiguration von ioBroker über das Web-Interface
  • backitup: Dieser Adapter ermöglicht das zyklische Erstellen von Backups (ioBroker und weitere Systeme)
  • daswetter: Bezieht Wettervorhersagedaten von DasWetter.com
  • HM-Rega: Verbindet die Logikschicht einer HomeMatic CCU mit ioBroker
  • HM-RPC: Verbindet HomeMatic Interface-Prozesse via XML-RPC oder BIN-RPC mit ioBroker
  • homeconnect: Verbindet die Siemens/Bosch Homeconnect Cloud mit ioBroker
  • ical: iCal liest Kalender Dateien im .ics Format ein
  • influxdb: Loggt die Historie von einzelnen Zuständen in einer InfluxDB
  • iot: Verbindet Ihren ioBroker-Server mit der ioBroker IoT-Cloud
  • javascript: Javascript-, Blockly-, Typescript- und Rules-Skriptausführung für ioBroker
  • lovelace: Mit diesem Adapter kann die HomeAssistant UI Lovelace unter ioBroker genutzt werden
  • pollenflug: Pollenflug Gefahrenindex in Deutschland
  • simple-api: Dieser Adapter ermöglicht das Lesen und Schreiben von ioBroker-Objekten mit der RESTful-API
  • telegram: Adapter ermöglicht eine Kommunikation mit einem selbst erstellten Telegram-Bot
  • tr-064: Verbindet AVM Geräte mit dem ioBroker über das TR-064 Protokoll
  • vodafone-speedtest: Internet Speedtest von Vodafone.de
  • zigbee: Verbindet Zigbee Geräte via TI cc2531/cc2530/cc26x2r/cc2538 oder deCONZ ConBee/RaspBee mit dem ioBroker

 

Unter dem Menü-Eintrag Objekte kann man sich die einzelnen Variablen der Adapter ansehen und auch selber welche anlegen. Von letzterem würde ich jedoch abraten, da es besser ist die Variablen aus einem Script heraus zu erstellen. Sollte nämlich einmal die ioBroker Installation nicht mehr funktionieren, spart man sich den Aufwand alle Variablen bzw. Objekte wieder zu erstellen.

ioBroker - Objekte

ioBroker – Objekte

Die nächsten drei Menü Einträge sind schnell erklärt. Unter Aufzählungen kann man seine Geräte in Kategorien einsortieren. Diese Kategorien legt man selber an und dienen anschließend für andere Adapter als Vorlage. Unter Log kann man sich Log-Einträge der Adapter ansehen. Sollte ein Adapter nicht ans laufen kommen, kann man dort detailliertere Informationen dazu finden. Und unter Benutzer kann man weitere ioBroker Benutzer anlegen und diesen verschiedene Rechte vergeben.

Unter dem Menü Eintrag Script verbringt sich die Logikschicht des ioBrokers. Doch was bedeutet Logikschicht? Im Grunde genommen kann man Scripte bzw. Programme in vier verschiedenen Programmiersprachen (Blockly, JavaScript, TypenScript und Rules) erstellen. Dadurch kann man Geräte und Daten von mehreren Adaptern kombinieren.

ioBroker kann auch auf mehreren Systemen parallel betrieben werden. Dies nennt man dann Multihostsystem. Dazu läuft eine ioBroker Installation als Master und eine oder mehrere Installationen als Slaves. Dies hat den Vorteil, dass wen ein Gerät ausfällt das Smart-Home weiterhin betrieben werden kann. Da mein System recht überschaubar ist, nutze ich lediglich einen Host.

ioBroker - Hosts

ioBroker – Hosts

Dies soll es erst einmal gewesen sein. Im nächsten Teil der Smart-Home Serie wird es noch einmal um den ioBroker gehen. Dabei werde ich etwas tiefer auf meine Visualisierung per Lovelace UI eingehen. Wer sich bis dahin noch ein wenig mit ioBroker vertraut machen möchte, dem lege ich die umfangreiche Dokumentation ans Herz.

Schreibe einen Kommentar