Learn more about Matter here
Note: These steps are supported on:
- iPhone (iOS)
- iPad (iPadOS)
- mac (macOS)
- AppleTV (tvOS)
- HomePod (tvOS)
- Apple Watch (watchOS)
- Devices must support BLE pairing, and have it enabled
- An iPhone or iPad running iOS/iPadOS at least 15.6. You will need to install a profile on it.
- An Apple TV or HomePod running at least tvOS 15.6. You will need to install a profile on it. If you have multiple Apple TVs and/or HomePods, you will need to install the profile on all of them.
- The iPhone or iPad with the Matter profile must belong to the same iCloud account as the Apple TV or HomePod with the Matter profile.
- A test iCloud account is highly recommended for Matter development to avoid interference with existing homes.
- To pair and control Matter Thread devices, you'll need to have a HomePod Mini or Apple TV 4K
- To pair to devices via BLE, you must either use the Matter Pairing API documented here, or enable Developer mode.
Each developer preview release is compatible with a certain SHA from this repository.
- iOS/iPadOS/tvOS 16.0 Developer Preview:
aa9457e6b94b735076dff6297176183bf9780177
Note: The profile will expire automatically after some time
-
Download the profile
-
Email the profile to an account that is configured on your device running iOS/iPadOS 15.6 (or greater)
-
Selecting the profile in Mail on your iOS/iPadOS 15.6 (or greater) device will present an option to install the profile
-
Restart the device
Note: The profile will expire automatically after some time
- Download the profile
- Email the profile to an account that is configured on your device running iOS/iPadOS 15.6 (or greater)
- Selecting the profile in Mail on your iOS/iPadOS 15.6 (or greater) device will present an option to install the profile on the HomePod
- Restart the device
Note: The profile will expire automatically after some time
- Download the profile
- Use Apple Configurator to transfer the profile to the Apple TV
- Restart the device
Note: Developer mode is a great way to get logs from your device as well as enables other useful developer tools
To enable developer mode, please follow the instructions here
- Clone the Matter repo
- Checkout the specific commit hash (from above) for
maximum compatibility with your installed release:
- Example command for SHA
aa9457e6b94b735076dff6297176183bf9780177
:$ git checkout aa9457e6b94b735076dff6297176183bf9780177
- Example command for SHA
In order to work with iOS/iPadOS/tvOS 15.6 or greater, device types as defined in the Matter Device Library spec are used to determine accessory categories. Ensure the right device type is set for each endpoint.
- For the
all-clusters-app
as an example, this can be set inFIXED_DEVICE_TYPES
,FIXED_DEVICE_TYPE_OFFSETS
, andFIXED_DEVICE_TYPE_LENGTHS
inendpoint_config.h
- Here's an example from
all-clusters-app
(feel free to search for more in the tree by looking for the above keys)
Example:
// Array of device types
#define FIXED_DEVICE_TYPES
{
{ 0x0016, 1 }, { 0x0100, 1 }, { 0x0100, 1 }, { 0xF002, 1 }
}
// Array of device type offsets
#define FIXED_DEVICE_TYPE_OFFSETS
{
0, 1, 2, 3
}
// Array of device type lengths
#define FIXED_DEVICE_TYPE_LENGTHS
{
1, 1, 1, 1
}
- Supported device types are (not exhaustive):
Type | Decimal | HEX |
---|---|---|
Lightbulb | 256 | 0100 |
Lightbulb + Dimmer | 257 | 0101 |
Switch | 259 | 0103 |
Contact Sensor | 21 | 0015 |
Door Lock | 10 | 000A |
Light Sensor | 262 | 0106 |
Occupancy Sensor | 263 | 0107 |
Outlet | 266 | 010A |
Color Bulb | 268 | 010C |
Window Covering | 514 | 0202 |
Thermostat | 769 | 0301 |
Temperature Sensor | 770 | 0302 |
Flow Sensor | 774 | 0306 |
Note: These instructions are specific to getting started with the
(Matter-provided) all-clusters-app
on an ESP32-based M5Stack, however can be
generalised to work on most platforms (more listed below)
- Checkout and setup Matter repo as per the instructions above
- Follow these instructions to initialize your development environment, compile the firmware and flash your hardware.
Case study 2: a development Nordic board (nRF52840), working as a light to work with iOS/iPadOS/tvOS
Note: These instructions are specific to getting started with the (Matter-provided) "lighting-app" on an Nordic-based NRF52840, however can be generalised to work on most platforms (more listed below)
-
Checkout and setup Matter repo as per the instructions above
-
Follow these instructions initialize your development environment, compile the firmware and flash your hardware.
Note: Most platforms have very similar, if not the same configuration requirements
- Checkout and setup Matter repo as per the instructions above
- Find and edit one of the platform examples to support the fixed device types above
- Read the platform guides on how set up the hardware
- Bouffalo Lab
- EFR32 Window Covering
- ESP32 All Clusters
- ESP32 Lighting
- ESP32 Temperature Sensor
- mbedOS
- nRF Connect All Clusters
- nRF Connect Pump
- NXP Examples
- NXP
- Infineon CYW30739 Lighting
- Infineon PSoC6
- Qorvo
- SiliconLabs
- Simulated Linux
- Telink
- TI Platform
- TI All Clusters
- Tizen
- Please refer to the iOS/iPadOS 15.6 Release Notes for currently known issues.
- Please refer to the iOS/iPadOS 16.0 Release Notes for currently known issues.
- Please refer to the iOS/iPadOS 16.1 Release Notes for currently known issues.
- Further issues should be reported here