Bonjour,
J’ai installé le plugin matter et intégré des ampoules ledvance matter.
Les commandes ON/OFF fonctionnent, mais aucune des autres, et en particulier pas celles de la température de couleur.
Est-ce que quelqu’un aurait une idée de ce qui ne va pas ?
Ci dessous le log pour 4 commandes successives : OFF / ON / blanc froid / blanc neutre. Merci !
[2026-05-24 08:40:10] DEBUG : [matter] e[2m2026-05-24 08:40:10.029 INFO e[0;1;90mClientInteraction e[0mInvoke » e[35m@1:6•9570⇵209f e[1;39m0x1.OnOff:0x6.off:0x0 e[0mwith (no payload)e[0m
[2026-05-24 08:40:10] DEBUG : [matter] e[2m2026-05-24 08:40:10.147 INFO e[0;1;90mClientInteraction e[0mInvoke « e[35m@1:6•9570⇵209f e[1;39m0x1.OnOff:0x6.off:0x0 e[0;34mstatus: e[2;39mSuccess (0)e[0m
[2026-05-24 08:40:10] DEBUG : WS push: {"event":"attribute_updated","data":[6,"1/6/0",false]}
[2026-05-24 08:40:10] INFO : attr_updated node=6 path=1/6/0 parts=3 value=false
[2026-05-24 08:40:11] INFO : push dedup skip node=6 logicalId=state value=0
[2026-05-24 08:40:14] DEBUG : [matter] e[2m2026-05-24 08:40:14.009 INFO e[0;1;90mClientInteraction e[0mInvoke » e[35m@1:6•9570⇵20a0 e[1;39m0x1.OnOff:0x6.on:0x1 e[0mwith (no payload)e[0m
[2026-05-24 08:40:14] DEBUG : [matter] e[2m2026-05-24 08:40:14.148 INFO e[0;1;90mClientInteraction e[0mInvoke « e[35m@1:6•9570⇵20a0 e[1;39m0x1.OnOff:0x6.on:0x1 e[0;34mstatus: e[2;39mSuccess (0)e[0m
[2026-05-24 08:40:14] DEBUG : WS push: {"event":"attribute_updated","data":[6,"1/6/0",true]}
[2026-05-24 08:40:14] INFO : attr_updated node=6 path=1/6/0 parts=3 value=true
[2026-05-24 08:40:15] INFO : push dedup skip node=6 logicalId=state value=1
[2026-05-24 08:40:17] DEBUG : [matter] e[2m2026-05-24 08:40:17.591 ERROR e[0;1;90mWebSocketC~erHandler e[0;31m[0] Failed to handle websocket request [e[1mvalidation-mandatory-field-missinge[0;31m] (ValidationMandatoryFieldMissingError/128) Missing mandatory field colorTemperatureMireds
e[2;39mat e[0mObjectSchema.validatee[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter/types/src/tlv/TlvObject.ts:219:23)
at e[0mFunction.Commande[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter/protocol/src/action/request/Invoke.ts:201:27)
at e[0m<anonymous>e[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter/protocol/src/action/request/Invoke.ts:116:32)
at e[0mArray.mape[2m (<anonymous>)
at e[0mInvokee[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter/protocol/src/action/request/Invoke.ts:115:58)
at e[0mControllerCommandHandler.#invokeCommande[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/controller/ControllerCommandHandler.ts:763:13)
at e[0mControllerCommandHandler.handleInvokee[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/controller/ControllerCommandHandler.ts:829:36)
at e[0mWebSocketControllerHandler.#handleDeviceCommande[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/server/WebSocketControllerHandler.ts:805:55)
at e[0mWebSocketControllerHandler.#handleWebSocketRequeste[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/server/WebSocketControllerHandler.ts:420:41)
at e[0mWebSocket.<anonymous>e[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/server/WebSocketControllerHandler.ts:313:31)e[0m
[2026-05-24 08:40:18] INFO : push dedup skip node=6 logicalId=state value=1
[2026-05-24 08:40:18] INFO : push dedup skip node=6 logicalId=level value=254
[2026-05-24 08:40:18] INFO : push dedup skip node=6 logicalId=color value="#FF0000"
[2026-05-24 08:40:18] INFO : push dedup skip node=6 logicalId=color_temperature value=370
[2026-05-24 08:40:21] DEBUG : [matter] e[2m2026-05-24 08:40:21.067 ERROR e[0;1;90mWebSocketC~erHandler e[0;31m[0] Failed to handle websocket request [e[1mvalidation-mandatory-field-missinge[0;31m] (ValidationMandatoryFieldMissingError/128) Missing mandatory field colorTemperatureMireds
e[2;39mat e[0mObjectSchema.validatee[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter/types/src/tlv/TlvObject.ts:219:23)
at e[0mFunction.Commande[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter/protocol/src/action/request/Invoke.ts:201:27)
at e[0m<anonymous>e[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter/protocol/src/action/request/Invoke.ts:116:32)
at e[0mArray.mape[2m (<anonymous>)
at e[0mInvokee[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter/protocol/src/action/request/Invoke.ts:115:58)
at e[0mControllerCommandHandler.#invokeCommande[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/controller/ControllerCommandHandler.ts:763:13)
at e[0mControllerCommandHandler.handleInvokee[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/controller/ControllerCommandHandler.ts:829:36)
at e[0mWebSocketControllerHandler.#handleDeviceCommande[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/server/WebSocketControllerHandler.ts:805:55)
at e[0mWebSocketControllerHandler.#handleWebSocketRequeste[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/server/WebSocketControllerHandler.ts:420:41)
at e[0mWebSocket.<anonymous>e[2m (/var/www/html/plugins/matter/resources/daemon/node_modules/@matter-server/ws-controller/src/server/WebSocketControllerHandler.ts:313:31)e[0m
[2026-05-24 08:40:22] INFO : push dedup skip node=6 logicalId=state value=1
[2026-05-24 08:40:22] INFO : push dedup skip node=6 logicalId=level value=254
[2026-05-24 08:40:22] INFO : push dedup skip node=6 logicalId=color value="#FF0000"
[2026-05-24 08:40:22] INFO : push dedup skip node=6 logicalId=color_temperature value=370``
EDIT: j’ai fait une modification de code qui a l’air de fonctionner, mais je préfère vous la soumettre car je n’y connais rien : apparemment il y a un bug ligne 709 du fichier rpc-wrapper.mjs qui indique un champ color_temperature alors qu’il faut un champ colorTemperatureMireds.
La commande "
sed -i 's/color_temperature: mireds,/colorTemperatureMireds: mireds,/' \
/var/www/html/plugins/matter/resources/daemon/rpc-wrapper.mjs
"
Il semble qu’il y a un pb plus général de snakecase et camelcase…