Overview
The Matter SDK (@espressif/rainmaker-matter-sdk) helps your app add Matter smart-home devices to ESP RainMaker — create a home (fabric), scan a QR code to add a device, then control it from the app.
It builds on the RainMaker Base SDK. You still use the base SDK for login, storage, and cloud APIs. This package adds Matter-specific pieces on top.
What you can build
| You want to… | This SDK covers |
|---|---|
| Make a RainMaker home Matter-ready | Fabrics (Matter-enabled groups) |
| Add a Matter device with a QR code | Commissioning |
| Let the user manage that home’s Matter devices | Certificates (user / device NoCs) |
| Show device features on a control screen | Matter nodes + cluster config |
| Toggle / dim devices on the same Wi‑Fi | Local Control |
| Control when the phone is away from home | Remote Control (via a RainMaker Controller) |
Typical path for a new app:
- Install and configure → Getting Started
- Plug in Home app adapters → Matter Adapters
- Create or convert a fabric → Fabric Management
- Commission a device → Device Commissioning
- Control and render UI → Controlling · Cluster Config
Before you start
- RainMaker Base SDK set up (auth, storage, cloud URL)
- For adding devices: a Commission Adaptor — ready-made in the Home app native-adaptors (see Matter Adapters)
- A Matter vendor ID at configure time (e.g. Espressif
0x131B)
You do not need to write native Matter bridges from scratch if you follow the Home app adapters.
How the pieces fit
This package extends the Base SDK. Reuse the same base adapter config, then add Matter fields (commission / control / subscription / discovery adapters, matterVendorId, clusterConfig).
Home app reference — getMatterSDKConfig():
export function getMatterSDKConfig(): ESPRMMatterBaseConfig {
return {
...getRMSDKConfig(), // base adapters + cloud URL
matterCommissioningAdaptor,
matterControlAdapter: ESPMatterControlAdapter,
matterSubscriptionAdapter: ESPMatterSubscriptionAdapter,
matterLocalDiscoveryAdapter,
matterVendorId: matterSdk.vendorId ?? "0x131B",
clusterConfig: matterClusterConfig,
};
}
Find a topic
| Topic | Page |
|---|---|
| Install and configure | Getting Started |
| Adapters (Home app implementations) | Matter Adapters |
| Homes / fabrics | Fabric Management |
| Add a device | Commissioning |
| Certificates | Certificate Management |
| Control devices | Controlling |
| Live attribute updates | Matter Subscription |
| Nodes and control UI | Matter Nodes · Cluster Config |
