The State of Matter

During our State of Matter live stream two weeks ago, we explained what Matter is, how it relates to Thread, and how you can compare it with existing protocols you may already know, like Zigbee or Z-Wave.

In this blog post, we’ve extracted the highlights of the stream for you. We also link to our updated Matter and Thread documentation where relevant.

You can watch the entire live stream here:

We’ll also highlight each segment of the live stream in this blog under each corresponding heading, so you can start watching the specific parts that interest you!

Why we believe in Matter

We believe in Matter: it’s open source, and most importantly, it’s fully local by default. Matter will allow us to control devices ranging from lights, to robot vacuums, to TVs, and to many other IP-connected devices, all through a standardized protocol. It is a huge step forward towards having more sustainable and worry-free smart home products. For this reason, Nabu Casa uses the revenue we get from the subscribers to Home Assistant Cloud (thank you all!) to employ developers who are dedicated to implementing Matter. And we have even joined the Connectivity Standards Alliance (CSA) - the organization behind the Matter standard - as a participant to have a front-row seat and to defend the Open Home values during the development of the standard.

Matter launched only one year ago, compared to twenty years for a standard like Zigbee, so it’s important to account for that in your expectations. If you’ve already invested heavily in an existing local standard, like Zigbee or Z-Wave, Matter is probably not your best choice at this point. We think there is no reason to throw these current smart home devices out, especially when they still work fine - after all, sustainability is one of our Open Home values. But if you are new to the smart home scene and looking for devices with local, cloud-free standards that will still work even many years from now, keep an eye on Matter. The standard is rapidly evolving, with major updates twice a year where new device types and enhancements to existing ones are released.

After this first year, the current selection of Matter devices is still a bit limited, but a lot of companies have been using this time to develop them, and we expect more to be released soon. More and more companies are joining the CSA and taking up the standard every month. We think Matter is here to stay and is going to be widely adopted.

Demystifying Matter

To really understand what we’re talking about when it comes to Matter, we recommend you read our updated Matter documentation or watch this chapter from our live stream.

In this segment, our product manager JLo explains Matter in an easy-to-understand, visual manner, using the diagram you see above. You’ll no longer have to wonder about Thread, Border routers, Bridges, or other Matter terminology after you’ve watched this video.

The current state of Matter in Home Assistant

For the past year, we have been working on getting the foundation ready to support Matter devices in Home Assistant. Our implementation is based on the official Matter SDK, and we plan for it to become officially certified by the CSA to show that it will work problem-free with all products that carry the Matter logo. But we are not there yet; that is why we still label Matter as Beta in the integrations list. This will not change until our implementation has been certified.

We are still ironing out bugs, writing documentation, adding missing features, and doing a lot of troubleshooting. We are not alone on this, as many manufacturers needed this first year to get comfortable with the new standard as well, resulting in some unstable early devices coming to the market. We’ve also had to tweak our Home Assistant Operating System to work well with Matter, Thread, and its IPv6 requirement.

It has been a bumpy - sometimes even frustrating - ride, but everything is slowly getting into good shape. Vendors have ironed out bugs in their Matter device firmware, all kinds of new devices are popping up in stores, and the Matter 1.1 and 1.2 updates brought tons of stability fixes to the standard.

From our perspective, it’s amazing that Matter is already in this state after being started only a couple of years ago. You can clearly see the enormous power of so many companies, from small to big, believing in Matter and working together to improve it.

Get started with Matter in Home Assistant

If you want to get started with Matter in Home Assistant, it is really important that you read the documentation or watch this chapter of our live stream, which covers it all.

Matter has a few gotcha’s you should know about, and because we are still in the Beta stage, not everything is as polished as we want it to be.

