Koenkk / Koenkk/zigbee2mqtt

HESZB-120: recurring ZIGBEE_DELIVERY_FAILED after firmware update to 4.0.9 (0x00040009)

Open
#32,649 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

problem
Dominant language
TypeScript
Stars
15.7k
Forks
2k
Avg merge
18h 55m
Merged PRs (30d)
35

Description

What happened?

Since this device's firmware was updated to 4.0.9 (0x00040009) on 8 May 2026, it has been intermittently unreachable on the Zigbee network. The coordinator repeatedly fails to deliver messages to it, logged as DeliveryError (ZIGBEE_DELIVERY_FAILED) or TimeoutError, roughly once per hour, at a very regular cadence (see log excerpt below — failures at 05:39, 06:39, 07:39, 07:40, 08:40, 08:40, 09:40, 09:40, 10:41, 11:40, 11:41). This near-hourly periodicity suggests a recurring internal check-in/poll from the device itself failing consistently, rather than random network congestion.

This same device previously had a separate issue (a repeated IAS Zone re-enrollment/join loop) after a Zigbee coordinator migration, resolved at the time by removing and re-pairing it. That was weeks before this new issue started, and no coordinator change or re-pairing has occurred since 8 May — only the firmware update.

I'm not using Zigbee2MQTT (see Setup below) but reporting here since this appears to be a firmware-level issue and I found a related past report on this device family in #21721 (siren control broken since firmware 4.0.8).

What did you expect to happen?

The device should remain reliably reachable on the network, consistent with its behavior before the 4.0.9 update.

How to reproduce it (minimal and precise)

Not reliably reproducible on demand. The device fails intermittently during normal operation, roughly several times per day, with no specific trigger identified so far.

Zigbee2MQTT version

N/A – not using Zigbee2MQTT, running Home Assistant's ZHA integration instead. Reporting here as this repository/issue tracker appears to be the most active place for HESZB-120 firmware issues (see #21721).

Adapter firmware version

Coordinator: SMLIGHT SLZB-06M, coordinator firmware 3.3.1 (EmberZNet/EZSP, EFR32MG24)

Adapter

SMLIGHT SLZB-06M (EZSP/EFR32MG24), used via Home Assistant ZHA, not Zigbee2MQTT

Setup

Home Assistant OS (HAOS) latest version, ZHA integration (not Zigbee2MQTT).

Device database.db entry

N/A – ZHA does not use a database.db file (that's Zigbee2MQTT-specific). Happy to provide the equivalent ZHA device signature/diagnostics if useful.

Debug log

2026-07-24 05:39:02.718 WARNING (MainThread) [zigpy.application] Device callback failed - DeliveryError('Failed to deliver message: <sl_Status.ZIGBEE_DELIVERY_FAILED: 3074>')
2026-07-24 05:39:28.222 WARNING (MainThread) [zigpy.application] Device <...> callback failed - TimeoutError()
2026-07-24 06:39:46.600 WARNING (MainThread) [zigpy.application] Device <...> callback failed - TimeoutError()
2026-07-24 07:39:49.037 WARNING (MainThread) [zigpy.application] Device <...> callback failed - TimeoutError()
2026-07-24 07:40:05.013 WARNING (MainThread) [zigpy.application] Device <...> callback failed - TimeoutError()
2026-07-24 08:40:07.505 WARNING (MainThread) [zigpy.application] Device <...> callback failed - TimeoutError()
2026-07-24 08:40:23.679 WARNING (MainThread) [zigpy.application] Device <...> callback failed - TimeoutError()
2026-07-24 09:40:25.954 WARNING (MainThread) [zigpy.application] Device <...> callback failed - TimeoutError()
2026-07-24 09:40:42.013 WARNING (MainThread) [zigpy.application] Device <...> callback failed - TimeoutError()
2026-07-24 10:41:00.714 WARNING (MainThread) [zigpy.application] Device <...> callback failed - TimeoutError()
2026-07-24 11:40:53.554 WARNING (MainThread) [zigpy.application] Device <...> callback failed - DeliveryError('Failed to deliver message: <sl_Status.ZIGBEE_DELIVERY_FAILED: 3074>')
2026-07-24 11:41:09.664 WARNING (MainThread) [zigpy.application] Device <...> callback failed - DeliveryError('Failed to deliver message: <sl_Status.ZIGBEE_DELIVERY_FAILED: 3074>')

Note: this is standard-level ZHA/zigpy logging, not debug-level — enabling debug logging on my current setup causes Home Assistant to crash before a usable log can be captured.

Notes

Happy to test a firmware downgrade or provide further diagnostics if that would help narrow down the regression.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the supplied ZHA/zigpy logs and the related report in #21721, then determine whether this repository handles HESZB-120 behavior or can reproduce the failure. Done means identifying a repository-side cause or documenting that the 4.0.9 firmware regression is external, with a focused diagnostic or reproduction path.

Written by the indexing model from the issue text.

Assessment

Domain
networking
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.