#thread-archived
1 messages · Page 16 of 1
Do thread border routers designate only one to be an entry and exit point to the network? An example could be multiple home pods on different floors. Does a thread message find the nearest device that can act as a border router to enter/exit the network, or will it only use a single entry/exit device?
All border routers announce themselves as a router and it’s up to the clients (in our case, the Linux kernel) to decide which ones to use
It’s working at IPv6 level so there’s no mesh awareness
It could decide to use the br furthest away from your end device
It can even use multiple BRs for a single connection
However if the border routers use TREL they might forward packets over Ethernet/wifi to a closer border router, then that border router would send the packet to the device
i think with how the mesh routing works, traffic from a thread device to outside the thread network will end up using the "nearest" thread border which advertises a route to the destination?
So multiple devices can be acting as a border router (not just a router) in the same thread network?
Yes
In that direction (thread -> infra), yes
That's what I was thinking, but I wasn't sure if routes were also partially determined by signal strength. A thread device in the basement where there is poor wifi could use a border router to exit the physical network or continue on a series of thread hops to a stronger exit condition.
Infra -> thread will be more or less random on Linux
Though I think if you have OTBR running on same host as ha its routes have precedence
(It used to be that it never ever used OTBR for infra -> thread, so having an OTBR was pointless)
A device on the mesh can't/doesn't know anything about the network conditions off mesh, so if you had a WiFi based border router with poor signal, and one with good signal elsewhere, an on mesh device wouldn't be aware of this and wouldn't factor it into its routing
Devices on mesh pretty much always go for shortest path (and that path finding does include signal strength of the thread network devices, but again knows nothing about the network the other side of the border router)
TREL can help optimise the traffic entering a mesh, and traffic already onboard a mesh. Doesn't help traffic leaving a mesh
yeah, trel can only do so much for a not the best network setup
trel shines when it comes to ethernet tho
But the border router knows its own state though, right? A decision to update its own routing table to prefer forwarding onto another thread router or swapping over to route via WiFi.
Not how thread works so no
Do keep in mind though the maximum bitrate for thread is absurdly low, chances are if a WiFi BR had a signal at all, it would be capable of serving it's role
And by absurdly low, the max the radio phy can put through is only about 250kbit/s
If the WiFi can't maintain that, then I'd question why a BR was even placed there
This doesn’t seem to help with reducing network traffic and congestion though, unless all devices are on network
Remember thread is designed for IoT type applications that simply didn't need more bandwidth
It's not meant to run a web browser, play games, stream video and music
Oh and those Phys are half duplex, you can get 250kbit/s in one direction at a time only, and only assuming perfect signal, just the same way your WiFi advertises being 1800mbps but never is
An apple homepod stuck downstairs, isn't gonna run it's voice processing or music etc over the thread network
And protocols like homekit and matter? They're not spamming packets 24/7. They're more meant to send one tiny tiny little packet to turn a light on, or wait for 1 tiny tiny packet to be sent from a sensor etc
So the thread max bitrate isnt a problem for them, just same as it isn't a problem for ZigBee. Plus multicast groups in matter and homekit allow further optimisation
Matter groups would allow you to send a single multicast packet to set multiple bulbs to the same state rather than 1 packet per bulb
All in all, it'd just be illogical to stick a BR in a location without WiFi or ethernet, and if it lost its connection it'd simply stop being a BR
If increasing mesh coverage was desired, sticking a bulb or a smart outlet in somewhere tends to be the better option, restrict the BRs where reliable function can be maintained
Moved from SkyConnect multiprotocol to SkyConnect just thread.... the nanoleaf essential lightstrips that I run seem to be much more stable (touch wood!), do i need to do anything about these messages?
2024-04-26 23:51:04.600 ERROR (MainThread) [aiohomekit.controller.coap.connection] Decryption failed, desynchronized? Counter=1207/1209 2024-04-26 23:51:04.620 ERROR (MainThread) [aiohomekit.controller.coap.connection] Decryption failed, desynchronized? Counter=759/761 2024-04-27 06:37:11.643 ERROR (MainThread) [aiohomekit.controller.coap.connection] Decryption failed, desynchronized? Counter=1622/1624 2024-04-27 09:32:21.909 ERROR (MainThread) [aiohomekit.controller.coap.connection] Decryption failed, desynchronized? Counter=1945/1947 2024-04-27 11:22:39.868 ERROR (MainThread) [aiohomekit.controller.coap.connection] Decryption failed, desynchronized? Counter=1631/1633
Maybe, maybe not. Basically they mean packet loss is happening. You’ll always get some packet loss. If it’s happening a lot you might need to build out your mesh.
Thanks 🙏 got 30 or so hue lights connected directly to ha with some wall switches and power plugs. Any way I can figure out what device is getting the packet loss?
Hue aren’t thread so we can rule those out 🙂
Oh yea duh!!!
Sorry was just checking something on my zigbee network so brain was not switched right.
Only got 2 Nanoleaf essential light strips, maybe I need to move the skyconnect closer to these
Maybe
They on the newest firmware?
I don’t think I have the gui enabled
you can enable it by going to the network part of the config settings of the thread add-on
only coz i was going to see whats the strength of the link between the skyconnect and child node
Hey! Trying to set up my Thread and HomeKit-supported light via the Home Assistant SkyConnect with the OpenThread Border Router addon, but it's not being recognized. What can i do?
Yes, the device isn’t showing as a discovery device
Homekit over thread requires a Bluetooth dongle unless you are using apples thread ecosystem
Device needs to be close enough to the SkyConnect and to the Bluetooth dongle to be discovered
And HomeKit can only be paired to one ecosystem at once, so if it’s connected to iOS already you’ll need to remove it. You might even need to reset it.
When it’s connected by Bluetooth there is a button on the device page to migrate it from Bluetooth to thread
Ok. Thank you!
If you don’t have a Bluetooth dongle make sure you read the docs on the home assistant site and get a supported one. Some of them have really bad Linux support - Realtek chips crash every couple of minutes 🥲
I have a Bluetooth dongle that I use to control an Eve Energy via HomeKit Device and it seems to work quite well.
it works. Thank you
Anyone tried new (2.6.0) OTBR with network device?
Tried adding network device in few formats, but always get same error :
Missing required option 'device' in OpenThread Border Router (core_openthread_border_router). Got {'device': None, 'baudrate': '460800', 'flow_control': True, 'autoflash_firmware': True, 'otbr_log_level': 'notice', 'firewall': True, 'nat64': False, 'network_device': 'socket://192.168.1.144:6638'}
This is how it looks in YAML. removing device line also gives error:
baudrate: "460800"
flow_control: true
autoflash_firmware: true
otbr_log_level: notice
firewall: true
nat64: false
network_device: socket://192.168.1.144:6638```
Looks like you can just select random device and IP address of network device - that should work. Maybe 🙂
is there a dedicated Thread USB dongle?
OK, got that enabled now. I see 1 leader and 2 routers… im guessing the leader is the SkyConnect and the routers are the two Nanoleaf controllers?
yep. if you click on the leader, and on the little side bit. click on the route, what does the LinkQualityOut & LinkQualityIn look like? what number are they?
IdSequence: 95
RouteData:
RouteId: 0x21
LinkQualityOut: 3
LinkQualityIn: 3
RouteCost: 1
RouteId: 0x27
LinkQualityOut: 3
LinkQualityIn: 3
RouteCost: 1
RouteId: 0x28
LinkQualityOut: 0
LinkQualityIn: 0
RouteCost: 1
hmm, 3 is best
to be fair, this is a rough guide (something like 3 is best, 2 is ok and 1 is dropouts/delays)
so is the light not always responding to request or what? might be an issue on nanoleafs end
Before changing from multi protocol to just thread they would go offline all the time, now on just thread for SkyConnect they seem more stable, just getting the errors.
yeah, multipan is janky at best
About 20 errors today, but the lights are working ok.
funny enough j3ck put out a patch but never got to the root of the issue
seems to be common, so your not alone
but it seems to come down to the end device?
I think its just that the Nanoleaf controllers are “janky at best” 🙂
hahaha thats true 😛
but yeah, nothing to be alarmed about it seems, and its on some peoples radar
I tried replacing the strips with hue ones, but the nanoleaf RGBCW strips work much better over our kitchen bench as the hue uses some green to make white.
The decryption errors are because homekit increments a counter every time it sends a packet and uses that as part of the encryption so that each packet has a new key. Gives the protocol resilience against replay attacks. Unfortunately HomeKit over thread is UDP so if packets get lost, you can desynchronise - the device and controller have different counter values - and the only way to recover is to connect again and start a new session.
huh dope!, that makes sense
The HA implementation has extra mitigations where it guesses what the key could have been by assuming it missed up to 10 packets
Increment, try again, increment, try again
But that’s dangerous because you might miss state changes. So we poll occasionally too.
We did have a bug with this where if the device didn’t behave as expected (didn’t send an error but instead ignored us) we might not ever reset the connection counters. That was fixed a good few months ago.
Now if it happens (especially sporadically) it just indicates network instability.
But it’s udp, could have got lost on your wifi just as much as thread.
We used to see HomePods reconnecting to WiFi a lot and that would cause the kind of packet loss we are talking about.
Really now the reconnection error is fixed it probably just needs changing from an error log to a debug or something.
And just when I mentioned it seemed more stable 🙂 Time to move on from these nanoleaf essentials. https://hastebin.com/share/imisehigas.python
Hey everyone, I have a nanoleaf light bulb that hasnt reconnected since a power outage anyways to renew it without having to reset up the whole thing? Currently its showing up as offline, I have tried turning off and on again
have you only got it in home assistant?
and can you connect to it (over bluetooth) in the nanoleaf app?
@twin vine I had it in google and home assistant but couldnt connect in anyway including bluetooth on the app - ended up readding it but would love to know a short cut
if the nanoleaf app can't see it over bluetooth, probably the only thing you could do is try to reset the bulb.
(that bluetooth is a separate connection type that should always work)
Is there a Skyconnect specific channel here?
I need some help using the flasher on linux
The web flasher tool
I'm on PopOS latest one, using chrome from the pop store.
And it's just not detecting it. I'm pretty sure I saw the Skyconnect mentioned by name when it was detecting devices during boot. So clearly the OS recognised it. 🤔
@sick swan might know, seems strange if it’s picked up on boot
are you not using HA at all with the skyconnect?, as the thread add-on typically flashes the newest firmware version in that container regardless
I ended up doing it through Windows,
I use Multi-Protocol and try to check if there's any new firmware released manually. I like to be on the latest out there. Home Assistant seems to sit on earlier versions for a while, I assume for stability reasons
And if there was a beta for the Multi-Protocol, I'd get that too
yeah, multipan isnt really being worked on much from what ive gathered (and whats been said here)
Yeah, think that was the only option
Multiprotocol is tied to a specific firmware. Even if you upgrade, the addon will downgrade it to the specific version in the addon.
Hi All - Following on from previous comments... is it pretty much the fact that the nanoleaf essential controllers are just not great and I should change? I had hoped changing from multiprocol to thread only fimware on the Skyconnect would have helped but it seems not: https://hastebin.com/share/pehatekexo.python
they on the newest firmware?
Yep just changed from multi to thread a couple of weeks ago? Also saw a thread broader router update no so long ago as well
i mean the actual bulbs/controller itself
you can check the firmware in the nanoleaf app
1.6.49
Yea… thread 🙂
The HomeKit thread ones, connected directly to SkyConnect, not via apple thread network,
I have a homekit and matter nanoleaf light strip side by side and they both work fine. On a thread mesh powered by Apple border routers.
Did this ever happen? I get this error when trying to provision thread credentials to my Nanoleaf Essentials bulbs. I also can’t add them using the Homekit -> unpair -> add to HA because that results in a “this accessory is already paired” error. I’ve tried every combination of things I can think of and it always ends in one of those two errors. I consider myself pretty technical but I’m completely lost on this one. I’m honestly considering just moving back to homekit (for the bulbs at least) since nothing seems to work. It is frustrating :(
(Ping me please since I won’t be actively checking here)
Yes, this got fixed in the OTBR lib and bumped in Core:
https://github.com/home-assistant/core/pull/109823
@dawn shore what version of Core are you using? If it is newer than 2024.3.0, then maybe your TLV string has yet another vendor tag 😢 If so, please DM me to share, than I can have a look.
If you get “this accessory is already paired” that’s usually because it failed to remove it from apple. If it can’t immediately remove it, it (Apple) will pretend it worked. Another edge case is if homekit discovered it before you paired to Apple (possibly by Bluetooth or by thread) and you end up with a discovery that is stale - that’s why I usually tell people to remove the device from Apple and then restart HA.
The only other way to trigger this error is if Ha actually did try to pair and it got right to the end of the process and the device thought pairing was over but HA couldn’t finish enumerating its capabilities. That could happen if the thread mesh signal was lousy or if your device had a novel combination of services and characteristics that we haven’t reverse engineered.
(I am assuming homekit over thread here)
How do I find the 32 letters network key for my Home Assistant Thread? Trying to add a device which is asking for one
What device out of interest?
With matter your phone should send it over Bluetooth, and with homekit over thread, HA or your phone can send it over Bluetooth. And it’s built into the integrations so you never see it.
I don’t think there is Ui for getting the TLV or network key directly because those are the only 2 device families currently targeted in HA?
But you should be able to get it out of OTBR with the ot-ctl command
ot-ctl dataset active -x gets you the TLV, I think the dataset command has a networkkey sub command too
I am trying to add an EVE Door and Window sensor. I have managed to add one a few months ago but now I need to add more.
I do not remember how I added it!
However, when I am trying to add it through Smartthings it asks for a network key to my Homeassistant thread. I have a SkyConnect.
It does not work by adding it directly into HA.
ok, if you are adding it to smartthings im guessing its matter, not homekit over thread
are you android? not ios?
Yeah, I tried IOS but it said I needed a thread router.
yep
ok, do you know how to manually sync thread credentials on your phone?
through the HA companion app?
I went into the HA app and under troubleshoot > sync thread-auth
and what did it say?
Successful, but I am doing it again just to be sure.
Yeah, sucessful "Home Assitant and this device uses same network"
good
sometimes the message sounds like it was successful but google silently dropped the request and pretended it worked
but thats the "good" successful message
so you have one already added, and its working right now?
Yeah, but I do not remember how I added it
in HA?
(im just trying to short circuit some of the checks like VLAN and network configuration)
when you try to add it, is your phone, skyconnect and eve sensor all in the same room?
Yes
and when you try to add the device via HA, what happens?
I just factory reseted the sensor. I went into the HA app > Add new > Matter > It gets stuck on controlling network connection
for a few min and then fails
If I do it through SmartThings, it asks for a network key (I can choose either HA thread network or the SmartThings hub network).
It just failed. "Cannot reach the unit. Control that your phone is connected to wifi."
Thing is, I got one working so it should work. So something is off..
I think the Ha way probably worked last time and something has changed in the mean time
As there was never an easy way to get the key directly and add it to smart things, seems less likely you’d forget that
That is true. I have a slight memory of adding it to homekit on my ios device first or something but cant be sure. It doesnt work now though... Oh well
From reading Nanoleaf's beta testing discussions, I gather they think the software is "good enough," now. I would expect them to release gen 2 versions with better controllers, some time in the future, rather than put much more time in improving the current products.
I tested with the latest stable (2024.4.0?) as well as the latest beta (2024.5.0b4 as of last night). I’ll DM you
I did try restarting HA between unpairing and it made no difference. The box I’m using is a Mele Quieter 2D with a Sonoff P for Z2M and a SkyConnect for Thread which I don’t think is too strange of a setup
Unless you have an exception in your logs, it looks like that device is not getting removed from the Apple ecosystem then. So nothing can be done there. Boo.
“Nothing can be done” is the saddest news
hi what is the best usb dongle that works with eve energy plug
already do but want to control everything through ha
want the ha to integrate zigbee and thread and control them without having the extra hubs
so ha acts as the hubs for zigbee and thread
"I take it you're using the not-recommended multi-protocol add-on?
thread can help with that"
Which multi-protocol addon is he talking about for thread?
Hiya, I've been trying to get my Nanoleaf Essentials Smart Bulb (homekit version, not matter) working with Home Assitant, but the only issue is that I don't own an apple device! I currently have it working in Google Home though, and it is connected to my Nanoleaf Thread network with my Shapes as a border router. I was wondering if anyone has any idea how to do this or has had any success themselves?
I should mention that I am running HAOS on a RPi 4b, without a thread connection dongle, but I have definitely had the bulb connected before, I think it said through a homekit integration? Anyway, I was referred here.
Why not use the Homekit device integration? No Apple device required:
https://www.home-assistant.io/integrations/homekit_controller/
does the eve water guard work with the homekit integration? anybody have any thoughts on it?
I would be surprised if it doesn't work. I have Eve light switches which work like a charm. Of course you need to pair with an Apple pod first to enable Thread.
yeah, it should work, just how it works in HA (maybe as a binary sensor)
I have a tactical question on how to debug the Thread view. I am using an Apple home pod and a Skyconnect stick and both share the same network. So all my devices are in the same thread network "MyHome42". I used to have a Google nest hub which created a separate network NEST-PAN something. That screwed up my devices on a regular basis so I shut it down. But now the Thread network panel shows the Skyconnect in the MyHome42 network and the Apple BR with the NEST-PAN network from the former Google network. This can't be true but I have no idea how to change that.
hmm, use a mdns viewer (like discovery on ios), and look under_meshcop._udp. and under the border router look at the "nn" entry and see what one its under
Holy crap, the Apple BorderRouter entry really has the nn value of "NEST-PAN-XXX". How can that happen. Google takes over the Thread network of Apple.
nah, your br joined the google network.
thread 1.3 things
about getting it back to where it should be, the quickest way is a factory reset
Factory reset of Apple you mean
you can merge everything into a single network now
yeah, of the apple border router on the nestpan network
google devices, when freshly set up (after factory reset on newest firmware), are able to join apples thread network
we really gotta make some sort of guide with how to manage border routers between "networks" and how to merge them, its not simple thats for sure
Yes that actually worked for some time. All one happy family. And then things started to fall apart again and none of the devices worked until I stopped the Google hub.
huh right
if you try just setting everything up again, assuming one of the apple border routers are on the apple network, it should just join
alright, I probably have to go that way. A bit of a mess as then also homekit will not work anymore.
wont it?
well I would be surprised if the homekit devices still work when the Apple BR is reset. They use the thread network as well
ah shit yeah
hmm, easiest way to "fix" this i can see is just turning everything on. working out what is on what network. then working on merging them all into a single network
having a dis-jointed thread network is not fun when you go to add more thread border routers to the mix
I agree. Funny thing is that all matter devices show the MyHome network as the thread network. And that one is now seamingly only managed by the Skyconnect.
Sounds like a reset fun ...
until other vendors like apple and google make it easier to select what thread network (and credential sharing with is sorta ok in thread 1.3) its a juggle them all to a single network
Anyone knows what they meant?
I guess there's no Google where you are 😛
https://skyconnect.home-assistant.io/procedures/enable-multiprotocol/ (and others)
You should only have either Thread or Zigbee firmware on the stick, not multi-protocol
You'd said (but then didn't clarify or say any more):
My Open Thread Border Router and Zigbee Home Automation integration has suddenly failed. I have no idea why nor any idea how to troubleshoot. Any suggestions?
I did read that page but it doesn't allow me to pick either Thread or Zigbee, even after I uninstall both. I only get to pick multi proto
Re-did the process and rebooted HA and now it seem to work. Might have forgotten reseting HA before
Has anyone started making standalone TBRs yet? I'm not really interested in bringing in HomeKit or anything just to get Thread, and I'm worried about how to get the skyconnect to broadcast to the entire house
Making as in homebrew? A few people have esp32 based devices running OTBR
Making as in a commercial product? Gl.inet think have one
I'm not opposed to homebrewing something
And the nanoleaf shapes can act as a BR too
I don’t actually known what it looks like but a lot of their products are like small squares, and there is a wall mount for them
(I have it for their ble gateways)
(The ble gateways are poe)
the one I found first is a desktop model
My understanding is it’s fairly standard OTBR so should behave similar to a SkyConnect, save for radio differences
I’m a fan of https://tubeszb.com/ on that front 🙂
I have the same behaviour for the second time now with my AppleTV jumping over to the Nanoleaf Network. First they (AppleTV / Nanoleaf Elements & Skyconnect) are one happy MyHome1234 Network for weeks. Then for no obvious reason the ApppleTV „recreates“ the Nanoleaf Network. First time AppleTV Factory reset helped but I think it takes the Network Info out of ICloud.
Is there a way to change the Thread channel on Apple devices?
I'm assuming joining a SkyConnect/ZBT-1 to the Apple Thread network and then changing its channel won't update the Apple devices... or will it?
Oh, seemingly it does? The (i) card on the Thread config page still shows the old channel though, even after importing credentials again from iOS. OTBR seems to show all "iOS Thread networks" on the new channel.
EDIT: Eventually updated now.
welp there goes that idea! no pods here
I currently have a HA thread “home-assistant” network (skyconnect) which is currently preferred, and a seperate apple “MyHomeXXX’ network. Is it best practice to make the Apple network the preferred one and then join the HA one to it?
Yes
OK so it's not just me dreaming this up. I saw the same with the Google thread network.
Hmm it might also work without it nowadays when I look at this page: https://www.home-assistant.io/integrations/homekit_controller/#adding-a-homekit-device-through-thread
hm maybe. but i guess it has a prerequisite of being joined with bluetooth... and i don't have any bluetooth dongle or esphome proxies. probably better to just sit it out until (if?) it gets updated with matter
Yeah it does, and has for over a year now
It landed about the same time as the Ha thread overview screen
Hi guys, I am thinking about enabling OTBR (for testing purposes). I have a HA Yellow PoE. Thread Credentials are already shared with my Apple only Thread network. I have 7 Apple TBRs (2 hardwired AppleTV 4K 3rd Gen., 4 HomePod Minis, 1 HomePod v2).
What are the best settings? Should I enable/disable the following settings?
- Hardware Flow Control
- Automatically flash firmware
- OTBR firewall
- NAT64
Which settings do you use? Anybody else here with an Apple Thread network in combination with OTBR? Some month ago there was a consensus that OTBR disturbs the Apple Thread network. Is this still the case?
What is the unnecessary traffic, that I need the firewall for?
Not for me, but you might have issues for the first few hours while it re-meshes
I have firewall off, and NAT64 on
Ok, why did you enable NAT64?
And obv auto flash firmware
Obviously* it’s ways best to get the dongle the newest firmware when possible
So, we do not expect general OTBR firmware issues anymore? How long do you already use it?
Nah, not from personally experience
I thought the other way around would be better. Reduce unnecessary traffic and stop Thread device communication to the internet.
Eh, I can only speak on personal experience and my config
Yeah, I understand. But what was your negative experience with OTBR firewall on?
And which of your Thread devices need the communication to the internet (NAT64)?
😉
I think I am going to start with both off. If it works, I maybe enable the firewall. But I do not see the reason for NAT64 for my EVE and Nanoleaf devices… Maybe someone can enlighten me. 😃
I’d turn NAT64 off, but it’s moot if your other BRs have it
FWIW,I do believe there are some gremlins with combining apple and non apple brs.
Thanks. Is there any way to validate if Apple TBRs have NAT64 activated? Or do you know, if Apple TBRs do NAT64? If so, I am going to enable it. What do you think about the OTBR firewall?
I enabled my OTBR with the following settings 7 hours ago:
- Hardware flow control: on
- Automatically flash firmware: on
- OTBR firewall: on
- NAT64: off
My 49 Matter over Thread devices are still working fine. I'm going to leave the OTBR enabled until there are errors that I don't know about yet.
OK - So completed this process, noted the "devices will need to be reconnected" message and now i have 1 thread network with 2 border routers: https://imgur.com/a/tLEuwCL But... when i reset the nanoleaf essentials (thread) lightstrips, no new devices show up in HA, nor do they come up when i add integration Apple > Homekit... have i done something wrong here?
OK, patience, breath... they now showed up. Odd. But great!
So my understanding is currently you cannot join matter over thread devices using OTBR on HAOS and iOS. I was trying to understand the technical limitations here but I couldn’t find anything concrete when researching. Can anyone explain?
Why not? I have lots of Matter over Thread devices paired to HAOS and Apple Home. You do not necessarily need OTBR to get this done. HA can use 3rd party Thread Border Routers from Apple, Google, Nanoleaf and other.
How did you configure your OTBR?
Sorry I guess I mean without a 3rd party TBR. As in HAOS + Skyconnect + OTBR only doesn’t allow device connection with iOS right? If so, I was just trying to understand why.
Oh, yes. I think this is still the case for iOS.
When you have a 3rd party TBR, you can use the Thread credentials of your 3rd party Thread network to merge your OTBR.
I am testing this since today again. I already tested it some month ago and had some unexpected issues. There was a consensus that HA OTBR and Apple doesn’t work very well together. But maybe that changed in the meantime. Until now it’s still fine.
Just left it all as default?
Definitely there was bad interactions that made nanoleaf problems worse. Apple said that the TREL code in production is “ancient” compared to what they are testing internally.
With the setup you are trying the OTBR will always have routing priority for outbound traffic. HA just won’t be able to use all those HomePods. Thankfully you have TREL so the OTBR software should pass it on to a good BR for you.
I think you’ll technically still have some resilience issues because the OTBR routes are constructed differently to the Apple ones. Purely because they are on localhost. They won’t be icmp6 RA routes with timeouts. So if OTBR is flapping they might interfere with fall over to your apple fleet.
Ok, maybe we can expect something new with iOS 18. I really want the Thread network to mesh faster than it is now. At the moment it takes round about 15 to 30 minutes for my 49 devices to build the mesh after a complete power outage.
Ok, thanks for the description. I understand. So, at the moment it’s still not a good idea to combine the OTBR with a lot of HomePods. I will do my tests for some time. If I see some weird behavior, I know where the issue comes from. What would happen, if I had 7 OTBRs (ESP32 for example)? However, I think this is also not a supported solution at the moment. 😃
So the reset route doesn't work unfortunately. As @blissful hare mentioned above the Homepod sticks to the Thread network even after a reset as it imports the data from icloud.
I just tried it myself
The only chance would be to join the MyHome network which is managed by the OTBR to the nestpan network, managed by Apple. But then I guess I would have to reset all my Matter and homekit devices as the network credentials change. https://ibb.co/mBPfgwD
It was not yet implemented in the iOS app - there is some progress on that regards so it be available soon(ish)
Theoretically an external esp32 border router is better in the sense that it has the same icmp6 RA style routes as a HomePod (basically any border router that isn’t on same box as HA passes this test) but worse because no trel
Like with the HomePods you can’t choose which BR your packet enters the mesh, but without TREL it might have to traverse the mesh for more hops to get to the same location (TREL should mean less hops and faster transit/more capacity).
But the response packet should come out of the nearest BR to the target device
That’s true even in the case where OTBR is running locally with static onlink routes
Thanks! I was reading mixed things and couldn’t tell it was a iOS limitation or the companion app just didn’t have it implemented yet.
yeah, expected that. so it seems that the only way to get a "truly" merged network is to all get it onto the apple network for the meantime, might make a blogpost regarding the best ways of doing it
Hello @spring bramble, I'm developing a firmware for some smart home devices based on nRF52840 SoC and I'm available to work on this feature. Is there already a feature branch on GitHub or something that I can look at? I have Home Assistant set up with OpenThread Border Router and I would like it to be my only Thread network but I can't add devices from iOS.
@old niche can you answer this question please ? Basically the question is when we can expect the new thread credentials features in iOS and secondly if its previewable somewhere
What features exactly? Currently it is possible to import the Apple keychain credentials to HA, front end can request anytime to the App to save HA thread network credentials in Apple keychain.
Besides that there is no plan yet, please let me know what are your needs to I can bring to my backlog
So the feature to import creds into Apple is in current release already ? All that is needed is a button/function in the frontend ?
Yup
hi guys, I updated my Home Assistant, Matter Server and OTBR to latest. Now my Skyconnect does not work anymore, it says "Failed to setup, will retry" forever. I restarted HAOS but no success. Any hints?
I removed the device, restarted and it was detected. Now it stopped showing errors, but I cannot commission a new Matter device. It is showing Matter not available in Companion App. I tried cleaning Play Store storage and resyncing the credentials. But no luck yet =/
Until now I never been able to commission a device, I bought by accident Homekit version of smart lamps, now I bought the right Nanoleaf Essentials Matter but all my attempts since some months now with Skyconnect have been frustrated.
On my Matter server no errors on the logs, on the companion app troubleshooting logs I see an exception on com.google.android.gms.common.api.ApiException: CommisioningClient.API is not available on this device. Strange that before it was at least asking for the QR code when I had the wrong (non Matter) lamps to test.
Does the ESP32 TBR support TREL? If so, I would buy one for testing purposes. Is there also a PoE version?
No it doesn’t have trel, they weren’t in a rush to add it. Imagine we will get it when thread starts to mandate trel.
Ok, so let’s hope that this will happen this year. Thanks
I’m just trying to add a Matter device to HA + OTBR using iOS companion app but that seems impossible to do right now.
I don’t have an apple tv / homepod as border router, only HA with OTBR
Got it, so the missing piece is what I was discussing with Marcel above, frontent needs to request iOS app to save its credentials in keychain
I would really like to have this feature so if you can give me some hints on what to do I'll work on it this week.
For me seems impossible to do the same with Android also.
https://www.home-assistant.io/integrations/thread#case-1-making-home-assistant-your-first-thread-network as per docs Android should be supported
Was there a PR for this somewhere. I’ve been reading a lot about thread and was curious to read over how this works. Thanks!
Basically I implemented an external bus message where if the frontent calls thread/store_in_platform_keychain passing the Mac extended address (yes not the border agent I’d, Apple uses Mac extended address as border agent id) and dataset, it will trigger the flow in the iOS app, I think it was done in this PR: https://github.com/home-assistant/iOS/pull/2606 CC: @serene wyvern
@old niche I have Home Assistant iOS 2024.4.1 from TestFlight but I don't have any Thread menu in the app settings.
Looking at the code (https://github.com/home-assistant/iOS/blob/56d0e906be82e0ece285fa2377612dd5f21047e8/Sources/App/Settings/SettingsRootDataSource.swift#L44) I don't see conditions for which the menu should be hidden or am I wrong?
Ok Thread Credentials was moved into Debug section 🙏
So, I'll try to implmement the call to thread/store_in_platform_keychain in the frontend
It’s under companion settings >> debugging >> thread
Yup exactly
If you plan to open a PR, is better to align with @spring bramble about the ideal flow for when this would happen
Just to clarify, this is my current setup:
- Home Assistant 2024.5.1 (OS version 12.2)
- OpenThread Border Router 2.6.0 (with an nRF52840 Dongle as Radio Co-Processor, latest firmware version)
- Matter Server 5.6.0
- Matter and Thread integrations configured correctly
- Thread network created by Home Assistant configured as preferred
I compiled the Matter example for the development board I'm using (nRF52840 DK) and I would like to commission the Matter device from iOS without using proprietary border routers. So to do this I open to the iOS app and try to add a Matter device integration, clicking "No, It's new" opens the classic Apple Home view to add a device. I scan the QR code and after a while it fails saying "Thread Border Router Required".
So if I understand correctly using thread/store_in_platform_keychain message iOS will store the credentials of the Thread network created on Home Assistant so it can be used by Apple Home?
@old niche It works! I did some hacky way to call the External Message Bus with a custom card but I was able to get the OTBR to add and then I could pair a matter over thread lightbulb
Took me a bit to understand the message format but I got there eventually
Nice!
@random garden, you have the glnet thread router yeah? obv the image for it wouldnt show for it, but do you know what the vendor name is for it is (under the nn value in mdns)
Yeah I do have the S20 and S200. I don't know it off hand but I'll try and grab it in a bit. I assume this can be seen using something like flame when the device is on the network? (I've never needed to check the vendor name, hence the query).
yeah, it will be under the meshcorp listing
only coz i have a open PR to add the icons for aquara and smarthings, and i may as well bundle it in together
Yeah nice. OK I'll let you once I can get it.
cheers
Hmm.... The nn value in my case is just home-assistant. Guessing that's not what you want.
If it's vendor info, the vn value is 'GL.INET Inc.' @twin vine
Yep give me a few
No stress
Dm'd
it should, I am trying a lot, but did not start to get successful yet\
my router is also GL.INET for some reason, could it anyhow be related to Matter/Thread not working?
If my experience is anything to go by, quite possibly. I've had the gl inet TBRs for a while now but have had to turn them off as they break my thread network every time. Only took 5 minutes to lose 8 of my 29 NL matter lights.
Turning off the glinet units and falling back to my 4x Google Hubs and the lights came back within a few minutes. Has been rock solid on this setup since the 3.6.173 fw was released on the NL lights
I have the same situation as you, but I don't have any Google Hubs as fallback 😦
I am double checking everything in the docs, seems my Skyconnect for some reason is going back to default Zigbee.
I have no experience with the Apple home ecosystem but I'm under the impression you'll need one or the other to make matter work at the moment.
I don't have apple.. only stock android
Something is very strange, I have never used Zigbee integration, it does not show ZHA on my Integrations tab, but when I go to: Settings > System > Hardware > Configure SkyConnect, and Use as Thread border router I receive: This Home Assistant SkyConnect is in use by the Zigbee Home Automation integration. Please migrate your Zigbee network to another adapter or delete the integration and try again.
@urban sierra what Home Assistant Core version are you running?
Hm, that flow got changed in 2024.5, seems there is a bug of some kind 🤔
@urban sierra can you share the output of this command from the Terminal?
jq < /config/.storage/core.config_entries '.data.entries[] | select(.domain == "homeassistant_sky_connect")'
@sick swan sorry on which device should I do it? ha-cli does not have jq, don't know really how to execute other shell commands there.
In the Terminal/SSH add-on
I Wish Thread would be used more :(
That "Failed to setup, will retry" was on the OpenThread Border Router integration correct? I wonder why that happened, the OpenThread Border Router add-on logs from that time would probably be interesting 🤔
What do you mean?
There are not many devices that utilize the thread network.
Advanced SSH & Web Terminal correct?
There will be more with Matter, but yeah it takes a while until adoption takes on. Also, I think since Matter works with WiFi too, quite some devices will opt using WiFi instead, especially main powered ones.
That or the regular one. I tested it wiith the regular one.
I think most devices will "just" use Wi-Fi
Costs less...
I like that Eve uses Thread/Matter but they cost so much 😵💫
I don't see the regular one on Add-on search. is it built-in?
Make sure to enable advanced mode in the user settings.
Yeah, they do use one of the best SOC’s on the market, so no doubt they have a high markup (most hardware as a service companies do), they are one of the few that are solid and will last years
And they seem to be ahead of the game, already embracing the matter 1.3 spec and are apparently working on implementing power reporting features (on their eve energy)
I thought thats the reason they exist? 🤨
The Eve Energy Plugs do Report Power Usage and you can toggle them on/off.
Matter only just got support for reporting power usage
Eve used a vendor extension to report data earlier than anyone else but it was apple specific
They told HA how to use their extension too
But they will switch to the official way of doing it next
Yeah but 99,95€ for a Light Switch is a bit too much :(
Im just broke
here is the output https://imgur.com/a/OpiHJ5m
Hm, ok, this looks good, the integration (now at least) has the correct firmware version stored (spinel => OpenThread RCP firmware).
@urban sierra So your current problem is that you can't onboard Thread devices correct? How does the Thread panel look like? Is the OTBR maybe not part of the preferred network?
Correct @sick swan. I am trying to use SkyConnect as my first Thread network. Currently, when I follow the docs, I was able to disable multiprotocol. But when I go to Settings > System > Hardware > Configure > Use as Thread border router. I get: "This Home Assistant SkyConnect is in use by the Zigbee Home Automation integration. Please migrate your Zigbee network to another adapter or delete the integration and try again."
It seems like a bug, I have never used Zigbee or see the integration on integrations tab. Also this makes my Matter server unavailable when I try to add Matter devices on the Companion App.
@spring bramble Reading the docs here https://www.home-assistant.io/integrations/thread#case-1-making-home-assistant-your-first-thread-network in step number 3 it seems that it is the Android app that imports credentials. My proposal is to add a new button in the "Thread Credentials" screen that imports credentials from Home Assistant. What do you think?
As seen on Android in this video: https://youtu.be/rEugjMk-4II?t=5709
wait as in exporting credentials from home assistant to apple home? (i assume you are talking about ios here)
because you can already import them
yes, Thread network created by Home Assistant to iOS
does apple let you change thier devices to another thread network?
unless you can override it in the apple keychain
I don't know, I'm starting from scratch
new thread network created by HA with OpenThread Border Router
huh so i guess it can be modified
I just used the websocket "api" mentioned by @old niche to import HA thread network into iOS
and it worked
This was the hacky custom card I made to call the store_in_platform_keychain. https://gist.github.com/bmight/49315bbb004871d66445b1588cd1d82e
It requires the OTBR API to be turned on.
i mean, there is ways to get the tlv for other devices (like glnet thread routers) to join the apple once once HA is in it (or using mdns wack stuff),
cool, I added a button in the frontend to do this 🤣
huh so i dont think you can update/write the credentials for apples stuff in the keychain
just check and retrieve
google play however, does
@twin vine I think we are not talking about the same thing
hmm
@finite adder and I are talking about importing thread credentials from HA to iOS Keychain
So you can do HA + OTBR + iOS without an apple tbr
ahhhhh im thinking about a apple tbr in the mix
the problem I and @serene wyvern also had (I think) it is that we couldn't use a setup with only OTBR on iOS because iOS didn't have the credentials to access the thread network so in the commissioning process it stopped asking for a Border Router.
gotcha now
Thankfully all the work had already been done by @old niche in the iOS app. The front end just needed a button
I think we have to chose one of these two paths: implement the button on the frontend that makes the websocket call and make it compatible with Android also or follow the Android implementation by adding a button on the iOS app side to sync the credentials
You can probably talk about this in the #devs_frontend-archived channel to get feedback for the button placement.
could just place it in the debugging section
for now atleast
change the current one to import credentals, and the new one to export ccredentals
yeah on Android is under Settings > Companion app > Troubleshooting
I was thinking it would be nice to have it all in one spot because the Import button is on the thread integration page
i mean, for a quick implmentation/fix its maybe good to have it in debugging, then a more longterm solution on the thread page
thing is its "related" to the companion app, so it would make sense to be in those settings
eh, no doubt the bruno would have a good place for it thats intuitive
Makes sense indeed. Would be very welcome if you could make a draft PR as we're very underwhelmed in manpower, especially on frontend. But if you create the draft PR me and and the frontend crew can review and together finalize it. Thanks!
@finite adder @twin vine @serene wyvern I just discussed this in a meeting with the frontend devs, the button to export your HA thread credentials to Apple Keychain will be added
dope!, cheers for the quick response
Will that overwrite existing credentials which Apple has stored?
No, that saves an extra credential to Keychain
You will be able to verify what you have in your keychain doing this.
Disclaimer: if you are not seeing credential from Apple that you expected to see (not from HA), is because you are not the Admin of your Apple Home
Ok so it's time for an ELI5 question. I tried thread for awhile some time ago, and, for reasons I won't bore you with, I ended up mostly giving up on it. Suffice it to say my issues were unsurprisingly network related.
So now I still have a couple devices on a small thread network but it doesn't touch HA at the moment. Have Apple border routers. I have a skyconnect for z2m but no thread router option for HA.
Is there a way to get my thread devices to show in HA? They are, naturally, all HK-over-thread so no Matter.
Specifically they are almost all Eve products. With it getting warmer I'm about to put the Eve Aqua back out.
yes, you can add homekit devices using thread via an apple thread border router to home assistant, see the instructions here: https://www.home-assistant.io/integrations/homekit_controller/#adding-a-homekit-device-via-apple-thread-border-router
it will require removing them from apple home, tho you can use the homekit bridge integration to share them back to apple home once they're in home assistant.
Fantastic, thank you
Hi, i'm going crazy about nrf52840 dongle running on a RB 5 with HA OS and connected via eth0.
- dongle is flashed accordingly to behave as TBR
- connected via usb and detected as device by OTBR add-on, with baudrate 115200, firewall dissabled, nat64 enabled and ports exposed (8080, 8081) and logs look good
- matter server add-on with port 5580 exposed logs look good
- thread integration with 1 border router as prefered network.
- IPv6 enabled
- Tried to add an aqara p2 door sensor and always tells that I need a border router.
- Tried to import credentials but not preferred network found
What the hell I'm missing?
Are you running iOS?
(Pushing networks to iOS, which is needed to use their matter sdk for pairing, is a WIP, scroll up to see some discussion about it)
If not, are you running the full HA Android app (not minimal) on an Android device that still has google play services? Are you signed in?
Is your phone on the same vlan/subnet as your HA OS device?
And have you ever had any google nest devices that have thread? Even if they are gone, google will prefer their network over yours unless you reset google play services (which will also reset google pay)
- I'm running android
- I'm running full HA
- It is on the same vlan/subnet
- I haven't had any nest device
Have you done settings > Companion app > Troubleshooting, then Sync Thread credentials.
Cool!
When you sync credentials what is the exact message you get, and do you get the same one every time?
- searching the device
- connecting with device
- your device requires a thread border router
With your setup, HA OS and the matter addon will run in host network mode so should see each other and the network as a whole properly. So it’s your phone that can’t see your BR. Normally that would be your networks fault or your BR isn’t running. But you said that the logs look ok. So tell us about your network.
oh wait, now sync credentials worked
magically
ok, now it worked 🤷♂️ i guess it needs to detect your anxiety, frustration and sincronize with the screams microwaves to work
thanks guys, i don't know what happened but it works now
Hmm, the most likely thing based on that is something in your network is interfering
Mdns repeaters are a common source of problems, I think the Unifi one is pretty bad.
i don't know, i will try to figure it out, my network is pretty straightforward, only tp-link mesh AP, and ISP router configured to be using only the ONT to let tp-link be the main router, the only thing I added is safeguard to HA and all devices point to the static ip address
i will play with it to see if it is related
One AP or is it actually meshed?
I think we’ve seen some mesh stuff do weird multicast stuff to try and reduce “noise” consuming air time
Unfortunately lots of home multicast stuff is trash, so other home stuff tries to mitigate that and is itself trash and then other things end up broken 🥲
We have seen that sort of thing make peoples home network ddos itself before (not in the context of matter, yet)
As long as you only have your single border router, you should be safe from any problems on your network when you’ve actually got devices added. As traffic will just be on localhost within HAOS
Is it possible that thread devices move from one thread network to another?
Yesterday I had exactly one thread network, running on channel 25, named MyHome42. OTBR with Skyconnect as border router. I kicked out my Apple BR. All fine. Then I added the Nesthub to the mix and synced the credentials. Magic: one shared thread network, named MyHome42 with 2 BRs. All good.
Today: https://ibb.co/BwCzZ3J
WTF?
2 thread networks, different channels
The matter devices all said "MyHome42" yesterday. Today they claim Nestpan.
Seems to be going between googles thread network and apples
When you set up the nest hub, did you allow it to join Apple’s thread network? I would of given you a prompt to allow it to when you set it up
There was no Apple network at this time anymore. It was only the Skyconnect. I have reset the Homepod and deleted my home completely before I added the nest hub
It was just called Myhome as that was a merged network
when I check the services browser (meshcop) it actually shows me 2 BRs (Google and HA), both with nestpan as network name
if you set the nestpan network as the prefered, you might not get them changing?
I will try. I just find it super odd that all documentation says that the devices need to be reset when you switch channels or the pan id or something. And as per overview all my devices changed from channel 25 to 13 overnight. Woa.
there must be a reason, but i dont personally know the why behind it
4 meshed
IGMP snooping comes up a lot here, and i notice TP-link have some issues with it - https://community.tp-link.com/en/home/forum/topic/212230, might be a thread to pull on if you continue to have trouble
So there is something in the thread spec called a "pending dataset". its a set of pan id/network key/channel/etc and a timestamp when it applies from. If every device on the mesh sees the pending dataset in time, then they will all migrate to the new settings about the same time and everything will carry on working. devices that don't (flat battery, fallen off mesh, etc) would need resetting (in general).
Right now its not specced out how multiple controllers are supposed to coordinate things like channel between themselves. So Apple nor Google know if somone has a multi-protocol BR that has to be on channel 25. if they think they are the mesh owner, they'll can just set a pending dataset and bam everything changes. and theres nothing to make them respect a change made by someone else.
That ultimately is what causes these flip flopping issues
Hoping that the next version of thread is going to address that...
Whats not supported (and what will require resetting devices) is changing the active dataset directly
I think the otbr webui (which is a toy prototype and not meant for non-developers and might be removed in future) could just set the active dataset directly
That is funky. So at a certain point Google decided to setup its own thread network and force all devices onto it. It is quite interesting that this actually works.
The only thing which doesn't really click in my head: the Skyconnect and it's network was on channel 25 before. The combined network incl. the Google nesthub is on channel 13. This would mean that the radio changed its channel.
I think (and this bit is just speculation) that Google thinks it "owns" the mesh, and it didn't make a new network, rather it updated the mesh it thought it was in charge of to what it thought were better settings
which would be fine if it actually did
i guess there's nothing really stopping any thread device on the network from doing that?
i guess not?
at the very least i hope there is an agreement so that different wannabe owners don't step on each others toes.
which doesn't seem to be the case right now
honestly the only way you could tell would be if the name of the network matches a certain pattern :/
yeah. and even if you did that its not enough
not even. I kicked out the Apple BR because it insisted on creating a nestpan network - because it was merged in the past and that is somewhere stored in icloud.
join your OTBR to an apple mesh and then throw the apple gear? now nothing "owns" the mesh.
yup, tried that 😉
no im talking about something different that doesnt exist
if there was a concept of a vendor owning a mesh and being responsible for its configuration
as opposed to a free for all like today
I see
there isn't a naive way to decide who or what is that controller, remembering the creator or basing it of a heuristic like name fails when that one goes away.
I just rebooted HA and now the thread world again looks different:
https://ibb.co/mD8BkBq
So both BRs all of a sudden changed their minds. But the devices themselves still show (in the matter view) that they are on the nestpan network.
As the Nesthub was not touched but the Skyconnect rebooted .... even the OTBR supports this pending dataset?
This ping pong is not a fun game
Would be interested in what an mdns browser makes of your network. For meshcop._udp._local
It shows the same thing as the thread network view, so both the Nesthub and the OTBR agree that they now manage the MyHome42 network (so the nn param)
Great. Wanted to be sure that that view wasn’t caching a previous nn that it had cached based on ext pan id or similar
As long as your devices do as Google says they should stay accessible
So option 1 is ignore it and wait for thread 1.4/2/whatever. Your brs should keep announcing a valid /64 regardless, matter itself shouldn’t give a damn
Option 2 is pick a vendor
Pick a vendor as in? I have shut down the Apple BR completely so I am planning to stick to the Skyconnect/Google combi for now
As in only Apple or only Google or only OTBR
I see. Then I probably ignore it for now. As long as it works I am fine. Puzzled but fine 😉
I’ve setup my HA Green along side a SkyConnect usb as a thread border router. I have with tried to connect some neonleaf GU10 bulbs and every time it tells me that the thread border router haven’t been setup. However it keeps showing me the router from the neonleaf app as it was accessible.
Are you on iOS or android?
IOS
iOS is WIP, try Android, then go to Settings > Companion app > Troubleshooting, then Sync Thread credentials.
if it is succesful you can now using android connect your neonleaf
if troubleshooting doesnt appear, in spanish appears the menu as "Solucion de problemas", it means problem resolution, just find the correct menu where Sync thread credentials appear
yeah, there is a way to do it (as mentioned above), you gotta import the credentals from HA to apple keychain
here is the work around way
Okay. I'm very sorry but new to HA. How would I use the code?/Put the code?
@serene wyvern you might be able to explain much better than i can seeing as you wrote it 😅
I’ll add some instructions to the Gist
- put the js inside www folder, go to settings > dashboards, top right 3 dots click resources, add a new resource as module with url /local/nameofthefile.js
- go to your dashboard, add a new card, use the code editor and put as code: (the other file)
type: custom:call-external-message-bus
threadHost: http://192.168.1.XXX:8081
where XXX is your HA ip - then with iPhone tap this card
- try again importing your credentials as mentioned previously
Also have to expose the otbr api. Not exposed by default.
just in case:
- go to settings > add-ons > Open thread border router > config tab > Network first input 8080, second input 8081 > save
Added some instructions to the gist. This shouldn’t be needed for too long because a real fix is in the works.
yeah, more of a bandaid fix
Hello
I'm new here
I'm trying to setup Sonoff with Thread
i'm trying to follow what was mentioned here
Thanks for the help!
Finally got credentials on iOS
nice!
But... stuck connecting 🙂
I'm using ESP-Matter on a ESP32-C6
Pairing is failing
does it require ipv6 on home assistant/mobile phone?
I could see the new device on network
as a router
@sick swan or someone do you have an idea what I can do? I am a bit stuck still..
so it's connecting to the thread network, but not as a matter device
which FW are you using?
Do you have the ZHA integration disabled?
You can see which integrations you have disabled and which discoveries ignored by clicking the filter icon in Devices
@upbeat cairn I had it disabled, now I deleted. will do further tests.
thanks for the hint
@upbeat cairn now when I try to configure SkyConnect to be Thread only I get:
Translation Error: The intl string context variable "addon_name" was not provided to the string "Failed to set {addon_name} configuration."
What error shows up in your log file?
exactly!
sorry, kinda new to HA.. which log file?
there is nothing in /var/log
You can see the latest errors in System > Logs
Or the /config/home-assistant.log file
thanks
2 errors together
Logger: frontend.js.latest.202405011
Source: components/system_log/init.py:333
First occurred: 4:45:22 PM (1 occurrences)
Last logged: 4:45:22 PM
Failed to format translation for key 'component.homeassistant_sky_connect.options.abort.addon_set_config_failed' in language 'en'. Error: The intl string context variable "addon_name" was not provided to the string "Failed to set {addon_name} configuration."
Logger: homeassistant.components.homeassistant_sky_connect.config_flow
Source: components/homeassistant_sky_connect/config_flow.py:95
integration: Home Assistant SkyConnect (documentation, issues)
First occurred: 4:45:22 PM (1 occurrences)
Last logged: 4:45:22 PM
Failed to set the OpenThread Border Router add-on options: not a valid value for dictionary value @ data['options']. Got {'device': '/dev/serial/by-id/usb-Nabu_Casa_SkyConnect_v1.0_e20367419ad8ed11bac4786162c613ac-if00-port0', 'baudrate': 460800, 'flow_control': True, 'autoflash_firmware': True, 'otbr_log_level': 'notice', 'firewall': True, 'nat64': False}
can you install the thread border router add-on manually?
I have done it already and it is latest (2.6.0), should I somehow reinstall?
To double check: you already had the addon installed and configured?
yes, it was just not started
yeah that would be why then
Can you take a screenshot of your addon config?
oh now I get The OpenThread Border Router add-on is already running, it cannot be installed again.
The OTBR migration sort of assumes you have nothing installed and running but tries to work with the addon if you already do. I would uninstall the addon and retry it.
perfect, now it successfully configured
Could you help me please? I'm stuck after pairing the QR Code
will try to commission a device now
I see the thread device is connected to the leader now
a matter over thread device?
on topology, but then it hangs and fails
Exactly
matter over thread
matter over wifi worked perfectly
but now i switched to thread
is it already connected to another ecosystem?
nop
and do you have any errors in the logs?
Matter Server
2024-05-08 15:57:38.675 (Dummy-2) CHIP_ERROR [chip.native.DL] Long dispatch time: 326 ms, for event type 2
error logs enabled
thread node starts as child then migrates to router
so the thread network should be fine, right?
what device is it?
I flashed the basic Matter ESP LIGHT example
it could be the thread network, anything in the OTBR logs?
im checking on silicon multiprotocol addon
right?
otbr-agent[304]: 00:00:26.568 [N] Mle-----------: RLOC16 3400 -> fffe
otbr-agent[304]: 00:00:26.585 [W] Platform------: [netif] Failed to process request#5: Unknown error -95
otbr-agent[304]: 00:00:27.271 [N] Mle-----------: Attach attempt 1, AnyPartition reattaching with Active Dataset
otbr-agent[304]: 00:00:31.275 [N] RouterTable---: Allocate router id 13
otbr-agent[304]: 00:00:31.276 [N] Mle-----------: RLOC16 fffe -> 3400
otbr-agent[304]: 00:00:31.292 [N] Mle-----------: Role detached -> leader
otbr-agent[304]: 00:00:31.292 [N] Mle-----------: Partition ID 0x563112d1
otbr-agent[304]: 00:00:31.326 [W] Platform------: [netif] Failed to process request#6: Unknown error -17
otbr-agent[304]: [NOTE]-BBA-----: BackboneAgent: Backbone Router becomes Primary!
Starting program: /usr/local/bin/python /usr/local/bin/matter-server --storage-path /data --port 5580 --log-level error --primary-interface enp0s3 --paa-root-cert-dir /data/credentials --fabricid 2 --vendorid 4939
i have HA on a VM
VirtualBox
Bridged network
/data/chip.json
this file should exist, but I can't find it
@twin vine still not very lucky, also stuck after QR code read. I am on Stock Android companion app with full version installed, Thread Credentials synced. I try to add Nanoleaf GU10 lamp, and after waiting it says: Failed to generate device credentials.
I don't have IPv6 on my phone
@serene flame I converted your message into a file since it's above 15 lines :+1:
Trying agani
first log is:
otbr-agent[304]: 00:20:46.217 [N] RouterTable---: Allocate router id 41
otbr-agent[304]: 00:14:50.526 [W] Platform------: radio tx timeout
otbr-agent[304]: 00:14:50.867 [W] Platform------: RCP failure detected
then: RCP recovery is done
[N] MeshForwarder-: Failed to send IPv6 UDP msg, len:73, chksum:f0cb, ecn:no, to:0x3402, sec:yes, error:Abort, prio:net
on device, i get the error:
no endpoint for unsub recvd
Am I supposed to use File editor to add the .js
I used Studio Code Server
But file editor should work as well
create folder www and put file there
Okay thats what I've done. However it keeps telling me that the element doesn't exists
I've added the resource with the url /local/www/call-external-message-bus.js
Yeah
Thank you very much. Got it working!
I think I have a dead Nanoleaf br30 bulb. Won’t light or respond anymore. Time to test their warranty.
good luck, it can be hard at times
This is just a comment, not a complaint specific to HA
I'm surprised no one has figured out how to make it possible to visualize your thread network like you sort of can with zigbee and zwave.
I guess Eve sort of does if you are using an Apple TBR. And one of their Matter plugs.
Just looking for a way to get a quick look at what devices I have and if any are having communication issues.
It isn't a huge deal for me as I only have a few thread devices at the moment but the lack of it has kind of kept me from wanting to dive deeper.
Like I use Apple TBR and have it set as my preferred network and, thanks to help from someone here, moved a couple devices out of HK and directly into HA for better control. Still part of the same thread network but Eve can't see them on said network anymore since they aren't in HK. Just seems weird.
Anyway that's all for today's rant 😂
for matter devices, there's a thread network diagnostics cluster that would provide enough of that info to make a network map in a way independent of the thread border router, but that doesn't help if you're using homekit devices.
Following up from the chat in #matter-archived as this channel is more appropriate. When trying to pair and failing, a node is still added to the Thread topology. 🧐
Does anyone know if I can use the sonoff zbdongle-e flashed with z2m AND thread at the same time? Specifically I want to connect my Nuki smart lock 4.0 to it although I've heard there are some compatibly issues
Following up slightly before going to sleep. The only logs I can find are:
2024-05-10 02:33:19.971 [Verbose] [main] [WebViewController.swift:892] userContentController(_:didReceive:) > message { id = 8; type = "matter/commission"; }
2024-05-10 02:33:49.533 [Error] [main] [WebViewController.swift:1065] handleExternalMessage(_:) > Error Domain=com.apple.MatterSupport Code=1 "(null)"
2024-05-10 02:33:49.528 [Error] [com.apple.root.user-initiated-qos.cooperative] [MatterWrapper.swift:69] commission > Matter pairing failed: Error Domain=com.apple.MatterSupport Code=1 "(null)"
Which seems similar to whatis reported here: https://github.com/home-assistant/iOS/issues/2574.
I have no clue what I did, but I'm at the fourth reset and for some reason it started to work. 🤷 Though the second sensor is now saying Thread Border Router required. 🙃
Has anyone had any success changing the channel that Nest devices pick for Thread? I have matter+thread working well but Nest seems to pick channel 14 which is really bad in my environment
You got a skyconnect/thread dongle hooked up to HA?
i have a sonoff e - haven't hooked it up yet
but every guide i've read says I have to get it to match the same channel as Apple/Google?
What border routers have you got? And are they all in their own networks at the moment?
6 Nest Hubs and 1 Nest Hub Max -- all on a single network set as preferred
It works, except for the congestion issues (we have all 3 wifi bands in use here)
Do we know if the Aqara M3 Hub can join the apple thread network?
Im getting mine tomorrow. Just wondering if its possible
Yeah, it should be?
Im just wondering how you know it is shared together on the same thread network
Shouldn’t be too hard to import credentials if you need to either
Like in HA you can check from thread integration
Oh wait I guess if you add the hub to apple then it probably connects
Thread 1.3, when you set up the device it might say something about syncing credentials (does for google nest devices) for whatever is in Apple keychain, will be interesting to see if Aqara has done the same
Guess ill find out tomorrow
And there will be a logo for aqara, just waiting for it to be pushed to the dev repo: https://github.com/home-assistant/core/pull/115888
Sweet
So okay, I'll try setting up OTBR; once I have that it seems like this might work:
- set otbr to channel 14 to match nest
- get otbr elected as leader somehow
- push otbr to change channel to 26
yes, confirmed
but its matter capability is very limited, give it some time for update and discount before you buy it at the best value
well, i got otbr started (docker) but it doesn't show up in HA even after I added it. it seems to be working because it sees my other thread networks
is there a way to get the nest thread network key and stuff from HA?
seems like i have the dataset id but that doesn't seem to be the same as the network id..
both of the missing images will be fixed soon, if you find any vendors (other than glnet) without images, lemme know
you would prolly be one of the first to get your hand on it anyways
saw the thread, thx
Hi I'm new to home assistant and have a HA Green I've spent the last few days moving 30 ish eve smart plugs and sensors. One went offline to I restarted my HA Green and now they are all unresponsive.
Any idea what I should do?
okay well it seems like i have OTBR on the same network.
extracting the network key from HA wasn't straightforward
first, I had to get the tlv from .storage/thread.datasets
paste the TLV into a TLV decoder (which you probably can google)
the key is item 5.
Then, in otbr in the gui you can press join on an existing network, use the key.
you also need the prefix which is in the tlv too but then you need to decode it. easiest way is just to download diagnostic data which will have it in the json
now I guess I need to figure out how to elect otbr as the leader and then change the channel
Well thanks to Google it looks like there in an issue with eve energy plugs overloading the matter thread network. There will be a server side upgrade in two cycles.
Just had to unplug an eve device for everything to come back online.
hmmm right
well, seems like its a little difficult to get the node elected as leader
tried state leader in ot-cli but it seems like the actual leader keeps getting reselected.
guess i can try killing the nest hub thats the leader
Well, that didn't work at all. It seems like google thread border routers ignore any configuration changes even if I push it
as the leader on the openthread border router
Leader is managed automatically
The thread leader might not even be a BR
It’s often a nanoleaf light strip in my mesh (sadly)
So even if you forced something to be leader, it’s not going to stay leader
So why bother
Oh and google will change the channel back
Did you change the pending dataset or a active dataset
Both
I can never get Google to change the channel in the first place
I'm beginning to think that using Google / Apple devices as mesh is a bad idea since there's no way to control them
Yes
Well
The mental model i think of it like is Unifi
Each vendor is bringing their own controller (the UniFi cloud key or whatever they call it these days)
My tp-link wifi might be compatible with wifi and be able to run an AP on the same channel and SSID but it won’t integrate with the Unifi controller
And the people that have apple, google and otbr on the same mesh its like having wifi APs AND controller software from 3 different places
If you actually did that it would be the clown college of wifi
do you know what could be the reasons for Failed to generate device credentials when pairing a new device?
I searched here but last person to report this was 2 months ago using apple. I am using only HAOS and Stock Android.
is the device already connected to another ecosystem?
ill send this in #matter-archived
No chance, i have only skyconnect. It is a new device never paired
Hey all, I'm drawing a blank at the moment, but what's the name of the Thread feature for sharing credentials among border routers?
Home Assistant added support for it so that you could join an OTBR to the same Thread network as say, an Apple HomeKit based Thread network.
I thought there was a formal name for that, but I can't find it.
there isn't a standard thread feature for doing that, that is actually in the wild anyway. This year the Thread Group is working on what they just call "credential sharing".
at the moment, mixing and matching border routers is a bit more ad-hoc than that and requires implementing something for each vendor differently
and as you'll see from this channel, becase there isn't a clear "owner" of the mesh you'll see weird stuff like your OTBR "home-assistant" network suddenly changes channel and renames itself to "NEST-A1CD-something-or-other", then it'll flip back overnight
It's been (seemingly) rock solid so far w/ my Apple HomeKit based Thread network
theres normally a nest device involved in the more bizarre network flip flops
sort of, at least even the cheapest wifi routers let you change channels...
it seems that at least for google they've decided to show 0 configuration options
Seems like the solution is to just not use vendor routers, which is sadly what this stuff was supposed to solve in the first place. Almost seems like Zigbee was better
My Apple HomePod's (merged with Home Assistant's OTBR via credential sharing) has worked great for me with the exception of my SmartWings shades, but I'm 99% certain that's the fault of SmartWings implementation at this point. 30 MoT devices, 18 of which are SmartWings, the others being Aqara, Eve, and a single Nanoleaf bulb just for testing.
Are you able to change the channel on Apple?
And what if Apple decides to implement ChannelManager - not sure if OTBR will respect channel changes
I'm just paranoid now that one day when I'm away from home, Google will randomly implement some sort of change and half my network will be dead
Not quite what I meant. Thread has compatibility between vendors at the data layer. But right now the configuration or control layer is vendor specific. In top of that the vendors have chosen to hide the “complexity” of things like channels. But also you end up with multiple control layers that are competing. Which is actually potentially worse than my wifi example.
With multiple otbr its like having multiple cheap routers and no control layer at all
yeah, it seems that the control layer was half baked
If the vendors could all agree on one br to run channel manager it should all work
Should issue pending datasets correctly and everything should migrate
Unless some devices happens to be offline during the change
The thing I’m most worried about is that they are not coordinating that and actually multiple brs trying to run the channel manager
Yeah who knows, and the whole thing is opaque so there's no way to tell until you realize you have a bunch of partitions
I guess right now the problem is Googles' router doesn't respect datasets sent for channel changes
So if you send a pending dataset what actually happens?
Does everything but google migrate?
yeah, well actually it seems that just the otbr migrates. nothing else seems to migrate
Hi All, I know that this is not a thread based comment, but for those who have battled with the Nanoleaf Essential Lightstrips (HomeKit/Thread ones) and their "less than idea" thread controllers - I have sucessfully replaced the Nanoleaf controller with a Gledopto GL-C-008 zigbee controller (note i already have an extensive zigbee network). Reference: https://www.reddit.com/r/Gledopto/comments/1c42zj9/controller_and_power_for_rgbcw_nanoleaf_light/
As and added bonus, you can now use Light On/Off Transition settings in Home Assistant!
Hey, I wanted to use the current Apple TV (with RJ45 Port) as my Thread Router, but the range of the Apple TV is only about 2m, this dosent seem normal...
Then I was looking if I can put the 2 eve aqua that are far away in the garden, in my wifi network since its pretty strong, but they only support communication over thread... is there something like a Thread Extender which only purpos it is to streatch the Thread network into my garden with a range of about 15m
Huh? 2m? Where you getting that from?
Yo man that is epic!
I messured how far away I can put my Eve Aqua (Thread Endpoint) and look when its loosing connection since I just started I only have one Apple TV (Thread Router) and 2 Eve Aqua (Endpoints) same for the bluetooth range of my Apple TV Connected a controller and messured after what distance it looses connection.
It is awful short
and annoying
the cabinet shouldnt be the problem my phone etc. do not have this issue.
Anyone have experience with "Sync Thread Credentials" saying "Home Assistant and this device prefer different networks" in the android companion app? I tried deleting the google play services data as suggested and also the homeassistant data but no dice
Is it in a wooden cabinet?
Or a metal one?
wood
Might have something do to with this:
Do you have the latest Apple TV 4K (2022) by chance? If so, do yourself a favor and buy a 120hz-rated shielded HDMI cable. It seems as if older or non-shielded HDMI don’t do a good job of squashing interference, so the Bluetooth/WiFi connections can be prone to lots of issues.
If it’s also a issue with Bluetooth, I reken it’s the cabinet/HDMI
Cabinet cant be, I guess I order another Cable and try it out...
IMHO it seems that just buying ESP-based thread border routers that support OTBR might be a better idea than relying on vendor stuff
I ordered a few esp32-c6s to see if I can turn them into 8 dollar border routers
smart speaker thread border routers felt like a nice dream but the fact that the configuration is locked down is more headache than its worth it seems
especially if the border routers can be really had for 6 bucks...
8 bucks*
Im not that much into the self building (tho I should definetly start asap) but if that works it would be awesome...
Even using the skyconnect as a border router
mhm... that does not fit my budget sadly
😔
Only 18€ for Hobbys and Free Time Activitys. 😎
Maybe next month, the two eve aquas did hurt, at least they should last 5+ years
I have an Expressif Thread Border Router, and last time I check it doesn't have TREL. Other than that, it's good value yeah
note that the espressif example border router code only has 10 mdns entries enabled by default; i find it uses up all the slots and you start running into issues provisioning matter devices after around 3-4 devices. there's an option in menuconfig to bump that up, i use 100 right now.
while it's possible, I don't think i'd recommend using a C6 by itself as a wifi thread border router, since then you have a single radio shared between wifi and thread. But using it wired is an option by adding an ethernet port (with a W5500 for example).
So if I want my Home Assistant Green to support Thread and Zigbee...do I have to use two SkyConnect donggles, ideally?
well, you could use multipan, tho its not the best and isnt really actively being worked on
but yeah, you would need 2 separate dongles, doesn't have to be the skyconnect tho
Wasn’t sure whether these options counted as an answer to your question but there are lots of alternatives to thread dongles. If you have HomePods, certain nest devices, certain Amazon devices, nanoleaf shapes etc, these can all be your thread border router.
You can also get ESP32 boards that run the same OTBR software that HA uses for SkyConnect
Hi everyone! I am using a sonoff dongle as a thread border router, the light example from esp-matter flashed into an esp32-c6, and basically I am trying to commission it to ha. I have the matter server add-on installed, the silicon labs multiprotocol to create the thread network, and I added a script to ha to be able to sync the thread credentials into my ios (which seems to be working fine). When I start the commissioning process everything starts fine, I click on add anyway, it says its in the process of "Setting up" but then takes to long to set up and gives me a message saying "Unable to Add accessory". I checked the IP:8080 -> topology and the thread network is created fine. Does anyone have any idea of what I can do to fix this problem?
On the matter server add-on logs I get this "2024-05-13 11:21:16.428 (Dummy-2) CHIP_ERROR [chip.native.DL] Long dispatch time: 215 ms, for event type 2"
Hi all, is there a way to expand thread network (skyconnect+apple) with another brand? In my case SmartThings. I’ve got a new tv with built in zigbee/thread and i want to add it to my thread network
Sort of, maybe. But also maybe not. Despite the hype, co-operation between vendors implementations is not as magic as you might hope. Think of it like getting a Unifi network and then buying a TP-link access point and wanting your unifi app to control it. That's where we are it. Sure, both implement WiFi but you'd still not do that..
as an example of a brand that does work - Nanoleaf - they implemented it in their iOS app to pull the credentials from iOS and push them into their border routers
and if their app doesn't support your ecosystem of choice, you can also create a nanoleaf mesh and export the credentials for it manually, and use a python script to make a hexadecimal value that will let OTBR join. but most big vendors won't let you directly join by TLV
what shows up in the thread network page http://homeassistant:8123/config/thread
because you already have a mesh that works, you can't really do the TLV export method
so you'd be relying on your vendor to be able to join a mesh
and because thats not a standard yet
it'd be to join apples mesh
and thats on the vendor to implement
https://www.threadgroup.org/News-and-Events/ID/634/Threads-2024-Enhancements-and-What-Theyll-Mean-to-You covers what we know about the planned credential sharing feature
in theory if you have 2 TLV's, and an OTBR you control on one, you can migrate everything to the other (effectively merging) by issuing a pending dataset with the details of the 2nd network.
though we were just talking about that not working for someone in here the other day (to fix channel rather than merge networks)
Just showing the apple/skyconnect network as preferred and the SmartThings as other without any button or something
Can anyone help me please
Huh, can you see any settings in the TV for the thread stuff? Doesn’t sound like it’s advertising anything
If I get a HomePod and use that as the border router can I still use Home Assistant to control it? Or would I have to control through Apple HomeKit ?
thread is just like a low power wifi, you use your homepod like you would use a wifi access point. anything on the same subnet/vlan as the homepod will be able to talk TCP and UDP over it to your thread devices
i have HomeKit over Thread and Matter devices controlled exclusively by HA over 2 Apple HomePods
So I can still control thread devices from Home Assistant?
i have HomeKit over Thread and Matter devices controlled by Home Assistant.
over 2 Apple HomePods.
no dongles
no Apple HomeKit
you use your smartphone to add devices to the mesh, and that uses Apple or Google libraries, but thats the same regardless of what you use
What I integration do you have to set up in HomeAssistant to control Thread devices connected via HomePod border router?
so there is just the "thread" integration which will have the "import" button (when accessed in the HA ios app)
and the "matter" integration (and addon) for Matter, which your need regardless of border router
and then HomeKit Device for things with an Apple logo that aren't yet Matter
if you have multiple homepods they will form not only a mesh over thread, but also a mesh over wifi that they can use to cover your home better/faster/further than thread.
Hi! I am trying to connect an esp32-c6 to a home assistant server with matter over thread, i have tried previously with matter over wi-fi and it worked, however when i try to do it with matter over thread, the esp connects to the thread network but it is not added to the HA server, showing a "cant connect to network" error on the app and the following error on the HA logs: [1715530694.803271][238:238] CHIP:DL: Found the primary Ethernet interface:enp0s3
[1715530694.804046][238:238] CHIP:DL: Failed to get WiFi interface
[1715530694.804104][238:238] CHIP:DL: Failed to reset WiFi statistic counts
2024-05-12 17:18:14.804 (MainThread) WARNING [PersistentStorage] Initializing persistent storage from file: /data/chip.json
2024-05-12 17:18:14.804 (MainThread) WARNING [PersistentStorage] Loading configuration from /data/chip.json...
Oh I see. I have the "Homekit Device" integration...and I see a device there... my Rachio irrigation system. I don't have any thread devices. I don't have a HomePod... How come I have the "Homekit Device" integration?
Homekit device supports homekit over WiFi/ethernet, homekit over Bluetooth and homekit over thread
The HomePod is only used for thread
So my HomeAssistant can already talk to HomeKit compatible devices w/o a HomePod?
Yes and no
Homekit device can speak homekit over tcp and homekit over udp without any other equipment
But for thread you still need a border router, whether it’s a HomePod or something else
It can also speak homekit over Bluetooth if you have a usb Bluetooth dongle that isn’t crap
When you say “it can also speak HomeKit over Bluetooth” what ‘it’ are you referencing?
@mellow kettle if you have a thread border router on your network, there's actually no additional integration needed on the home assistant side - it'll just route packets through the border router automatically. The tricky bit is that to provision thread devices, your phone os needs to have the thread network credentials available, to do the network setup.
but the home assistant 'thread' integration is good to use for tracking what thread networks you have and syncing credentials between devices.
HA
For HomeKit over thread it will get the thread credentials from the thread integration and send them to the device over Bluetooth, and does not involve your phone at all.
(Then @ was for adding context to that message not a reply)
So when I’m telling you about homekit I’m not telling you about matter
ah, indeed. it's only matter devices where the mobile device is needed to provision thread credentials atm.
It’s gotten a bit confusing because homekit is used to talk about homekit the protocol (and devices that speak it) but also to talk about an app - and the app supports matter AND the homekit protocol
And most of the advice is nearly then same but never quite the same
and i recall there's a method for adding homekit thread devices to home assistant after they're already on a thread network, too.
Yep, though that’s even more annoying because homekit devices aren’t multi admin and some won’t unpair cleanly over thread. You pretty much have to turn your Brs off. So I don’t advocate that approach much.
Even worse is that Apple pretends it works, so it looks like our fault
New here, didn't know there was a Discord community! I set up Home Assistant OS baremetal and it's been great -- still nothing in production yet. I bought the SkyConnect to support the project + also get Matter over Thread support, but I understand it's still very much in the works... As of May 2024, does anyone have it working with SkyConnect alone? I don't want to have to buy an Apple TV or 3rd party Thread border router. Here's the add-ons I've installed:
Welp... I don't have pic permissions but I have Matter Server and OpenThread Border Router installed. And I uninstalled the Zigbee + Thread add-on. All I care about is Matter over Thread so I can invest in a new ecosystem.
Skyconnect on its own with thread only does work. I’ve lost track of where it is in the stability and performance rankings. But it does work.
You have the right addons. You should also have the thread integration, otbr integration and matter integration.
If you have iOS as your smartphone you may have some difficulties adding matter devices, because we had no way to sync our thread key ring to iOS. There was an iOS bug filed over a year ago with Apple. Since thenI believe there was some chatter in here or #matter-archived recently - the iOS code is done and a front end change is on the way to enable it.
For Android it should just work, though Google can get clingy and may refuse to use your thread mesh if it’s seen a google mesh. You have to nuke Google play services to fix that. (Their bug).
Right now the best border routers for new networks (strictly IMO) are probably OTBR ones like yours and HomePods (or other official Apple). These have TREL which is like a second mesh over your wifi and Ethernet that allow the border routers to carry more data on large networks (because thread has limited bandwidth. Crucially when your mesh is small, your thread mesh will be less interconnected and more prone to partitioning. TREL can help avoid that by using WiFi and Ethernet to prop up your weak mesh. Though that advantage is more pronounced in heavy Apple homes - we had users with 7 or more border routers on their first day of matter for a single light bulb because they had HomePods in most rooms.
I need some help from a HA developer, I am trying to identify where on the code I have the "Failed to generate device credentials" error to try to see the logic and try to find out why I have it - I searched on addons, core and android repos with no success. The message does not really help the end user on what to do. Could someone help me?
Where do you see the error? On an Android device? I think this comes from the Android Matter SDK which we don't really control.
on android, correct
When/at what point is the error exactly shown?
after reading qr code
Yeah pretty sure this is still "Google code".
Seems this user had the same issue, maybe a missing Google Account in your case too? 🤔 https://github.com/home-assistant/core/issues/105535

it is the case, I will try with an account to see what happens
is there a feature request/backlog item to overcome this requirement? I am willing to support in any way I can
my OTBR integration was looking good with Skyconnect, then i upgraded HA core to 2024.5.3 and it started showing status: Failed setup, will retry. Is it a known issue?
I see on the logs of the addon a lot of InvalidArgs errors now.
There is an issue now https://github.com/home-assistant/core/issues/117441
InvalidArgs is normal
Hello guys! I just found my tiny 2 device thread network interferes with my zigbee network and I struggle to find information on how to change channel on my thread network. I'm running the OTBR Addon in HA. Anybody care to give me a pointer? Thank you!
fwiw my zigbee channel is 20 and I have not configured any specific channel for thread (as I can't find neither docs nor settings for it)
the reason i believe it interferes with zb is because my tinysa ultra spectrum analyzer tells me that there is a lot of singal coming from my thread eve energy plug (product no 10EBO8301) at ~2448 MHz, with zigbee being on 2450Mhz
hmm, i just measured again, and now the signal is at ~2.475 Ghz ... seems thread has changed the channel on the fly ...
Ok I actually found where to change the channel. Turns out there is a Thread integration in the Settings where I can set the channel. Turns out it is set to channel 15. Now I wonder why The eve plug is definitely transmitting on varying frequencies which are definitely not channel 15 🤔
matter eve energy
just measuring again, and now it is transmitting on two channel simultaniously, that's weird
nothing is connected via bluetooth
oh wait, I was wrong after all, it was my corsair wireless headphones 🙈 I keep forgetting that so many device are using that band
gotta love prorietary protocols. fortunately I know that this device is transmitting with such little transmit power that it is unlikely tampering with ma zb or thread network. All is well! sorry, I feel very bad now 😄
hahaha all good dude, happens to the best of us
Hello. Did anyone have success with HA on a virtual machine?
in general, or specific to Thread support?
Because lots of people in #installation-archived run HA in a VM
And 31% of those that report to https://analytics.home-assistant.io/ runs in a VM
specific for Thread
sorry for not explaining
When I have Matter over Wi-Fi, it works perfectly
A lot of people here will run HA in a VM
yeah, most of us here do, do you have a external thread dongle?
Sonoff ZB Dongle E
and what vm software are you running it in? proxmox?
multipan lol, rightio
but now i've flashed openthread
Ah... multi protocol... you're fucked 
Therer's a reason that multi-protocol is deprecated and discouraged
OpenThread should work, then?
cool good, can you see the usb device path in the config settings of the openthread add-on?
But... with the github script i was able to join the thread netowrk via commissioning from iOS
hold up, whats the issue here?
stuck setting up
you cant get a matter over thread device to pair?
so thread network seems good, but no matter pairing
esp32-c6
with the esp-matter light example
it worked with wi-fi
just changed flags to use thread instead
you trying to pair it directly to home assistant? its not been paired to anything else before
i wonder if doing a factory reset might help it
factory reset before all atempts
yes
we had that issue with Wi-Fi before 🙂
iOS has thread credentials (from the script)
device joins thread
but matter.... doesn't
and there is nothing in the matter-server logs yeah?
wifi was pretty simple. just scan QR Code and it was working
let me check now with openthread addon
i need ipv6 on both devices?
both on HA and on the ESP32-C6?
Ya
matter only works through ipv6?
Thread does
Matter over wifi might use ipv4
but even after device is on the thread network?
The initial commissioning happens over Bluetooth
ESP32-C6 -> OTBR (Thread)
So that might make sense as to why it’s “dropping off”
Then to leave packets to network via ipv6?
It’s getting the creds from your phone over Bluetooth, then it’s trying to communicate over thread (v6) and failing
it might explain why it appears on the topology
but not communicating?
OTBR addon on home assistant is not communicating with the matter server, that might be the problem?
OTBR has an ip address, that communicates "locally" with the matter server that as another IP address?
It might use websockets, I’m not 100% on the relationship between the two, one of the devs would be able to answer that one
But enabling v6 support where-ever possible is a good start
Have you got ipv6 enabled on your host machine, and on home assistant?
Settings > system > network
the thread border router is a "router", all it does is provide a path for ipv6 packets to go back and forth between your lan and the thread network. so there has to be a working ipv6 network path between the ha matter server and the thread border router for things to work.
Yeah, make sure everything has ipv6 enabled
Thread/matter uses ULA iirc, so make sure your home router/network supports ipv6
perfect explanation
ipv6 enabled
fde2:9bf9:1b33:9548:d968:4b63:6b43:12e9
on HA
i can ping on my p
pc
2024-05-15 15:17:54.608 (MainThread) ERROR [matter_server.server.vendor_info] Unable to fetch vendor info from DCL: Cannot connect to host on.dcl.csa-iot.org:443 ssl:default [Temporary failure in name resolution]
does this mean anything to you?
on matter server logs
Huh
Do you have pi hole or anything that could be blocking that domain?
Works for me, so much better something on your end
PING observers-network-lb-ffec09a2eebad640.elb.eu-west-1.amazonaws.com (99.80.97.233): 56 data bytes
on my computer i can make it, but request timout
but yes it works
Hmm
mDNS should be enabled on router?
otbr-agent[171]: 00:00:00.080 [N] Platform------: [netif] Changing interface state to up.
otbr-agent[171]: 00:00:00.085 [W] Platform------: [netif] Failed to process request#2: No such process
otbr-agent[171]: 00:00:00.086 [W] Platform------: [netif] ADD [U] fe80:0:0:0:7411:35e0:a65:3559 failed (InvalidArgs)
otbr-agent[171]: 00:00:00.086 [W] Platform------: [netif] Failed to process event, error:InvalidArgs
otbr-agent[171]: 00:00:00.086 [W] Platform------: [netif] ADD [U] fdb2:eb9:18e0:5138:c9d:5162:a1cd:3984 failed
on the OTBR addon i get this
otbr-agent[171]: 00:14:36.968 [N] MeshForwarder-: Failed to send IPv6 UDP msg, len:96, chksum:de60, ecn:no, to:c64ea98e90ac4f07, sec:no, error:NoAck, prio:net, radio:15.4
otbr-agent[171]: 00:14:36.968 [N] MeshForwarder-: src:[fe80:0:0:0:7411:35e0:a65:3559]:19788
otbr-agent[171]: 00:14:36.968 [N] MeshForwarder-: dst:[fe80:0:0:0:c44e:a98e:90ac:4f07]:19788
oh wait, router ipv6 is not assigned
i can ping6 HA, but dont have router ipv6
that's why IPV6 DNS wasn't working
ipv6 dns shouldn't be required; but if your router is saying it's a dns server in dhcpv6 or router announcements but isn't actually acting as an ipv6 dns server, that would be a problem...
haven't used mikrotik stuff much, but it seems like they provide a lot of fiddly controls so it might be possible to get into a state like that where different parts of the system don't agree with each-other :/
as long as home assistant and the thread border routers are in the same subnet (and nothing is filtering mdns traffic), the router itself doesn't have to be involved with mdns.
i do not recommend placing home assistant and thread border routers in different subnets. in order to talk to thread devices, home assistant not only has to be able to do mdns queries that reach the thread border routers, it also has to be able to receive router announcements sent by the thread border routers.
Can matter over thread devices control each other directly, such as zigbee remotes directly paired with a zigbee bulb (but for thread devices with matter support)?
@mystic vapor that's a #matter-archived question; the behaviour is the same regardless of which network connection type is used. (And yes, matter has bindings; HA doesn't currently support setting them up)
@magic sedge I converted your message into a file since it's above 15 lines :+1:
On the UniFi side, everything Thread related (so the miniPC running Home Assistant, the Apple TV and HomePod mini that act as Thread router border and all the UniFi gears that connect them, switches and APs) are on the same VLAN. Multicast DNS is activated on this VLAN and the IPv6 is transmitted through Prefix Delegation from my WAN, using SLAAC. RA is also activated on High. Multicast Enhancement and Broadcast Control are deactivated. I tried to activate IGMP Snooping, but it made no difference.
Let me know if you need more informations, I don't know where to go from there…
(and sorry about the file transformation, I have no control about that it seems)
Try turning mdns off on that vlan
Mdns isn’t something that needs to be turned on on your router
That’s actually their mdns repeater. Which is shoddy
I just did, rebooted the Debian miniPC to be sure and same result as before.
I can still ping6 from my Mac though, so I guess you're right that mdns is not necessary on the router
Does anyone know how to troubleshoot when I can't reach a Thread devices IPv6 mesh local address from Linux, but it works from Windows PC?
I can ping from my Win 11 to the mesh local address (fd1d:8693:81a:0:d274:9ab:2158:766f) via the TBR (Apple TV 4k/HomePod Mini over Wifi) and I can ping IPv6 local and global to and from all the different Linux clients I tested from. I can also use tracert and see the hop via some of the Apple TBRs. Fairly new to IPv6 with Linux so any tips are welcome!
It’s hilarious to say but Linux is pretty bad at (this part of) ipv6
HAOS is the only Linux distro that is expected to to work out of the box
Some NAS and router kernels flat out don’t support it
Mainstream Linux distros need to change a bunch of sysctls
If your distro uses network manager you need a custom build with a patch that’s in their tracker that they are ignoring
It’ll take multiple minutes from applying those sysctls for it to start working, as it has to see another icmp6 RA packet from the HomePod
If ^ doesn’t fix it, then you’d probably want to run tcpdump and check that the Linux box is seeing icmp6 from your border routers
Also checking “ip -6 route” and looking for your thread devices /64 and verifying it has a via route that points to your border routers
I did all that, it changed nothing on my Debian 12…
But it used to work fine before I installed the UniFi router, so I'm guessing the issue is on it's side rather than Linux
How do you check that exactly ? I did put my routes above but I'm not sure what to do with it.