Matter Thread Pairing Issue with HA Yellow / ZBT1

Hello all -
I’ve just (almost) finished a big device install based on HA Yellow and, for no clear reason, I can no longer get my iphone to successfully pair any new matter/thread device. I have 122 devices currently running on OTBR via ZBT1, I have about 15 more to pair, and i get nothing but “unable to pair” messages after scanning the new device’s qr code. I checked to make sure private relay is off, vpn is off, im on the right wifi network, etc etc. I’ve pushed thread credentials to my iphone, restarted otbr, restarted matter server, reset the front end cache, restarted home assistant yellow, restarted my router / switches wifi. ipv6 is turned on. I deleted the companion app, re-added it. I am completely stumped. I notice in the matter python server web ui the “commission new thread device” option is grayed out. Does anybody have a good method for troubleshooting this further? I am pulling my hair out.

Anybody got any ideas on this one? Some nuanced iPhone setting? I don’t know.

Check the logs of the OTBR and Matter addons.

the logs arent really telling me anything that seems unusual, but im not an expert really. i do notice that if i access the python matter server web ui and click “commission node” the “commission new thread device” is grayed out - not an option. it WAS an option last week, so clearly something is wrong…have i hit some max number of devices or something?

I had this happen to me as well a couple of months ago, as did some others and it was reported that it was due to a version(s) of iOS that was the problem. It was somewhere around version 18.6 that it was reported to work again. I myself have not tried it since then.

It needs to see a Bluetooth controller (and should be one that is not being used for other things).
For me, this is the method that I end up using after failing to commission using the Companion App. You’ll need to load up the Thread credentials into Matter Server, and you’ll also need to to tell Matter Server which bluetooth controller number it is suppose to use.

how do i load the credentials into the matter server?

In the Matter Server UI, when you pick Commission a Thread device, it will ask for the Thread dataset. Goto the HA UI->Integration->Thread and find your preferred network, and click on the (i) and where it says: Active dataset TLVs: copy the entire string (starting with something like 0e0....) and paste it into the Matter Server UI box for the Thread dataset.

Update … I just successfully paired an Aqara Door and Window P2 sensor using the HA Companion App 2025.9.3 using iOS 18.6.2.

I think I’m on iOS 26.0.1 :joy: …. I am familiar with the tlv dataset and I’ll give that a shot but when I last looked at the python server ui the option to add a NEW thread device was grayed out. The option to commission an existing one was still viable. Are you suggesting if I enter the tlv dataset there it may correct the issue of commissioning through the iPhone and companion app, or will it just enable me to add a device through the computer?

I think that is the case if the Matter Server has not been configured with a BT controller.

When using the Matter Server UI to commission, it means the Matter Server itself is doing all the Thread and Matter Commissioning work; the Companion App/iPhone are left out of all of this (so yes it just enables you to add a device through the computer)

Ok I’ll give it a shot. I would love to figure out though what is going on with the companion app. I really need that function to work and it always has until now so I’m assuming it can be fixed…. I hope…

Anybody have any idea why the companion app would just quit successfully pairing new matter/thread devices? I’ve literally paired 122 switched and outlets with it just fine until this week.

I attempted to “commission node” via the python matter server ui. the only option available is “commisison existing device” “commission new thread device” is grayed out. When I enter the matter code from the qr label, it fails to commision. “Unable to commission”. I really need to figure out what’s going on with the companion app. It makes no sense that it would just quit working all of a sudden. Anyone have any other ideas?

Don’t know about Thread, but since the technology is very similar to Zigbee, your ZBT-1 could be out of memory.

Still seems like Matter Server doesn’t see the configured Bluetooth Controller.
If you ssh into HA and enter dmesg | grep -i Bluetooth you should see something like an hci0. If you do, then you should enter 0 into the Matter Server’s config for Bluetooth Adapter ID.

i did that. itll work I think, but you have to have every device within bluetooth distance of the home assistant yellow / rpi radio to commission it. i think itll work, but i would prefer the companion app to work as it should.

I think I’m close to figuring this out. Somehow my entire network is on a certain TLV active dataset, and at some point last week the dataset changed. so the iphone is trying to commission with a new dataset. I have no idea how that happened. Before I try to restore from a backup - is there anywhere i can find a record of an older dataset tlv within home assistant if its not showing up in any of the thread / matter / otbr ui’s?

Didn’t quite follow, do you think the Thread creds in the iOS device changed?

my active dataset is somehow NOT the dataset that i originally commissioned all my devices on. im not sure how that happened, but it did. I reloaded the legacy dataset and it began working properly, and i commissioned several devices, then we lost power, when it rebooted - it rebooted the wrong dataset again. not sure why its doing that, but im trying to figure out how to fix it. I went into the thread UI and said “add dataset from tlv” but for some reason its not correcting itself in the config file (or whatever) so thread is still seeing the wrong dataset…may need to be rebooted to “take” i’m not sure…

that wasnt correct. I thought i had mixed datasets, but nope I think everthing is fine. But my companion app wont commission a device unless i restore OTBR from a backup from a couple of weeks ago. I cant figure out what is changing in otbr settings but that seems to do it, but then after a reboot etc. it quits commissioning again. anybody have any ideas?