brutella / hkknx-public

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

Geräte nicht erreichbar #98

Closed hr-automation closed 3 years ago

hr-automation commented 3 years ago

Hallo @brutella!

Es passiert immer wieder (im geschätzten Abstand von 2 Tagen), dass die Geräte nicht mehr erreichbar sind. HKKNX lässt sich dennoch via Browser aufrufen. Auch Brücke und Verbindung sind grün!

Nun habe ich mich auf die Suche gemacht, und folgende Fehlermeldung mit sudo systemctl status hkknx.service gefunden:

`root@homebridgeknx:~# sudo systemctl status hkknx.service ● hkknx.service - hkknx Service Loaded: loaded (/etc/systemd/system/hkknx.service; enabled; vendor preset: enabled) Active: deactivating (stop-sigterm) since Fri 2021-05-28 09:45:56 CEST; 30s ago Main PID: 3310 (hkknx) Tasks: 12 (limit: 4915) Memory: 82.0M CGroup: /system.slice/hkknx.service └─3310 /usr/bin/hkknx -db /usr/hkknx_database

Mai 27 11:29:41 homebridgeknx hkknx[3310]: INFO 2021/05/27 11:29:41 io.go:16: read: group read: timeout Mai 27 11:29:42 homebridgeknx hkknx[3310]: INFO 2021/05/27 11:29:42 io.go:16: read: group read: timeout Mai 27 11:29:43 homebridgeknx hkknx[3310]: INFO 2021/05/27 11:29:43 io.go:16: read: group read: timeout Mai 27 11:29:44 homebridgeknx hkknx[3310]: INFO 2021/05/27 11:29:44 io.go:16: read: group read: timeout Mai 27 11:29:46 homebridgeknx hkknx[3310]: INFO 2021/05/27 11:29:46 io.go:16: read: group read: timeout Mai 27 11:29:48 homebridgeknx hkknx[3310]: INFO 2021/05/27 11:29:48 io.go:16: read: group read: timeout Mai 27 11:29:48 homebridgeknx hkknx[3310]: INFO 2021/05/27 11:29:48 ip_transport.go:184: Listening on port 37765 Mai 28 00:49:03 homebridgeknx hkknx[3310]: 2021/05/28 00:49:03 log: failed to write msg: WebSocket closed: received close frame: status = StatusNoStatusRcvd and reason = "" Mai 28 09:45:56 homebridgeknx hkknx[3310]: INFO 2021/05/28 09:45:56 main.go:193: shutting down...`

Erst nach Neustart der Bridge konnte eine Verbindung wiederhergestellt werden.

Zum SETUP:

Manuelle Debian Installation auf QNAP NAS (Virtualization Station) - systemd lt. Anleitung konfiguriert. Nach erfolgreichem Restart von HKKNX unter Beachtung der folgenden Hilfestellung: https://hochgatterer.me/de/hkknx/docs/help/homekit-connection-issues/ keine Probleme festgestellt.

Gibt es eventuell eine Möglichkeit, das LOG-File auch bei individuellen Installationen, außerhalb des fertigen Raspi Images, abzuspeichern? Das wäre sehr hilfreich.

PS: Die read timeouts dürften aufgrund von Restart der Brücke aufkommen.

Danke für Deine Hilfe. LG

brutella commented 3 years ago

Welche Version von hkknx hast du installiert?

Gibt es eventuell eine Möglichkeit, das LOG-File auch bei individuellen Installationen, außerhalb des fertigen Raspi Images, abzuspeichern?

Nein, das ist nicht möglich.

PS: Die read timeouts dürften aufgrund von Restart der Brücke aufkommen.

Ja, bei einem Neustart werden die HomeKit Geräte initialisiert.

hr-automation commented 3 years ago

1.3.0 - vom 20.05.2021 12:34 Uhr

brutella commented 3 years ago

Hattest du auch mit der DNS-SD Browser App kontrolliert, ob der DNS-SD Eintrag für die Brücke sichtbar war?

hr-automation commented 3 years ago

Wie der Fehler aufgetreten ist = Nein, nur nach dem Neustart, und da war der Eintrag da!

Ich habe mal ein bisschen das Logging rennen lassen. Datei hier: https://hr-automation.cloud/hkknx/log.txt Habe auch unter Verwendung immer wieder Probleme "connection resets" - siehe LOG! (connection.go:73 Decryption failed: read tcp 192.168.1.102:35637->192.168.1.119:62291: read: connection reset by peer DEBUG 2021/05/28 12:38:05 connection.go:73 Decryption failed: read tcp 192.168.1.102:35637->192.168.1.119:62291: use of closed network connection DEBUG 2021/05/28 12:38:05 connection.go:112 Close connection and remove session)

.102 = virtuelle Maschine, .109 = iPhone im WLAN!

Des Weiteren verwende ich die Home+ App von Dir, welche meines Erachtens viel mehr Anfragen an die Bridge stellt - als die offizielle Home App von Apple. Kann dies ein Grund sein?

