Regeln in openHAB manuell ausführen

Trotz aller Automatismen und Regeln gibt es im SmartHome immer mal die Notwendigkeit eines manuellen Eingriffs in die Automatik. Wir hatten den Fall bei uns mit der automatischen Schaltung der Weihnachtsbeleuchtung. Hier ist aktuell eine feste Zeitregel hinterlegt (und keine Schaltung anhand von Astro-Daten). In manchen Fällen soll dann die Beleuchtung bereits etwas früher geschalten werden oder nicht an den genau hinterlegten Zeiten aktiviert werden.

In diesem Beitrag habe ich den Ansatz für eine Lösung gefunden – LINK. Auch wenn ich es nicht als schöne Lösung, sondern eher als Workaround sehe.

Items in openHAB

Im ersten Schritt wird ein virtuelles Item für das Schalten der Lichter in der Item-Datei erstellt.

Switch      Weihnachtsbeleuchtung_Manuell          "Lichter manuell schalten"

Rules in openHAB

Dieses virtuelle Item muss in alle notwendigen Regeln entsprechend eingebaut werden (hier ein Beispiel aus einer Regeldatei).

rule "Weihnachtsbeleuchtung Morgen Ein"
    when
        Time cron "0 30 5 * * ?" or
        Item Weihnachtsbeleuchtung_Manuell changed from OFF to ON or
        Item Weihnachtsbeleuchtung_Manuell received command ON
    then
        // Weihnachtsbeleuchtung Aktionen ausführen ...
end

Sitemap in openHAB

Im letzten Schritt muss das manuelle Schalten noch in die eigene Sitemap integriert werden.

        Text label="Weihnachtsbeleuchtung" icon="garden" {
            Frame {
                Switch item=Weihnachtsbeleuchtung_Manuell mappings=[ON="Ein"]
                Switch item=Weihnachtsbeleuchtung_Manuell mappings=[OFF="Aus"]
            }
        }

Fazit

Nun kann ich über die openHAB-App bzw. über die Weboberfläche beliebig die hier hinterlegten Regeln manuell aktivieren. Habt Ihr eine bessere Idee, um Regeln in openHAB manuell zu starten?

Für 2022 werde ich über den Sonnenaufgang und den Sonnenuntergang im Astro-Binding die Zeiten noch etwas optimieren. Die Vorbereitungen sind schon getroffen. 🙂

Update auf openHAB 3.2

Ende Dezember 2021 habe ich von openHAB 3.1.0 auf 3.2.0 aktualisiert. Damit wäre die Log4j-Sicherheitslücke auch in unserem SmartHome geschlossen (obwohl das System nicht von Extern erreichbar ist). Im letzten Beitrag hatte ich schon die Neuerungen von openHAB 3.2.0 dargestellt.

Update 3.1.0 auf 3.2.0

Ich habe mein System von 3.1.0 auf 3.2.0 ohne größere Probleme wie folgt umstellen können. Im ersten Schritt habe ich mit der integrierten Backup-Funktion eine Sicherung erstellt:

sudo $OPENHAB_RUNTIME/bin/backup
/var/lib/openhab/backups/

Danach habe ich noch die Dateien manuell gesichert und eine Komplettsicherung als Image erstellt.

Danach dann das eigentliche Update durchführen (vor dem Update musste ich noch das aktuelle Repository einfügen – dies wird hier beschrieben):

sudo systemctl stop openhab.service
sudo apt-get update
sudo apt-get upgrade

Und im Nachgang wurde dann noch der Cache geleert und das System neu gestartet:

sudo systemctl stop openhab.service
sudo openhab-cli clean-cache
sudo shutdown -r now

Breaking Changes kontrollieren

Während des Setups werden die “Breaking Changes” des Updates visuell dargestellt. In meinem Fall musste ich nur das Homematic-Binding kontrollieren, aber die geänderte Funktion wird in unserem System nicht benutzt.

Testen, Testen, Testen!

Nach jedem openHAB-Update führe ich umfangreiche manuelle Tests in unserem SmartHome durch. Erst einmal kontrolliere ich das Log auf ERROR- und WARN-Meldungen. Danach werden alle Anwendungsfälle des Systems manuell getestet und ggf. Anpassungen vorgenommen.

Anpassungen nach dem Update

Nachdem das Gesamtsystem wieder vollumfänglich gelaufen ist, habe ich mit den ersten Anpassungen begonnen.

