Zigbee2mqtt light issue after update to 5.3.1

Hello,

@pierre-gilles
For information, since the update to 5.3.1, my lights no longer work. I have this in the logs:

gladys | 2026-11-02T18:17:44+0100 scene.executeActions.js:47 (executeAction) BadParameters [Error]: Zigbee2mqtt expose not found: « zigbee2mqtt:Lumière couloir:switch:binary:state » with property « state »
gladys | at Zigbee2mqttManager.setValue (/src/server/services/zigbee2mqtt/lib/setValue.js:38:11)
gladys | at DeviceManager.setValue (/src/server/lib/device/device.setValue.js:32:24)
gladys | at Object.device.set-value (/src/server/lib/scene/scene.actions.js:126:24)
gladys | at executeAction (/src/server/lib/scene/scene.executeActions.js:39:37)
gladys | at SceneManager.executeSingleAction (/src/server/lib/scene/scene.executeSingleAction.js:21:11)
gladys | at EventEmitter. (/src/server/utils/functionsWrapper.js:13:13)
gladys | at EventEmitter.emit (node:events:514:28)
gladys | at Event.emit (/src/server/lib/event/index.js:18:16)
gladys | 2026-11-02T18:17:45+0100 scene.executeActions.js:47 (executeAction) BadParameters [Error]: Zigbee2mqtt expose not found: « zigbee2mqtt:Lumière couloir:switch:binary:state » with property « state »
gladys | at Zigbee2mqttManager.setValue (/src/server/services/zigbee2mqtt/lib/setValue.js:38:11)
gladys | at DeviceManager.setValue (/src/server/lib/device/device.setValue.js:32:24)
gladys | at Object.device.set-value (/src/server/lib/scene/scene.actions.js:126:24)
gladys | at executeAction (/src/server/lib/scene/scene.executeActions.js:39:37)
gladys | at SceneManager.executeSingleAction (/src/server/lib/scene/scene.executeSingleAction.js:21:11)
gladys | at EventEmitter. (/src/server/utils/functionsWrapper.js:13:13)
gladys | at EventEmitter.emit (node:events:514:28)
gladys | at Event.emit (/src/server/lib/event/index.js:18:16)
gladys | 2026-11-02T18:17:47+0100 scene.executeActions.js:47 (executeAction) BadParameters [Error]: Zigbee2mqtt expose not found: « zigbee2mqtt:Lumière chambre Parents:light:binary:state » with property « state »
gladys | at Zigbee2mqttManager.setValue (/src/server/services/zigbee2mqtt/lib/setValue.js:38:11)
gladys | at DeviceManager.setValue (/src/server/lib/device/device.setValue.js:32:24)
gladys | at Object.device.set-value (/src/server/lib/scene/scene.actions.js:126:24)
gladys | at executeAction (/src/server/lib/scene/scene.executeActions.js:39:37)
gladys | at SceneManager.executeSingleAction (/src/server/lib/scene/scene.executeSingleAction.js:21:11)
gladys | at EventEmitter. (/src/server/utils/functionsWrapper.js:13:13)
gladys | at EventEmitter.emit (node:events:514:28)
gladys | at Event.emit (/src/server/lib/event/index.js:18:16)
gladys | 2026-11-02T18:17:48+0100 scene.executeActions.js:47 (executeAction) BadParameters [Error]: Zigbee2mqtt expose not found: « zigbee2mqtt:Lumière chambre Parents:light:binary:state » with property « state »
gladys | at Zigbee2mqttManager.setValue (/src/server/services/zigbee2mqtt/lib/setValue.js:38:11)
gladys | at DeviceManager.setValue (/src/server/lib/device/device.setValue.js:32:24)
gladys | at Object.device.set-value (/src/server/lib/scene/scene.actions.js:126:24)
gladys | at executeAction (/src/server/lib/scene/scene.executeActions.js:39:37)
gladys | at SceneManager.executeSingleAction (/src/server/lib/scene/scene.executeSingleAction.js:21:11)
gladys | at EventEmitter. (/src/server/utils/functionsWrapper.js:13:13)
gladys | at EventEmitter.emit (node:events:514:28)
gladys | at Event.emit (/src/server/lib/event/index.js:18:16)
gladys | 2026-11-02T18:17:53+0100 device.newStateEvent.js:18 (DeviceManager.newStateEvent) DeviceFeature « ext:ext-prohand-gladys-z2m-devices-monitor:z2m-device:0x842712fffe416873:silence » not found (or not added to Gladys), skipping state update.

I rolled back my zigbee2mqtt to 2.14.2 but I still have the same problem, knowing that I had tested 2.14.3 and the light was working very well :wink:

Thanks

Hi @prohand,

Thanks for the feedback! On my end, I can’t reproduce the issue: I’m on 5.3.1 and all my Zigbee2mqtt lights are working normally.

The error Zigbee2mqtt expose not found means that, when the scene sends the command, Gladys can’t find your lamp in the list of devices that Zigbee2mqtt sends to it on startup. So, the command itself isn’t the problem: Gladys can no longer « see » your Zigbee2mqtt devices.

To understand what’s happening on your end, can you tell me:

  1. In Integrations → Zigbee2mqtt, are the three links (Gladys ↔ MQTT ↔ Zigbee2mqtt) all green?
  2. Does the Discovery tab of the integration list your devices, including « Hallway Light »?
  3. Are your other Zigbee2mqtt devices still reporting their states in Gladys (sensors, lamp state when you turn it on from Zigbee2mqtt)?
  4. If you restart Gladys, does it work again, even temporarily?
  5. I saw in your logs your integration gladys-z2m-devices-monitor. Is it connected to the same MQTT broker as Zigbee2mqtt, and is it publishing messages on the topics zigbee2mqtt/...? Did you install or update it at the same time as 5.3.1? If you can, try disabling it for a moment to see if the lights work again.

Thanks!

Thanks for the quick reply :wink:

Well, it seems to have come back on its own, and at the same time, I received the update messages on my channel, even though I had done the update a while ago. I even rebooted Gladys.

Just a small detail: I had to reactivate the zigbee2mqtt service right after the update. I don’t know if that’s normal or if I just wasn’t patient enough :sweat_smile:

Great, thanks for the feedback!

The fact that everything came back just as you received the update message is the key that explains everything: Gladys only sends this message once all integrations have started. They start one by one, and the first startup after an update can take some time (updating Docker containers, starting external integrations…).

As long as the Zigbee2mqtt integration hasn’t finished starting, Gladys doesn’t yet know about your devices, hence the expose not found error in your logs. Once the startup is complete, everything returns to normal on its own.

So nothing is broken in 5.3.1, and normally you didn’t need to reactivate the Zigbee2mqtt service: it would have started on its own. You just needed a bit more patience :slightly_smiling_face:

Perfect, thank you :wink:

Hi everyone!

This topic is now in development.

A PR has been opened to clearly show that Gladys is still in the process of starting its integrations:

Feel free to follow the PR, test (optional, especially for small requests) and give your feedback here if needed.