[Matter Binding] Problem to pair Wiz Smart Plug in Openhab Docker environment

Hi,

I got a new Wiz Smart Plug. My idea is, to not use the Wiz App to connect the plug, but using openhab MATTER HUB instead. I hope that my idea is a supported scenario.

My openhab is deployed as Docker container on RASPI4 with HOST network.

IPv6 is activated and verified using

ping -6 google.com(on HOST)

and

ping6 google.com (in DOCKER)

But as soon as I try to pair the plug with the given Matter ID it is not recognized by the binding.

2026-03-28 19:41:49.276 [DEBUG] [al.controller.MatterControllerClient] - sendMessage: {"id":"52476fb9-48c6-4e63-af4e-6427d08d63d1","namespace":"nodes","function":"pairNode","args":["10416514025"]}
2026-03-28 19:41:49.287 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Received request: {"id":"52476fb9-48c6-4e63-af4e-6427d08d63d1","namespace":"nodes","function":"pairNode","args":["10416514025"]}
2026-03-28 19:41:49.289 [TRACE] [ternal.client.MatterWebsocketService] - ClientController: Executing function nodes.pairNode(["10416514025"])
2026-03-28 19:41:49.301 [TRACE] [ternal.client.MatterWebsocketService] - PeerCommissioner: Connecting to device with identifier {"shortDiscriminator":4} and 1 scanners and knownAddress "undefined"
2026-03-28 19:41:49.303 [TRACE] [ternal.client.MatterWebsocketService] - ControllerDiscovery: Start Discovering devices using identifier {"shortDiscriminator":4} ...
2026-03-28 19:41:49.306 [TRACE] [ternal.client.MatterWebsocketService] - MdnsScanner: Registered waiter for query _S4._sub._matterc._udp.local with timeout 30 seconds
2026-03-28 19:41:49.308 [TRACE] [ternal.client.MatterWebsocketService] - MdnsScanner: Set 2 query records for query _S4._sub._matterc._udp.local: [{"name":"_matterc._udp.local","recordClass":1,"recordType":12},{"name":"_S4._sub._matterc._udp.local","recordClass":1,"recordType":12}]
2026-03-28 19:41:49.313 [TRACE] [ternal.client.MatterWebsocketService] - MdnsScanner: Sending 2 query records for 1 queries with 0 known answers. Re-Announce in 1.5 seconds
2026-03-28 19:41:49.317 [TRACE] [ternal.client.MatterWebsocketService] - NodejsChannel: Socket created and bound remoteAddress: undefined:5353 localAddress: 0.0.0.0:5353
2026-03-28 19:41:49.318 [TRACE] [ternal.client.MatterWebsocketService] - NodejsChannel: Socket created and bound remoteAddress: undefined:5353 localAddress: :::5353
2026-03-28 19:41:49.320 [TRACE] [ternal.client.MatterWebsocketService] - NodejsChannel: Initialize multicast address: 192.168.178.51:5353 interface: wlan0 type: udp4
2026-03-28 19:41:49.323 [TRACE] [ternal.client.MatterWebsocketService] - NodejsChannel: Initialize multicast address: ::%wlan0:5353 interface: wlan0 type: udp6
2026-03-28 19:41:50.815 [TRACE] [ternal.client.MatterWebsocketService] - MdnsScanner: Sending 2 query records for 1 queries with 0 known answers. Re-Announce in 3 seconds
2026-03-28 19:41:53.817 [TRACE] [ternal.client.MatterWebsocketService] - MdnsScanner: Sending 2 query records for 1 queries with 0 known answers. Re-Announce in 6 seconds
2026-03-28 19:41:59.822 [TRACE] [ternal.client.MatterWebsocketService] - MdnsScanner: Sending 2 query records for 1 queries with 0 known answers. Re-Announce in 12 seconds
2026-03-28 19:42:11.823 [TRACE] [ternal.client.MatterWebsocketService] - MdnsScanner: Sending 2 query records for 1 queries with 0 known answers. Re-Announce in 24 seconds
2026-03-28 19:42:19.310 [TRACE] [ternal.client.MatterWebsocketService] - MdnsScanner: Finishing waiter for query _S4._sub._matterc._udp.local, resolving: true
2026-03-28 19:42:19.312 [TRACE] [ternal.client.MatterWebsocketService] - MdnsScanner: Removing last query _S4._sub._matterc._udp.local and stopping announce timer
2026-03-28 19:42:19.316 [TRACE] [ternal.client.MatterWebsocketService] - ControllerDiscovery: Found 0 devices using identifier {"shortDiscriminator":4}
2026-03-28 19:42:19.320 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Error executing function pairNode: No device discovered using identifier {"shortDiscriminator":4}! Please check that the relevant device is online.
2026-03-28 19:42:19.324 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Stack trace: Error: No device discovered using identifier {"shortDiscriminator":4}! Please check that the relevant device is online.
2026-03-28 19:42:19.325 [TRACE] [ternal.client.MatterWebsocketService] -     at eval (webpack://matter-server/./node_modules/@matter/protocol/dist/cjs/peer/ControllerDiscovery.js?:56:15)
2026-03-28 19:42:19.326 [TRACE] [ternal.client.MatterWebsocketService] -     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
2026-03-28 19:42:19.328 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Error name: Error
2026-03-28 19:42:19.330 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Error id: commissionable-device-discovery-failed
2026-03-28 19:42:19.332 [TRACE] [ternal.client.MatterWebsocketService] - Controller: Full error object: {
2026-03-28 19:42:19.333 [TRACE] [ternal.client.MatterWebsocketService] -     "stack": "Error: No device discovered using identifier {\"shortDiscriminator\":4}! Please check that the relevant device is online.\n    at eval (webpack://matter-server/./node_modules/@matter/protocol/dist/cjs/peer/ControllerDiscovery.js?:56:15)\n    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)",
2026-03-28 19:42:19.335 [TRACE] [ternal.client.MatterWebsocketService] -     "message": "No device discovered using identifier {\"shortDiscriminator\":4}! Please check that the relevant device is online."
2026-03-28 19:42:19.336 [TRACE] [ternal.client.MatterWebsocketService] -   }
2026-03-28 19:42:19.338 [TRACE] [ternal.client.MatterWebsocketService] - Controller: --------------------------------
2026-03-28 19:42:19.347 [TRACE] [ternal.client.MatterWebsocketService] - Controller: [commissionable-device-discovery-failed] No device discovered using identifier {"shortDiscriminator":4}! Please check that the relevant device is online.
2026-03-28 19:42:19.349 [TRACE] [ternal.client.MatterWebsocketService] -   at eval (webpack://matter-server/./node_modules/@matter/protocol/dist/cjs/peer/ControllerDiscovery.js?:56:15)
2026-03-28 19:42:19.350 [TRACE] [ternal.client.MatterWebsocketService] - matter: Sending response: {"type":"response","message":{"type":"resultError","id":"52476fb9-48c6-4e63-af4e-6427d08d63d1","result":null,"error":"No device discovered using identifier {\"shortDiscriminator\":4}! Please check that the relevant device is online.","errorId":"commissionable-device-discovery-failed"}}
2026-03-28 19:42:19.350 [TRACE] [ternal.client.MatterWebsocketService] -   at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
2026-03-28 19:42:19.354 [DEBUG] [al.controller.MatterControllerClient] - onWebSocketText {"type":"response","message":{"type":"resultError","id":"52476fb9-48c6-4e63-af4e-6427d08d63d1","result":null,"error":"No device discovered using identifier {\"shortDiscriminator\":4}! Please check that the relevant device is online.","errorId":"commissionable-device-discovery-failed"}}
2026-03-28 19:42:19.362 [DEBUG] [al.controller.MatterControllerClient] - result type: resultError

I kindly ask the community to support me identifying the root cause.

Or just tell me, this is not a supported scenario :smiley: .

Thanks in advance!

Hi,
Matter over WLAN devices cannot currently be directly paired with the openHAB binding.
I had the same problem with a Brennenstuhl power outlet.
Ultimately, I accomplished this using the Android app “NXP Matter Chip-tool”.
I paired the device with the app and then selected the “Share” function in the app. The app then generates a QR code. I then scanned this code with another smartphone. I then entered this code (something like MT:…) into the “Pair a Matter Device” Thing Action of the openHAB Matter Controller. The device should then appear in the Inbox.

Once the device has been imported as a Thing, the connection to the app can be removed using the Thing Action “Remove connected Matter fabric” of the device, if desired.
First, use the Thing Action “List connected Matter fabrics” to find the correct index number.

1 Like

Thanks for this tip!

Using “NXP Matter Chip-tool” and the WIZ Plugin in openhab, the plug is now working well!

1 Like