Da im Log seit dem openHAB 3.1.0 Update immer wieder WebSocket-Fehler durch das AmazonEchoControl-Binding vorhanden waren, musste das Binding aktualisiert werden. Dafür habe ich den neuen 3rd-Party-Marketplace von SmartHome/J wie folgt eingebunden und das Binding aktualisiert:

  • URL in den Einstellungen des “JSON Drittanbieter Add-Ons” wie folgt erweitert: https://download.smarthomej.org/addons.json
  • Deinstallation AmazonEchoControl-Binding Version 3.2.0
  • Installation AmazonEchoControl-Binding Version 3.2.8 aus dem 3rd-Party-Marketplace

Ein paar Kleinigkeiten wurden noch wegen neuen Endgeräten und der An- und Abwesenheitssimulation angepasst. Außerdem konnte in der HueEmulation durch das Binden an die IPv4 auch ein Fehler im Log eliminiert werden. 

Fazit

Die Updates werden aus meiner Sicht immer einfacher und stabiler (wenn man aus dem 3er-Releasezweig kommt). Hier sieht man zu den älteren Versionen deutliche Verbesserungen. 

Ich bin gespannt wie sich der Marketplace im openHAB-Ökosystem integriert und welche neuen Vorlagen dort in Zukunft zu finden sind. Viele der Neuerungen sind hauptsächlich für neue Nutzer interessant, die hauptsächlich in der GUI konfigurieren möchten (ich bewege mich hauptsächlich in der textuellen Konfiguration). 

Wie liefen eure Updates auf openHAB 3.2.0? Gibt es Anpassungen auf die Ihr gewartet habt?  

Neuerungen openHAB 3.2

Ende 2021 habe ich schon über die Beta-Versionen und Milestone-Releases von openHAB 3.2.0 geschrieben. Am 20.12.2021 wurde dann die neue Version 3.2 von openHAB als “Weihnachtsgeschenk” an die Öffentlichkeit übergeben. Mit openHAB 3.0.4 und 3.1.1 wurde auch die Log4j-Sicherheitslücke behoben – dieses Änderungen sind in 3.2 natürlich auch enthalten.

Die Ankündigung im Blog zur neuen Version findet Ihr hier. Hier könnt Ihr die aktuelle Version beziehen. Die Release Notes mit allen Details findet man im GitHub. Bitte beachtet vor allem die Breaking Changes in der Dokumentation.

Folgende Funktionen wurden in der Ankündigung benannt:

  • Log4j-Sicherheitslücke
  • 18 neue Add-Ons
  • Rule Engine Erweiterungen (Verwendung von mehreren Engines z.B. JRuby, Jython, Groovy und ECMAScript 2021 und JS Script)
  • Javascript Script Engine (Implementiert als neues openhab-js-Addon)
  • Offener Marktplatz (für Trusted Add-ons und 3rd-Party-Add-ons)
  • Rule Templates (Vorlagen wurden zu openHAB 2 ausgebaut)
  • Blocky-Integration und Block Libraries wurden erweitert
  • Direkte Integration eines openHAB Skill für Amazon Alexa
  • Internationalisierung wurde voran getrieben

Es gab natürlich auch noch viele Detailverbesserungen und Änderungen in allen Bereichen des gesamten Systems. Es gab Anpassungen und Fixes in der Runtime, den User Interfaces und den besehenden Add-ons. Also einfach einen Blick auf die Release Notes werfen. 🙂

Was sind für euch die relevanten Änderungen in openHAB 3.2? Konntet Ihr eure Systeme bereits auf die neue Software-Version umstellen?

 

Was gibt es neues im openHAB-Universum?

Anfang Dezember habe ich unser openHAB-System von 3.0.2 auf 3.1.0 aktualisiert. Die Neuerungen von openHAB 3.1 könnt ihr hier sehen. Das Update lief soweit recht gut durch und es konnten wieder einige Fehler und Snapshot-Bindings entfernt werden. 

Leider hat sich aber auch ein Fehler mit dem AmazonEchoControl-Binding eingeschlichen. Die Thematik mit dem “Web-Socket-Error” könnt ihr hier lesen.

Außerdem gab es viele neue Videos rund um openHAB auf dem zugehörigen YouTube-KanalBangerTech bringt auch gute neue Videos auf den Markt. 

Am 11.12.2021 wurden openHAB 3.0.4 und 3.1.1 wegen den log4j-Sicherheitslücken veröffentlicht. Details dazu könnt ihr hier lesen.

Aber natürlich ist Mitte Dezember dann openHAB 3.2 auf dem Weg.

Am 28.11.2021 wurde dann der openHAB 3.2 Milestone 4 veröffentlicht. Den letzten openHAB 3.2 Milestone 5 gab es dann am 05.12.2021. Wenn alles gut läuft, wird am 13.12.2021 die Codebasis eingefroren, am 17.12.2021 der RC1 erstellt und am 20.12.2021 die finale Version veröffentlicht. Und so war es dann auch: Am 20.12.2021 wurde der Blogeintrag zu openHAB 3.2 publiziert.