If you follow the requirements/recommendations in the documentation, you will see that there are four scenarios that are stable and work well in Home Assistant today:

  • Using WiFi-based Matter devices, like TP-Link (Matter) power plugs.
  • Using Matter bridges, like the Aqara M2 or SwitchBot Hub 2.
  • Using Thread-based Matter devices; if you have an Apple iPhone and one or more Apple devices that can be utilized by Home Assistant as a Thread Border router: HomePod gen2, HomePod Mini, Apple TV 4K (with ethernet).
  • Using Thread-based Matter devices; if you have an Android phone and one or more Google devices that can be utilized by Home Assistant as a Thread Border router: Google Nest Hub v2, Google Nest Hub Max, Google Nest WiFi Pro

It’s very important to note here that for Thread-based devices, the current recommended setup utilizes border routers from Apple or Google that match the type of phone you have. Please don’t worry - this doesn’t mean you have to add your devices to their ecosystems. Home Assistant will just use them to get access to the Thread radio network. The communication between the Home Assistant Matter controller and your Matter devices is completely encrypted and secure.

Using Home Assistant itself as a Thread border router (for example, by using the Thread radio in the Home Assistant Yellow or Home Assistant SkyConnect) is still under development at this point and is only recommended for the more technically experienced users. Currently, due to a bug, it can only be set up if you use an Android phone. Setting the Home Assistant SkyConnect or Home Assistant Yellow up as a Thread border router is not yet possible for users in the iOS/Apple ecosystem. We recommend that iOS users place, for example, a HomePod Mini or other Apple border router near their Thread devices to get the required Thread coverage. Alternatively, you can stay with WiFi-based Matter devices.

Important

You do not need any additional hardware or radios to work with Matter devices. Any device that is running Home Assistant Operating System, be it a Home Assistant Green, a Raspberry Pi, or any other installation, is already a fully functional Matter Controller. You can connect to WiFi-based Matter devices straight out of the box. Only if you plan to use Thread-based Matter devices do you need additional hardware in the form of a Thread border router.

Our tips for a frustration-free Matter experience:

  • Read the documentation for Matter.

  • The easiest devices to get started with are WiFi-based Matter devices and Matter bridges. Do note that many brands with Matter bridges also have excellent native integrations in Home Assistant, and these integrations may offer features not yet available in the Matter standard.

  • You need to run the Home Assistant Operating System. Other installation types are not supported.

  • You need a standard (flat) network. Enterprise-like network setups with VLANs, mDNS responders, etc., break the expectations that Matter has about the network and are not supported. Keep it simple, and it will just work.

  • Enable IPv6 on your home router and Home Assistant Operating System. You don’t need to get IPv6 from your internet provider, as the Matter devices operate locally. But you do need to make sure it’s enabled on your home network.

  • If you are planning on using Thread-based Matter devices, you will need one or more Thread border routers in your home. Home Assistant can work with third-party Thread border routers from Google or Apple as well, without having to add your devices to their ecosystem.

  • Always check the device packaging to make sure it has a Matter badge. Thread is also used for other standards, so a device with a Thread badge on the packaging does not have to be a Matter device.

  • Note that Matter is still in an early stage, so not every advanced feature you are used to may currently be implemented in this standard.

  • Use the latest version of both Home Assistant and the Home Assistant Companion apps, as we are improving Matter support and fixing bugs continuously. Using the latest version can make the difference in being able to add a device to Home Assistant or not.

Support

If you run into problems, please join our Discord server, where we have a dedicated Matter channel. Both our developers and many very experienced members of our community are active there to help you out with your Matter setup. Please only open an issue on our GitHub issue tracker if you encounter an actual bug.

The Future of Matter in Home Assistant

In the near future, we are focusing on improving the user experience to onboard and manage Matter devices. Especially adding new Matter devices to Home Assistant should be as stress-free as possible.

This is what we are focusing on now:

  • Functionality to ‘share’ a device from Home Assistant to another Matter controller.
  • Showing basic device information and diagnostics about a device in the Home Assistant interface, as well as adding some troubleshooting options such as forcing a full interview.

