back
102 comments
I’m in the process of migrating from Zigbee (Z2M) to Matter over Thread (Apple HomePods + Matter Server).

My Zigbee network was a mishmash of different vendors all of which had their own failure rates and quirks, Aqara having by far the highest failure rate and complexity.

My new Ikea (Thread) based setup has had absolutely zero issues so far and fingers crossed it doesn’t start suffering as I scale it out. That said, it is noticeably slower than Zigbee, but we’re talking 50ms > 250ms. Which is more than acceptable.

What's to stop Ikea from pushing an OTA and crippling your whole setup 2 years from now?
You don't need to update your devices, and they don't need to be connected to any cloud. That's the whole point of these local communication protocols, after all.
Sorry to pop your bubble, but the moment you add any IP connectivity it will be eventually used to mandate internet access. The devices you have now might not yet demand it, but you will have to replace them at some point or extend your setup in the future. We've seen this play out so many times now, it's baffling people still think this time will be different.

There's a saying: If you set up a trough, the pigs will come.

That they would never see me buying again from them. That I can stop OTA. That matter is interoperable and I can run multiple gateways before cutting them out.

Most IoT stuff I own had a good track record. The only stuff that screwed me over was the logitech harmony smart remote.

But I usually pick the more open ecosystems and vendors. E.g.heating is on shelly.

If we start from GP premises where they were multi-vendor on ZigBee and now (allegedly) are living a much better mono-vendor life with Matter, you cannot play the multi-vendors card. I'm on ZigBee multi-vendor orchestrated by Zigbee2MQTT and while some devices are quirky sometimes (worse offender... IKEA) I'm not planning to move over to Matter any time soon at all.
> That said, it is noticeably slower than Zigbee, but we’re talking 50ms > 250ms. Which is more than acceptable.

I’m taking your “but” to mean “it is acceptable.

I would at least deem it noticeable to wait a quarter second for my light to turn on. May just be my own impatience, but I get an insta-headache whenever I have to wait to find out whether something worked or I have to try again. Every bit of jank is a downgrade in quality of life to me.

Now: May this be due to that specific setup or is the delay somehow inherent to the technology?

In many situations you're already "latent" due to interacting via voice: "Hey Siri, turn on the lights" is ~3-4 seconds to say casually, allow another 0.5-1.0 seconds due to voice processing, network, etc, and the missing 200ms is basically par for the course.

Where it starts to get annoying is "door open" and "motion detected" triggers. Motion detected can be played off as a sloppiness in the sensor cone, but going from "instant" to "laggy video game" when you have a physical trigger can be relatively annoying.

A lot of graphs where OpenThread & zigbee dance around each other, are within 2x of each other.

Two huge notables to me: message throughput for openthreads scales up, zigbee seems to hit a wall early. Not sure when that matters but very clear. The last table was a fright through: it takes half a minute for OpenThreads to recover after a node drops where-as Zigbee a quarter second! Wow.

Is there a situation in which your smarthome taking 30s to recover from a node failure is impacting your life? Seems like a distinction without a difference
Do you have any smarthome stuff? Standing around waiting 30 seconds for your light to come on would be moronic. A complete regression over the electric switch invented in 1884. I'd rip everything out right then and there. Your home should be reliable, smart or no.
Whilst I agree a smart home offers some benefits that your 1884 switch simply cannot match. And the cruicial point is that the 30 seconds are the worst case situation where something went wrong on the network. Its not the usual operational experience you'll get.

For me, having to wait 30 seconds once every blue moon is a tradeoff I'm willing to make.

Buttons etc. have direct binding. So even if your hub goes up in flames those will just keep working.

The automated stuff like "starting at sunrise gradually adjust the lights" might be delayed by 30 seconds. Annoying but hardly rage inducing.

Standing outside with an armfull of groceries, and a door is now our of range of your hub temporarily due to the failed node. 30s can seem like quite a while standing in the rain.
Not exactly a strong argument if you need like 5 qualifications to demonstrate the issue. If the right node fails, if it happens right as you walk up, if it's raining, if your porch is uncovered, if your door doesn't have an immediate fallback... I'm sure someone will be affected because of the law of large numbers, but it seems like an unlikely scenario to base a purchasing decision on.
Because IOT devices are cheap and networks are ad hoc, flaky connectivity is a likely occurrence. Thread must be reliable in these situations.
Oh, absolutely. That is the hot path.
`establishing it as a more robust foundation for larger and more heterogeneous deployments.`

Based on.... 6 devices?

