[HomeKit Controller] Nanoleaf bulbs over Thread show as “unavailable” after updating to Home Assistant 2025.9.2 / 2025.9.3

Hi,
after updating Home Assistant to 2025.9.2 (and still in 2025.9.3), my Nanoleaf bulbs connected via Thread through the HomeKit Controller integration stopped working.

  • All devices show up as unavailable in Home Assistant.
  • They do not respond to any commands (on/off, brightness, color, etc.).
  • Rolling back to 2025.9.1 restores full functionality.

So it looks like a regression introduced in 2025.9.2.

Relevant log entries

Logger: homeassistant.config_entries
Source: config_entries.py:751
First occurred: 16:29:28 (2 occurrences)
Last logged: 16:29:28

Error setting up entry Nanoleaf Light Bulb for homekit_controller
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 751, in __async_setup_with_context
    result = await component.async_setup_entry(hass, self)
  File "/usr/src/homeassistant/homeassistant/components/homekit_controller/__init__.py", line 60, in async_setup_entry
    await conn.async_setup()
  File "/usr/src/homeassistant/homeassistant/components/homekit_controller/connection.py", line 338, in async_setup
    await self.async_update(poll_all=True)
  File "/usr/src/homeassistant/homeassistant/components/homekit_controller/connection.py", line 957, in async_update
    self.process_new_events(new_values_dict)
  File "/usr/src/homeassistant/homeassistant/components/homekit_controller/connection.py", line 971, in process_new_events
    for aid_iid in self.entity_map.process_changes(new_values_dict):
  File "/usr/local/lib/python3.13/site-packages/aiohomekit/model/__init__.py", line 410, in process_changes
    char.status = to_status_code(value.get("status", 0))
  File "/usr/local/lib/python3.13/site-packages/aiohomekit/protocol/statuscodes.py", line 44, in to_status_code
    return HapStatusCode(abs(status_code) * -1)
  File "/usr/local/lib/python3.13/enum.py", line 726, in __call__
    return cls.__new__(cls, value)
  File "/usr/local/lib/python3.13/enum.py", line 1203, in __new__
    raise ve_exc
ValueError: -6 is not a valid HapStatusCode

And also:

Logger: aiohomekit.controller.coap.pdu
Source: components/homekit_controller/connection.py:1025
First occurred: 16:29:28 (2 occurrences)
Last logged: 16:29:28

Transaction 0 failed with error 6 (Invalid request)

Has anyone else experienced this issue with HomeKit Controller and Nanoleaf Thread bulbs or any other accessories via homekit?

Thanks in advance

1 Like

Hello Přemysl Kočí,

If you believe you have found a bug and your discussions here have people agreeing with you (It’s not currently working as designed) then you should check the issues. If it is working as designed and you just don’t like it, then look at the Feature Request Category for more info.
If there is already an issue for it, add a thumbs up to help push the effort along. If there is not an issue open for it open one.
It’s good to discuss and verify that there is an issue here, but if you want the appropriate developer to look at it & maybe get it resolved, it will have to be seen as an issue…

I’ve the same issue. Ikea → HomeKit

GitHub

1 Like

Same issue here. I re-paired all nanoleaf bulbs but it’s really slow. And now reverting back to 2025.9.1 does not help because of re-pairing… So stuck here until next release to recover control over HomeKit devices. Hope it will be soon. Meanwhile, I am back to manual control.

Same issue here.
Had to roll back to 2025.9.1.

Same, the fix for version 2025.9.4 is pending for too long…

Same problem, glad I’ve encountered this topic… Was almost trowing out all the nano leaf bulbs… Just wait for the fix then I guess…

I am also experiencing this problem with the Homekit Integration after updating from 2025.9.1 to 2023.9.3. It is preventing my Honeywell T9 thermostat from functioning.

Logger: homeassistant.config_entries
Source: config_entries.py:751
First occurred: 8:09:41 AM (2 occurrences)
Last logged: 8:44:42 AM

Error setting up entry Honeywell Thermostat for homekit_controller
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 751, in __async_setup_with_context
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/homekit_controller/__init__.py", line 60, in async_setup_entry
    await conn.async_setup()
  File "/usr/src/homeassistant/homeassistant/components/homekit_controller/connection.py", line 338, in async_setup
    await self.async_update(poll_all=True)
  File "/usr/src/homeassistant/homeassistant/components/homekit_controller/connection.py", line 942, in async_update
    new_values_dict = await self.get_characteristics(to_poll)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/homekit_controller/connection.py", line 1025, in get_characteristics
    return await self.pairing.get_characteristics(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/aiohomekit/controller/ip/pairing.py", line 271, in get_characteristics
    return format_characteristic_list(response)
  File "/usr/local/lib/python3.13/site-packages/aiohomekit/controller/ip/pairing.py", line 60, in format_characteristic_list
    for c in data["characteristics"]:
             ~~~~^^^^^^^^^^^^^^^^^^^
KeyError: 'characteristics'
1 Like

Same issue here… .been pulling my hair over my Nanoleaf/SecretLab Magnus Desk Strip and wondering why the entity was gone…
Tried a 2025.9.1 backup but that still didn’t work somehow (probalby because I paired and unpaired the damn thing a bunch of times in between…)

Same here with Nanoleaf lights! I can pair them again via Bluetooth but as soon as I try to switch them to thread network they become unavailable.

It’s crazy to let such an impactful bug go unfixed for so long…

Looks like 2025.9.4 fixes this issue \o/

Yep, as mentionned on github, and finally released…