core: Knx crash issues of IP interface

Home Assistant release with the issue:

Last working Home Assistant release (if known): Hass.io V0.94.2

Operating environment (Hass.io/Docker/Windows/etc.):

Hass.io

Component/platform:

https://www.home-assistant.io/components/knx/

Description of problem:

There are 3 issues about the KNX component:

  1. The KNX heartbeat is lost and this error only display in the KNX.log and I prefer to have a Knx heartbeat sensor to monitor it. But
  2. the Hass.io UI can continue to operate the KNX related devices such as the switches and lights. it shows the normal status for the operator but in fact, the KNX ip interface already lost and all the KNX devices cannot really operate.
  3. The KNX Humidity sensor can normally display in Home assistant UI but cannot display in Homekit by the Homekit component (non-Homebirdge). It looked working well at 0.93.x version but after upgrade, they disappear.
  4. after upgrade to 0.94.x, all the KNX devices which display in Homekit lost their original location, which is mean that Bedroom lights locate to Bedroom before, after upgrade to the latest version, this lights change to belong to the IT-Rack.

Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):

homekit:

# Discover some devices automatically
discovery:
  enable:
    - homekit

knx:
  tunneling:
    host: 192.168.1.234
    port: 3671
    local_ip: 192.168.1.238
    #rate_limit: 6


sensor:
  - platform: knx
    name: 1F_BR5 Hum
    address: '6/1/1'
    type: humidity

Traceback (if applicable):

019-06-12 16:08:29 WARNING (MainThread) [xknx.log] Heartbeat failed - reconnecting
2019-06-12 16:08:31 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/xknx/io/tunnel.py", line 228, in do_heartbeat
    await self.do_heartbeat_impl()
  File "/usr/local/lib/python3.7/site-packages/xknx/io/tunnel.py", line 236, in do_heartbeat_impl
    await self.do_heartbeat_failed()
  File "/usr/local/lib/python3.7/site-packages/xknx/io/tunnel.py", line 248, in do_heartbeat_failed
    await self.reconnect()
  File "/usr/local/lib/python3.7/site-packages/xknx/io/tunnel.py", line 191, in reconnect
    await self.start()
  File "/usr/local/lib/python3.7/site-packages/xknx/io/tunnel.py", line 83, in start
    await self.connect()
  File "/usr/local/lib/python3.7/site-packages/xknx/io/tunnel.py", line 104, in connect
    raise XKNXException("Could not establish connection")
xknx.exceptions.exception.XKNXException: Could not establish connection
2019-06-12 16:08:33 WARNING (MainThread) [xknx.log] Heartbeat failed - reconnecting
2019-06-12 16:19:18 WARNING (MainThread) [xknx.log] Could not read value of <Switch name="2F Bathroom FAN" switch="GroupAddress("2/4/2")/GroupAddress("2/0/2")/<DPTBinary value="0" />/Value.OFF" /> 2/0/2

Additional information:

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 32 (14 by maintainers)

Most upvoted comments

Something seems very odd here. Are you able to capture the raw udp packets using wireshark or any equivalent and share the .pcap?

If this is no option you could try to add

logger:
  default: info
  logs:
    xknx: debug

to your configuration and post the logs again.