My Home Assistant (latest version 2025.4.2) is reporting that four of my Matter devices need updates. They are all Eve Energy Matter switches (not updated to Matter via a firmware update).
It’s reporting the devices firmware is 3.2.1 (which in fact is the current version), but say they need to be updated to 3.5.0. There are Eve devices that have such an update, but not the power swtiches called Eve Energy. Anyway, I’m just going to tell HA to ignore this update for now and check back and do the updates manually.
Please figure out what’s wrong here. It’s not on my end, so it’s something in Home Assistant that is misidentifying the need for an update. Thanks!
The update is available on the CSA download ledger, which is the official Matter update list and it can be updated to 3.5.0. My Eve Energy devices are.
Beware that this update will make a change in the way energy sensors work, since they switch from a vendor specific data source to the new Matter standard source.
This means your entities for energy values might be re-added, but with the old ones still visible, but unavailable.
same here. tried many times. It’s been like this for about 2 weeks. Oddly, some of my Eve Energy devices did update to 3.5.0 even though they’re the same model to my knowledge.
Firmware updates over Thread, Zigbee and Z-wave networks are always slow, due to the limit bandwidth in these protocols.
If you got some updated, then have patience.
If no updates occur even after a week, then your IPv6 at your ISP is not working or not available and then you might need to activate NAT64 on the Matter server (or is it the Thread Border router?)
For what its worth, I myself don’t have these things you mentioned enabled/working yet I still get Matter updates for devices like the Eve Energy device without any issue.
Without an IPv6 IP on the routers WAN port it should not be possible for the Thread devices to download firmwares with NAT64 disabled.
You should be able to see them being available, but the download should fail.
AFAIK devices don’t need connection to the Internet, the firmware is downloaded by the Home Assistant instance which acts as OTA Provider and that’s a simple HTTP request. Once downloaded, it sends it locally to the device.
There’s an image here depicting the process. The OTA Provider is Home Assistant, the Image server is on the Internet where the firmware is downloaded from. The OTA Requestor is the device.
It is not as such HA that is the OTA provider though, but either the Matter server or the OTBR. Which one it is I can not tell from my observations.
Matter contacts the CSA DCL for updates, but if it acts as the image server or OTBR does is hard to tell for me.
OTBR should be an exclusively IPv6 addon unless NAT64 is enabled, so you should not be able to update firmware with only an IPv4 network.
Maybe there are other border routers in the network with NAT64 enabled.
The OTA Provider is indeed the Matter server (source here), which typically is installed in the Home Assistant machine. It’s part of the Matter controller features of HA even if it also works standalone.
Then there’s the Matter add-on integration of Home Assistant to integrate the feature in HA (source here).
In Matter it’s mandatory to use IPv6 and Home Assistant already communicates with the devices to turn them on/off, receive states and whatnot. They are all part of the same Matter fabric and local network. If HA can turn on the smart plug it can send it the firmware, no need for NAT64.
Regarding the download from the image server by Home Assistant, that’s not Matter, it’s like opening a website. The TBR is not involved at all and does not need any special configuration.
Edit: meant integration instead of add-on, thanks Wally
I can’t follow you in that description. Some of the terms are messed up in it.
The Matter server is an addon (or docker container that can also be used independently from HA).
The part that is in the HA core is the Matter integration.
HA use the integration to communicate with the Matter server and the Matter server then communicates with the devices or if the device is a Matter over Thread device, then the Matter server communicates with the OTBR addon and that then communicates with the devices.
HA only communicates with the Matter addon and it has therefore nothing directly to do with the Matter firmware updates, which is done on either the Matter server addon or the OTBR addon or a combination of them.
When you start the Matter server, then you can see in the logs that it queries the CSA DCL for updates.
My bad, I mistakenly wrote “add-on” instead of “integration” in the previous comment. Since I linked to the github source I’m pretty sure you knew what I was talking about.
Other than that the terms and the explanation seem fine.
Fair enough, you don’t see Home Assistant as the whole smart home platform like me but just the core. Different abstraction levels.
The firmware is downloaded by the “Home Assistant Python Matter Server” (edit: recently renamed to “Open Home Foundation Matter Server” if we are being picky), which is the OTA Provider as you can see in the source I linked before.
Thread border routers (being OpenThread or not) just provide IP connectivity, and the OTBR add-on is not even needed since the same Matter firmware update mechanism is available for Matter over WiFi devices and not all Matter over Thread devices are going to be connected with an OpenThread Border Router.
It is the HA Matter server the one querying the DCL and it’s the HA Matter server downloading the firmware from the image server, not the device, that’s why it does not need IPv6 support by the ISP or NAT64, it can be your typical IPv4 web request. The communication from the HA Matter server to the device is always IPv6 and happens in the local network, no NAT64 needed and no ISP needed.
My Eve energy plugs were initially upgraded to matter from HomeKit (using the Eve app) and shared to HomeAssistant using matter pairing. When the upgrade appeared in HA the update failed. When I went into HK and queued the update they (slowly) updated successfully. Just breadcrumbs for those who follow…