Welche Neuerungen sind für euch in openHAB 3.2 wichtig? Was tut sich sonst noch im openHAB-Universum?

“Smarte” Stellantriebe für die Fußbodenheizung?

Einer unserer Stellantriebe für die Fußbodenheizung hat aktuell nicht mehr funktioniert d.h. nicht mehr geschalten. Der Defekt war schnell zu identifizieren und der Stellantrieb war defekt. Es musste also ein neuer Stellantrieb für die Heizung im Bad her. Der gleiche Ersatz war schnell zu finden.

Ich habe mich dann noch einmal mit der Integration der Heizung in unser SmartHome befasst. Beim Hausbau habe ich mich bewusst gegen eine EIB / KNX Integration entschieden, da ich keinen Mehrwert erkennen konnte.

Ich würde aber immer noch gerne alle analogen Thermostate in den Räumen gegen digitale Thermostate mit Display austauschen. Dann könnte ich auch noch ein paar Regeln erstellen (diese ergeben bei uns und wegen der Trägheit der Fußbodenheizung aber häufig wenig Sinn / Mehrwert).

Aktuell würde ich auf ein HomeMatic-System wechseln. Mit folgenden Komponenten könnte ich eine komplette Integration in unser Smart Home und openHAB vornehmen:

Habt Ihr eure Fußbodenheizung im SmartHome integriert? Falls ja, welche Szenarien und Regeln nutzt Ihr dafür?

Was ist euch im Smart Home wichtig?

Ein Smart Home dient als Oberbegriff für technische Verfahren und Systeme um in Wohnräumen die Wohn- und Lebensqualität, die Sicherheit und eine effizientere Energienutzung zu sorgen.

Was ist nun in einem Smart Home enthalten:

  1. Verschiedene Produkte die untereinander kommunizieren
  2. Steuerung der oben genannten Produkte
  3. Automation von Geräten

Eine Softwarelösung zur Gebäudeautomatisierung ist openHAB. Diese Applikation verwende ich, um Geräte- und Standardübergreifend verschiedene Funktionen in unserem Haus zu steuern.

In unserem Zuhause versuche ich alle neuen Geräte direkt in openHAB einzubinden und von dort zu verwalten. Jede Hardwarelösung wird mit Regeln (soweit möglich und sinnvoll) automatisiert.

Welche Funktionen sind euch im Smart Home wichtig? Auf was legt Ihr bei der Automatisierung wert und was möchtet Ihr nicht mehr vermissen?

 

 

openHAB 3.2.0 ist auf dem Weg …

Aktuell bin ich noch in bei uns zu Hause auf openHAB 3.0. Die Version 3.1 konnte ich noch nicht testen und implementieren.

Parallel sind die openHAB-Verantwortlichen aber fleißig und erstellen die Version 3.2.0:

Zum 10.10.2021 war der Milestone 3 veröffentlicht. Ich denke eine Release-Version ist von den Entwickler wieder grob Ende 2021 geplant.

Es gibt natürlich wieder viele Neuerungen, Bugfixes und neue Add-Ons. Ich denke der Community Marketplace als Add-on Service ist die größte Neuerung des Systems.

Welche Neuerungen sind für euch in openHAB 3.2.0 wichtig? Auf welche Anpassungen freut Ihr euch schon?

Smart Meter in openHAB integrieren

Im Januar 2021 haben wir eine Moderne Messeinrichtung von bayernwerk, also einen intelligenten Zähler bekommen. Das Thema hatte ich hier kurz dargestellt: „Intelligenter Zähler“ jetzt auch bei uns 🙂

Es handelt sich hier um den Smart Meter Gateway (SMGW) von Itron / PPC. In den letzten Monaten habe ich versucht den SMGW in unser Smart Home einzubinden. 

Mit den Stichworten “TRuDI” und “HAN” kommt man im openHAB-Universum leider nicht weit. Im openHAB-Forum habe ich dann diesen Hinweis bekommen – LINK. Hier wird als Smart Home Integration ein Beispiel für openHAB verwendet. Leider ist für mich nicht ersichtlich welche Bindings dort verwendet wurden. Eine Integration in openHAB ist somit aktuell noch etwas weit weg.

Ich habe aktuell auch noch Probleme in der Verwendung mit dem bayernwerk-Portal. Ein Excel-Export der zurückgemeldeten Daten funktioniert aber schon. Im nächsten Schritt werden ich versuchen durch Rückfragen bei bayernwerk das System auch Extern ansprechen zu können. Dann kann ich mir weitere Gedanken über die openHAB-Integration machen.