This is what we will be focusing on next:

  • A simpler flow to add Matter devices (a process called commissioning), where we guide our users step-by-step all the way from unboxing a device to being able to control it in Home Assistant. For now, we are focusing on the stable scenarios we mentioned previously. This means that we are improving the commissioning flow in our companion apps, relying on the Matter functionality built into your phone, and using (if necessary) Thread networks managed by the vendor of your phone (Google or Apple).
  • A better handling of sharing of devices between controllers (a functionality called multi-admin). Adding a brand new Matter device (commissioning) and sharing a device that is already controlled by a Matter controller (multi-admin) are not part of the same flow. This difference is dictated by the Matter standard and its security features; a current controller (admin) has to allow a device to join another controller. This is often misunderstood today, and we are trying to create a better flow that guides our users toward the right path for their devices.
  • We want to implement some missing features in the current platforms, such as light transitions and scenes.

This is what we want to achieve in the long run:

  • The ability to use the Home Assistant SkyConnect or Home Assistant Yellow as a Thread border router to connect to Thread-based Matter devices instead of using Apple or Google Border routers.

On top of this, we will continuously focus on extending the support for new devices as new device types are added to the specification or existing ones are extended. In some cases, manufacturers even contribute to Home Assistant themselves to ensure a new device type is supported.

We are also continuously keeping the quality of our Matter integration up to the standard of Home Assistant and fixing the most impactful issues our users are facing. For example, right now, we are making sure Matter devices that lose power are handled better in Home Assistant.

Using Home Assistant Yellow or Home Assistant SkyConnect

As we mentioned while talking about the recommended scenarios earlier, using the Home Assistant Yellow or Home Assistant SkyConnect for Thread is still in development and only recommended for technically experienced users.

That’s why our current recommendation for Home Assistant Yellow and Home Assistant SkyConnect is to use the Zigbee firmware to power your Zigbee network. This is a stable solution that has worked reliably since the introduction of these products and offers a great experience.

As we continue to work on Matter in Home Assistant, we’re now focused on ensuring that the Thread experience will catch up and become a first-class citizen, making it easy to connect to your Thread-based devices in Home Assistant without a third-party Thread border router. The Thread firmware is already fully functional under the hood, but we still have some work to do to make the experience of using Thread-based devices in Home Assistant feel good. As we mentioned in our chapter on the future of Matter in Home Assistant, we expect great strides in this area within the following months. Once the experience has improved, we will recommend using this Thread firmware to power your Thread network as an alternative to using third-party Thread border routers from Apple or Google.

There is a third, experimental, firmware option that supports multiprotocol, which allows the Silicon Labs chip in these products to connect to both Zigbee and Thread networks with one radio. We announced our intent to release a firmware supporting multiprotocol when we launched Home Assistant Yellow and Home Assistant SkyConnect, and this firmware has been available since December 2022. It integrates the Silicon Labs SDK, which adds this support for multiprotocol. During the further development and testing of the multiprotocol firmware, we have concluded that while Silicon Labs’ multiprotocol works, it comes with technical limitations. These limitations mean users will not have the best experience compared to using dedicated Zigbee and Thread radios. That is why we do not recommend using this firmware, and it will remain an experimental feature of Home Assistant Yellow and Home Assistant SkyConnect. If you currently have the multiprotocol firmware installed but don’t actively use it to connect to Thread devices, we recommend that you disable multiprotocol.

Nothing changes for current users of the multiprotocol firmware who are happy with their experience. The experimental multiprotocol firmware will remain available, but we will not recommend it to new users. Instead, we will focus on making sure the dedicated Zigbee and Thread firmwares deliver the best experience to users.

Thank you

After our first year of implementing Matter, we’re very happy that the technical foundation is in good shape. We can now take the next steps to ensure the entire Matter experience is as good as it can possibly be! Thank you to all of the users who have been on this journey with us, have provided us with valuable feedback and bug reports, and have shared their experiences so we know how we can make Matter in Home Assistant even better. And thank you to all of the viewers of the live stream and everyone who sent in questions beforehand and during the stream; your input helps us make these streams the best they can be. And if you made it all the way down here - thank you for reading!

