Koenkk / Koenkk/zigbee2mqtt

Shelly Ecowitt WS90 repeatedly stops reporting after successful rejoin

Open
#32,835 7 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?

I have a Shelly / Ecowitt WS90 connected to Zigbee2MQTT.

The device joins successfully and starts reporting all measurements normally. However, after a short period of time it completely stops reporting.

After pressing the physical RST button, the WS90 reconnects and immediately starts working again, but after a while it stops reporting once more.

I have repeated this several times with the same result.

The WS90 has a strong Zigbee router located very close to it. I have also observed the device changing between different routers in the Zigbee network while it is working.

Other Zigbee end devices using the same routers remain stable and do not disconnect.

When the WS90 stops reporting, Home Assistant keeps the last received values, so for example illuminance, temperature and wind remain frozen at their last values.

I have also tried:

  • Rejoining the device several times
  • Resetting it with the physical RST button
  • Allowing join only through the coordinator
  • Allowing join through the nearby router
  • Zigbee steering using the CAL button
  • Multiple available Zigbee routers with good link quality

The issue always returns.

Zigbee2MQTT version: 2.13.0-1
WS90 firmware: 250829/v1.1.4@92

This looks similar to #31070, but that issue is closed and the problem is still reproducible on Zigbee2MQTT 2.13.0.

What did you expect to happen?

The WS90 should continue reporting measurements without requiring a physical reset or manual rejoin.

How to reproduce it (minimal and precise)

No response

Zigbee2MQTT version

2.13.0 (unknown)

Adapter firmware version

{"build":0,"ezsp":13,"major":7,"minor":4,"patch":5,"revision":"7.4.5 [GA]","special":0,"type":170}

Adapter

EmberZNet

Setup

os: #1 SMP PREEMPT_DYNAMIC Thu Jul 30 12:31:10 UTC 2026 - 6.18.39-haos - x64
node: v24.18.1
ha: true

Device database.db entry

No response

Debug log

No response

Notes
Last health check

time: Thu Aug 13 2026 10:42:01 GMT+0200 (hora de verano de Europa central)
os.load_average: 0.36, 0.22, 0.13
os.memory_percent: 82.1974
process.memory_percent: 0.569
process.uptime_sec: 64803

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

No source file, test, or code entry point is identified. Start by reproducing the WS90 reporting failure with Zigbee2MQTT 2.13.0 and capture the device database entry and debug log; done means identifying why reporting stops and confirming continuous measurements without a reset or manual rejoin.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
embedded-iot, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.