I needed more full routers in my thread network so I created a couple with esphome on an ESP32-C6 (with external antenna). Worked fine.
But they seemed to just be mostly sitting there and I hate wasting $5 in hardware, so I experimented a bit with converting a DHT one to be a thread FTD but also conveying sensor data back to Home Assistant. Also mostly worked though less so.
It raises questions:
The thread connection (and/or the ipv6 connection) seems very slow. OTA functions take forever, and also I regularly see errors like these:
Is running esphome sensors over thread generally reliable on this hardware, or should I just do separate esp32 devices when I want sensors somewhere?
It appears that thread is just a transport for esphome API -- I don't see a fully esphome supported matter implementation. Is that correct? Thread transport, not matter (at least for now in esphome native)?
I have DHCPv6 implemented but esphome has never pulled ipv6 addresses from reservations there; that appears true here also, they are using a local address, though I see indications that the Border Routers should pass DHCPv6 addresses. Should that actually work? (I'd prefer static/reservation addresses for network monitoring via pings for a separate "is everything up" check).
Running 2026.04.x and same for HA. I have both a ZBT-2 and a SLZB-MR1U acting as border routers (both only doing thread).
Although I have not used ESPHome to build a Thread device, I have used Espressif tools to build a Matter over Thread device for an ESP32-H2 and it works quite well as a repeater, and have not really encountered some of the errors you are showing.
That's correct. Thread is just a networking layer, and device control is done the same way as an ESPHome device over WiFi. As such Matter is not used for device control.
Internal to the Thread mesh, although it uses IPv6, the addresses are managed internally by Thread. There are ways to influence the prefixes that are used, but the full IPv6 address of an end device is still handled internally.
Thread does support the TBR using DHCPv6-PD to get a prefix that can be used in the internal mesh for devices, but again, this is a prefix and not a full address.
I looked briefly and didn't see a native MOT for esphome. It doesn't matter (pun accidental) really what protocol so long as they connect and work. And It is working, the only two things that look wrong is how very, very, very long an OTA flash takes, and that I get all sorts of errors in the log. It never (yet) goes unavailable.
Yeah, I guess I just need to ping by mDNS. I'm old school networking, and I vastly prefer static assignments (or at least reservations) for stability. mDNS (and similar tools) seem to have so many quirks in router/switch implementation that can break things (thinking of you Unifi!).