If you have any more questions or experience problems with Matter in Home Assistant, please join our Discord server! We have a dedicated Matter channel there, and our developers and many experienced members of our community can help you out.


This is a companion discussion topic for the original entry at https://www.home-assistant.io/blog/2024/01/25/matter-livestream-blog
7 Likes

Marcel, just have to point out that the video link does not show up in the forum. You have to go to the actual blog.

Thanks for this.

2 Likes

Now we need the devices and more maturity. Some good thread + matter LED drivers would come a long way in providing any easy entrypoint into home automation and local light control.

Also I really hope the Rust Matter (device) SDK will make some progress, so we can easily build matter controlled software (without going insane from C/C++). I currently have a PI controlling some stuff via a Rust application and Home Assistant MQTT, but being able to simplify it and don’t have to rely on MQTT or the hone assistant specific “protocol” would be awesome.

Same thing for ESP Home. AFAIK it’s possible to use Thread on those (in theory), which would make it actually usable without needing to clutter the WiFi even more.

2 Likes

Since my question is not personal but rather strategic, I figure I’ll ask it here for others to find. If this is not the meaning apologies just point me where else to post it:

This question bubbles up from a very practical situation: My handful of Matter-over-Thread devices at home keep falling in and out of of “unavailable” state. In the current state of software stacks, the issue (or possibly issues) is very difficult to pin-point, and could exist anywhere between HA Matter stack, SkyConnect Thread firmware and the end devices’ firmware. My family is slowly losing faith in the smart home concept. That recently led me to wonder whether Matter has a concept of direct device-to-device communication, bypassing altogether the hub’s software as well as hardware for simple yet very common scenarios like on/off button press, light dimming / hue / colour change, or thermostat ↔ heater communication. After all, ZigBee has this concept, and the feature seems successful.

So, as a firm believer in Matter (and Thread), I started exploring a bit. Information is extremely scarce, but as far as I can understand the concept is already a part of the Matter spec and has a name: Matter bindings. Clearly, device support is scarce as well (Eve Thermo seems to be a pioneer) and/or goes completely undocumented by even strong manufacturers such as Eve and Nanoleaf. I believe Inovelli has just released the very first dimmer/switch supporting and documenting this feature. However, a closing sentence that prompted me in the linked article above was:

“To what extent large Matter ecosystems will then integrate the function into their apps remains to be seen. Since it works independently of hubs such as the Apple HomePod, Amazon Echo or Google’s Nest Hub, users would become more independent of the platforms.”

This made me realise that without platform support - such binding features will be largely useless for device manufacturers to invest in (unless they develop their own app as a Matter Controller, which so far is very uncommon), since without proper UI functionality, users would not be able to bind their products to their respective counterparts.

So my question is:
Considering that implementing this feature:

  1. Seems to align and support your core Open Home values by allowing devices to depend on less moving parts (in this case HA itself!) and thereby become more sustainable
  2. Should increase overall responsiveness and robustness (think: HA is updating yet switches and thermostats keep working), reduce latency and allow lower-level automation support
  3. Could help drive device manufacturers to implement this feature in more product line-ups, and perhaps even cooperate with HA as the only platform out there which this feature could be tested on
  4. Could place home assistant in the spearhead of Matter implementation, even ahead of all the Matter giants Google, Apple, Amazon, Samsung
  5. Could restore some of the lost smart-home community faith in the Matter standard’s practical stability

Considering all of the above, could this feature be considered a valuable addition to HA’s near future’s Matter roadmap?

Thanks for your time,
Ohad

Hi Ohad, I have some good news for you because we’re already talking with some device vendors to work together to incorporate Matter bindings. As you can see in our update we’re still a bit swamped in other priorities but this definitely is on our wish list!

5 Likes

Hi Marcel,
Thanks a lot for the swift update, that’s great news!
Looking forward to hear more about this feature’s progress in future updates.
I also hope HA can play some role in raising much needed awareness across the community.
Cheers,
Ohad

Matter will probably work best if it’s rollout is similar to RCS.
Quietly becoming the overwhelming standard, so that users end up buying a new product that is matter compatible, without knowing or needing to know what matter is. The non matter devices (in high street shops at least) becoming pretty much unavailable.

A slow continuous creep, so that by the time that products are starting to be bought in any significant numbers, the standard will have had many of it’s issues ironed out.

RCS on Android has worked pretty much the same way, a slow gradual rollout so that we have reached the point that as of today, any contact that is on your phone that cannot be messaged over RCS, is almost certainly an Apple user. But for the normal non techie user, they don’t know what RCS is, all they know is that at some point in the last few years, they gained the ability to see sent and read status, see people typing, join groups, and send pictures.

I must confess that when I bought the HA SkyConnect, it was in part due to this promised multiprotocol feature. I have already got rid of my Philips Hue bridge and planning to do the same with the IKEA Tradfri one to control my Zigbee devices directly from HA through SkyConnect. I was waiting for a stable release to start using SkyConnect as a Thread border router and getting some Matter/Thread devices.
So, if I want to keep my Zigbee network on my SkyConnect, but want to move (when stable) to Matter/Thread (without Apple/Google devices), what should I do now? Buy a new SkyConnect and use both of them in parallel?

Thanks for this great Matter overview.

I moved to Home Assistant 3 month ago. We have a lot of Zigbee devices in our house - over 200, especially all the lighting (Philips Hue).

I had a painful learning curve when setting up Zigbee in Home Assistant. To create a stable Zigbee network without Hue Bridges, I had to split the network and distribute multiple Zigbee LAN coordinators around the house (4 indoors and 1 outdoors).

This forced me to switch from HA OS to container installation, as in OS add-ons can only be installed once. With containers, I can run as many Zigbee2MQTT modules as I need.

Now I read in your post that Home Assistant only works as a matter controller in the OS version.

Am I now at an impasse for a fluent implementation of future Matter devices? Or will the Matter Controller function be added to the other installation variants at a later date?

@Frank2604 FYI, I just came across this: Matter (BETA) - Home Assistant

Yes, either use a second stick to run Thread or use a 3rd party Border router, such as apple homepod mini, google nest hub v2. There are also a few more generic OTBR-based devices available such as from GL-Inet.

Note that the big benefit from Thread is that you can have multiple border routers so if you have a big home and/or multiple floors, it may make a lot of sense to spread multiple BR’s throughout your house which provides failover and redundancy and even load balancing of the traffic

Strange. In general it should be better to just create one big strong Zigbee mesh instead of having multiple if you use the right choices with zigbee stick, channel layout (including cocunt for external factors like wifi etc).

So this is actually the first time I’ve heard the need fort multiple zigbee2mqtt instances. If you ask me, that quickly runs into an administrative nightmare (my personal opinion). like I said, a single Zigbee network with many devices should be perfecty do-able with both ZHA and Z2M.

That said, officially we only support Matter using the official installation type, so using Home Assistant with the Matter add-on. If you are not going to run any Thread devices, you may have some luck running the matter server yourself in docker but it will be completely at your own risk and in case of troubles you’re on your own (and the community ofcourse) - If you run into an issue the first thing we will ask is to reproduce it on the official installation type, so HAOS.

Matter is still in early stage and complicated enough on its own so we’re focusing on providing the best experience we can for the majority of users, so people running the operating system, on which we’ve spent countless hours of tweaking and patching to get Matter running stable, especially in combination with Thread border routers.

So, just like with anything in Home Assistant you can choose for yourself and completely go the DIY route which - nobody is holding you from that - fact is that we provide an “official” supported way to provide the best possible experience.

Thanks Marcel.

Believe me, I have implemented and tried everything you can find on the www on the subject of Zigbee:

  • I have tried various coordinators SkyConnect, Deconz, Sonoff
  • I moved the host to the center of the house
  • Used a USB 2.0 HUB and a 3 meter super shielded USB cable
  • In addition to the 180 Hue bulbs already connected to power, 5 Zigbee repeaters distributed around the house
  • Tried ZHA and Zigbee2MQTT
  • Zigbee and WiFi channels as far apart as possible (Zigbee 11 and WiFi 11)

None of this helped. An estimated 20% of the commands were lost in the network. Lights didn’t go on or off at all. Sometimes they came on, but the command for the color temperature and/or brightness was not implemented, etc.

Now I’ve been using the split networks for 2 weeks and everything is running rock solid.

During my research, I have seen other users with very large Zigbee networks report in various threads that they had to split their networks.

I can’t say why it doesn’t work with a single network in my case.

Are you using perhaps Zigbee groups to control multi-light fixtures ?
Note that in my experience you run into limitations very fast with multicast traffic on all EZSP based chips as well as Deconz. As soon as you start using the zigbee groups your network will become unstable. Solution is to either NOT use the multicast groups OR use a non EZSP based stick, such as the Sonoff ZBdongle-P (so NOT the dongle E !)

I’m running it with 180 zigbee devices without issues

Yes, I use Zigbee groups and I have also observed the problem described. With an EZSP, however, I also get an error message back from the network via HA. However, my problems also existed with a CC2652P. And since I expect the lamps in a room or group to change their status synchronously, I can’t avoid Zigbee groups. With HA groups, individual commands are sent and you can see that.

Let’s maybe not hijack the thread here :wink:. Thanks for your time and advice. I also understood from your comments that I could also run a Matter controller as a container. It’s not that far along yet and I don’t want to switch everything to Matter tomorrow.

I tried telling you that you shouldn’t run the Matter server as container because it will 90% certain cause you trouble. Many people have tried, many people have failed. Its not a simple as spinning up a container. It requires tweaks to the host OS. I’ve seen people trying to run the matter container on some sort of NAS device with an ancient kernel and no IPv6 support failing miserably. There are a few folks that have it running though after applying the patches manually and with a recent Debian OS for the host.

Thanks so much for writing this up! :clap:

I haven’t yet got into any Matter or Thread devices, but that’s mostly because of the lack of availability. However, I have a few questions I haven’t seen adequately answered anywhere about Matter and Thread.

  1. Does Matter certification require that the manufacturer support Matter in all future firmware updates? For example, with MyQ there were various ecosystem logos on the products that were removed in firmware updates. Another example is with the U-Bolt smart locks that require creating an account to activate Z-Wave functionality. Does Matter mandate that commission must work without manufacturer specific apps?
  2. It sounds like Thread is going to require internet connectivity for all devices in the future. One of the nice things about Zigbee and Z-Wave is that once working, devices will continue to work until they physically break. With required internet connectivity, is there anything to prevent Thread devices from leaking data via analytics, or forced firmware updates that remove features? Will Home Assistant allow for a local-only border router implementation?
3 Likes

A better handling of sharing of devices between controllers

Looking forward to this!
This was one of the first things I wanted to do after setting up thread devices with HA with multiprotocol SkyConnect.
But TBH the information on how to do it made it seem like just another weekend burning hurdle for only a “nice to have”.
I have many other things to figure out with HA first that this is now on the (quite) long finger!
(other things are such as: adding HTTPS, addiong remote access, adding voice control from google assistant, customizing and adding Ikea amrt blinds, etc. the list goes on :smiley: )

Just wanted to say thank you for this great webinar. I don’t have Matter devices at home yet, but I look forward to integrating them in Home Assistant in the future.

It’s a little bit sad, that docker installations are not supported for now. I’m hoping though, that there will be a way to do this, even if it’s not officially supported.

I have a few of the new TP-Link switches (hope they get 3ways soon) and they work great in both Google home and home Assistant with Matter. I also have the nest thermostat in Google home and home Assistant with matter. Working great.

One question i have is in Google home where it says the linked matter apps. Why is Home Assistant blank for a vendor name? It just shows a vendor id.

Thanks HA Team for all the hard work.