Zwischenstand der Dinge

Stand 07/2022

Hier möchte ich euch mein kleines Setup vorstellen, mit dem ich mir mein Leben etwas einfacher mache.

Geräte

  • 1x Fritzbox 6591
  • 1x Homebrew-NAS mit DebianOS
  • 1x Raspi 4 4GB
  • 1x ZigBee Antenne für den Raspi
  • 3x Comet DECT Thermostate
  • 5x SilverCrest Smart Plugs
  • 2x Amazon Firesticks (Stock OS)
  • 1x Samsung Galaxy Tab 4 (LineageOS)
  • 1x Samsung Galaxy Tab 3 (LineageOS)
  • 1x Sennheiser EPOS SP30 Konferenzlautsprecher

1x ioBroker 1x Sepia Framework

Zielsetzung

Ziel ist und war es mir mein Leben etwas smarter zu machen, aber ohne Datenkraken und ohne Alexa möglichst Open Source.

Start

Ich hatte zum Anfang kaum bis gar keine Kenntnisse in Debian / Raspian, war aber vom technischen Verständnis her schon auf einem fortgeschrittenen Level, so dass ich durchaus Dokumentationen lesen und verstehen konnte.

Erstmal auf meinem Windows-Laptop eine Debian-VM aufgesetzt und mir angeschaut wie man sich überhaupt auf Commandline-Ebene bewegt. Die Installationen von Sepia und ioBroker sind da dankbar, weil diese sehr gut dokumentiert sind. Der VM dann die WLan-Karte gegeben und mir im Browser weiter angeschaut wie beide sich verhalten und daran dann gelernt.

Der Raspberry kam später dazu, den wir hier zwar noch rumliegen hatten aber ursprünglich für ein anderes Projekt gedacht war. Doch nach weiteren Überlegungen und sehen dass uns ioBroker und Sepia nutzen werden wurde der Raspi dann doch dem SmartHome-Projekt betraut. So zog es dann darauf um.

Zeit auf dem Raspi

Nachdem das Raspbian installiert und für unser Netzwerk von meinem Mann passend eingerichtet worden ist haben wir Sepia und ioBroker darauf umgezogen, was vergleichsweise unproblematisch verlief. Bis zu diesem Zeitpunkt liefen beide noch nebeneinander. Ich bin dann erstmal hingegangen und hab mich dann intensiv mit ioBroker, den Modulen und VIS auseinander gesetzt, womit so etwa 3 Wochen vergangen waren. Schließlich wollten Ideen getestet und Layouts gestaltet werden. Das NAS sollte vom VIS aus geweckt werden via Wake-On-Lan. Ich hatte ein Hatsune Miku-Design gewählt, weil wir hier beide Fan von dem Vocaloid-Superstar sind.

Firesticks

Ich habe dann eine Fernbedienung für die FireSticks hinbekommen via ADB und FireStick-Adapter und kann damit auch Kodi steuern via Kodi-Adapter. (Danke Sigi aus dem ioBroker-Forum an der Stelle). Zunächst musste ich beim FireStick die Entwickleroptionen anmachen aber zum Glück nicht rooten. Danach hab ich im ADB-Adapter in ioBroker die Verbindung hergestellt. Danach hab ich dem FireStick-Adapter den ADB übergeben. Kodi ist davon losgelöst und braucht kein ADB, der nimmt Calls aus dem Netzwerk auch ohne an. Allerdings habe ich das bisher nur für den FireStick im Wohnzimmer gemacht weil ich bisher 1. nicht nochmal Instanzen aufmachen wollte und 2. ich den Sinn für das Schlafzimmer noch nicht sehe. Im Schlafzimmer startet der Firestick sobald der SmartPlug angeht. Weiterhin kann ich via ADP Calls auf dem Stick Apps direkt aufrufen (Twitch, YouTube, Kodi), egal wo ich auf dem Stick gerade bin. Allerdings verhält sich Kodi dann ein wenig eingeschnappt, wenn ich erst Twitch auf habe, dann Kodi starte, dann wieder in Twitch schalte und von da aus dann wieder in Kodi rein will. Findet Kodi gar nicht witzig.

Kodi

Kodi selbst nutze ich selber nur zum Musik hören, weil wir hier beide nicht wirklich so die Film-Begeisterten sind. Hier nochmal einen lieben Gruß an das ioBroker-Forum geschickt, weil die neben einen sehr gut fuktionierenden Adapter auch eine an Winamp angelehnte Visualisierung möglich gemacht haben. (s. Screenshot) Ich kann da auch die Titel, die ich da dann gerade geladen hab in der Playlist auswählen und spielen lassen! Voll gut!

vis firestick

Zigbee und das erste Blockly-Script

Als dann klar war, dass ich da definitiv noch weitermachen wollen würde, kam dann die Zigbee-Antenne und der erste SmartPlug ins Haus. Die Zigbee-Antenne meldete sich als serielles Gerät an welches ich dann in dem Zigbee-Adapter in ioBroker problemlos angeben konnte. Tat dann genau das was es sollte. Der Adapter war auch schnell angelernt und die Reichweite reichte von der Antenne bis ins Wohnzimmer.