Kann es mit Apples Wireless Setting der privaten WLAN Adresse zu tun haben? PS: Wireless ist auf der virtuellen Maschine deaktiviert.

brutella commented 3 years ago

Habe auch unter Verwendung immer wieder Probleme "connection resets" - siehe LOG!

Das tritt auf, wenn die Verbindung zwischen hkknx und HomeKit Client (iPhone) abbricht. Die Verbindung wird aber nie ausgehend von hkknx geschlossen sondern immer vom Client aus.

Des Weiteren verwende ich die Home+ App von Dir, welche meines Erachtens viel mehr Anfragen an die Bridge stellt - als die offizielle Home App von Apple. Kann dies ein Grund sein?

Denke nicht, dass das ein Problem ist.

Kann es mit Apples Wireless Setting der privaten WLAN Adresse zu tun haben? PS: Wireless ist auf der virtuellen Maschine deaktiviert.

Die Verbindung sieht bei dir also so aus? hkknx → Ethernet → Router → WLAN → iPhone

hr-automation commented 3 years ago

Die Verbindung sieht bei dir also so aus? hkknx → Ethernet → Router → WLAN → iPhone

Korrekt

EDIT: Hier noch weitere Meldungen vom Status:

root@homebridgeknx:~# sudo systemctl status hkknx.service ● hkknx.service - hkknx Service Loaded: loaded (/etc/systemd/system/hkknx.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2021-05-28 12:36:41 CEST; 1h 55min ago Main PID: 668 (hkknx) Tasks: 12 (limit: 4915) Memory: 27.2M CGroup: /system.slice/hkknx.service └─668 /usr/bin/hkknx -db /usr/hkknx_database

Mai 28 12:37:07 homebridgeknx hkknx[668]: INFO 2021/05/28 12:37:07 io.go:16: read: group read: timeout Mai 28 12:37:08 homebridgeknx hkknx[668]: INFO 2021/05/28 12:37:08 io.go:16: read: group read: timeout Mai 28 12:37:09 homebridgeknx hkknx[668]: INFO 2021/05/28 12:37:09 io.go:16: read: group read: timeout Mai 28 12:37:13 homebridgeknx hkknx[668]: INFO 2021/05/28 12:37:13 io.go:16: read: group read: timeout Mai 28 12:37:14 homebridgeknx hkknx[668]: INFO 2021/05/28 12:37:14 io.go:16: read: group read: timeout Mai 28 12:37:14 homebridgeknx hkknx[668]: INFO 2021/05/28 12:37:14 ip_transport.go:184: Listening on port 35637 Mai 28 14:25:40 homebridgeknx hkknx[668]: 2021/05/28 14:25:40 log: failed to write msg: WebSocket closed: received close frame: status = StatusGoingAway and reason = "" Mai 28 14:25:56 homebridgeknx hkknx[668]: 2021/05/28 14:25:56 log: failed to write msg: WebSocket closed: received close frame: status = StatusNoStatusRcvd and reason = "" Mai 28 14:26:49 homebridgeknx hkknx[668]: 2021/05/28 14:26:49 log: failed to write msg: WebSocket closed: received close frame: status = StatusNoStatusRcvd and reason = "" Mai 28 14:29:14 homebridgeknx hkknx[668]: 2021/05/28 14:29:14 log: failed to write msg: WebSocket closed: received close frame: status = StatusNoStatusRcvd and reason = ""

brutella commented 3 years ago

Die Websocket-Meldungen kann man ignorieren. Die haben nichts mit HomeKit zu tun. Hast du andere iOS Geräte (zB iPad) auf denen du die HomeKit Verbindung zu hkknx überprüfen kannst, wenn die Brücke wieder mal nicht erreichbar ist?

hr-automation commented 3 years ago

Ja habe ich... Ich werde das einmal beobachten. Habe nun als Test einen Raspberry mit dem HKKNX Image aufgesetzt - vllt. bessert sich das Verhalten!

Mit den Homepod Minis als Steuerzentralen kann es ja auch nicht zusammenhängen, oder?

brutella commented 3 years ago

Mit den Homepod Minis als Steuerzentralen kann es ja auch nicht zusammenhängen, oder?

Kann ich nicht mit Sicherheit ausschließen, da in letzter Zeit doch immer öfters Verbindungsprobleme bei einem HomePod berichtet wurden.

hr-automation commented 3 years ago

Kann ich nicht mit Sicherheit ausschließen, da in letzter Zeit doch immer öfters Verbindungsprobleme bei einem HomePod berichtet wurden.

OK, dann werde ich das ggfs. auch beobachten.

EDIT: Das mit den Homepod Minis kann ich aber eigtl. ausschließen - da sich diese ziemlich Konstant und ohne Verbindungsabbrüche Daten holen.

.132, .134 und .135 sind die Homepod Mini

Siehe:

