---
description: Instructions on how to integrate Matter with Home Assistant.
featured: true
ha_release: '2022.12'
ha_domain: matter
related:
- docs: /integrations/thread/
title: Thread
- docs: /integrations/homekit_controller/
title: HomeKit
- docs: /integrations/homekit_controller/#adding-a-homekit-device-through-thread
title: Adding an Apple HomeKit device through Thread
- docs: /docs/configuration/troubleshooting/#debug-logs-and-diagnostics
title: Debug logs and diagnostics
---
The **Matter** {% term integration %} allows you to control Matter devices on your local Wi-Fi or {% term Thread %} network.
For communicating with Matter devices, the Home Assistant integration runs its own "Matter controller" as an app (formerly known as add-on). This Matter Server app runs the controller software as a separate process and connects your Matter network (called Fabric in technical terms) and Home Assistant. The Home Assistant Matter integration connects to this server via a WebSocket connection.
# Introduction - What is Matter?
Matter is a new smart home connectivity standard for home automation products and IoT (Internet of Things) devices, see its [Wikipedia article](https://en.wikipedia.org/wiki/Matter_(standard)).
The initial version 1.0 release of Matter was published in October of 2022. Matter is still in the process of being adopted in the smart home market. It has gotten much publicity because of its promise of interoperability across all ecosystems. The largest tech companies like Google, Apple and Amazon teamed up to develop this new smart home connectivity standard under the roof of the CSA ([Connectivity Standards Alliance](https://csa-iot.org/)). The largest tech companies that are already active in the home automation market have announced that they are or will be working on Matter-compatible products and also joined the development effort.
Matter products run locally and always allow local control, with device control done without the need for any internet connection or cloud services. From a technical perspective, you can use a Matter-compatible device with Home Assistant without connecting to a vendor-specific cloud. However, some vendors may require you to set up an account before you can enable Matter support for some products, (especially for commercial manufacturer's own branded gateways/bridges/hubs/controllers sold as appliances).
Unlike other common radio-based protocols for IoT, (like Zigbee, Z-Wave, and Bluetooth), the Matter standard specification itself does not contain its own proprietary radio protocol or network transport protocol, but instead, it is a service control protocol that runs **on top** of the existing network infrastructure at the application level, with all Matter devices communicating using standard IP-based (IPv6) communication over your existing [local area network (that is, LAN networks like Wi-Fi and Ethernet)](https://en.wikipedia.org/wiki/Local_area_network) or [Thread (Low-Power Wireless Personal Area Network)](https://en.wikipedia.org/wiki/Thread_(network_protocol)) depending on the type of device.
Home Assistant is a so-called "_controller_" in a Matter ecosystem, meaning that it can control Matter-based devices. Other examples of Matter controllers are the Google Nest products, Apple HomePod speakers, Samsung SmartThings Station, and some newer Amazon Echo devices.
## What does Thread have to do with Matter?
{% term Thread %} is a low power radio mesh networking technology. Much like Zigbee, but with the key difference that it is _IP-addressable_, making it a suitable transport protocol option for Matter.
The figure below illustrates the landscape of {% term Matter %}, {% term Thread %}, and Border routers. The Thread border router forwards traffic from the devices in the Thread network to devices outside that network.

Image taken from [the Thread Smart Home Fact Sheet](https://www.threadgroup.org/support#Resources) by the Thread Group.
For more information about Thread, refer to the [Thread documentation](/integrations/thread/).
### Thread devices don't necessarily support Matter
Many devices on the market use {% term Thread %} for radio communication and Matter as a control protocol. But this is not guaranteed. Some Thread-based devices support Apple HomeKit or another vendor-specific communication protocol. There are also a few cases where you need to apply for a (beta) firmware update on the device to enable Matter as a communication protocol.
Don't assume Matter support when you see a Thread logo on a device. Always look for the _Matter_ logo itself (on either Wi-Fi/Ethernet-based devices or {% term Thread %}) or any other confirmation by the manufacturer that the device supports Matter.
## Bluetooth used during commissioning
Most (if not all) Matter-compliant devices have a Bluetooth chip onboard to ease {% term commissioning %}. Bluetooth is not used to control but to pair a device after unboxing or after factory resetting. The Home Assistant controller uses the Home Assistant Companion app for {% term commissioning %}. During commissioning, you need to bring your phone close to the device. The controller then sends your network credentials to your device over Bluetooth. Once that is done, the device communicates over its native interface: Wi-Fi or Thread.
{% note %}
Although your Home Assistant server might have a Bluetooth adapter on board that the controller can use to {% term commission %} devices, Home Assistant does not use that adapter. Mainly to prevent issues with the built-in Bluetooth integration but also because it is easier to bring your mobile devices close to the Matter device than bringing the device near your server.
{% endnote %}
## Multi fabric: join to multiple controllers
One of the great features of Matter is the so-called _Multi Fabric_ feature: you can join the same device to multiple controllers. For example, simultaneously add it to Google Home, Apple Home, and Home Assistant. The standard describes that each device should be able to at least support 5 different fabrics simultaneously.
For devices where Home Assistant provides a native integration (with local API), Matter may not be the best option. Matter, being a universal standard, might not have the nitty-gritty features that come with a product-specific protocol. A good example is Philips Hue: the communication over Matter only provides the basic controls over lights, while the official [Hue integration](/integrations/hue) brings all Hue unique features like (dynamic) scenes or entertainment mode.
## Supported installation types
It is recommended to run the Matter app (formerly known as Matter add-on) on Home Assistant OS. This is currently the only supported option. Other installation types are without support and at your own risk.
If you run Home Assistant in a container, you can run a Docker image of the [Matter server](https://github.com/matter-js/matterjs-server). The requirements and instructions for your host setup are described on that GitHub page.
## Adding a Matter device to Home Assistant
Each Matter network is called a fabric. Each home automation controller that controls Matter devices has its own "fabric". You can add devices directly to the fabric of your Home Assistant instance, or share them from another fabric (for example from Google or Apple) to Home Assistant's fabric. We're going to explore all these options below.
The following diagram provides an overview of the steps involved in adding a Matter device, depending on whether your device is new or already in use on another platform, and whether it uses Wi-Fi or Thread.
Note: The section below mentions third-party Thread border routers such as the Nest Hub (2nd Gen) or the HomePod Mini. This doesn’t mean you have to add your devices to these ecosystems. Home Assistant only uses them to access the Thread radio network. The communication between the Home Assistant Matter controller and your Matter devices is encrypted. The Thread border router passes the data along. It cannot read its content.
### Prerequisites
Make sure you have all these components ready before trying to add a Matter device to Home Assistant.
#### Prepare Home Assistant
- Make sure you have the latest version of Home Assistant [installed](/installation/).
- In Home Assistant, have the Matter integration installed.
- Go to {% my integrations title="**Settings** > **Devices & services**" %}.
- Add the **Matter** integration.
- When prompted to **Select the connection method**:
- If you run Home Assistant OS in a regular setup: select **Submit**.
- This will install the official Matter Server app for Home Assistant.
- Note that the official Matter Server app for Home Assistant is not supported on 32-bit platforms.
- If you are already running the Matter server in another Home Assistant app or a custom container:
- Deselect the checkbox, then select **Submit**.
- In the next step, provide the URL to your Matter server.
#### Check logos on the device
- On the device packaging, check for both the Matter logo and for either the Wi-Fi or the {% term Thread %} logo.
- Check if the QR code or the numeric setup code is on the device.
- If you reset your device you'll need the QR code *or* numeric setup code to {% term commission %} that device again! Without this information, commissioning won't be possible.
- If the QR code or the numeric setup code is only in accompanied documentation, it is a good practice to snap a picture of the QR code and/or numeric setup code as a backup, ideally along with the device for reference, and store it in a safe place.
#### Prepare Android or iPhone
- Have either an Android or iPhone ready and Bluetooth enabled. For information why Bluetooth is required, refer to the section on [Bluetooth used during commissioning](#bluetooth-used-during-commissioning):
- **Android**:
- At a minimum, have Android version 8.1. Recommended is version 12 or higher.
- Have the latest version of the Home Assistant Companion app, installed from the Play Store (full version).
- Set the Home Assistant Companion app's **Location** permission to **Allow all the time**. During commissioning, the Google Matter UI takes the foreground and the Companion App runs in the background. Android restricts Wi-Fi SSID access for background apps when Location is set to "While using the app," which can cause commissioning to fail.
- If you are using {% term Thread %}: Make sure there is a Thread border router device (Nest Hub (2nd Gen) or Nest Wi-Fi Pro or Home Assistant with the Home Assistant OpenThread Border Router app) present in your home network.
- If you are using OpenThread (for Connect ZBT-1, ZBT-2, or SkyConnect) as border router, make sure you followed the steps in the [Thread documentation](/integrations/thread#turning-home-assistant-into-a-thread-border-router).
- **iPhone**
- Have the iOS version 16 or higher
- Have the latest version of the Home Assistant Companion app installed.
- If you are using {% term Thread %}: Make sure there is a Thread border router device (HomePod Mini or V2, Apple TV 4K or Home Assistant with the Home Assistant OpenThread Border Router app) present in your home network.
- If you are using OpenThread (for Connect ZBT-1, ZBT-2, or SkyConnect) as border router, make sure you followed the steps in the [Thread documentation](/integrations/thread#turning-home-assistant-into-a-thread-border-router).
- Make sure the phone is in close range of the border router and your device.
- If you are adding a Wi-Fi-based Matter device: Matter devices often use the 2.4 GHz frequency for Wi-Fi. For this reason, make sure your phone is in the same 2.4 GHz network where you want to operate your devices.
### To add a new device using the iOS Companion app
This guide describes how to add a new device. This will use the Bluetooth connection of your phone to add the device.
1. Open The Home Assistant app on your phone.
2. Go to {% my config_matter title="**Settings** > **Connectivity** > **Matter**" %}.
3. Select the **Add device** button.
4. In the dialog, select **No. It’s new.**
5. Scan the QR-code of the Matter device with your phone camera or select **More options...** to manually enter the Commission code.
6. Select **Add to Home Assistant**.
- This starts the commissioning process which may take a few minutes.
7. If you're adding a test board or beta device, you might get a prompt about an **Uncertified Accessory**. In this dialog, select **Add Anyway**.
8. If prompted, enter a custom **Accessory Name**.
- You can type whatever you like here.
- This is an internal reference for iOS. It won't be visible in Home Assistant.
- After entering a name, select **Continue**.
9. Once the process is complete, select **Done**.
- In Home Assistant, the **Device added** dialog opens. Optionally, enter a name and select an area for the device.
- Select **Finish**, or **Skip and finish** if you didn't change anything.
- You are now redirected to the device page within Home Assistant. It is ready for use.
### To add a new device using the Android Companion app
This guide describes how to add a new device. This will use the Bluetooth connection of your phone to add the device.
1. Open The Home Assistant app on your phone.
2. Power up the device by plugging it in or add a battery. Most devices will now go into pairing mode.
- For some devices, you need to enable a pairing mode (like you do with Z-Wave or Zigbee device).
- The instructions on how to set the device in pairing mode can usually be found in the device documentation.
3. For some devices, at this point, your phone shows a pop-up, prompting you to **Scan the QR code**.
- Scan the QR code.
- When prompted to **Choose an app**, make sure to select Home Assistant.
- Once the process is complete, select **Done**, then select **Add device**.
4. If you did not see a pop-up, go to {% my config_matter title="**Settings** > **Connectivity** > **Matter**" %}.
- Select the **Add device** button.
- In the dialog, select **No. It’s new.**
- Scan the QR-code of the Matter device with your phone camera or select **Setup without QR-code** to manually enter the commission code.
- This starts the commissioning process which may take a few minutes.
- If you're adding a test board (e.g. ESP32 running the example apps) and commissioning fails, you might need to take some actions in the Google Developer console, have a look at any instructions for your test device.
- Once the process is complete, select **Done**.
5. In Home Assistant, the **Device added** dialog opens. Optionally, enter a name and select an area for the device.
- Select **Finish**, or **Skip and finish** if you didn't change anything.
- You are now redirected to the device page within Home Assistant. It is ready for use.
### Troubleshooting the installation
Check these steps if you are experiencing issues when trying to add a Matter device using the Home Assistant Companion app on your Android phone.
#### Symptom
While trying to add the Matter device, I get an error stating that _Matter is currently unavailable_.
#### Remedy
This could mean that not all required Matter modules that are needed by the Home Assistant Companion App have been downloaded yet. Try the following steps:
1. Wait up to 24 hours for the Google Play Services to download the necessary Matter modules.
2. Make sure the requirements listed in the [prerequisites](#prerequisites) are met. This includes meeting the minimum system requirements:
- **Android**:
- Minimum version is 8.1. Recommended is version 12 or higher.
- More issues have been reported by people using older Android versions.
- Use a regular, Google-account Android setup. No alternative Android versions.
- Make sure the Google Play Services are all up to date.
- **iPhone**:
- Have the iOS version 16 or higher
3. Home Assistant Companion app:
- Make sure you installed the (full) version, downloaded from the Play Store.
- Make sure it is the latest version.
- If you only just installed or updated the Home Assistant Companion app:
- Wait.
- It can take a while before the required components are installed in the background.
- Try again after 1 hour to ensure the installation is complete.
4. Verify your device meets all requirements to support Matter:
- On your Android device, go to **Settings** > **Google** > **Devices & Sharing**.
- There should be an entry there for **Matter devices**.
5. Reinstalling the Home Assistant Companion app.
6. Try (re-)installing the Google Home app. Technically, this is not required, but it might trigger another installation attempt of the Matter modules.
7. Refer to this [Troubleshooting Guide from Google](https://developers.home.google.com/matter/verify-services).
## Sharing a device from another platform with Home Assistant
Use one of these methods if your Matter device was added to Apple Home or Google Home and you want to control it from both Apple or Google Home and Home Assistant.
### Prerequisites
- Latest version of the Home Assistant Companion App installed.
- Have the Matter device integrated to Apple Home or Google Home respectively
- In Home Assistant, have the Matter integration installed.
- Go to {% my integrations title="**Settings** > **Devices & services**" %}.
- Add the **Matter** integration.
- When prompted to **Select the connection method**:
- If you run Home Assistant OS in a regular setup: select **Submit**.
- This will install the official Matter server app.
- If you are running the Matter server in a custom container (not recommended):
- Deselect the checkbox, then select **Submit**.
- In the next step, provide the URL to your Matter server.
### To share a device from another Matter controller (like Apple or Google Home)
To allow Home Assistant to control the Matter device that has already been added to another Matter controller, like Google Home, follow these steps:
1. Open the Home Assistant app on your phone.
2. Go to {% my config_matter title="**Settings** > **Connectivity** > **Matter**" %}.
3. Select the **Add device** button.
4. In the dialog, select **Yes. It’s already in use.**, then select which controller it is already connected to. For example, **Google Home**.
5. Follow the instructions given in the dialog.
- Troubleshooting: If Home Assistant fails to add the device, check if you have the Matter integration installed and the latest version of the Companion app.
6. Once the device has been added, the **Device added** dialog opens. Optionally, enter a name and select an area for the device.
- Select **Finish**, or **Skip and finish** if you didn't change anything.
- You are now redirected to the device page within Home Assistant.
- You can now control your device from within Home Assistant, as well as from Google Home.
### Using a Matter bridge
For some ecosystems, you can add some of their non-Matter devices into Home Assistant via a *Matter bridge*. Examples of Matter bridges are the SwitchBot Hub 2, Aqara Hub M2, Ikea Dirigera, or the Philips Hue Bridge. Using a bridge allows you to keep controlling these devices via their native App, while having them available in Home Assistant at the same time. The Aqara Hub, for example, uses a cloud-based integration. By bridging it into Home Assistant via Matter (instead of using their cloud-based integration), you can make it use local communication.
Home Assistant, as a Matter controller, only supports **control** of Matter devices. Home Assistant is not a bridge itself and it cannot turn existing devices within Home Assistant into Matter compatible devices.
#### How to add a Matter bridge to Home Assistant
How you add a bridge to Home Assistant depends on the device. Check the documentation of that device for the specific steps. In case of SwitchBot Hub 2, for example, you need to enable the Matter-paring mode within the app. It then gives you a pairing code and tells you to set the actual device into pairing mode. You can then add that bridge device to Home Assistant as a Matter device. There is no guarantee that all the devices from that ecosystem can be used in Home Assistant. SwitchBot Hub 2 V1.5, for example, allows you to use curtain, lock, and blind via Matter, but not light.
#### When not to use a bridge
In some cases, bridging devices into Home Assistant via Matter might not bring you benefits. So far, the Philips Hue Bridge, for example, supports Matter, but Matter only supports a limited set of features. The native Home Assistant integration of Philips Hue comes with a wide variety of features. It also runs locally. You would not gain anything by adding your Philips Hue devices to Home Assistant via Matter bridging. On the contrary, you would lose some of the features.
Notification of an OTA update for a Matter device