Um hier noch etwas Licht ins Dunkel zu bringen:
Die Idee von Things ist, die Hardware-Ebene noch weiter zu abstrahieren. Das Things-Modell erlaubt es, Geräte automatisch zu entdecken und zu konfigurieren.
MQTT2 ist brandneu, das Binding ist erst vor wenigen Monaten überhaupt in die Nightly Snapshots gehoben worden, es gibt also naturgemäß noch ein paar Dinge, die optimiert werden müssen.
Homie-Geräte verwenden wohl mqtt zur Kommunikation und nutzen eine bestimmte Form. Diese ist im openHAB MQTT2 Binding integriert, so dass es für homie Geräte Autodiscovery bieten kann. Mangels Hardware habe ich keine Ahnung, wie gut das funktioniert
Was die verschiedenen Bestandteile der Definition betrifft:
Code: Alles auswählen
Bridge mqtt:broker:MosquittoMqttBroker "Mosquitto MQTT Broker" @ "MQTT"
^ ^ ^ ^ ^ Zeige diese Bridge auf der Unterseite "MQTT" in Paper UI Control
^ ^ ^ ^ Label der Bridge
^ ^ ^ Name der Bridge
^ ^ Art der Bridge
^ Binding
Danach folgt in eckigen Klammern die Konfiguration für diese Bridge, danach in geschweiften Klammern alles, was zu dieser Bridge gehört.
Die Zuordnung einer Bridge zu einer Unterseite auf Paper UI contorl ist meist sinnlos, weil die Bridge ohnehin nicht angezeigt wird. Da man aber nicht weiß, was die Entwickler so in Zukunft tun werden, ist es auch kein Fehler, diese Option zu nutzen
Die gleiche Zuordnung erfolgt nun auf Thing-Ebene. Sobald man einen Channel mit einem Item verlinkt, wird das Thing (mit allen verlinkten Channels) auf der Control-Unterseite auftauchen, beim Thing ist das @ "MQTT" also höchst sinnvoll, wenn man Paper UI control verwenden möchte.
Ich habe mich noch nicht eingehend mit dem mqtt2 Binding auseinandergesetzt, dazu muss ich erstmal etwas Zeit haben
aber der Weg ist ja von netZr0t schon ganz gut skizziert worden.
Die OH2-Bindings verlagern den hardware-abhängigen Konfigurationsteil in die Things-Dateien, dort kommt also rein, was unter OH1 in der openhab.cfg oder mit OH1-Bindings unter OH2 in einzelnen <binding>.cfg stand, zum anderen der Teil der Items-Definition, der die Anbindung an die Hardware darstellt.
Vorteil gegenüber der alten Form ist vor allem, dass dieser Teil der Konfiguration nun komplett über Browser erledigt werden kann - Links zwischen Channel und Item lassen sich ebenfalls komplett über Paper UI vornehmen, auch wenn nach wie vor bestimmte Eigenschaften nur über *.items Dateien voll konfiguriert werden können, aber die Entwicklung geht ja weiter.
Trotzdem hat man die Möglichkeit, die Things komplett manuell mittels *.things Dateien anzulegen, was insbesondere bei der Migration zwischen verschiedenen Systemen vorteilhaft sein kann.