DEBUG 2021/05/28 17:13:24 ip_transport.go:288 192.168.1.134:49301 <- EVENT/1.0 200 OK

Content-Length: 68 Content-Type: application/hap+json {"characteristics":[{"aid":48,"iid":12,"value":23.600000381469727}]} DEBUG | 2021/05/28 17:13:43 | ip_transport.go:288 | 192.168.1.132:49243 <- EVENT/1.0 200 OK Content-Length: 67 Content-Type: application/hap+json {"characteristics":[{"aid":48,"iid":12,"value":23.69999885559082}]} DEBUG | 2021/05/28 17:13:43 | ip_transport.go:288 | 192.168.1.135:49247 <- EVENT/1.0 200 OK Content-Length: 67 Content-Type: application/hap+json {"characteristics":[{"aid":48,"iid":12,"value":23.69999885559082}]} DEBUG | 2021/05/28 17:13:43 | ip_transport.go:288 | 192.168.1.134:49301 <- EVENT/1.0 200 OK Content-Length: 67 Content-Type: application/hap+json {"characteristics":[{"aid":48,"iid":12,"value":23.69999885559082}]} DEBUG | 2021/05/28 17:14:02 | ip_transport.go:288 | 192.168.1.132:49243 <- EVENT/1.0 200 OK Content-Length: 68 Content-Type: application/hap+json {"characteristics":[{"aid":48,"iid":12,"value":23.600000381469727}]} DEBUG | 2021/05/28 17:14:02 | ip_transport.go:288 | 192.168.1.135:49247 <- EVENT/1.0 200 OK Content-Length: 68 Content-Type: application/hap+json {"characteristics":[{"aid":48,"iid":12,"value":23.600000381469727}]} DEBUG | 2021/05/28 17:14:02 | ip_transport.go:288 | 192.168.1.134:49301 <- EVENT/1.0 200 OK Content-Length: 68 Content-Type: application/hap+json {"characteristics":[{"aid":48,"iid":12,"value":23.600000381469727}]}

Gibt es eventuell eine Möglichkeit, das LOG-File auch bei individuellen Installationen, außerhalb des fertigen Raspi Images, abzuspeichern?

Nein, das ist nicht möglich.

Wäre toll, wenn man dieses Feature hinzufügen könnte!

Wenn ich Dir noch sonstige LOGs schicken kann / könnte, würde es Dir helfen? Oder fällt dir etwas anderes ein, um das Problem zu lokalisieren?

hr-automation commented 3 years ago

Kurzes Update: Problem ist wieder aufgetreten - keine Geräte erreichbar! (Keine Antwort, Fehler,...) Discovery DNS erkennt den KNX Gateway trotzdem noch. siehe Datei - https://hr-automation.cloud/hkknx/dns-log.txt Ich melde mich wieder mit neuen IP Interface!

brutella commented 3 years ago

Gibt es schon etwas Neues zu diesem Problem?

hr-automation commented 3 years ago

Habe heute gerade die neue MDT IP Schnittstelle erhalten. Werde diese noch heute oder morgen integrieren und dann 2-3 Tage laufen lassen um aussagekräftige Hinweise geben zu können, woran es liegt / lag.

hr-automation commented 3 years ago

@brutella Ich hoffe dem "Fehler" auf die Spur zu kommen, trotz neuem IP Interface, wieder Verbindungsabbruch mit offiziellen Raspberry Image und aktualisierte Version auf 1.3.1 (PS: Die Meldung ist auch schon unter 1.3.0 gewesen)

hkknx-permission-error

Hier noch die Berechtigungen der Ordner: https://pastebin.com/pLCP5erDv

Wieso ich auf die Idee komme, dass es damit etwas zu tun hat: Ich starte den Raspberry komplett neu hoch. Alles läuft - Konsole wird gestartet und alles wird auch aufgezeichnet. Sobald ich die Konsole schließe - Manchmal Komplettabbruch der Verbindung. Hilft nur noch ein Neustart - dies dürfte auch manchmal automatisch passieren.

Könnte Dir ein syslog oder sonstiges weiter helfen? In der DNS App wird die Brücke weiterhin angezeigt!

Bin langsam echt ratlos woran es liegen kann.

hr-automation commented 3 years ago

Nach 2 Wochen Dauertest, und auch Wechsel zum RPi Image und Version 2.x kann ich berichten, dass es definitiv ein Problem mit den HomePod minis gab. Wieso die Verbindung auch "innerhalb des Netzwerkes" zeitweise Probleme verursacht hat - kann ich abschließend nicht feststellen.

Es scheint fast so, als ob die Homepods auch im internen Netzwerk eindeutig die Steuerzentrale spielen, und nicht nur von außerhalb.

Um das Problem gelöst zu haben, habe ich meine 3 Homepod Minis aus Steuerzentralen entfernt, komplett zurückgesetzt und neu hinzugefügt. Seit nunmehr 7 Tagen keinerlei Probleme mehr.

Deshalb schließe ich einmal dieses "Issue".