How to configure preferred Thread network

Did you get a response to this, as I have exactly the same question/problem, and I didn’t see an specific answer to your question?

I’m running Home Assistant Yellow, and when trying to configure Thread, it claims I do not have a preferred network ! My only option to seems to be to add an OpenThread BR. However, there is already an existing Thread network, formed by three Apple devices acting as border routers. Why can’t I use this? (They’re on some fictitious network called MyHome72 - where this name came from, I’ve no idea, and I’d love to change it if I knew how, but that’s another topic.)

How do I configure HA-Y to use this existing Apple Thread network as my preferred Thread network. (I see no point in creating yet another one.) Is there some config in HA that needs to happen?

Thanks in advance.

1 Like

I’m looking to combine my Thread networks into one.

I have a HA Yellow with a seperate SkyConnect running the thread firmware. It’s working correctly and I have some matter devices connected and functioning.

I also have Apple TV’s and a Google Nest Hub that I’d like to combine to provide a better thread coverage across my home.

Is this possible?

2 Likes

I have the same setup that I’m trying to get working with a Home Assistant Yellow with a separate SkyConnect. So I’m interested in the answer about combining networks with my HomePods too.

Also how do I go about changing the channel on the SkyConnect as at the moment both ZHA (on the inbuilt Zigbee radio) and Thread (on the SkyConnect) are using the same channel.

Although I’ve spent a considerable amount of time trying to learn Thread/Matter, I’ve still more to learn, so I may be a little bit incorrect here, but … my understanding at the moment is that the basis of a Thread “network” is a network made up of devices that have a common Thread “dataset” (“dataset” contains things like credentials, radio channel, etc.). So If you want to have HA’s OTBR/Thread/Skyconnect on the same Thread network as the HomePod, then one somehow needs to get the Thread dataset from the Apple BR and provide it to HA’s OTBR/Thread/Skyconnect for it to operate with.

Currently, getting the thread dataset from an Apple BR is a problem. Ideally the Apple BR would have some API for HA to use to get the dataset, but I don’t think one exists. The HA companion iOS App would be another candidate for getting at the dataset, since it has this ability, but as I understand it, Apple has not given NabuCasa/HA permission to do this yet. The only way thus far I have heard to solve this problem is to build a “dummy” device that can be added to an Apple Thread network, which once joined will get the dataset, and then somehow one can extract the dataset from this dummy device.

Since HA/SiLab’s Multiprotocol requires both its Zigbee and its Thread stack to use the same RF channel, I think what you mean by this is that you want Multiprotocol on Skyconnect to use the same channel as the HomePod … So if somehow you can get the HomePod Thread dataset configured into Multiprotocol’s Thread stack, then the dataset will tell Multiprotocol’s Thread stack what channel to use. If it differs from ZHA, then I think you can configure ZHA to use that channel.

Best Regards

2 Likes

Thanks for the comprehensive response Tommy. It sounds like there’s a way to go before the thread network functionality becomes robust. Originally I planned on just using the HomePods as BRs. However I’ve found at random intervals the thread devices drop off the HomePods’ thread network - requiring me to re-pair and unpair the devices from HomeKit again, then adding them again to HA.

For the second question, I’ve got two separate radios - the Silabs radio in the Home Assistant Yellow and a second one in the SkyConnect. I bought the SkyConnect before I decided to buy the HA Yellow but in the end decided to keep it so I could set the network channels independently for Thread and Zigbee. So I’m currently using ZHA with one radio and the Openthread Border Router with the external SkyConnect radio. Unfortunately I’ve not worked out how to set the thread channel.

I did a write up on how I changed the thread channel. In that write-up (see below), I did not have any Thread devices, just the Multiprotocol AddOn OTBR. If you already have Thread devices attached to the AddOn’s Thread network, I’m not entirely sure it will work, but it does have the potential to work.

1 Like

Perfect… looks like what I need. No thread devices attached at the moment - so not an issue.

@ErMejoo
Just be aware when using Mutliprotocol Support, you are using the same radio hardware to do both Thread and ZigBee. If you use different channels, it will cause issues, especially as you build your network as the radio is constantly switching channels.
You should use the same channel for your Thread and Zigbee network. It’s like having 1 WiFi access point broadcasting two SSID’s. They will be on the same WiFi channel.
That is why you get a warning about different channels.

Thanks @brendan for the expand. In fact I have been patiently waiting for the channel change to be supported for ZigBee, this was added recently and we are now able to change ZigBee channel and then merge the SkyConnect network with the Google Nest network, I can confirm this worked for me and I now have one unique network with the internal and external border routers, really nice! Just missing any thread devices now :blush::blush:

It’s been semi supported in yaml for a while, but probably not ideal as apparently you need to repair everything.
Also, when choosing channels, unless you have issues, channel 15 is the best one. Some of the more unusual channels are not supported by all devices.
20 would be my second choice if 15 gets interference

Yeah exactly, the YALM solution was pretty dirty, this is now in the GUI of ZHA within the integration configuration and it did go ahead flawlessly for me, all devices reconnected on their own.

Channel-wise, in this case channel was forced to 18 as used by the Google Nest network, as I’m not sure if/how we are able to change that channel in the first place, so the change was in ZHA from 15 to 18, and then through the Thread integration I could add the HA network to the Nest one. Is there anything we are in control of re. Google’s Thread network channel, can it be changed?

can you share some info on how it was done? I am struggling to find details on that…

how can you add thread/matter devices?
i cant.

If you have Apple TBR devices & HomeKit-compatible Thread device:

  1. Install HomeKit Controller integration in HA
  2. Add the thread-capable device to HomeKit (via standard method/Apple device + Home app)
  3. wait till the device has transitioned to Thread (vs Bluetooth for example)
  4. remove the device from HomeKit
  5. check HA for notification from HomeKit Controller add-on

(HA should immediately generate a notification allowing you to pair the device with it)

This method does not require a SkyConnect/other USB dongle (works in a VM for me)

Though this worked for me when running hass os in Hyper-V, unfortunately I’ve noticed it stops working in other situations:

  • hass os running in QEMU/ProxMox
  • “Server For Home Assistant” macOS app

Hi all. With the new developer beta firmware for my HomePod Mini, in the iOS flame app, I am seeing thread version as 1.3.0. Is there any way I can merge the Apple thread network with other thread networks? I investigated a bit but can’t figure anything out. Hopefully this knowledge helps.

Good background article on where we are with shared thread networks/credentialing.

2 Likes

i got no homekit.

so i will not be able to use the “new standard communication network that works in EVERY system the same”-shit…

I just received my HA Yellow box, a few days ago and now I am trying to integrate my thread network (2 AppleTVs as Border Router) so that I can see my EVE devices (they are thread only) in HomeAssistant.
I have installed the MultiProtocol Add-on and activated it.
This is what I see in the Thread Integration:

As per the Thread Matter & Thread: where we’re at I would expect to be able to make MyHome2 the Thread Network for HA, but I do not find a way to do that, i.e. the “Make Preferred Network” is missing.

I am relatively new to HA, so would appreciate easy to follow guidance :slight_smile:

Many thanks in advance!

1 Like

My guess, is that you would need to set up Eve Matter devices in apple home, then onboard those Matter devices into home assistant with the secondary Matter code derived from the apple Home.app.

Only under that scenario would the Apple thread network share credentials with HA yellow thread network.