Unable to add any Thread devices

Hello. I know that there are several other topics with the same title. I have read through them and I have spent weeks troubleshooting to no avail so I’m reaching out here in hopes that someone might have an idea of what’s going on.

My hardware is HA Green with a ZBT-2. Everything is up to date as of today:

  • Core: 2026.4.3
  • Supervisor: 2026.04.0
  • Operating System: 17.2
  • Frontend: 20260325.7

I’m running iOS 26.4.1.

My home network setup is modem → OPNsense firewall → ASUS RT-AX3000 in access point mode. I have also tried using the RT-AX3000 in wireless router mode, completely bypassing the OPNsense device altogether but I still can’t pair Matter over Thread devices.

My LAN is set up correctly as far as I can tell. IPv6 is working with 10/10 scores from the usual sites recommended for testing purposes. Multicast appears to be working normally. Running ping6 ff02::1%en0 from one of my network devices shows multiple replies from multiple devices. The NDP table in OPNsense is populated.

Under Settings → Apps → OpenThread Border Router, I see that the app is using the host network stack. In my general network settings in HA Green, I don’t see anything unusual: the IPv4 address matches what has been assigned in OPNsense. I am also able to ping HA Green’s IPv6 address from another device on my LAN.

I tried disabling the OTBR firewall but I still don’t have any luck. I have restarted my phone, HA Green, and the OTBR app many times. I have tried creating new Thread networks, deleting the old ones, and sending the new credentials to my phone.

I don’t know if this is a factor but I initially started with the IKEA DIRIGERA hub before giving HA Green a shot when that failed. DIRIGERA would see the GRILLPLATS smart plugs but my phone would still get stuck at the setting up screen before failing after several minutes. I assumed that the DIRIGERA hub was broken, which is why I switched to HA Green and ZBT-2. The DIGIGERA hub has long since been unplugged so it’s not in the picture.

The DIRIGERA Thread credentials are still on my phone and I am unable to delete them. Browsing the forums, this is a known issue/nonissue since I think that the original DIRIGERA Thread network has been deemed the preferred network and there isn’t any way to change this. Although I can’t delete the DIRIGERA keychain, I am still ensuring to set the HA Thread network as my preferred network in the HA settings. Whenever I have tried creating a new Thread network in HA, I always ensure that I delete the old keychains from my phone (except for the DIRIGERA keychain since it’s impossible to delete).

I did experiment with completely refreshing my phone and ensuring that the DIRIGERA keychain wasn’t synced to it. I installed the companion app on this freshly reset phone and even with the HA Thread network being the only one in my phone’s keychain, pairing would still fail.

My phone definitely sees the GRILLPLATS plugs. The status LED flashes like it connects and I see it under Matter devices in the iOS system systems. Just in case, I bought some Eve smart plugs (Matter over Thread) to test as well but those failed too. Kasa smart plugs using Matter over Wi-Fi work just fine.

I have combed through the OTBR logs but I still can’t determine the root cause in spite of the errors that I’m seeing. This is the latest error that I’m getting when trying to set up GRILLPLATS:

Default: mDNSPlatformSendUDP got error 99 (Cannot assign requested address) sending packet to ff02::fb on interface fe80::a4b9:33ff:feb3:4ad1/veth671b0c8/16

Previously, the main error that I was repeatedly getting looked as follows:

00:07:28.416 [N] MeshForwarder-: Failed to send IPv6 UDP msg, len:96, chksum:3c1b, ecn:no, to:de6566acf34cfece, sec:no, error:NoAck, prio:net, radio:15.4
00:07:28.416 [N] MeshForwarder-:     src:[fe80:0:0:0:743d:98a9:c95:4dd4]:19788
00:07:28.416 [N] MeshForwarder-:     dst:[fe80:0:0:0:dc65:66ac:f34c:fece]:19788

I think that I might just need to accept that Matter over Thread isn’t going to work. Every time I take a variable out of the equation (DIRIGERA hub, fresh reset of my phone, bypassing OPNsense altogether and using my AP in router mode, trying different Matter over Thread smart plugs, factory resetting devices, doing hard reboots), nothing seems to change. Unfortunately I don’t have another phone or a tablet that I can use to test but it seems less likely to me that the phone is the issue at this point when commissioning failed after a fresh reset and without enabling iCloud, which would have downloaded old data including the DIRIGERA keychain to the phone.

Regardless of whether or not anyone can help me troubleshoot, I want to thank everyone behind HA for creating such an amazing application and also for given us hardware alternatives like HA Green and ZBT-2.

Check the logs in the openthread border router app for this

