Hi,
Firstly I’d like to say thank you to the Nabu Casa team and the Home Assistant community for making such excellent software. Home Assistant has changed my smart home life and I absolutely love it.
I’ve been slowly building up my ZigBee network over the last 6 months and been trying to run my server for longer and longer periods without intervention. I’ve noticed it a couple of times now, but after a couple of weeks I’ll wake up to all my ZigBee devices not working and I have to restart the ZHA integration or Home Assistant to get it to work.
I get a couple of errors - once I got ZIGBEE_DELIVERY_FAILED appear in Home Assistant and another time I got ZHAException: Failed to send request: device did not respond error. I only have the logs for the latter one.
I am wondering if perhaps I have too many routers, as I have quite a small house, and I have about 9 devices that are acting as Zigbee Routers. Before I didn’t have many routers - I didn’t have devices drop out but in the visualisation I had a lot of grey lines so I thought I’d add more devices to help.
Perhaps I just need to trigger a network heal? I’ve never manually done this - I’ve just added more and more devices over time. It doesn’t look very optimized for example my kitchen light is connecting to my lamp in my bedroom - it really should connect to the washing machine or repeater plug which is much closer.
This is what my network looks like. I have the Coordinator at the very front of the house where my internet comes in and my server is, and I have to essentially try and work my way to the back of the house with routers.
Logs
Logger: zigpy.zcl
Source: runner.py:154
First occurred: 11 March 2025 at 05:00:05 (2 occurrences)
Last logged: 11 March 2025 at 05:58:10
[0x15A9:1:0x0020] Traceback (most recent call last): File "/usr/local/lib/python3.13/site-packages/bellows/zigbee/application.py", line 934, in send_packet send_status, _ = await req.result ^^^^^^^^^^^^^^^^ asyncio.exceptions.CancelledError The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.13/site-packages/zigpy/device.py", line 378, in request await send_request() File "/usr/local/lib/python3.13/site-packages/zigpy/application.py", line 835, in request await self.send_packet( ...<14 lines>... ) File "/usr/local/lib/python3.13/site-packages/bellows/zigbee/application.py", line 933, in send_packet async with asyncio_timeout(APS_ACK_TIMEOUT): ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.13/asyncio/timeouts.py", line 116, in __aexit__ raise TimeoutError from exc_val TimeoutError The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.13/site-packages/zha/zigbee/cluster_handlers/general.py", line 630, in check_in_response await self.checkin_response(True, self.CHECKIN_FAST_POLL_TIMEOUT, tsn=tsn) File "/usr/local/lib/python3.13/site-packages/zha/zigbee/cluster_handlers/__init__.py", line 85, in wrapper with wrap_zigpy_exceptions(): ~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/local/lib/python3.13/contextlib.py", line 162, in __exit__ self.gen.throw(value) ~~~~~~~~~~~~~~^^^^^^^ File "/usr/local/lib/python3.13/site-packages/zha/zigbee/cluster_handlers/__init__.py", line 70, in wrap_zigpy_exceptions raise ZHAException("Failed to send request: device did not respond") from exc zha.exceptions.ZHAException: Failed to send request: device did not respond