Matter Binding

Ok, did you put the binding in TRACE logging, was there any other messages there? Are your controller or bridge things online or not? I would expect some errors somewhere (thing status for example). We have not seen any issue with the binaries, so this may be the first incident of this happening, and i’m not familiar with your mixed 32/64 bit setup and how apps run there, but its possible we detected a 64 bit system and are trying to run that version of node. If you manually install a recent version of nodejs somewhere on the system path, the binding will try and use that, which can be used as a immediate workaround if this indeed is the issue.

@digitaldan : do you have a hint for me and my issue?

I have not looked at it yet, i often need a weekend to look into issues like this.

EDIT: Also having TRACE logs would be helpful when this happens, also showing me what your item config looks like would be helpful too (and any other info you can provide)

No problem. Have a dimmable light item (Homematic) using Matter as bridge to expose this item to Alexa. Have configured metadata “Matter” and “DimmableLight”.

version: 1
items:
  HMLCDim2TSMGEQ0210172_2_Level:
    type: Dimmer
    label: Innenlicht Pavillon
    icon: DimmableLight
    groups:
      - Beleuchtung
    metadata:
      HUEEMU: "221"
      matter:
        value: DimmableLight
        config:
          label: Innenlicht

Attached the filtered section of a Trace log while i executed the following sequence from the Alexa app on my iPhone:

  1. Start situation: Alexa app shows OFF and 45% (relic from last operation)
  2. Button ON, results in ON and 100%
  3. Button OFF, results in OFF and 99%
  4. Slider to 38%, results in ON and 38%
  5. Button OFF, results in OFF and 37%
