"Thread border router required" with Eve and Matter

on an x86 VM on proxmox with usb passthrough of a bluetooth dongle and the sonoff stick it still happens :frowning:

2023-10-28 11:25:03 core-matter-server chip.BLE[125] ERROR BLE scan error: src/platform/Linux/bluez/ChipDeviceScanner.cpp:154: CHIP Error 0x00000032: Timeout
2023-10-28 11:25:23 core-matter-server chip.CTL[125] ERROR Discovery timed out
2023-10-28 11:25:23 core-matter-server chip.BLE[125] ERROR BleConnectionDelegate::CancelConnection is not implemented.
2023-10-28 11:25:23 core-matter-server chip.-[125] ERROR src/platform/Linux/BLEManagerImpl.cpp:732: CHIP Error 0x0000002D: Not Implemented at src/controller/SetUpCodePairer.cpp:551
2023-10-28 11:25:23 core-matter-server chip.ZCL[125] ERROR Secure Pairing Failed
2023-10-28 11:25:23 core-matter-server matter_server.server.client_handler[125] ERROR [140105866701136] Error handling message: CommandMessage(message_id='1', command='commission_with_code', args={'code': 'CENSOR'})
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/matter_server/server/client_handler.py", line 188, in _run_handler
    result = await result
             ^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/matter_server/server/device_controller.py", line 171, in commission_with_code
    raise NodeCommissionFailed(
matter_server.common.errors.NodeCommissionFailed: Commission with code failed for node 1

I can’t even add it with my iPhone, it connects but then says that I need a “thread border router”

I’m also running HAOS in proxmox and trying to set up a Nanoleaf Matter/Thread bulb with a Sonoff dongle and the multiprotocol add-on. Has anyone determined yet why iOS cannot recognize the OpenThread Border Router? I’m just getting the “Thread Border Router Requred” message although I believe OTBR is running.

As far as I know, iOS devices don’t have the credentials for the OpenThread Border Router and therefor cannot join its network. I havn’t yet seen something in the UI to join an existing thread network.

I documented my issue here I can’t add my Nanoleaf essential matter smart bulb in any way · Issue #103257 · home-assistant/core · GitHub

I successfully paired my bulb with an android phone. No external hardware required (except for my sonoff dongle and HASS of course)

1 Like

FYI, I just managed to integrate a few Nanoleaf Essential LED strips into HA using the medthod that @KolBusa mentioned. I am on an Rpi4 with SkyConnect (no Apple TV or Google Nest, only SkyConnect)

  • Disabling my Bluetooth integration and restarting the matter server
  • Setting dataset via postman websocket
  • using postman to do commission_with_code while having the LED close to my Pi
  • I added a few LED strips and the last one is a few floors above the Pi, so routing works as well :slight_smile:

Could be easier, but at least it works.

1 Like

FWIW, even with Zigbee devices only on the Sonoff dongle with multiprotocol firmware, I had some reliability issues. For now I have re-flashed the single protocol Zigbee / EZSP firmware and am hoping that resolves it. The Matter dream may still be a few years out for me :pray:

1 Like

Can confirm that KolBusa method worked for onvis smart plugs. I have rpi4, home assistant OS, had to turn off bluetooth integration, restart matter integration, then two pastes into debug console and device magically appears in home assistant. Someone need to write greasemonkey script for this stuff :slight_smile:

1 Like

You can try to use my little helper. GitHub - patrickse/matter-websocket-client It connects to the Websocket port of the matter addon.

But I guess this should not be needed anymore with the latest update of the iOS app. :pray:

1 Like

Thanks for this. I found that this process was a bit hit or miss for me, and I had to try multiple times for the commissioning to work for each device I tried, but I was able to get a couple Nanoleaf Essentials bulbs onto the thread network using this.

I just changed the process a bit for me.

  1. Commission into the Nanoleaf app
  2. Add to Apple thread network (which works really fast)
  3. Open a commissioning window from the iOS home app and add the device to Home Assistant.

This works quite well most of the time. But sometimes it‘s still fails and I need to retry a few times.

Nice, when I try to add a device via the Add matter device in HA it is stuck at “Checking network connectivity” (but the device is visible in the topology of the OTBR).
Adding the device by hand with websocket works and I have the device visible in Matter integration and OTBR !

EDIT: Retry to add a device and I have the error “Commission with code failed for node x”. I can’t figure out how it have succeeded the first time … :frowning:

EDIT2 : Disabling bluetooth integration does the trick !

Probably fails for the same reason as mentioned in the github issue for issues with commissioning with Android devices - when you ask it to commission, the matter sdk is probably picking the first device it finds which is not necessarily the device you are trying to commission, especially when there was a previous attempt which failed, because now there are stale entries in the mDNS records.

1 Like

I am trying to commission my Nanoleaf Essentials Bulb and get the following error on the commission step:

{
   "message_id": "2",
   "error_code": 7,
   "details": "src/setup_payload/ManualSetupPayloadParser.cpp:49: CHIP Error 0x00000013: Integrity check failed"
}

I do have Thread credentials set:

"sdk_version": "2024.1.0",
"wifi_credentials_set": false,
"thread_credentials_set": true

Also this commission method worked previously with Onvis Smart Plug. The commission code seems to be correct (at least it is recognized by Nanoleaf App over Bluetooth). I have also fully reset the bulb before trying.

So I am not sure if this is something specific to Nanoleaf Bulb or it just stopped working in newer Home Assistant and Matter addon (I have 5.0.4 now).

Anybody had this error?

I think I have a bit of an idea about what’s wrong. python-matter-server accepts matter commission code (looks like it should be 11 digits) or QR code link (the one starting with “MT”). Nanoleaf has 8 digit commission code and QR code has the link starting with “X-HM”. So looks like Nanoleaf sticker is a HomeKit sticker that is not the same as a Matter one and does not look to be compatible (at least with “commission_with_code” API of python-matter-server).

Not yet sure if it is somehow possible to convert one into another or generate a matter code from Nanoleaf app itself.

Can you post your matter code here?

I’m pretty sure Nanoleaf bulbs are either: a. HomeKit over Thread only or b. Matter over Thread only.

They are sold as one or the other and cannot be converted by software.

So after trying and studying all help pages, I come to the conclusion that there is no way to add a Thread device to HA if you only have the Sky Connect and the OpenThread Border Router, because iPhone can only add to Apple HomeKit (and Alexa/Echo) and Android only to Nest?

I don’t plan to buy a Apple or Goolge Border Router - so I can basically sell my three Eve Plugs again? Or does it make sense to wait?

Situation similar like your.
After many attempts I returned it to Amazon.
My opinion is that the whole infrastructure is still too young.

If your thread devices are Homekit, it’s easy with only SkyConnect and OTBR: Keep the device in bluetooth range of your HA and add it via the Homekit Device integration. Once it’s added, you can move to any place where it can join the thread network. I’ve done so a few months ago.

If your thread devices are Matter, it’s more complicated, as currently there is no UI in HA to add a new device. It’s technically possible, but not suggested to do so.

But based on my personal experience of the past months, I would strongly suggest to use an Apple device as thread border router and not Sky Connect. The reason is that any time you reboot HA the entire thread network is down and it takes ages (well, many minutes) to recreate itself. When the heating season is over I will therefor transfer all my Eve Thermo and Eve Motion and Eve Power devices back to the thread network provided by my Homepod Mini (and maybe add a AppleTV for redundancy).

Has anything new happened here? I bought an Eve Energy Matter and can’t add it to anything. Google, Smarthings or Home Assistant…it always complains about the Border Router, despite that being present in Home Assistant via Sky Connect…

1 Like