openthread_border_router: Print a warning if IPv6 routing is disabled (#4546)

Print a warning if IPv6 is disabled. This is the case on Home Assistant OS 17.2 if IPv6 is not enabled on the hassio network. Enabling IPv6 on hassio network can be achived by using:

ha docker options --enable-ipv6=true

2 Likes

You also have to make sure, that NOTHING in the hole chain: phone-Wifi network-router-lan-HA-Border router is blocking IPv6 forwarding. IPv6 has to be enabled in all devices (e.g. router, firewall, switch and so on).
I read somewhere that someone had to exchange his old switch, because it was the culprit for blocking IPv6 somehow.

1 Like

I went ahead and set ha docker options --enable-ipv6=true and restarted but I still wasn’t able to connect my smart plugs. I’m trying the Eve Energy smart plugs again instead of GRILLPLATS since I think that the Eve plugs are more tried and true.

I’m starting to understand a little better how this whole system is working. It seems like the OTBR creates its own network with its own IPv6 address. My phone sees that address when HA Green and the ZBT-2 are up and running. That address isn’t in the NDP table in OPNsense so I wondered if perhaps OPNsense was getting stuck trying to figure out how to route that address.

I ended up playing it as safe as possible. I disabled IPv6 on the WAN interface. I set the LAN interface to use a static IPv6 address. Once I did that, I ensured that devices on my LAN were receiving new IPv6 addresses based on the static one that I had set.

Then I created a new gateway in OPNsense using HA Green’s LAN IPv6 address. I subsequently created a new route pointing the Thread IPv6 address to the HA Green gateway. This way, I figured OPNsense would now know how to route that address when receiving that request from my phone.

Still no luck. I’m not getting any further in the pairing process. I’m still stuck in the “Setting Up…” purgatory on my phone before it fails after a long time.

The other big question is why none of this was working when bypassing OPNsense completely and just sticking to the RT-AX3000 in wireless router mode. When I was experimenting with that router alone, I went through a host of different configuration options like disabling IGMP snooping, disabling the 5 GHz radio, using separate network names for the 2.4 and 5 GHz radios and disabling the 5 GHz radio yet again, and optimizing some other settings for IoT devices. I also found a reddit thread that made it sound like my ISP could have been distributing a troublesome IPv6 prefix so I followed the instructions in that thread to create a clean local IPv6 configuration. That still didn’t help.

For what it’s worth, I finally figured out a way to delete the DIRIGERA credentials from my iCloud keychain but that hasn’t made any difference, even after creating a new Thread network in HA and making it my preferred network.

DocMarc73: IPv6 is definitely enabled in all devices. My local IPv6 configuration seems to be sound given that all of my testing didn’t reveal any problems and mDNS seemed to be working fine. When using my router in access point mode, it doesn’t show/distribute any IPv6 addresses because that is handled by OPNsense. However, that doesn’t seem to be an issue as all of the devices on my LAN can spot one another over IPv6.

I think that it’s time for me to close the chapter on this Matter over Thread experiment unfortunately. I can’t for the life of me identify any possible culprit in this entire chain. I know that it’s a me problem since plenty of people have IKEA and other Matter over Thread devices working just fine but perhaps I have both a broken OPNsense setup and a broken setup even when disconnecting OPNsense and just using my wireless router. Factory resetting my phone, the smart plugs, DIRIGERA (when I was using it), and the RT-AX3000 hasn’t rectified the issue.

Thank you both for your suggestions and for trying to help.

Maybe it helps a bit.

I understand your frustration. MOT can be a hassle to setup. But it’s kinda fun once it is up and running. I just like the idea of not being dependent on one brand and playing around with SmartHome stuff. But obviously it’s a big time-eater for some kind of setups.

1 Like

I actually stumbled across this video when I was starting out several weeks back. I initially blamed IKEA’s hardware but even the Eve smart plugs aren’t working so I don’t think that it’s IKEA’s fault. Then I wanted to blame my phone but refreshing the OS and trying to pair after installing only Home Assistant didn’t work. I want to blame my ASUS router but aside from when I tested it in wireless router mode, I have only been using it in access point mode so it shouldn’t really be in the picture. Or perhaps I’m wrong and it is the problem but unfortunately I don’t have any other router or access point than I can use to test.

If nothing else, it would have been great to get Matter over Thread working so that I can expand my setup without having too many devices on my LAN. I’m genuinely surprised that I couldn’t succeed especially when I thought that this would all just be plug and play but so it goes. My lack of luck with the DIRIGERA hub and GRILLPLATS inadvertently led me to Home Assistant, which is a plus since it’s one of the nicest pieces of software that I’ve used in a long time.

Heliotropic, we are in the exact same position. I have a Home Assistant Green with a ZBT-2 antenna and trying to connect some of the Ikea Matter over Thread products. I went down the rabbit hole of following the advice of AI (CoPilot in my case) and it was very frustrating as it made me realise how much invalid or outdated material AI can access. But anyway, from what I understand (as a beginner), during the configuration process for Matter over Thread, there needs to be a Bluetooth connection just during the setup. Probably for others that have an accompanying device such as Google Home or Amazon Echo etc., this isn’t an issue. I have asked Nabu Casa Support about this but they are still looking into it. Anyway, in the interim I have ordered a Bluetooth USB dongle (V5.0) that I will pick up later today and plug into the other USB2 port on my Home Assistant Green. Anyway, I will let you know whether or not that helps us out.

1 Like

Very much looking forward to hearing the results of your testing. I was under the impression that Bluetooth pairing is part of the initial setup before commissioning with the Thread border router and that the only hardware that requires Bluetooth is the phone used during the setup.

I do wonder if everything would have been more seamless with something like a Google Home device or a HomePod but I’m less inclined to think that in my case because the DIRIGERA hub that I initially tried should have just worked. What’s especially weird is that the DIRIGERA could detect the smart plugs before I even started the pairing process with my phone so that fact that it was still failing seems strange.

Luckily I was able to keep the GRILLPLATS smart plugs after seeing another post where someone mentioned that there’s a hidden Zigbee mode. After reconfiguring the ZBT-2 to work in Zigbee mode, the plugs worked instantly. It’s especially nice since if one were to go this route even temporarily, you’d still be able to switch to Matter over Thread in the future assuming you can get it working.

So we picked up the USB Bluetooth dongle but unfortunately, when I went to plug it in, we realised it was damaged. So back to the store (MSY) where they confirmed it was damaged but said it had to be sent back to Mulgrave before they could officially class it as damaged and organise for a refund/replacement so maybe next week I will here back from them. HOWEVER, I also saw that there was a list (suspect this list may be a couple years old though based on what is available now) where Home Assistant specifically lists USB Bluetooth dongles that are confirmed to work. So I was thinking, why can’t my phones Bluetooth be used instead of a Home Assistant Green? And if there are only specific Bluetooth dongles that work, then how do we know which phones have the correct version of Bluetooth that will work?? So that all got me thinking that this may be the reason everything goes so smooth for some people and for others it is an absolute nightmare. Based on all that and after confirming my phone’s Bluetooth was definitely on, I decided to try another mobile phone. My phone is a Moto G86 while my wife has an iPhone 15 so we loaded Home Assistant onto her phone. With her iPhone, the screens displayed whilst initiating Home Assistant were different. Under System - Network on HA, it showed that IPv6 was set to Automatic, as was IPv4. With the Ikea Matter device laying close by the iPhone, it failed the first time so I checked out the Thread settings as I got a message saying, "Failed to save thread network credential, error: Thread network credentials does not match with any of the active thread networks around. I had to Google this, and after reading a bit about it, I ended up placing my Ikea device directly on the screen of the iPhone. I then tried to go through the process of: Settings - Devices & services - Devices - Add device - Add Matter device - No, it’s new. placed the Ikea Matter over Thread device into discovery(?) mode and scanned the appropriate QR code on the device (or documentation where there was no QR code on the device). This time it all worked. By placing the Ikea devices directly on the iPhone ad repeating the process, I was able to get all the Ikea Matter over Thread products that I had working (MYGGSPRAY, both the mains adaptor and switch for the GRILLPLATS). Hooray at last!!
I actually had two of the MYGGSPRAY motion sensors, so I went back to my Moto G86 to try that again, but this time with the Ikea device laying on the screen of my Moto phone. However, this still did not work. So, my conclusion is that either the Bluetooth version in my phone is not compatible, or else my phone’s Bluetooth is not connecting with the Ikea devices at the correct time window. Someone who is much more familiar with Home Assistant (Green) may be able to shed more light on this though.

Hope this helps you out, and please post back to let us know how you get on.

FYI, I did try turning my Moto phone’s Bluetooth off and then back on, but that didn’t change anything.

In my PC’s homeassistant.local:8123 session, I also went into Settings - Devices & services to check the Open Thread Border Router setting. It was set to Home Assistant Connect ZBT-2 (Open Thread Border Router). I also checked that the Thread preferred network was set to my ha-thread-xxxx.

This doc has lots of good info too:
Forming a new Thread network with Home Assistant Connect ZBT-2 – Nabu Casa Support

I just recently got Thread working properly after struggling for months. Kept failing to pair on both my Pixel and Iphone.

Problem resolved by changing my router’s (Asus) ipv6 setting to “Passthrough” and then settting HA’s ipv6 to disabled, waiting 10 seconds, and then back to auto.

@PJD Did you not have the Thread network credentials synced to her iPhone the first that you tried pairing? In my case, I’m not getting any error messages that clearly outline where the problem is in the pairing chain. I do know that my phone is seeing the GRILLPLATS plugs because the device LED flickers like it’s connecting after a moment and it shows up on my phone under the list of Matter devices. All of my testing makes me think it’s an IPv6 issue on my end but I also can’t figure out where the problem is there either when my NDP table is populated and my LAN devices don’t have any trouble seeing each other over IPv6.

@redonionking Did setting passthrough break your WAN IPv6 connectivity? I think that I must have tried setting passthrough at least once during my testing (using the ASUS device in wireless router mode and eliminating OPNsense from the picture) but no matter how much I played around with IPv6 settings, I still couldn’t get Matter over Thread pairing to work.

My ISP doesn’t offer ipv6. I think the key part for me was after doing that, to set ipv6 to disabled and then back to auto, seems like it holds on to invalid settings after router changes until you do that

1 Like