Migration zu Openhab 2.x
Nach ersten Versuchen vor knapp einem Jahr habe ich in meinem letztem Urlaub meine komplette OpenHab 1.x Installation auf OpenHab 2.x migriert. Openhab 2 bietet insgesamt einige sehr interessante neue Dinge an. z.B. eine komplett überarbeitete Oberflächen, Device Discovery, Performance Improvements (z.b. in Verbindung mit Seriellen Schnittstellen), mehr Bindings und der Einführung von “Things” als eine weitere Abstraktion.
Ein guter Einstieg ist schonmal die Seite Migration from openHAB 1.x to openHAB 2
Zusätzlich bin ich auf einige Stolpersteine gestoßen welche ich im nachfolgenden Auflisten möchte um anderen eventuell die Migration bzw. Fehlersuche zu erleichtern.
- In den Rules “Uninitialized” zu NULL geändert
- Mein Iconset komplett auf lowercase umgestellt
- Die Verwendung einer map translation in Verbindung mit %d wird nicht mehr unterstützt. Eine Änderung zu %s löst das Problem. Die Schwierigkeit war das man nahezu keinerlei Fehlermeldung erhalten hat. Im Anschluss müssen aber noch die map files geändert werden.
- Openhab2 ist wesentlich striker was das rule parsing angeht. Dadurch sind viele kleinere Syntaxfehler aufgefallen die vorher einfach übergangen wurden
- Primitive types werden in Rule-Functionsparametern nicht mehr unterstützt
- Entfernen von wildcard imports in den Rules. In allen Fällen hat das einfache löschen der Zeile geholfen da die Rules inzwischen vieles automatisch importieren
- Migration des s300th Bindings. Ich konnte es einfach vom OpenHab 1.x addons Ordner rüber kopieren
- Der Trigger “received command” verhält sich jetzt anders. Er wird getriggert wenn das Item ein Command empfängt aber noch bevor der State des Items geändert wird. Braucht man diesen State sollte man die Variable “receivedCommand” benutzen