Freudig fing ich in ioBroker an ein Blockly-Script zu … ja wie nennt man das überhaupt? Programmieren ist das ja nicht wirklich… zusammen zu stecken? Zusammen zu puzzeln? Ihr kriegt die Idee. Jedenfalls habe ich hier das erste Mal einen Loop gebaut: Ich habe geprüft, ob sich der Zustand des Steckers ändert, nicht aber den aktuellen Status. Was dazu führte, dass wenn ich jetzt von VIS aus den Schalter aktivierte dieser im Dauer-Loop sich an und aus schaltete. Das war dann mit einem Lachen meinerseits die erste Erfahrung mit Blocky. Schnell hatte ich aber raus wie man an das Puzzle rangehen muss. Schlussendlich hatte ich also nun einen SmartPlug der mir die Stehlampe aus und an machte auf dem Tablet. Nie wieder aufstehen! Es folgten dann noch 4 weitere SmartPlugs, die ich aktuell für den TV im Wohnzimmer, Stehlampe, Ventilator, Drucker und TV im Schlafzimmer nutze. Alles dann im VIS mit Buttons belegt und ich war da schon mal glücklich.

Die erste Automatisierung

Nun, jetzt wollte ich hingehen und meine erste Automatisierung starten. Ziel war es, dass ich nicht mehr alle Geräte hier im Wohnzimmer einzeln ausmachen muss und der Fernseher im Schlafzimmer mit Timer angeht. Eine Idee die ich irgendwo im ioBroker-Forum geklaut habe.

Grundgedanke: Ich drück in VIS auf einen Button -> 2 Timer gehen los: 1. schaltet in 10 Minuten das Wohnzimmer tot, der 2. Timer macht den TV im Schlafzimmer an und lässt ihn 4 Stunden laufen (Zeit aus persönlichen Gründen). ABER: Mein Mann wollte auch noch einen Timer, der den Fernseher für 2 Std anmacht. So, nun stand ich vor der Herausforderung: Ich musste erstmal schauen dass die Timer für Wohnzimmer und Schlafzimmer laufen und dann auch noch mit dem 2-Stunden-Timer von meinem Mann verknüpfen. Wie es heute aussieht sieht man auf dem Screenshot (Ist alles andere als performant oder hübsch oder sonst was… es tut.) (Sorry fürs Scrollen!)

Timer Blockly

ioBroker und Sepia

Nun, jetzt hat man schon mal eine Automatisierung die läuft. Sehr gut zufrieden hab ich dann mal geschaut, wie man nun Sepia mit ioBroker verheiraten kann. Da Sepia keinen eigenen Adapter hat muss das über MQTT passieren. Glücklicherweise hat der Entwickler von Sepia dieses sehr gut dokumentiert, so dass ich damit an sich recht gut zurecht kam. Relativ zügig konnte ich dann also nun bei Sepia eintippen “Ich bin müde” und Sepia führte das Script aus! Nice!

Problem wovor ich da aktuell stehe: Sepia hat ein self-signed-certificate für SSL bekommen bei der Installation für nginx (was mitgeliefert und eingerichtet wird beim installieren). Android bzw LineageOS findet das gar nicht witzig. Auch der Versuch das SSL cert einfach auf das Tablet zu packen brachte keine Verbesserung. Da muss ich wohl nochmal ran. Plan ist, dass ich auf dem Konferenzlautsprecher sage “Hey Sepia!” - kurz warten dass Sepia mich mitbekommt - “Ich bin müde” und Sepia macht den 4-Stunden-Timer an.

Sepia Chat Sepia Teach sepia MQTT Sepia anlernen

Zukünftige Ideen bzw Baustellen

Erstmal dass Android mit Sepia mag und dass die Kommunikation SSL-verschlüsselt läuft. Tablets werden dann hier im Wohnzimmer und im Schlafzimmer liegen.

Dann ist es so, dass die DECT Comet Thermostate noch nur von der FritzBox gesteuert werden (was schon ok ist). Ich muss noch den FritzBox-Adapter konfigurieren als dass ich das von ioBroker ebenfalls steuern kann. Es werden noch weitere Comet-Thermostate dazukommen. Ebenso möcht ich noch eine Anruferliste vom der FritzBox in meiner VIS haben.

Weiterhin zwei Kontaktsensoren für die Badezimmer-Tür und Dachfenster. Geplant ist sagen zu können “Hey Sepia” - “ich will duschen”. Dann geht die Überprüfung los “Sind beide Kontakte geschlossen, sprich sind Fenster und Tür zu?” und wenn das dann gegeben ist dem Thermostat zu sagen “Booste mal für 10 Minuten dass das Bad warm wird.”

Visualisierung weiter ausbauen. Man ist nie damit 100% zufrieden. Ist einfach so. ;)

Schlusswort

Kostentechnisch bin ich jetzt bei insgesamt etwa 500€ (Router nicht eingerechnet). Ich bastel da jetzt seit November glaube ich daran und habe in der Zeit sehr viel gelernt, sei es wie Adapter in ioBroker reagieren, was Datenpunkte sind, was MQTT macht und so weiter. Das ioBroker-Forum und die Dokumentation von Sepia haben mir sehr gut weitergeholfen. Ich habe mir alles in Eigenregie mit etwas Unterstützung von meinem Mann angeeignet. Resultat ist ein Open Source SmartHome mit einem Open Source selfhosted Sprachassistenten. Nix Cloud. Nix Datenkrake. Wenn wir irgendwann doch uns noch entschließen etwas mehr Geld noch in die Hand zu nehmen kommen automatische Rollos für die (Dach-)Fenster hier rein. Bisher habe ich nur das gemacht was man ohne die Wand aufzustemmen oder ohne an der hauseigenen Elektrik rangehen zu müssen machen kann.

vis main vis raspi vis wetter vis info vis tanken vis fritzcall (Eine Mobile-VIS fürs Handy experimentell) vis mobile

Ich hoffe ich konnte einen guten Einblick meiner Reise geben und denke, ich werde noch weitere Artikel veröffentlichen sobald ich größere Schritte getan habe.