Join SkyConnect OTBR to existing Homekit thread network

I’ve recently purchased a SkyConnect as I wanted to add a second Thread Border Router to my existing Homekit thread network. I’m aware of the issue that one needs the credentials of an existing network to join it, so I’m not surprised that when installing SkyConnect and enabling the multiprotocol addon, it will setup a new, empty network. But:

The usual way to add a Homekit device to HA is to first add it to Homekit, let it join the thread network, then remove it from Apple home, then HA discovers it and allows to add it. So I assume there should be a way to join the Open Thread Border Router created by SkyConnect to Homekit? If the SkyConnect dongle had a 8 number code or a scannable QR code printed on it, it should be possible to add it to Homekit first, right? Is there any way to do so?

The HA Thread documentation reads:

“You might already have a TBR as part of other products in your home, like a Google Nest Hub Gen 2 or Apple HomePod Mini. […] It is possible to align credentials for TBRs from different vendors and have them form a single network together. This allows you to freely move devices between rooms without losing connectivity. To do this, you need to make sure that all TBRs use the same credentials. Currently, this works differently for each TBR vendor.”

…so, how does this work for Apple as TBR vendor?

I purchased the SkyConnect for the single reason of extending my existing thread network (with 30-40 devices mostly from Eve and Nanoleaf) and would be unhappy if there’s no way to use it.

Any help appreciated. Thanks!

PS: This Reddit post indicates that it is possible to obtain the homekit thread credentials using the Nanoleaf app. Now I wonder: if the Nanoleaf app can read&display these, why can’t Home Assistant do so with all the devices connected to it? The solution can’t be to ask everyone to purchase a Nanoleaf light bulb just to be able to add SkyConnect to Home Assistant.

Update, in case anyone has the same issue: The suggestion in the reddit post works.

Buy a Nanoleaf bulb and add it to homekit, in the Nanoleaf app go to settings > thread network, click the header of the pane with the apple border router and you’ll see the name, channel, pan id, extended pan id, network key and PSKc for your thread network. Add this information to the script referenced in the reddit post, create your TSV, go to HA settings > devices > thread, click configure for your network, then in the upper right corner click the three dots (what a hidden place!) and add the TSV there.

Currently the networks join and split every few minutes, I’ll see if it settles after a restart and some time. It’s flaky, but it’s a step forward.

1 Like

I have a Thread enabled and joined device, an Eve Energy, but the Eve app doesn’t seem to relinquish this information, and the Nanoleaf app doesn’t want to talk to non-Nanoleaf devices it seems. Are there other apps that will show this information, or does it for some reason need to be the first party app?

I had serious issues with the combined thread network, so I let SkyConnect create its own thread network on a different channel than the Apple thread network and rejoined all devices to that new HA thread network. The only device I couldn’t join was my HomePod Mini, so that’s on its own now. I’m hoping I can join these two networks some time in the future.

When joining Eve devices to the new thread network I had to completely reset them while in bluetooth range of my HA server and join them there. From this moment on the Eve app on iOS does not see them any more (as the Eve app only searches the old thread network that’s now empty).

Joining Nanoleaf Matter bulbs was another challenge, as the matter implementation does not have a UI for commissioning. There’s a thread somewhere here on the forums explaining how to do XHR requests from your web browser to the matter server, commissioning the device by sending the 8 digit (?) code to the server. As with the Eve Homekit devices above: The iOS Nanoleaf app does not see the device as iOS does not know about the non-Apple thread network (or does not have the credentials to join it).

Huh, that sucks, I was under the impression that Thread and Matter were here to make interoperability better, not worse…

1 Like

Interoperability is better. There’s just currently no protocol for exchanging credentials for Thread networks between devices from Apple, Google, Nanoleaf,… and it doesn’t look like it’s around the corner.

To me that sounds like inoperability is worse.
Thread has been a nightmare- all homekit thread devices won’t stay connected.
None of the good stuff is around the corner

1 Like

Should be much easier now that the iOS app can import Apple thread credentials.

1 Like

@NateUT can you elaborate?

Which iOS app are you talking about?

Where are you retrieving these credentials to import?

1 Like

Seems this is decently covered in here, but have yet to get it working properly.