Open Source Smart Home

Der Markt für Smart Home Systeme und deren Geräte boomt seit Jahren. Immer mehr Hersteller erscheinen auf der Bildfläche und um sich voneinander abzugrenzen und ihre Marktanteile zu sichern, bauen die Platzhirsche ihre Sortimente weiter aus. Möchte man ein ganzes Haus automatisieren, liegt die Schwierigkeit in der mangelnden Kompatibilität der einzelnen Hersteller und ihren Geräten. 

Unzählige verschiedene Apps auf dem Smartphone bedienen zu müssen ist nicht wirklich smart und auch nicht komfortabel. Außerdem müssen Geräte verschiedener Automatisierungsstandards miteinander “sprechen” können, um miteinander vernetzt zu werden. Ein zentrales Steuerelement wie ein kommerzieller Smart Home Server von Elektroherstellern ist jedoch nicht gerade günstig. Eine Alternative kann ein Open Source Smart Home bieten. Im Folgenden zeigen wir dir verschiedene Möglichkeiten sowie deren Vor- und Nachteile. 

Was ist ein Open Source Smart Home? 

Unter Open Source versteht man ein Software-Entwicklungsmodell, bei dem der Quellcode öffentlich zur Verfügung steht. Jeder kann diesen Quellcode einsehen, weiterentwickeln und nutzen. Daraus entsteht eine herstellerunabhängige Software, die du selbst auf deinem eigenen Rechner installieren kannst. Ein Open Source Smart Home nutzt eine Open Source Software (OSS) als Steuerzentrale für die angeschlossenen Geräte. Im Gegensatz zu kommerziellen Systemen unterstützen Open Source System meist keinen speziellen Funkstandard, sondern bündeln die vorhandenen Systeme. Dadurch lässt sich herstellerübergreifend mit ausgeklügelten Wenn-Dann-Regeln arbeiten und auch IoT-Services nutzen, die ein bestimmter Hersteller für seine Geräte vielleicht gar nicht anbietet.

Für wen ist ein Open Source Smart Home sinnvoll?

Vorab sei gesagt, dass ein Open Source Smart Home keine fertige Lösung darstellt, die du einfach einstöpselst und dann läuft. Du musst kein Entwickler für diese Systemlösung sein, denn die fertigen Lösungen für diverse Funktionen und Problemstellungen werden von der Community zur Verfügung gestellt. Allerdings musst du schon eine gewisse Neigung zum Basteln und Selbermachen mitbringen. Dann ist es aber ein ungemein mächtiges Instrument, dein Haus genau nach deinen Wünschen und Bedürfnissen zu automatisieren.

Vorteile von Open Source Systemen

  • Günstig: Da niemand die Rechte an der Software hat, kann diese kostenfrei genutzt werden. Werden aus der Software heraus bestimmte IoT- oder Cloud-Dienste genutzt, können diese jedoch Kosten verursachen. Da auch Entwickler nicht nur von Luft und Liebe leben können, werden für speziell entwickelte Funktionen mitunter Spenden erwartet (Stichwort: Donation Software).
    Du kannst für Open Source Software auch ein Open Source Betriebssystem wie Linux verwenden und auch die Hardware ist nicht sehr anspruchsvoll; es reicht ein Einplatinencomputer. Daher wird auch oft vom Raspberry Pi Smart Home gesprochen.
  • Mehr Flexibilität: Weil du nicht an einen Anbieter gebunden bist, kannst du herstellerübergreifend nach Lösungen für deine Anforderungen suchen. So kannst du immer genau die Geräte einbinden, die für deinen Einsatzzweck am sinnvollsten sind.
  • Mehr Individualisierung: Die einzelnen Hersteller bieten ihre Geräte für einen Massenmarkt an, um möglichst viele davon verkaufen zu können. Dabei bleibt die ein oder andere nützliche Funktion schon mal auf der Strecke. Um diese dennoch einbinden zu können, stehen dir in einem Open Source Smart Home mehr Individualisierungsmöglichkeiten zur Verfügung.
  • Höhere Privatsphäre: Verzichtest du auf die Nutzung von Cloud- und IoT-Diensten, ist eine lokale Nutzung möglich. Die Community achtet darauf, dass sich keine Datensammler in das System einschleichen. Ein weiterer Vorteil von einem offenen Quellcode.

Nachteile von Open Source Systemen

Wo Licht ist, ist allerdings auch Schatten. Natürlich gibt es auch bei Open Source Systemen Nachteile.

  • Einarbeitung: Kommst du selbst nicht aus der Softwareentwicklung, wirst du mit einer hohen Einarbeitungszeit rechnen müssen. Support erhältst du zwar aus der Community, du hast allerdings kein Recht darauf.
  • Gewährleistung: Ebenso wie auf eine Gewährleistung. Bevor ein kommerzieller Hersteller seine Geräte auf den Markt bringt, testet er diese auf Herz und Nieren. Bei Smart Home Systemen steht dabei die Stabilität und Funktionalität im Vordergrund. Diese Softwaretests verschlingen eine Menge Ressourcen und können von freien Entwicklern in dieser Tiefe erwartet werden.
  • Backups: Du solltest in einem Open Source System regelmäßige Backups durchführen, da durch die offene Architektur nicht nur deine persönlichen Einstellungen, sondern auch das System als solches durch Updates oder Erweiterungen beeinträchtigt werden könnte.