Zeile 8657: 2026-08-02 13:12:44.317 [TRACE] [ternal.client.MatterWebsocketService] - ProtocolService: Invoke « oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level.onOff.on @1:47434b132368ef1•880c⇵8b51✉01e0ed32 (no payload)
	Zeile 8658: 2026-08-02 13:12:44.317 [DEBUG] [r.internal.bridge.MatterBridgeClient] - onWebSocketText {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":true}}}}
	Zeile 8659: 2026-08-02 13:12:44.317 [TRACE] [ternal.client.MatterWebsocketService] - matter: Sending event: {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":true}}}}
	Zeile 8660: 2026-08-02 13:12:44.317 [DEBUG] [r.internal.bridge.MatterBridgeClient] - bridgeEvent message {"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":true}}
	Zeile 8661: 2026-08-02 13:12:44.317 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 0 to 100
	Zeile 8662: 2026-08-02 13:12:44.317 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"20fbe430-b17e-4206-a15b-c796532b79ae","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":254}]]}
	Zeile 8663: 2026-08-02 13:12:44.317 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"20fbe430-b17e-4206-a15b-c796532b79ae","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":254}]]}
	Zeile 8666: 2026-08-02 13:12:44.317 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":254}]])
	Zeile 8669: 2026-08-02 13:12:44.317 [TRACE] [ternal.client.MatterWebsocketService] - Transaction: Tx ◦set<oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level>#3400 waiting on @1:47434b132368ef1•880c⇵8b51✉01e0ed32
	Zeile 8677: 2026-08-02 13:12:44.491 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 100 to 0
	Zeile 8678: 2026-08-02 13:12:44.491 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"d5d0b95d-bda4-4559-8e19-8e29c53abcba","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8679: 2026-08-02 13:12:44.491 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"d5d0b95d-bda4-4559-8e19-8e29c53abcba","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8680: 2026-08-02 13:12:44.491 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]])
	Zeile 8689: 2026-08-02 13:12:46.967 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 0 to 100
	Zeile 8690: 2026-08-02 13:12:46.967 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"86085a74-a4df-4371-9645-d5ff74a63a76","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":254}]]}
	Zeile 8691: 2026-08-02 13:12:46.967 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"86085a74-a4df-4371-9645-d5ff74a63a76","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":254}]]}
	Zeile 8692: 2026-08-02 13:12:46.967 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":254}]])
	Zeile 8704: 2026-08-02 13:13:02.646 [DEBUG] [r.internal.bridge.MatterBridgeClient] - onWebSocketText {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":false}}}}
	Zeile 8705: 2026-08-02 13:13:02.646 [TRACE] [ternal.client.MatterWebsocketService] - ProtocolService: Invoke « oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level.onOff.off @1:47434b132368ef1•880c⇵8b52✉01e0ed37 (no payload)
	Zeile 8706: 2026-08-02 13:13:02.646 [TRACE] [ternal.client.MatterWebsocketService] - matter: Sending event: {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":false}}}}
	Zeile 8707: 2026-08-02 13:13:02.646 [DEBUG] [r.internal.bridge.MatterBridgeClient] - bridgeEvent message {"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":false}}
	Zeile 8708: 2026-08-02 13:13:02.648 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 100 to 0
	Zeile 8709: 2026-08-02 13:13:02.648 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"f77b7c6b-cb9c-498a-87c7-20600b4e468c","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8710: 2026-08-02 13:13:02.648 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"f77b7c6b-cb9c-498a-87c7-20600b4e468c","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8711: 2026-08-02 13:13:02.648 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]])
	Zeile 8716: 2026-08-02 13:13:02.652 [TRACE] [ternal.client.MatterWebsocketService] - Transaction: Tx ◦set<oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level>#3403 waiting on @1:47434b132368ef1•880c⇵8b52✉01e0ed37
	Zeile 8724: 2026-08-02 13:13:02.821 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 0 to 99
	Zeile 8725: 2026-08-02 13:13:02.821 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"77a9e068-1992-4b26-9455-d01a29da18d3","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":251}]]}
	Zeile 8726: 2026-08-02 13:13:02.823 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"77a9e068-1992-4b26-9455-d01a29da18d3","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":251}]]}
	Zeile 8727: 2026-08-02 13:13:02.823 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":251}]])
	Zeile 8736: 2026-08-02 13:13:05.181 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 99 to 0
	Zeile 8737: 2026-08-02 13:13:05.181 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"276a4363-9cc5-4151-9c2a-abebfcb136e8","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8738: 2026-08-02 13:13:05.195 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"276a4363-9cc5-4151-9c2a-abebfcb136e8","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8739: 2026-08-02 13:13:05.197 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]])
	Zeile 8753: 2026-08-02 13:13:22.641 [TRACE] [ternal.client.MatterWebsocketService] - ProtocolService: Invoke « oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level.onOff.on @1:47434b132368ef1•880c⇵8b53✉01e0ed3c (no payload)
	Zeile 8754: 2026-08-02 13:13:22.643 [TRACE] [ternal.client.MatterWebsocketService] - matter: Sending event: {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":true}}}}
	Zeile 8755: 2026-08-02 13:13:22.643 [DEBUG] [r.internal.bridge.MatterBridgeClient] - onWebSocketText {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":true}}}}
	Zeile 8756: 2026-08-02 13:13:22.643 [DEBUG] [r.internal.bridge.MatterBridgeClient] - bridgeEvent message {"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":true}}
	Zeile 8757: 2026-08-02 13:13:22.643 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 0 to 100
	Zeile 8758: 2026-08-02 13:13:22.643 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"bd59175c-ff40-4959-bd6e-1ebe2c9d9223","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":254}]]}
	Zeile 8759: 2026-08-02 13:13:22.652 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"bd59175c-ff40-4959-bd6e-1ebe2c9d9223","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":254}]]}
	Zeile 8760: 2026-08-02 13:13:22.652 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":254}]])
	Zeile 8764: 2026-08-02 13:13:22.654 [TRACE] [ternal.client.MatterWebsocketService] - Transaction: Tx ◦set<oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level>#3406 waiting on @1:47434b132368ef1•880c⇵8b53✉01e0ed3c
	Zeile 8772: 2026-08-02 13:13:22.711 [TRACE] [ternal.client.MatterWebsocketService] - ProtocolService: Invoke « oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level.levelControl.moveToLevel @1:47434b132368ef1•880c⇵8b54✉01e0ed3e level: 97 transitionTime: 0 optionsMask: { executeIfOff: false, coupleColorTempToLevel: false } optionsOverride: { executeIfOff: false, coupleColorTempToLevel: false }
	Zeile 8773: 2026-08-02 13:13:22.713 [TRACE] [ternal.client.MatterWebsocketService] - matter: Sending event: {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"levelControl","attributeName":"currentLevel","data":97}}}}
	Zeile 8774: 2026-08-02 13:13:22.713 [DEBUG] [r.internal.bridge.MatterBridgeClient] - onWebSocketText {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"levelControl","attributeName":"currentLevel","data":97}}}}
	Zeile 8775: 2026-08-02 13:13:22.713 [DEBUG] [r.internal.bridge.MatterBridgeClient] - bridgeEvent message {"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"levelControl","attributeName":"currentLevel","data":97}}
	Zeile 8776: 2026-08-02 13:13:22.713 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 100 to 38
	Zeile 8777: 2026-08-02 13:13:22.713 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"3a01e22f-3920-4b16-9288-ba0073c8c876","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":97}]]}
	Zeile 8778: 2026-08-02 13:13:22.713 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"3a01e22f-3920-4b16-9288-ba0073c8c876","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":97}]]}
	Zeile 8779: 2026-08-02 13:13:22.713 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":97}]])
	Zeile 8781: 2026-08-02 13:13:22.719 [TRACE] [ternal.client.MatterWebsocketService] - Transition: oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level#LevelControlBaseServer: Set currentLevel to 97
	Zeile 8785: 2026-08-02 13:13:22.719 [TRACE] [ternal.client.MatterWebsocketService] - Transaction: Tx ◦set<oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level>#3407 waiting on @1:47434b132368ef1•880c⇵8b54✉01e0ed3e
	Zeile 8793: 2026-08-02 13:13:22.840 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 38 to 0
	Zeile 8794: 2026-08-02 13:13:22.840 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"15a0d1f9-036d-496c-8195-34d49efb06ad","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8795: 2026-08-02 13:13:22.840 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"15a0d1f9-036d-496c-8195-34d49efb06ad","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8796: 2026-08-02 13:13:22.854 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]])
	Zeile 8801: 2026-08-02 13:13:23.093 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 0 to 52
	Zeile 8802: 2026-08-02 13:13:23.093 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"40eb2bb5-320b-42a5-995f-a8f1f699a349","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":132}]]}
	Zeile 8803: 2026-08-02 13:13:23.096 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"40eb2bb5-320b-42a5-995f-a8f1f699a349","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":132}]]}
	Zeile 8804: 2026-08-02 13:13:23.096 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":132}]])
	Zeile 8813: 2026-08-02 13:13:25.469 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 52 to 38
	Zeile 8814: 2026-08-02 13:13:25.469 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"ca87d6a2-d49c-4e91-935b-89301559eb9d","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":97}]]}
	Zeile 8815: 2026-08-02 13:13:25.469 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"ca87d6a2-d49c-4e91-935b-89301559eb9d","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":97}]]}
	Zeile 8816: 2026-08-02 13:13:25.469 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":97}]])
	Zeile 8832: 2026-08-02 13:13:49.291 [TRACE] [ternal.client.MatterWebsocketService] - ProtocolService: Invoke « oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level.onOff.off @1:47434b132368ef1•880c⇵8b55✉01e0ed43 (no payload)
	Zeile 8833: 2026-08-02 13:13:49.291 [TRACE] [ternal.client.MatterWebsocketService] - matter: Sending event: {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":false}}}}
	Zeile 8834: 2026-08-02 13:13:49.291 [DEBUG] [r.internal.bridge.MatterBridgeClient] - onWebSocketText {"type":"event","message":{"type":"bridgeEvent","data":{"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":false}}}}
	Zeile 8835: 2026-08-02 13:13:49.291 [DEBUG] [r.internal.bridge.MatterBridgeClient] - bridgeEvent message {"type":"attributeChanged","data":{"endpointId":"HMLCDim2TSMGEQ0210172_2_Level","clusterName":"onOff","attributeName":"onOff","data":false}}
	Zeile 8836: 2026-08-02 13:13:49.291 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 38 to 0
	Zeile 8837: 2026-08-02 13:13:49.291 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"d1b2d9b4-c7a3-4f24-9a29-17b0961b8b1d","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8838: 2026-08-02 13:13:49.295 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"d1b2d9b4-c7a3-4f24-9a29-17b0961b8b1d","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8839: 2026-08-02 13:13:49.295 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]])
	Zeile 8844: 2026-08-02 13:13:49.295 [TRACE] [ternal.client.MatterWebsocketService] - Transaction: Tx ◦set<oh-bridge.aggregator.HMLCDim2TSMGEQ0210172_2_Level>#340b waiting on @1:47434b132368ef1•880c⇵8b55✉01e0ed43
	Zeile 8852: 2026-08-02 13:13:49.754 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 0 to 37
	Zeile 8853: 2026-08-02 13:13:49.754 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"a52229af-437d-448d-8b25-ff5e971bd438","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":94}]]}
	Zeile 8854: 2026-08-02 13:13:49.754 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"a52229af-437d-448d-8b25-ff5e971bd438","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":94}]]}
	Zeile 8855: 2026-08-02 13:13:49.754 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":true},{"clusterName":"levelControl","attributeName":"currentLevel","state":94}]])
	Zeile 8864: 2026-08-02 13:13:51.783 [DEBUG] [l.bridge.devices.DimmableLightDevice] - HMLCDim2TSMGEQ0210172_2_Level state changed from 37 to 0
	Zeile 8865: 2026-08-02 13:13:51.783 [DEBUG] [r.internal.bridge.MatterBridgeClient] - sendMessage: {"id":"d622c136-6d4f-413c-964c-1925f1cbab01","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8866: 2026-08-02 13:13:51.783 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"d622c136-6d4f-413c-964c-1925f1cbab01","namespace":"bridge","function":"setEndpointStates","args":["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]]}
	Zeile 8867: 2026-08-02 13:13:51.783 [TRACE] [ternal.client.MatterWebsocketService] - BridgeController: Executing function bridge.setEndpointStates(["HMLCDim2TSMGEQ0210172_2_Level",[{"clusterName":"onOff","attributeName":"onOff","state":false}]])