Quite honestly I would have been interested in measurements with more than only 6 devices. Maybe upto 50 or so,even better if they'd mixed different hardware nodes for a more realistic scenario

I have 47 thread/matter devices, alongside some 10-15 matter over wifi devices, so not quite 50, but "close enough".

It's not as fast as Zigbee, not in day to day usage, and not in terms of reconnecting, which often takes 30 seconds (ie. after a power outage) where my Zigbee devices just seem to reconnect instantly. On day to day usage there's a slight delay when turning something on, but it's maybe 100ms or less.

I initially had quite a few problems, but after "standardizing" on a single thread network (I had 3 before for some reason), as well as adding some wired thread border routers, things have become much more stable.

My zigbee to thread is still a "work in progress", replacing devices as they fail (ie. lightbulbs), and I'm also still adding new Zigbee devices like the Aqara T1 Valve controller, but I prefer thread over zigbee today.

One thing I will note, people tend to underestimate the range of thread (and zigbee for that matter). Each mains powered device will function as a repeater just like zigbee, and I initially thought I might need a couple of smart plugs as repeaters, but despite having a somewhat large house (by european standards) as well as double brick walls dividing it, my thread devices have no problems "seeing" a thread border router in the opposite end of the house.

Thank you for giving some insight on your experiences I practice with that amount of devices.

I have a zigbew network running with around 55 devices current. Ever since matter over thread I'm wondering whether I should start making the switch.

Tell me, what made you start migrating to Matter? General availability of hardware, latency, stability, something else?

Initially it was just curiosity when thread/matter was new. Back then it was a horrible experience, but I was using primarily HomeKit as my home automation platform (which only supports thread) and didn't have that much complexity. I was also using a bunch of vendor specific apps to control each individual vendors ecosystem.

Fast forward some years and I had my share of vendor specific ecosystems be shut down, leaving me with a bunch of technically fine paperweights, which was when I started focusing on local first access. I didn't want to be locked in by yet another vendor, and I was still using HomeKit as my main platform (still not very advanced home automation), so thread/matter came naturally.

What really turned things around was when I purchased a Homey Pro in 2022/2023. I could integrate pretty much everything locally, and expose it to HomeKit to the "control surface" my family used, which is when I started using Zigbee more (only had Hue before that).

These days I'm running Home Assistant. The Homey Pro became too small, frequently running out of memory, and switching to Home Assistant opened a whole new set of doors with ESPHome and others, like gaining control of my Vaillant Heat pump thought an ESP32 [1], or reading the wmBus telegrams from my water meter.

My "main criteria" at the moment is not so much if it's thread, zigbee, or wifi, but heavily focused on local control. I'm only buying devices that have local access. I'm fine with devices offering an optional cloud plan, like my Tado X TRVs, but I must be able to access them locally from HA.

I still default to thread/matter where possible as to not have too many things going at once, and I have zero Z-Wave devices.

[1]: https://adapter.ebusd.eu/v5-c6/index.en.html

Absolutely. My setup which is about 1 month old already has 14 devices and I'm just getting started. Only having 6 devices really feels comically small for a study investigating the performance of communication protocols where device count can really make a differnce, as observed by even then changes from 1 to 6 devices.
I’m a bit surprised they didn’t add zwave into this comparison.
They're probably only comparing open protocols. If one doesn't care if their protocol is proprietary then sure one might consider zwave. But it's hardly "surprising" that it's left out.
The funny part is that people think that Zigbee and Matter are open :)

All three of them have their shortcomings. Matter requires an unsecured IPv6 network to operate; I have my doubts about it having any longterm future.

> The funny part is that people think that Zigbee and Matter are open :)

How is Matter (APL2) over OpenThread (BSD-3-Clause) not "open"?

> Matter requires an unsecured IPv6 network to operate

How is this network "unsecured" exactly? Thread IS encrypted and authenticated.

What? The entire specification is in this git repo maintained by the home assistant team. Also, they’re on the zwave board now. It’s wholly open, but wasn’t maybe 4-5 years ago.

https://github.com/zwave-js/specs

Source available is not the same as open. Source available does not mean non-proprietary.

Just like HDMI, if you want to build a device that uses Zwave, you must pay for the privilege.

yes, and also that if someone is buying stuff new, it should be exclusively zwave800 stuff. example hardware on the "hub" end would be:

https://www.home-assistant.io/connect/zwa-2/

https://www.getzooz.com/zooz-zst39-z-wave-long-range-usb-sti...

the zooz is this internally: https://www.silabs.com/wireless/z-wave/800-series-modem-soc/...

