Internet of Things + Smart Home = IoTsH

… oder „Yet another Smart-Home Project“ (YaSHP)

Smart-Home-Projekte gibt es ja nicht gerade wenig, wenn man Google bemüht. Nicht wenige davon sind durchaus brauchbar. Allen gemein ist aber aus meiner Sicht, dass es keine DAU-taugliche und für alle möglich denkbaren Anwendungsfälle Gesamtlösung gibt.

So völlig ohne Grundkonfiguration durch einen Anwender lässt sich soetwas auch nicht realisieren. Aber ich denke, dass sich ein sicheres, stabiles, zuverlässiges und in sich vollkommen kompatibles und erweiterbares System durchaus so verwirklichen lässt, dass es auch für weniger technisch versierte Endanwender verwendbar ist.

Kapitel 0: Motivation

Smart Home ist ein Bereich, der mich schon lange beschäftigt. Tatsächlich hat das „Smart“ noch keinen Einzug in unser „Home“ gefunden. Wir leben also in einem „Dumb-Home“, das hier und da mit „semismarten“ Erweiterungen ausgestattet ist. Diese Erweiterungen sind funkbasierte, herstellerabhängige Insellösungen ohne zentrale Steuerungen. Versuche, diese unter einen Hut zu bekommen scheiterten bisher an fehlenden, universellen Schnittstellen, unzuverlässigen (zu schwachen) Funk-Verbindungen und/oder fehlender Rückkanäle, die eine Status-Überwachung ermöglichen würden. Und ohne einen solchen Rückkanal ist auch keine sichere und somit smarte Steuerung von „irgendwas“ möglich.

Alexa als Motivator

Mit dem Einzug von Alexa in unser Wohnzimmer, wurde mein Interesse an Smart-Home-Lösungen erneut und gesteigert geweckt. Es gibt durchaus interessante, kommerzielle Lösungen, die sich quasi „out of the Box“ per Sprachbefehl über Alexa steuern lassen. Aber auch hier ist ohne größeren Aufwand keine wirklich smarte Umgebung zu schaffen, in denen die Geräte untereinander kommunizieren und Ereignisabhängig reagieren können. Abgesehen davon, dass solche „Nachrüst-Lösungen“ selten so zu integrieren sind, dass man sie nicht sieht. Und schließlich spielt der Preis solcher Lösungen auch eine Rolle.

An dieser Stelle sei angemerkt, dass es sehrwohl Möglichkeiten gibt, solche Geräte untereinander kommunizieren lassen zu können. Allerdings ist das Zauberwort meiner angestrebten Lösung „einfach“! Die durchaus zahlreichen und wahrscheinlich auch funktionierenden Lösungen sind i. d. R. nämlich nicht ohne größeren Aufwand zu realisieren, vor dem der Durchschnittsanwender bereits beim Lesen der Dokumentation ablässt.

Was brauchen wir also?

Ich suche also eine Lösung, die sich verstecken lässt, Auskunft über den eigenen Status gibt, erweiterbar ist, mit anderen Geräten bei Bedarf reden kann, überall und an allem was sich schalten, verwalten, überwachen und regeln lässt, mit wenig Aufwand nachrüsten lässt. Die Lösung soll natürlich sicher sein und autak, also ohne eine zwingende Anbindung an das Internet, funktionieren aber durchaus die Möglichkeit bieten, über das Internet steuerbar zu sein. Und schließlich soll so ein System von Anfang an, auch für den sog. DAU, einfach einzurichten sein.

All das lässt sich nur durch eine eigens dafür entwickelte Hardware und eine darauf abgestimmte Firmware realisieren. Dabei gibt es auch fertige Hardware-Module, die sich mit einer solchen Firmware „umprogrammieren“ lassen, doch darauf komme ich erst später.

Ein kleiner, günstiger Chip verspricht die Lösung

Eher zufällig bin ich dabei auf einen kleinen aber feinen, sehr günstigen WLAN-Chip gestoßen, der über einen eigenen Speicher und Prozessor verfügt und programmierbar ist. Es ist der ESP8266. Damit lassen sich all meine erdachten Anwendungsfälle genauso realisieren, wie ich es mir vorstelle. Dieser Chip wird die Basis der eigenen Hardware-Module.

Und, wie war das mit dem Aufwand?

Natürlich ist die Entwicklung eines solchen Systems nicht mal eben erledigt. Tatsächlich ist der Aufwand, an dessen Ende eben diese einfache Lösung steht, nicht unerheblich. Für mich als Programmierer ist der Weg das Ziel. Während der Entwicklung werden sich ganz sicher immer neue Herausforderungen stellen, die ich dann in eine für den Endanwender taugliche Funktion wandeln werde.

Das „fertige Produkt“ soll und wird im besten Falle für jeden einfach in Betrieb zu nehmen sein.

Was soll das kosten? Wird das ein kommerzielles Projekt?