Habt Ihr euren Smart Meter schon in openHAB integriert? Gibt es dazu Praxisbeispiele und Informationen?

openHAB 3.1 – Was ist neu?

Beim openHAB 3.0 Release-Blog wurde die Version 3.1 für den Sommer 2021 angekündigt.

Am 28.06.2021 wurde dann die finale Version veröffentlicht. Die Version ist komplett kompatibel zum 3.0 Release.

Anfang Juni 2021 wurde auch bereits der openHAB 3.1.0 Milestone 5 veröffentlicht. Der 3.1 GA Release ist für den Ende Juni 2021 geplant. 

Im Juni waren noch wenige Neuerungen bekannt, außer man ließt alle Milestone-Changes durch:

Hier gibt es im Forum über die Milestones ein paar weiterführende Diskussionen: LINK.

Wie ich gesehen habe, gibt es viele neue Addons: Ich habe ca. 50 Stück in den Milestone-Builds grob gesehen. Bei den Add-ons gab es hauptsächlich Erweiterungen und Fehlerbehebungen (hier habe ich am meisten Änderungen gesehen, das muss man sich für seine eigene Umgebung ansehen). In der Runtime gab es auch diverse Erweiterungen und Fehlerbehebungen. Auch das User Interfaces wurde erweitert und entsprechend gefixt. 

Außerdem gab es 3 Breaking Changes in bestimmten Add-ons d.h. das bitte genau anschauen. 

Aus meiner Sicht sind sehr viele und gute Detailverbesserungen vorhanden. 

Welche Verbesserungen in openHAB 3.1 sind für eure Umgebung interessant? Auf was wartet ihr ganz gespannt?

 

 

Routinen mit openHAB und Amazon Alexa

Per Zufall bin ich in der Amazon Alexa App auf die Funktionalität der Routinen gestoßen. Eigentlich bilde ich die gesamte Logik unseres SmartHome in openHAB ab, aber wegen der vereinfachten Befehlskette wollte ich es auch einmal direkt per Alexa testen.

Zum St. Patricks Day gab es ein paar “Dekorationsanforderungen” bei uns im Haus, die eine manuelle Aktivierung notwendig gemacht haben.

Items

Im ersten Schritt werden “virtuelle Items” in openHAB konfiguriert, damit diese auch in der Alexa App verwendet werden können. Die Konfiguration führe ich (wie immer) in der textuellen Konfiguration durch.

// St. Patricks Beleuchtung per Alexa Routine, 07.03.2021
Switch Koboldbeleuchtung_Ein "Ich bin ein Kobold" [ "Lighting" ]
Switch Koboldbeleuchtung_Aus "Ich bin kein Kobold" [ "Lighting" ]

Rules

Die Aktivierung und die Deaktivierung möchte ich dann über eine Regel in openHAB steuern und die notwendigen Geräte aktivieren / deaktivieren.

rule "Kobold Routine Ein"
    when
        Item Koboldbeleuchtung_Ein received command
    then
        if (receivedCommand == ON) {
            // Gewünschte Aktionen durchführen
            logInfo("INFO","Koboldroutine eingeschalten")
        }   
end

rule "Kobold Routine Aus"
    when
        Item Koboldbeleuchtung_Aus received command
    then
        if (receivedCommand == ON) {
            // Gewünschte Aktionen durchführen
            logInfo("INFO","Koboldroutine ausgeschalten")
        }
end

Amazon Alexa App

Im letzten Schritt wird dann die Alexa-Konfiguration in der App wie folgt vorgenommen:

  • Alexa App – Mehr – Routinen – Routine erstellen
  • Wenn (der Satz gesprochen wird): Alexa, Ich bin ein Kobold
  • Aktion ausführen: Smart Home – Alle Geräte – “Virtuelles Item”: Ich bin ein Kobold – AN schalten

Das sieht graphisch wie folgt aus:

Zusammenfassung

Die Alexa Routinen sind sehr schnell und einfach eingerichtet. Ob sich der Aufwand lohnt, um nur das “schalte” Aktivierungswort zu umgehen, muss jeder selbst entscheiden.

Es gibt aber interessante Routinen-Vorschläge, die man sich einmal ansehen kann.

Da ich meine Logiken alle eher zentral in openHAB, anstatt verteilt auf diverse Systeme abbilden möchte, ist es eher nicht für meinen Anwendungsfall geeignet. Aber ein netter Versuch war es auf alle Fälle. 🙂