Suche "meter#energyAvg1Min" (90 Treffer in 12 Dateien von 309 gesucht) [Normal: Groß-/Kleinschreibung]

As already mentioned before, the slider shows 1% as its minimum in the Alexa app. In december 2025 you mentioned an issue with the bridge logic? But finally you resolved it at that time. Now it looks pretty much the same as before you resolved it.

If i conclude right, i see more switchings in the log than commanded / required.

Thanks for your support in advance.

Just FYI Matter does not have a concept of “0%”, its “1-100” , On/Off state and Level are normally decoupled in matter (so something can be set at a 50% Level, but off), unlike openHAB. Whats odd is that Alexa will/can show 0%, but i can’t remember off the top of head why. I’ll look into it today when i’m at my computer.

Understood. But this is strange because the light is still ON (only at very low power) if i set the slider to 1%.

This also fails with Google Home, there are other issues as well:

  • If the light is off and you try to use the slider to turn on the light, it doesn’t turn on. (toggle on/off works)
  • When the light is on and you set the slider to 1%, it changes to 2% when it should stay at 1%

So this is a bit trickier to fix. The core of the issue is that in openHAB ON/OFF and Percent Level are the same measure, ie > 0 is ON and == 0 is OFF. This is not the case in matter. To make things worse, many lights dim up or down when turning ON/OFF. So turning OFF in Alexa makes the device start dimming down … but not OFF , so Alexa snaps the UI back to ON or gets in a unhappy state while dimming. I’m working through a fix, but need to test it with a number of ecosystems .