Es wird genausoviel kosten, wie die Teile, die es benötigt in der Summe kosten. Dieses Projekt wird grundsätzlich nicht kommerziell.

Ich erfinde ja grundsätzlich nichts neues, sondern bringe verschiedene Lösungen schlicht unter einen Hut. Dazu bediene ich mich in der Open-Source-Welt und stelle meine Entwicklungen ebenfalls unter Open-Source. Die benötigte Hardware stelle ich als Bauplan mit Teile-Liste zur Verfügung. Aus Haftungsgründen werde ich fertige Aktoren nicht verkaufen. Einzig die von mir entworfenen Platinen werde ich vermutlich – bei entsprechender Nachfrage – fertigen lassen und ggf. mit allen Teilen als Bausatz verkaufen. Sollten dabei ein paar Euro abfallen, stecke ich sie in die Weiterentwicklung. 🙂

Kapitel 1: Finde einen Projektnamen

„Ding mit Licht“

Kapitel 2: Was soll das System können?

Kommunikation

Grundsätzlich sollen alle Sensoren und Aktoren untereinander kommunizieren können. Dazu werde ich vermutlich auf das MQTT-Protokoll setzen. Als Broker (die spätere Zentrale) wird vermutlich ein RPi zum Einsatz kommen, der überdies der Access-Point aller Smart-Devices sein wird. So kann die Kommunikatoin aller Geräte vom eigentlichen, hausinternen WLAN getrennt werden. Das erhöht zum einen die Sicherheit des Systems, da es auch beim physikalischen Zugriff auf das eigene Netzwerk nicht abgehört werden kann und garantiert so auch, dass die Kommunikatoin im Smart-Home-Netz nicht durch ein (temporär) überlastetes Heimnetz verzögert oder gestört wird.

Funktionen

Grundsätzliches

  • Einfaches Schalten von Verbrauchern
    • via App
    • via klassichem Lichtschalter
    • Zeitabhängig (via Timer)
    • Schaltabhängig (von anderen Schaltzuständen abhängig)
    • Sensorabhängig (Temperatur, Bewegung, Helligkeit, Türklingel, Feueralarm, Telefonanruf…)
  • Dimmen von Licht
    • via App
    • via Tast-Dimmer
    • ansonsten wie oben

Erweitert

  • Steuerung von RGB(W(W))-LED-Stripes oder Bulbs
    • via APP
    • via Touch-LCD
  • Steuerung von Heizungs-Thermostaten, Klimaanlagen und schlichten Ventilatoren

Extrem erweitert

  • Automatisierung der Kaffeemaschine 😉

Mechanisch

  • Garagentor-, Jalousien- und Rolladenantriebe
  • Türöffner und Schlösser

Kommunikativ

  • Schalten über Amazon Echo
  • Versand von definierten Meldungen an
    • SMS
    • eMail
    • Messenger

Kapitel 3: Stand der Dinge, bisher.

Hardware Layout

Ich habe zwei Platinen entworfen, die als Schalter und Schalt-Sensoren arbeiten können. Eine kleine, runde Platine, die sich hinter vorhandenen Lichtschaltern installieren lässt und so den daran angeschlossenen Verbraucher oder andere Aktoren schalten kann. Die Platine erkennt den Schaltzustand des Lichtschalters und kann selbst auch über entfernte Schalter oder Apps geschaltet werden.

Die zweite Platine ist für die Zwischendecke oder als Multi-Steckdose gedacht. Sie kann bis zu fünf Verbraucher einzeln oder in Gruppe schalten. Auch hier ist der Anschluss eines Sensors möglich.

Test-Board

Für einen Funktionstest der Ansteuerung über MQTT habe ich eine kleine, quick & dirty Firmware geschrieben und auf meinem Bread-Board ausprobiert.

Funktionstest

Ohne Worte

Kapitel 4: Wie geht es weiter?

Zunächst muss ich mir noch überlegen, wie ich genau entwickeln werde. Dabei meine ich nicht, welche Programmier- bzw Skriptsprache ich verwende. Ich habe mich hier bereits für Lua-Programmierung unter NodeMCU entschieden. Vielmehr geht es darum, ob ich zunächst nur lokal entwickle, oder ob ich direkt öffentlich – z. B. über GitHub – arbeite. Da es nicht drängt, kann ich mir das noch überlegen.

Dann muss ich mir noch ein Konzept überlegen, wie die Geräte letztendlich programmiert werden. Was ist die gemeinsame Basis, was wird individuell für den jeweils gedachten Anwendungsfall nötig? Wie realisiere ich die Update/Upgrade-Funktion für die Firmware? Gerade letzteres ist unheimlich wichtig, wenn es – einmal in Betrieb – anwenderfreundlich bleiben soll.

Und nicht zuletzt warte ich gespannt auf die Elektronik, um meine ersten Geräte fertig stellen zu können.

Wie auch immer es weitergehen wird, ich werde hier berichten.

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.