Seite 1 von 2
Datenübernahme erst nach neustart ?
Verfasst: 12. Sep 2020 11:00
von Mawo94
Hallo openHAB Gemeinde,
gestern Abend habe ich es endlich geschaft meine Testrollos mit openHAB per UI Control und astro Funktion zu steueren.
Nach diesem Erfolg habe ich die nächste Gruppe Rollos in thing, items und rules angelegt.
Bei der Namensvergabe der Aktoren (Sonoff/Tasmota) habe ich mir eine System ausgedacht, nachdem ich recht einfach mit copy & paste die neuen Geräte anlegen kann.
Nach dem Speichern der Dateien in VSC konnte ich alle neuen Geräte in Control sehen und bedienen. Im Logging wurde auch alles gut angezeigt. Nur die Aktoren machten keinen Muks. Per Webinterface reagierten Sie wie immer, aber die Statusänderungen an den Aktoren wurde im Control nicht angezeigt.
Nach der Überprüfung der neu angelegten Geräte Syntax usw. habe ich mich dazu entschlossen den Pi neu zu booten. Nach dem Booten hat openHAb alle Geräte erkannt und zeigt auch alles richtig an.
Nun zu meiner Frage:
Ist es normal, das die Verbindungen zu den Geräten erst nach einem Neuastart aufgebaut werden? bzw. was habe ich falsch gemacht beim Anlegen der Geräte, das sie nicht angesprochen wurden?
Grüß
Markus
Re: Datenübernahme erst nach neustart ?
Verfasst: 12. Sep 2020 11:37
von PeterA
Wie kommunizieren deine Aktoren mit OpenHab?
Mqtt ? Hier ist bei einer Änderung ein Neustart zumindest des Bundels oder OpenHab notwendig.
Ist hier mit Shellys Mqtt und OpenHab auch so.
Re: Datenübernahme erst nach neustart ?
Verfasst: 12. Sep 2020 14:08
von peter-pan
Das MQTT-Binding hat hat hier eine "kleine Unschärfe", das ist aber bekannt. Änderungen an "Things/Items" werden nicht immer unmittelbar in openHAB umgesetzt.
Es sollte deshalb bei Änderungen in der Konfiguration ein Restart von openHAB gemacht werden.
Re: Datenübernahme erst nach neustart ?
Verfasst: 12. Sep 2020 20:19
von udo1toni
Alternativ kann es auch ausreichen, alle betreffenden addons neu zu starten (über die Karaf Konsole bundle:restart)
Es geht bei all diesen Operationen immer darum, das entsprechende Bundle zu zwingen, alle Daten neu einzulesen.
Eigentlich sollte dieses Fehlverhalten mit dem aktuellen Build gefixt sein...
Re: Datenübernahme erst nach neustart ?
Verfasst: 12. Sep 2020 21:34
von peter-pan
udo1toni hat geschrieben: ↑12. Sep 2020 20:19
Eigentlich sollte dieses Fehlverhalten mit dem aktuellen Build gefixt sein...
Bist du sicher ? Wer arbeitet aktuell am MQTT-Binding ?
Re: Datenübernahme erst nach neustart ?
Verfasst: 13. Sep 2020 17:56
von Mawo94
Danke erstmal für die Antworten, meine Vermutung bestätigen.
@ PeterA Ja, Mqtt hast du richtig vermutet.
@ udo1toni Danke für die Info mit dem Bundle Restart, hat auf anhieb geklappt,
Gibt es Latenzzeiten, bei dem die 'kleine Unschärfe' nicht mehr da ist, oder sollte man das entsprechende bundle immer neu starten, um sicher zugehen?
Re: Datenübernahme erst nach neustart ?
Verfasst: 13. Sep 2020 18:22
von peter-pan
Mawo94 hat geschrieben: ↑13. Sep 2020 17:56
Gibt es Latenzzeiten, bei dem die 'kleine Unschärfe' nicht mehr da ist
Es kommt sicher der Zeitpunkt, da wirst du nur noch wenig an deinen mqtt-things herumbasteln müssen

. Ich meine auch es passiert nur dann, wenn ein bestehendes Thing geändert wird.
Evtl. bringt hier OH3 etwas Neues.
Vielleicht kann @udo1toni etwas dazu sagen. Ich glaube aber nicht, dass sich hier noch etwas gross ändert. Ich weiss auch nicht, ob der "Code-Owner" David Graeff noch "mitspielt". Aber wie gesagt , vielleicht hat Udo hier noch ein paar Tipps.
Re: Datenübernahme erst nach neustart ?
Verfasst: 13. Sep 2020 18:44
von udo1toni
Der Punkt ist, dass dieses Varhalten nichts mit mqtt zu tun hat. Vielmehr sind alle V2 Addons davon betroffen. Es handelt sich also um ein Problem im Core, nicht im einzelnen Addon.
Allenfalls könnte es möglicherweise einen Fehler bei den Empfehlungen zur Entwicklung von Addons geben (nämlich, dass vergessen wurde, die entsprechende Benachrichtigung zum Anlass zu nehmen, die Things neu einzulesen).
Weil ich gerade gestern ein wenig in meiner Installation gespielt habe:
Neu angelegte Things werden zuverlässig sofort verarbeitet.
Änderungen an Things oder Channels werden zuverlässig nicht verarbeitet, es sei denn (!) man legt zusätzlich noch einen weiterern Channel innerhalb desselben Things(!) an.
Ob eine Änderung durchgeführt wurde, kann man am sichersten über die REST API oder Paper UI herausfinden, wobei die REST API nicht so schönzu lesen ist, dafür muss man in Paper UI aber über verschiedene Menüs und Untermenüs und erweiterte Eigenschaften verteilt die Informationen einsammeln.
Die Probleme bestehen ausschließlich bei Things (eine Bridge ist auch ein Thing), Items sind hiervon ausdrücklich nicht betroffen.
Bei Sitemaps wiederum gibt es gerne Probleme, dass nach Änderungen an der Sitemap der automatische Refresh nicht mehr funktioniert. Änderungen der Status werden also erst nach einem Wechsel der Ansicht angezeigt, bis zum Neustart von openHAB.
Re: Datenübernahme erst nach neustart ?
Verfasst: 13. Sep 2020 18:52
von PeterA
Mawo94 hat geschrieben: ↑13. Sep 2020 17:56
Danke erstmal für die Antworten, meine Vermutung bestätigen.
@ PeterA Ja, Mqtt hast du richtig vermutet.
@ udo1toni Danke für die Info mit dem Bundle Restart, hat auf anhieb geklappt,
Wie ist denn der Befehl zum Bundle Restart ?
Re: Datenübernahme erst nach neustart ?
Verfasst: 13. Sep 2020 19:09
von peter-pan
udo1toni hat geschrieben: ↑13. Sep 2020 18:44
Der Punkt ist, dass dieses Verhalten nichts mit mqtt zu tun hat.
... ich wusste doch, dass du das genauer erklären kannst

. Mir ist das halt beim MQTT-Binding am ehesten aufgefallen und auch, dass es meistens bei Änderungen von Things auftritt.
PeterA hat geschrieben: ↑13. Sep 2020 18:52
Wie ist denn der Befehl zum Bundle Restart ?
Schau mal
hier im Bundle Management nach.