Understood.Thanks for your efforts and also to @ranielsen for his help.

So the other issue here has to do with how some Items/Channels work in openHAB. @dk8pn your light has 'autoUpdate` as true, which is the default for channels. So when we send an OFF command, openhab sets the item state to “0%” and broadcasts that before the device actually confirms it… so we hear the device is now 0% and tell the matter clients the device is OFF.

But your device is not actually OFF, its going to dim down over 2-3 seconds, and we get those state too AFTER we get the 0% off, so when you turn it off via matter or anywhere else in openHAB, we get updates like this:

0% → 75% → 50% → 25% → 0%

So we get 0% first, then jump back to 75 before going back to 0%

This can be disabled on your light’s dimmer channel, but this needs to work regardless of the autoupdate state.

Thats the last issue i’m trying to resolve.

Thanks for this detailed explanation. Understand now how tricky this is.

Noticed this discussion on dimmers (not using matter). You are probably aware that in the OH Zwave binding there is a command poll. By ZW spec, the device is not supposed to respond to the command (also no unsolicited responses) and the GET (where the device advertises it state) is delayed by the command poll setting in seconds. The default is 1.5 seconds, but with dimmers that needs to be longer (depends) or with OFF and autoupdate you can get similar 0% → 23%, but it is clearly off. There are no unsolicited device updates. If a command poll for a dimmer is set at 3 seconds, you may just get just get 0%.

Random idea block unsolicited device updates until the command state is reached, with an override of x seconds?

@dk8pn I have a build up that i think does about the best we can do and still support all device/items out there. When you turn a light off, You will still see Alexa go " OFF → ON → 75 - 50 - 25 - 0 - OFF " , so the final state will be 0% and OFF , and Alexa will reflect whats actually happening with the light, but it should now always reflect the correct final state.

If you could remove the existing matter binding before dropping this into your addons folder that would be good. Also don’t worry about the 5.3 version on this, it will work with 5.2.

Installed version 5.3.0.202608082254 and verified the functionality. It does exactly what you describe and what i expect. Can crosswise command the dimmers either from openHAB or from Alexa and the final state is always reflected right.

Many thanks to you for this fix. :heart: