brutella / hkknx-public

hkknx is a HomeKit KNX bridge for KNX.
https://hochgatterer.me/hkknx
97 stars 6 forks source link

Sperre bei Präsenzmeldern lässt die Bridge abstürzen #277

Closed mbrockeu closed 9 months ago

mbrockeu commented 1 year ago

Ich habe gerade ein Problem festgestellt, was glaube ich irgendwie neu aufgetreten ist. Oder es ist mir vorher nicht aufgefallen.

In meiner Konfiguration habe ich diverse Präsenzmelder die ich ein und ausschalten kann. Die Konfiguration wie folgt.

image

Vielleicht kurz zum Hintergrund des Anwedungsfalls. Ich hatte diese Nachts gesperrt und das bis vor ein paar Tagen über HomeKit Automationen. Da ich die ganzen Automationen lieber auf dem Gira X1 laufen lassen wollte habe ich sie da hingeschoben und in HomeKit gelöscht. Die Funktion habe ich in der Konfiguration aber immer noch an.

Nun hatte ich zunächst das Problem, dass der Status nicht ausgelesen wurde und sobald ich was an dem Schalter in HomeKit gemacht habe zeigte das Gerät immer "Keine Antwort" an. Ich habe mir an der Stelle nicht viel mehr gedacht.

Habe daraufhin in den Präsenzmelder das Lesenflag gesetzt weil ich dachte es liegt daran.

Nun ist mir aufgefallen, dass beim Ein/Ausschalten des Melders die Bridge abstürzt und neu initialisiert. Dementsprechend wird auch kein Wert gesetzt. Edit: Es wird auch kein Wert auf den Bus geschrieben.

Mal im Log, vielleicht erkennt man da was.

image

Nur für mich zum Verständnis. Wenn die Sperre 1 eingestellt ist und Home aber "Eingeschaltet" sagt, dann meint er eigentlich 0 oder?

mbrockeu commented 1 year ago

Ergänzend dazu scheint nach dem Neustart nicht alles rund zu laufen, z.B. zeigen meine Lichtsensoren alle 0 Lux an obwohl Daten über den Bus gehen. Es scheint als wenn keine Telegramme ankommen. Der Groupmonitor zeigt auch nix an, eine Verbindung zum IP Gateway scheint laut Status aber zu bestehen.

brutella commented 1 year ago

Mal im Log, vielleicht erkennt man da was.

Ich sehe nur, dass beim Schreiben von True an die Gruppenadresse 4/1/20 es ein Timeout gab.

Nur für mich zum Verständnis. Wenn die Sperre 1 eingestellt ist und Home aber "Eingeschaltet" sagt, dann meint er eigentlich 0 oder?

Bei 1 = Sperren, 0 = Entsperren zeigt HomeKit Eingeschaltet an, wenn das Gerät entsperrt ist. https://hochgatterer.me/de/hkknx/docs/accessories/block/

mbrockeu commented 1 year ago

Ich verstehe trotzdem nicht wieso die Bridge dann abschmiert und neu initialisiert. Danach scheint auch nix mehr zu laufen bin ich die Instanz im Docker komplett neu starte

brutella commented 1 year ago

Tritt ein Timeout jedes Mal auf, wenn du an die Gruppenadresse 4/1/20 einen Wert sendest?

mbrockeu commented 1 year ago

Wieso auch immer, jetzt scheint es zu gehen. Vielleicht hat er ein Moment gebraucht das Lesenflag zu übernehmen oder so. Werde das die Tage mal beobachten ob das wieder passiert.

mbrockeu commented 1 year ago

Also das Problem scheint weiterhin zu bestehen. Sobald ich den Zustand von der Sperre ändere stürzt die Bridge ab. Danach kommen die abfragen und dann kommen auch die Timeouts erst.

die Bridge initialisiert sich zwar neu bekommt aber offenbar nicht die Zustände weil der Tunnel blockiert zu sein scheint. Oder ähnliches.

Die ganzen anderen Geräte wie Lichtsensor auf der Bridge liefern ja auch keine Werte mehr. Erst wenn ich den Container komplett neu starte.

brutella commented 1 year ago

Sobald ich den Zustand von der Sperre ändere stürzt die Bridge ab.

Bekommst du dabei immer "write timeouts"?

Danach kommen die abfragen und dann kommen auch die Timeouts erst.

Welche Timeouts treten genau auf?

Die ganzen anderen Geräte wie Lichtsensor auf der Bridge liefern ja auch keine Werte mehr.

Sind die Geräte nicht erreichbar oder stimmen die Werte nicht?

mbrockeu commented 11 months ago

So wirklich kann ich das jetzt nicht mehr nachvollziehen woher das kommt. Offenbar nicht zwangsläufig von den Sperren sondern generell scheint da manchmal etwas die Bridge zum abstürzen zu bringen. Ich könnte mal versuchen den Log mitlaufen zu lassen. Ob ich daraus schlau werde ist eine andere Frage.

Ich hatte vorhin zum Beispiel auch, dass Skripte nicht mehr ausgeführt werden bzw. der Watch auf den GAs nicht funktioniert. Erst ein Reboot hat entsprechenden erfolg gebracht.

Ich weiß nicht ob man einen Stacktrace rausschreiben kann oder ne Option zum erweiterten Logging zum Schalten einbaut so dass ich mal nen Log laufen lassen kann mit dem Stacktrace, sofern es sowas im Go dort gibt.

brutella commented 11 months ago

Es schein so als ob es bei dir immer wieder zu Verbindungsproblemen zwischen hkknx und dem KNX IP Gateway gibt. Hast du andere Software in Verwendung, die ebenfalls über Tunneling mit KNX spricht?

mbrockeu commented 11 months ago

Ich habe mittlerweile 2 IP Gateways im Einsatz. 1x MDT und dort hängen beide Installationen von HKKNX drauf. Alles andere läuft über den X1. Allerdings geht das Netzwerkkabel vom Switch in den X1 und von dort weiter zum MDT.

Das Problem hatte ich vorher aber auch schon. Seit ich die Lesenflags auf den Sperren habe ist es aber deutlich besser geworden und lässt sich ohne weiteres nicht reproduzieren wann er kracht.

brutella commented 9 months ago

Tritt das Problem jetzt immer noch auf? Ansonsten können wir das Issue schließen.

mbrockeu commented 9 months ago

Mir ist es jetzt zumindest nicht mehr aufgefallen.