brutella / hkknx-public

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

fan feature causing bridge to hang #93

Closed charlez79 closed 3 years ago

charlez79 commented 3 years ago

When i use the new fan feature the bridge is starting to hang, communication from/to knx is not working anymore. Need to restart server to get it working again.

hahasagined commented 3 years ago

I have had a similar issue today. If I wanted to flip the light switch, it would not work, even though apple home made it look like In the GUI that the light is on. When I checked the logs, I saw the following:

DEBUG 2021/05/01 06:42:10 characteristics.go:102: [fe80::96:8cb0:6277:a2e4%ens160]:56471 PUT /characteristics
DEBUG 2021/05/01 06:42:10 characteristics.go:107: {"characteristics":[{"aid":2,"iid":10,"value":1}]}
DEBUG 2021/05/01 06:42:10 writer.go:45: write True to 1/0/51
2021/05/01 06:42:12 write timeout
DEBUG 2021/05/01 06:42:12 writer.go:48: write timeout
DEBUG 2021/05/01 06:42:12 ip_transport.go:288: 192.168.128.157:49831 <- EVENT/1.0 200 OK
Content-Length: 53
Content-Type: application/hap+json

{"characteristics":[{"aid":2,"iid":10,"value":true}]}

I use the fan feature not sure that this is the trigger. When I stopped and started hkknx, everything worked again.

brutella commented 3 years ago

Which build of version 1.3.0 are you using? The latest build is from 2021-04-28T11:50:31.

charlez79 commented 3 years ago

Installed the latest build, and it seems that i'm not able to reproduce the issue for the moment. How to set the correct speed with siri? What value is he/she expecting?

When i say put ventilation on 33% i'm getting a value 3 which is 100%

brutella commented 3 years ago

How to set the correct speed with siri? What value is he/she expecting? When i say put ventilation on 33% i'm getting a value 3 which is 100%

This sounds like an Siri issue. hkknx defines the min and max values for the fan levels based on the datatype. If you set it to DPST-5-10 (0...2) the the min is 0, and max is 2. Based on that the Home app sends the value 1 when you select 50% in the user interface. It seems like Siri doesn't check the min and max values and assumes that the fan levels are always from 0 to 100%.

charlez79 commented 3 years ago

Today the bridge was again unresponsive, so issue is not solved. I only need to find out how to trigger the issue.

brutella commented 3 years ago

Any hints in the log file what may cause this issue?

charlez79 commented 3 years ago

Is there a possibility to write the logs to a file on the system where the bridge is running on? Otherwise i need a pc connected and running until it happens.

Superwuzy commented 3 years ago

The same here. The latest 1.3 is hanging up after approx. 24 hours of use. After a restart everything works again. The older pre 1.3 versions worked flawlessly. Quite annoying.

charlez79 commented 3 years ago

I have a log file to investigate. Connection is cut of it seems. Why no idea output.log

brutella commented 3 years ago

Thanks for providing the log file. I will investigate...

brutella commented 3 years ago

Could you please check if the UDP connection to the KNX gateway is still active if this error happens. It might be the case that the connection is closed and hkknx didn't notice that.

On my MDT IP Interface I can see all active connections under Prog. Mode → Individual Address.

Screenshot 2021-05-06 at 11 07 50
charlez79 commented 3 years ago

I have a gira one, and can't see the actual connections. So can't help you with that. When i do a netstat on the server i don't see any active connection to my knx router

brutella commented 3 years ago

I've just upload a new build for version 1.3.0, which contains some small bug fixes regarding the communication with the KNX gateway. You can update to that version by clicking on the version number in the footer and choosing Install Latest Version.


2021-05-10 Update I've just discovered another small edge case which may cause the communication to the KNX gateway to stop working. This issue is fixed in the the latest build.

Superwuzy commented 3 years ago

@brutella Info: The bug fixed 1.3.0 version seems to work more reliable. The communication with the KNX devices is working for a few days now without the need of a restart.

Superwuzy commented 3 years ago

Could you please check if the UDP connection to the KNX gateway is still active if this error happens. It might be the case that the connection is closed and hkknx didn't notice that.

On my MDT IP Interface I can see all active connections under Prog. Mode → Individual Address.

The UDP connections to my MDT KNX/IP-router are working (.211 is my Raspi with the IOBroker KNX plugin & HKKNX active):

image
brutella commented 3 years ago

There are some significant change in the latest pre-release build for version 1.3.0. Please download and test.

hahasagined commented 3 years ago

Ok. happened again. My version is from: May 10 18:44 hkknx

Here is the log from HKKNX:

#switch light on
DEBUG 2021/05/19 11:27:51 characteristics.go:59: 192.168.128.138:49290 GET /characteristics map[id:[8.10,7.10,4.10,4.11,6.12,6.14,6.11,6.13,6.10,2.10]]
DEBUG 2021/05/19 11:27:53 characteristics.go:102: 192.168.128.138:49290 PUT /characteristics
DEBUG 2021/05/19 11:27:53 characteristics.go:107: {"characteristics":[{"aid":2,"iid":10,"value":1}]}
DEBUG 2021/05/19 11:27:53 writer.go:45: write True to 1/0/51
DEBUG 2021/05/19 11:27:53 writer.go:48: write udp4 192.168.128.169:43065->192.168.128.115:3671: use of closed network connection
DEBUG 2021/05/19 11:27:53 ip_transport.go:288: 192.168.128.157:49177 <- EVENT/1.0 200 OK
Content-Length: 53
Content-Type: application/hap+json

#switch light off
{"characteristics":[{"aid":2,"iid":10,"value":true}]}
DEBUG 2021/05/19 11:27:57 characteristics.go:102: 192.168.128.138:49290 PUT /characteristics
DEBUG 2021/05/19 11:27:57 characteristics.go:107: {"characteristics":[{"aid":2,"iid":10,"value":0}]}
DEBUG 2021/05/19 11:27:57 writer.go:45: write False to 1/0/51
DEBUG 2021/05/19 11:27:57 writer.go:48: write udp4 192.168.128.169:43065->192.168.128.115:3671: use of closed network connection
DEBUG 2021/05/19 11:27:57 ip_transport.go:288: 192.168.128.157:49177 <- EVENT/1.0 200 OK
Content-Length: 54
Content-Type: application/hap+json

{"characteristics":[{"aid":2,"iid":10,"value":false}]}

HKKNX says the Gateway is online and my Gira X1 (my KNX Gateway) is available via the Gira App and I am able to switch on lights in KNX via the App - so I think the Gateway is working, but with Homekit I am not able to do anything in KNX.

Anything that I can deliver to make the troubleshooting easier for you? image

brutella commented 3 years ago

Please download the latest build for version 1.3.0.

hahasagined commented 3 years ago

If I click: "check for a new version" it says: image

hahasagined commented 3 years ago

I had installed: 1.3.0 (2021-05-10T13:15:58+02:00) I manually downloaded 1.3.0 (2021-04-28T11:50:31+02:00) from GitHub. Will report back when the issue reappears.

brutella commented 3 years ago

Version 1.3.0 is now available and should fix this issue.