another protocol/wireless stack? Why can't we settle down to something that is at least "good enough"?
Do you really need long antenna? I noticed zwave can act as a mesh.
I'd like to use z-wave but as an Australian we have different allowed frequency bands (specifically the USA-market gear uses frequencies that are reserved for telecom use over here, and anything that can interfere with the ability to call emergency services is Very Illegal), and thus the few devices that get built supporting the AU rf bands are overly expensive due to the (lack of) economy of scale.

As a result my home automation stack is a mix of zigbee, Matter (over both Wifi and Thread), and just plain WiFi. All of which uses the 2.4Ghz (and 5Ghz but mostly 2.4 for the IoT stuff) ISM band(s) and is thus cheap and plentiful.

Not sure how many other regions suffer the same issues, but I suspect that z-wave will be outcompeted by the more modern alternatives in the coming years.

/rant

Hey mate, Z-Wave in Australia operates on the 919.8 MHz regional frequency, which is different from the US (908.4 MHz) or Europe (868.4 MHz). They have AU certified zwave kit.
Doesn't zwave use a different frequency, and zigbee and thread are both 2.4ghz? Perhaps that makes it a more fair comparison?
Yes, zwave is in the much less congested 900mhz range. It is a fair bit more reliable as it doesn’t compete with:

- WiFi

- Bluetooth

- microwave ovens

Additionally, it’s a bit more strict with certification so you can easily use multiple vendors for zwave whereas with zigbee it’s often a terrible experience since vendors implement things differently in ways that are not as interoperable. In fact, for a device to be certified by the zwave alliance, it must pass strict conformance testing to ensure backwards compatibility and interoperability.

Zwave frequencies, as well as regulations, vary between countries/regions. This means that equipment isn't interchangeable, something I'm currently running into - I can't get a zwave electronic door lock for Japan while I could easily have bought one in my home country. But I wouldn't be able to bring it if I wanted to.

Zigbee is basically the same everywhere, however the 2.4GHz band is of course somewhat congested.

some zigbee controllers even support being converted to thread via a firmware update
These protocols add so much complications it makes wifi/tcp/ip a blaze

They fix some problems but add more, you endup just like that xckd about protocols

Having switched to zigbee devices recently I regret trying to start with WiFi. While I'm not sure how it looks under the hood, adding devices with home assistant was miles easier.
I've helped lots of people with home automation Network build outs l; the biggest factor is the RF environment.

If you're fortunate enough to not be battery constrained at most endpoints and can put a high quality Wi-Fi access point in an optimal location than Wi-Fi is incredibly reliable.

The tooling for inspecting all layers of a Wi-Fi network is infinitely more accessible and mature and that certainly helps; I can't go to My local big box store and get a USB thread dongle for 20 bucks that will just work on a Lennox computer and integrate nicely with Wireshark out of the box...

Thread is fairly similar to Zigbee, just standardized and doesn't require brand specific hubs. You can actually control thread devices direct from an iphone with no hub at all.

Wifi for anything but cameras is a mistake, it only exists for maximum compatibility since everyone has wifi already.

A bit of clarification: Thread is a layer 2 protocol, for the user, it looks like standard IPv6. Matter is application level, and just expect standard TCP/IP underneath. There's nothing binding Matter to Thread, and in fact a lot of Matter devices use Wifi
I wish we had multimodal Matter devices that could go over Thread or Wi-Fi (or even wired networking) depending on conditions.
Thats exactly what Matter over Thread solves. It just uses standard ipv6, udp, tcp.

WiFi is not designed for lots of low energy devices that can be repeaters.

I studied zigbee protocol for an exam and while everything is there for a reason, it truly feels diabolical
Some specifics would be a great addition to this comment.
As someone with hundreds of Zigbee devices w/ zigbee2mqtt in a network (actually 2; one in my standalone garage, and one in the house), I'm hoping Thread/Matter will not take over because _for me_ it does not have a single improvement over Zigbee 3.0 and I have had 0 inclination to adopt any Matter devices so far. Probably why Zigbee 4.0 is a thing.
I'm running both now, and while my Matter network seems to be solid, I can't get over the fact that it's so much harder to set up devices than on Zigbee. Why does Google need to get involved for me to set up a local IKEA device with my local border router?
I have tons of devices and I wish everything was Wi-Fi.

Wi-Fi has its problems but at least it is easily measurable, debugable, ... Zigbee is a voodoo protocol: you initiate the pairing and hope for the best. And then you hope for the best to have it stay on.