Koenkk / Koenkk/zigbee2mqtt

Aqara W100 (TH-S04D): no button action events although thermostat_mode=OFF

Open
#32,584 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

What happened?

The Aqara W100 (TH-S04D) pairs successfully with Zigbee2MQTT.

Temperature and humidity are reported correctly.

Changing thermostat_mode between ON and OFF works and the display changes accordingly (middle thermostat line appears/disappears).

However, pressing any button (+ / center / -) never generates an action event.

Debug logging shows no incoming Zigbee message at all when pressing any button.

What did you expect to happen?

When thermostat_mode is OFF, pressing the buttons should generate action events (single_plus, single_center, single_minus, etc.) as documented.

How to reproduce it (minimal and precise)
  1. Factory reset the W100.
  2. Pair it directly next to the coordinator.
  3. Set thermostat_mode to OFF.
  4. Press any button.
  5. No action event is published.
  6. Debug log shows no incoming Zigbee message from the W100 while pressing buttons.
Zigbee2MQTT version

2.12.1

Adapter firmware version

20211210 (CC2652P)

Adapter

SONOFF Zigbee 3.0 USB Dongle Plus P (CC2652P, zStack)

Setup

Home Assistant OS

Official Zigbee2MQTT add-on

SONOFF Zigbee 3.0 USB Dongle Plus P (CC2652P)

The device was tested directly next to the coordinator.

Device database.db entry

{"id":13,"type":"EndDevice","ieeeAddr":"0x54ef441001422d2a","nwkAddr":15644,"manufId":4447,"manufName":"Aqara","powerSource":"Battery","modelId":"lumi.sensor_ht.agl001","epList":[1,2,3],"appVersion":41,"stackVersion":27,"hwVersion":12,"dateCode":"20260518","interviewCompleted":true,"interviewState":"SUCCESSFUL"}

Debug log

Debug logging enabled.

No Zigbee message is received when pressing any button.

Temperature, humidity and thermostat_mode updates are received normally.

Notes

Already verified:

  • factory reset multiple times
  • paired multiple times
  • tested directly next to coordinator
  • interview successful
  • endpoints 1, 2 and 3 available
  • genMultistateInput available
  • bindings created successfully
  • thermostat_mode ON/OFF works
  • display reacts correctly
  • temperature and humidity work correctly

The only missing functionality is button action events.

database.db shows appVersion 41, stackVersion 27, hwVersion 12, dateCode 20260518.

Changing thermostat_mode from ON to OFF changes the display correctly. Therefore commands from Zigbee2MQTT to the device work, but button presses never generate any Zigbee message.

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 by reproducing the issue with the Aqara W100 in thermostat_mode OFF while watching debug logs, then inspect the device's endpoints and genMultistateInput behavior. Compare the documented button actions with the messages received from endpoints 1, 2, and 3; done means button presses publish the expected single_plus, single_center, and single_minus events.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
embedded-iot
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.