Vor wenigen Tagen wurden die Version 3 der beliebten und freien Hausautomatisierungslösung veröffentlicht. Ich habe diese schon seit dem Release Candidate 1 im Einsatz und viele Eindrücke gesammelt.

Der Systemstart

Der Systemstart verläuft deutlich schlanker und schneller als ich dies von OH2 gewohnt bin. Nach nur wenigen Sekunde stand das System und die neue Oberfläche zur Verfügung. Besonders gefällt mir daran, dass die Verbindung zur Datenbank vor dem Laden der Rules und Skripte durchgeführt wird.

Aktuell habe ich etwa 20% meiner Umfänge in OH3 abgebildet. Der Systemstart dauert ca. 10 Sekunden.

[INFO ] [.core.internal.i18n.I18nProviderImpl] - Time zone set to 'Europe/Berlin'.
[INFO ] [.core.internal.i18n.I18nProviderImpl] - Location set to '49.xxx,8.xxx'.
[INFO ] [.core.internal.i18n.I18nProviderImpl] - Locale set to 'de_DE'.
[INFO ] [.core.model.lsp.internal.ModelServer] - Started Language Server Protocol (LSP) service on port 5007
[INFO ] [org.openhab.ui.internal.UIService   ] - Started UI on port 8080
[INFO ] [nding.http.internal.HttpThingHandler] - Using the secure client for thing 'http:url:4XXXXX07df'.
[INFO ] [ternal.dhcp.DHCPPacketListenerServer] - DHCP request packet listener online
[INFO ] [o.internal.handler.AstroThingHandler] - Scheduled Positional job astro:sun:local every 300 seconds
[INFO ] [.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection to 'mqttserver' with clientid XXX
[INFO ] [persistence.jdbc.internal.JdbcMapper] - JDBC::openConnection: Driver is available::Yank setupDataSource
[INFO ] [e.automation.internal.RuleEngineImpl] - Rule engine started.
[INFO ] [ab.ui.habpanel.internal.HABPanelTile] - Started HABPanel at /habpanel

Die neue Oberfläche

Die neue Oberfläche, links die Navigation, rechts weitere Oberflächen

Die gefühlt größte Neuerung ist zweifelsohne die Oberfläche Main-UI. Dabei handelt es sich tatsächlich um eine komplette und reife Neuimplementierung. Auf mich wirkt diese nach kurzer Einarbeitungszeit durchdacht, intuitive und was ich sehr begrüße: vollständig!

Einstellungen

Alle Einstellungen auf einen Blick

Alle Einstellung auf einer Seite. Neu hinzugekommen sind:

Model

Modellierung / Strukturierung des zu automatisierenden Objekts. Ebenen, Räume, Bereiche, Equipment, Points … hier hat sich richtig viel getant

Pages

Erstellung von verschiedenen Seiten welche innerhalb der neuen UI verwendet werden können.
Mit dieser Funktion habe ich mich noch nicht intensiv auseinandergesetzt.

Scripts & Rules

Dies war optional bei OH 2.5 schon möglich. Hier gibt es ebenfalls enorme Fortschritte und – da bin ich ganz sicher – wird sich im Laufe des Jahres 2021 noch einiges tun.

Schedules

Erstellung von Zeitplänen zur zeitgesteuerten Automatisierung. So ganz sicher bin ich noch nicht, wie ich diese Funktionen werde anwenden können. Mal sehen 🙂

Die Architektur wurde extrem verschlankt

OpenHAB 2 unterstützt Bindings der Version 1 und 2, benötigt dafür aber einen komplexen und umfangreichen Kompatibilitätslayers. Zudem gibt es viele Oberflächen, die sich funktional überschnitten, zB. Paper-UI und HABmin, aber auch Classic-UI und Basic-UI. Der Core basiert auf “Eclipse SmartHome”, eine Weiterentwicklung und Veröffentlichung mit dem Ziel den Core für andere Projekte nutzbar zu machen.

Ein Ziel der dritten Version war es, die Dinge zu vereinfachen

  • Unterstützung für Version 1 Bindings wurde entfernt. Damit entfallen ist natürlich auch der Kompatibilitätslayer
  • Die Main-UI ersetzt Paper-UI und HABmin
  • Classic-UI und Home Builder entfallen
  • JSR223 wird die neue Standard-Rule-Engine, DSL wird weiter vollständig unterstützt
  • Der Core wird wieder zurückgebaut, zu einem eigenständigen und speziell für OpenHAB einsetzbaren Core. Dies wurde nach meinem Verständnis durchgeführt, da die Mehrwerte eines universellen Cores die höhere Komplexität (vor allem bei der Entwicklung neuer Bindings) nicht rechtfertigen

Schaut euch die neue Architektur an. Wirkt auf mich sauber und schlank, was sich mit meinen ersten Erfahrungen deckt.

Scriptdesign mit Blockly

Beim erstellen neuer Scripte kann man zwischen DSL (bisheriger Standard), ECMAScript (neuer Standard) und Blockly wählen.
Blockly ist ein Framework von google (https://developers.google.com/blockly/) welches es ermöglicht, grafisch zu programmieren.

Ich habe das mal ausprobiert. Die folgende Funktion errechnet den Gesamtstromverbrauch meines Hauses, je nach Verbrauchsituation.

Für Einsteiger sicher gut geeignet. Für Leute mit Erfahrung im Programmieren ist dies vermutlich zu viel Aufwand, da sich Code immer noch schneller schreiben als klicken lässt. Ein ganz klarer Vorteil ist jedoch die Unabhängigkeit der Script-Engine. Mit dieser Methode geschrieben Scripte sind universell, d.h. können in jede beliebige Sprache gewandelt werden. Und das ist der Punkt der mir daran wirklich gut gefällt. Deswegen werde ich mir dies noch genauer ansehen.

Fazit: Umsteigen! Jetzt!

Mein Fazit könnte besser nicht ausfallen. Ich bin total begeistert. Vielleicht stolpere ich noch über die ein oder andere Hürde, aber bis jetzt habe ich richtig Lust meine Automatisierung komplett neu aufzubauen und hierfür die neuen möglichen Strukturen und Möglichkeiten zu nutzen.
Der Wegfall der 1er Bindings trifft mich schmerzlich bei meiner Wärmepumpe … aber da fällt mir sicher noch etwas ein. Zur Not übe ich mich eben in der Binding-Programmierung!

Wie ist euer Eindruck? Schreibt in die Kommentare 🙂

Categories:

Tags:

Noch keine Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Kategorien
Produktplatzierungen

In diesem Beitrag befinden sich Produktplatzierungen. Dabei handelt es sich um Produkte, welche ich aus eigener Motivation heraus gekauft und selbstverständlich bezahlt habe. Für die Platzierung in meinen Beiträgen erhalte ich keinerlei Gegenleistung von Seiten des Herstellers.
Die verlinkten Produkte sind zum überwiegenden Teil provisioniert, d.h. ich erhalte beim Verkauf eine kleine Provision.