Die wichtigsten Anbieter im Überblick

Home Assistant

Der Home Assistant basiert auf der Programmiersprache Python. 

Die Privatsphäre und die lokale Nutzung ohne Cloud-Dienste liegen im Fokus der Entwickler. Die Entwickler-Community ist sehr groß und aktiv, was zu einer starken Verbreitung und fast  2000 Systemerweiterungen geführt hat.

Der Home Assistant bietet eine fertige, übersichtliche Oberfläche zur Steuerung von Licht, Schaltern, Szenen und Sensoren. Durch das integrierte Auto-Discovery werden verbundene Systeme schnell gefunden und automatisch eingebunden. Darüber hinaus bietet Home Assistant eine fertige App zur Steuerung der eingebundenen Geräte.

Die Webpräsenz von Home Assistent findest du unter https://www.home-assistant.io/

ioBroker

ioBroker ist ein zentraler Server für Smart-Homes und dank der zahlreichen (über 400), sogenannten Adapter, sehr modular aufgebaut. Diese Adapter können Treiber für Smart Home Geräte, ein Service oder Dienste für die Bereitstellung von Daten sein. Der ioBroker kann beispielsweise mit einem ZigBee-Schalter ein WLAN-Gerät steuern. Die Bereitstellung einheitlicher Daten für andere Programme geht sogar so weit, dass an ioBroker das HABpanel-Dashboard von openHAB und die Lovelace-UI-Visualisierung von Home-Assistant angebunden werden können. Der ioBroker kann somit alle OSS-Welten vereinen. Die Adapter-Instanzen laufen in eigenen Prozessen, wodurch einzelne Programmfehler nicht gleich das ganze System gefährden. Darüber hinaus bietet ioBroker ein sehr gutes User Interface zur Realisierung von individuellen Visualisierungen. Diese sind jedoch noch nicht fertig, sondern müssen mit vorhandenen Adaptern zusammengestellt oder selbst programmiert werden.

Die Webpräsenz von Home Assistent findest du unter  https://www.iobroker.net/

openHAB

openHAB arbeitet mit der Programmiersprache Java, womit das User Interface mit Webbrowsern, Android oder iOS dargestellt werden kann. OpenHAB wird durch Plugins zum Leben erweckt, die einerseits von der Entwickler Community und andererseits von Geräteherstellern zur Verfügung gestellt werden, um ihre Geräte smart zu machen. 

Mit kleinen Scripten können die Eigenschaften von Geräten ausgelesen und verändert werden, z. B. die Eigenschaft 100 %-Helligkeit einer smarten Glühbirne, wird auf 50 %-Helligkeit verändert. Dabei spielt es keine Rolle, von welchem Hersteller das Leuchtmittel ist oder welchen Smart Home Standard es unterstützt.

Die Community und damit auch die entsprechenden Foren, um Support zu erhalten, sind größtenteils englischsprachig. Ansonsten bringt aber openHAB nicht weniger mit, als die beiden vorgenannten Systeme.

Die Webpräsenz von Home Assistent findest du unter https://www.openhab.org

Was benötige ich, um zu starten? 

  • Eine Open Source Software wie die drei bereits beschriebenen OSS.
  • Du benötigst einen eigenen Server. Das muss für den Anfang nichts Leistungsstarkes sein. Ein Raspberry Pi mit SSD reicht erst einmal vollkommen aus. Von der Verwendung einer SD-Karte würden wir aufgrund der begrenzten Schreibzyklen eher abraten.
    Alternativen sind der ODROID C4 oder das ASUS Tinker Board. Wenn du allerdings SQL-Datenbanken oder Anwendungen die eine hohe Rechenleistung erfordern, wie das schnelle Entgegennehmen und Weiterleiten von Bildern einer Überwachungskamera, wirst du um einen vollwertigen PC nicht drum herum kommen. 
  • Ein Betriebssystem, passend für den Server und für die OSS z. B. den Raspberry Pi Imager oder die Docker-Engine für Linux.
  • Ein Netzteil oder ein LAN-Kabel zum Anschluss des Servers.
  • Geräte für dein Smart Home  

Wie kann ich ein Open Source Smart Home einrichten? 

Die grundlegende Installation ist bei allen drei System sehr ähnlich und verläuft nach dem folgenden Muster: 

  • Hardware anschließen.
  • Betriebssystem installieren
  • openHab, ioBroker oder Home Assistant auf Raspberry Pi installieren.
  • Anwendungen für das jeweilige Smart Home Gerät finden und auf den Server spielen.
  • Smart Home Gerät anschließen
  • Gerät mit dem Smart Home Server koppeln.

Hier findest zu den einzelnen OSS Anleitungsvideos zur Installation: