Skip to content
Merged
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified sld248-matter-overview-guides/images/solution-artifacts.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified sld248-matter-overview-guides/images/solution-generation.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 4 additions & 2 deletions sld248-matter-overview-guides/matter-solutions.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## General

Matter solutions allow the user to generate multiple projects at once, to generate a combined solution/binary and allow multiple post-build operations to provide flexibility and unison when developing a Matter example or application. For example, with the Matter Lighting over Thread with Bootloader Solution a user can generate a Matter Bootloader, a Matter Lighting example, and the combined Bootloader + Example production image. Solutions will also generate a .gbl binary for the users to make use of and create an .ota software image update binary (directions listed below).
Matter solutions allow the user to generate multiple projects at once, to generate a combined solution/binary and allow multiple post-build operations to provide flexibility and unison when developing a Matter example or application. For example, with the Matter Thread - SoC Lighting with external Bootloader FreeRTOS solution a user can generate a Matter Bootloader, a Matter Lighting example, and the combined Bootloader + Example production image. Solutions will also generate a .gbl binary for the users to make use of and create an .ota software image update binary (directions listed below).

## Solution Creation

Expand All @@ -12,7 +12,7 @@ To create a Matter Solution, proceed to the **Example Project Selection** sectio

## Solution Building

Building via solutions behaves just like a normal project. Just ensure the top-level solution is selected and build! Artifacts from the resulting projects can be found within the `artifact` directory under each distinct project within the solution. Users selecting to build _just_ the sample application may get an error at the end of their build assuming the bootloader was built with it as well. Disregard this notification.
Building via solutions behaves just like a normal project. Just ensure the top-level solution is selected and build! Artifacts from the resulting projects can be found within the `Binaries` directory under each distinct project within the solution. Users selecting to build _just_ the sample application may get an error at the end of their build assuming the bootloader was built with it as well. Disregard this notification.

![Solution Artifacts](./images/solution-artifacts.png)

Expand All @@ -27,3 +27,5 @@ To create an OTA file, first build a Matter example via solutions. Locate the re
```

Where `SoftwareVersion` and the `SoftwareVersionString` correspond to the CHIP_DEVICE_CONFIG_DEVICE_SOFTWARE_VERSION and CHIP_DEVICE_CONFIG_DEVICE_SOFTWARE_VERSION_STRING parameters the project has been compiled with. And where `ResultingOtaFileName` is the name of the OTA file you wish to generate, `PathToArtifactDirectory` is the location of your artifact directory within your project, and `GblFile` is the name of the GBL file that was produced after building the solution. The OTA file should now have been populated within the `artifact` directory in Simplicity Studio.

> **Note**: The GBL file generated by Solutions is unsigned by default. For all Matter devices, the GBL must be signed with your device's ECDSA signing key before being packaged into the OTA file, so the bootloader can verify its authenticity. See [Enabling Secure Upgrades](/matter/{build-docspace-version}/matter-ota/01-ota-bootloader#enabling-secure-upgrades) for step-by-step instructions.
4 changes: 2 additions & 2 deletions sld248-matter-overview-guides/serial-port-communications.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ To run matter shell on the Silicon Labs Platform, refer to the [Software Require

7. Click the **Create New Project** option and create a project for the Matter Lock Application.

![Silicon Labs - design](./images/matter-shell-lock-app.jpeg)
![Silicon Labs - design](./images/matter-shell-lock-app.png)

8. In the Project Configuration window, click **Finish**.

![Silicon Labs - design](./images/matter-shell-project-generation.jpeg)
![Silicon Labs - design](./images/matter-shell-project-generation.png)

9. After creation of project, open the **Software Components** tab and, in the search bar, type _Matter Shell_ and install it.

Expand Down
16 changes: 8 additions & 8 deletions sld249-matter-prerequisites/matter-artifacts.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,37 +4,37 @@ This page provides links to pre-built software image "artifacts" that can be use

Images for the items listed below are available under the "Assets" section at the bottom of this page:

https://github.com/SiliconLabs/matter_extension/releases/tag/v2.8.1
https://github.com/SiliconLabs/matter_extension/releases/tag/v2.9.0

## Matter Hub Raspberry Pi Image

The Matter Hub image is intended to be flashed onto an SD card for a Raspberry Pi. The Matter Hub image provides both an Open Thread Border Router and the Matter chip-tool. Note the image is ~7GB in size so depending on your internet connection this download may take some time. Start the Matter Hub Raspberry Pi image download here:

https://www.silabs.com/documents/public/software/SilabsMatterPi_2.8.0-1.5-extension.zip
https://www.silabs.com/documents/public/software/SilabsMatterPi_2.9.0-1.6-extension.zip

## Radio Co-Processor (RCP) Images

The Radio Co-Processor firmware is used to turn an EFR into an RCP that can be used with a Raspberry Pi to allow the Raspberry Pi's Open Thread Border Router to access the Thread network. Radio Co-Processor (RCP) images are available in the Assets section of this page:

https://github.com/SiliconLabs/matter_extension/releases/download/v2.8.1/ot-rcp-binaries-2.8.1-1.5.zip
https://github.com/SiliconLabs/matter_extension/releases/download/v2.9.0/ot-rcp-binaries-2.9.0-1.6.zip

## Matter Accessory Device Images

The Matter Accessory Device Images are used to turn an EFR into a Matter device. These are pre-built binary images for the Matter Demo. Matter Accessory Device Images are located in the Assets section of this page:

https://github.com/SiliconLabs/matter_extension/releases/download/v2.8.1/matter-accessory-device-images_2.8.1-1.5.zip
https://github.com/SiliconLabs/matter_extension/releases/download/v2.9.0/matter-accessory-device-images_2.9.0-1.6.zip

## Matter Bootloader Binaries

All Silicon Labs board supporting Matter require that a bootloader binary is flashed to the device along with the application image. Bootloader binaries for all of the Matter supported devices are available here:

https://github.com/SiliconLabs/matter_extension/releases/download/v2.8.1/bootloader_binaries_matter_extension_v2.8.1-1.5.zip
https://github.com/SiliconLabs/matter_extension/releases/download/v2.9.0/bootloader_binaries_matter_extension_v2.9.0-1.6.zip

## SiWx917 Firmware for SiWN917 NCP and SiWG917 SOC

The SiWx917 firmware(SiWx917_firmware_files.zip) is used to update the SiWN917 NCP and SiWG917 SOC which can be found in the Assets section of this page:

https://github.com/SiliconLabs/matter_extension/releases/download/v2.8.1/SiWx917_firmware_files_2.8.1-1.5.zip
https://github.com/SiliconLabs/matter_extension/releases/download/v2.9.0/SiWx917_firmware_files_2.9.0-1.6.zip

**Note**:

Expand All @@ -52,12 +52,12 @@ https://github.com/SiliconLabs/matter_extension/releases/download/v2.8.1/SiWx917

The SiWx917 RCP folder (siwx917_rcp_files.zip) contains the Matter Linux all-cluster-app, which can be run on a Raspberry Pi, and the wfx-sdio-overlay.dts file, a Device Tree Source file used to configure the SDIO interface on the Raspberry Pi to detect and communicate with the SiWx917 RCP.

https://github.com/SiliconLabs/matter_extension/releases/download/v2.8.1/siwx917_rcp_files.zip
https://github.com/SiliconLabs/matter_extension/releases/download/v2.9.0/siwx917_rcp_files.zip

## SiWx917 SoC Configuration Files For JLink RTT Logging

To check device logs on JLink RTT for the Matter Application on the SiWx917 SoC, the **JLink RTT** must be configured for the SiWx917 SoC device by following the instructions on the [JLink RTT SOC Support](/matter/{build-docspace-version}/matter-wifi-enabling-features/jlink-soc-setup) for SiWx917 SoC.

The [JLinkDevices.xml](https://github.com/SiliconLabs/matter_extension/releases/download/v2.8.1/JLinkDevices.xml.zip) and [RS9117_SF_4MB_42bsp.elf](https://github.com/SiliconLabs/matter_extension/releases/download/v2.8.1/RS9117_SF_4MB_42bsp.elf.zip) files referenced in the instructions may be found in the Assets section of this page.
The [JLinkDevices.xml](https://github.com/SiliconLabs/matter_extension/releases/download/v2.9.0/JLinkDevices.xml.zip) and [RS9117_SF_4MB_42bsp.elf](https://github.com/SiliconLabs/matter_extension/releases/download/v2.9.0/RS9117_SF_4MB_42bsp.elf.zip) files referenced in the instructions may be found in the Assets section of this page.

>**Note**: For EFR32MG2x devices, JLink RTT Logging support is already enabled.
51 changes: 48 additions & 3 deletions sld250-matter-references/custom-matter-device.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,31 @@ Build a customizable lighting app using the Matter protocol.
This guide covers the basics of building a customizable lighting application
using Matter.

## Application Customization Models

Matter Extension 2.9.0 migrates a subset of sample apps to the Curiously Recurring Template Pattern (CRTP) based architecture, which removes app manager and DataModelCallbacks files. All other sample apps keep the previous architecture until the patch release.

Check your project in Project Explorer:

| If you see… | Architecture | Where to add custom logic |
|---|---|---|
| `src/CustomerAppTask.cpp` and `autogen/AppTask.cpp` | **New** | Override `*Impl()` hooks in `CustomerAppTask`, do not edit `autogen/AppTask.cpp` |
| `src/DataModelCallbacks.cpp` and editable `src/AppTask.cpp` | **Legacy** | Callbacks in `DataModelCallbacks.cpp`, init and app logic in `src/AppTask.cpp` |

**Sample apps on the new architecture in 2.9.0:**

- Lighting
- Zigbee Matter Light
- On/Off Plug
- Thermostat
- Lock
- Light Switch
- Rangehood
- Platform Template
- Air Quality Sensor

All other Silicon Labs Matter sample apps in this release use the legacy model. Related guides label steps as **New architecture** or **Legacy architecture** where they differ.

## Using Matter with Clusters

In Matter, commands can be issued by using a cluster. A cluster is a set of
Expand Down Expand Up @@ -61,6 +86,8 @@ through this function. The command can then be dissected using conditional logic
to call the proper application functions based on the most recent command
received.

Depending on your sample application, edit the files as described in [Application Customization Models](#application-customization-models). New architecture apps route attribute changes through `CustomerAppTask` and `DMPostAttributeChangeCallbackImpl()`. Legacy architecture apps implement `MatterPostAttributeChangeCallback()` directly in `src/DataModelCallbacks.cpp`.

## Adding a Cluster to a ZAP Configuration

In the ZAP UI, navigate to the Level Control cluster. Make sure this cluster is
Expand All @@ -79,13 +106,31 @@ is set to enabled. Set the default value of this attribute as 1.
Navigate to the commands tab in zap and enable the MoveToLevel command. Now save
the current zap configuration, and run the generate.py script above.

## React to Level Control Cluster Commands in ZclCallbacks
## React to Level Control Cluster Commands

### New Architecture

In a custom implementation of `DMPostAttributeChangeCallbackImpl()` in `src/CustomerAppTask.cpp`, add the following or similar code. This enables the application to react to the MoveToLevel commands.

```cpp
else if (clusterId == LevelControl::Id)
{
ChipLogProgress(Zcl, "Level Control attribute ID: " ChipLogFormatMEI " Type: %u Value: %u, length %u",
ChipLogValueMEI(attributeId), type, *value, size);

if (attributeId == LevelControl::Attributes::CurrentLevel::Id)
{
sLightLED.SetLevel(*value);
}
}
```

### Legacy Architecture

In the MatterPostAttributeCallback function in ZclCallbacks, add the following
line of code or a similar line. This will give the application the ability to react to
MoveToLevel commands. You can define platform-specific behavior for a
MoveToLevel action.

```cpp
else if (clusterId == LevelControl::Id)
{
Expand Down Expand Up @@ -133,7 +178,7 @@ In order to use a custom cluster in an application, follow these steps:
"value": "true"
}
```
For an example, see [Sample ZAP file](https://github.com/SiliconLabsSoftware/matter_extension/blob/release_2.8-1.5/slc/apps/performance-test-app/thread/performance-test-app.zap)
For an example, see [Sample ZAP file](https://github.com/SiliconLabsSoftware/matter_extension/blob/v2.9.0/slc/apps/performance_test_app/thread/performance-test-app.zap)
- Install the **Custom ZAP generation** component under **Silicon Labs Matter -> Stack** in the project's Component Editor.


2 changes: 1 addition & 1 deletion sld250-matter-references/matter-zap.md
Original file line number Diff line number Diff line change
Expand Up @@ -205,5 +205,5 @@ In order to use a custom cluster in an application, follow these steps:
"value": "true"
}
```
For an example, see [Sample ZAP file](https://github.com/SiliconLabsSoftware/matter_extension/blob/release_2.8-1.5/slc/apps/performance-test-app/thread/performance-test-app.zap)
For an example, see [Sample ZAP file](https://github.com/SiliconLabsSoftware/matter_extension/blob/v2.9.0/slc/apps/performance_test_app/thread/performance-test-app.zap)
- Install the **Custom ZAP generation** component under **Silicon Labs Matter -> Stack** in the project's Component Editor.
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,5 @@ Update digits based on the following criteria:
| v2.6.1-1.4 | 23-Jul-25 | 2025.6.1 | v3.5.1 | 1.4 | Maintained |
| v2.7.0-1.4 | 25-Sep-25 | 2025.6.2 | v3.5.2 | 1.4 | Maintained |
| v2.8.0-1.5 | 12-Jan-25 | 2025.12.0 | v4.0.0 | 1.5 | Maintained |
| v2.8.1-1.5 | 23-Mar-25 | 2025.12.2 | v4.0.1 | 1.5 | Active |
| v2.8.1-1.5 | 23-Mar-25 | 2025.12.2 | v4.0.1 | 1.5 | Maintained |
| v2.9.0-1.6 | 24-Jun-26 | 2026.6.0 | v4.1.0 | 1.6 | Active |
Binary file modified sld253-matter-wifi/images/matter-shell-enable.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -103,15 +103,15 @@ This section describes how to create a project for the EFR32 boards.
1. In Simplicity Studio, click **Matter**, under **Example Projects and Demos**, select a project, and click **Create**.

![Example Projects and Demos](images/studio-home-tab.png)
![Example Projects and Demos](images/studio-create-project.jpeg)
![Example Projects and Demos](images/studio-create-project.png)

2. In the Project Configuration window, after selecting the board, click **Next**.
- Set -
- Solution and Project Name.
- Select Target IDE.
- Click **Finish**.

![Finish project](images/studio-project-configuration.jpeg)
![Finish project](images/studio-project-configuration.png)

3. Once the project is created, click the **Open in VS Code** option on the top right corner.
![Open project in VS Code](images/studio-open-vscode.png)
Expand All @@ -122,7 +122,7 @@ This section describes how to create a project for the EFR32 boards.

4. Once the project is compiled successfully, the binaries can be flashed either using the **Simplicity Commander** from the tools or using the **Flash** option beside the **Build**.

![Flash Project](images/vscode-flash.jpeg)
![Flash Project](images/vscode-flash.png)

5. When using Commander, select the kit and click on the **Flash** option in the left panel. Click on **Erase chip**.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ In Simplicity Studio 6, create the Light Matter Accessory Devices (MAD):
1. In Simplicity Studio, click on **Matter**, under **Example Projects and Demos**, select a project, and click **Create**.

![Example Projects and Demos](images/studio-home-tab.png)
![Example Projects and Demos](images/studio-create-project.jpeg)
![Example Projects and Demos](images/studio-create-project.png)

2. In the Project Configuration window, Select the board and click **Next**.
![Select Board](images/studio-select-board.png)
Expand All @@ -83,7 +83,7 @@ In Simplicity Studio 6, create the Light Matter Accessory Devices (MAD):
- Select Target IDE.
- Click **Finish**.

![Finish project](images/studio-project-configuration.jpeg)
![Finish project](images/studio-project-configuration.png)

3. Once the project is created, click the **Open in VS Code** option on the top right corner.
![Open project in VS Code](images/studio-open-vscode.png)
Expand All @@ -94,7 +94,7 @@ In Simplicity Studio 6, create the Light Matter Accessory Devices (MAD):

4. Once the project is compiled successfully, the binaries can be flashed either using the **Simplicity Commander** from the tools or using the **Flash** option beside the **Build**.

![Flash Project](images/vscode-flash.jpeg)
![Flash Project](images/vscode-flash.png)

5. When using Commander, select the kit and click the **Flash** option in the left panel. Click **Erase chip**.

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion sld290-matter-wifi-getting-started-example/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ To get started with Matter over Wi-Fi, download the latest version of Simplicity

## Setting up the Matter over Wi-Fi Development Environment

Refer to the [Release Notes](https://github.com/SiliconLabs/matter_extension/releases/tag/v2.8.1) to know more about the latest releases from Silicon Labs.
Refer to the [Release Notes](https://github.com/SiliconLabs/matter_extension/releases/tag/v2.9.0) to know more about the latest releases from Silicon Labs.

To control the Matter Accessory Device, a controller is required which is termed as **chip-tool**. The chip-tool can be set up in two ways:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@ This page provides a detailed description on how to create a Wi-Fi NCP project f
3. In Simplicity Studio, click **Matter**, under **Example Projects and Demos**, select a project, and click **Create**.

![Example Projects and Demos](images/studio-home-tab.png)
![Example Projects and Demos](images/studio-create-project.jpeg)
![Example Projects and Demos](images/studio-create-project.png)

4. In the Project Configuration window, after selecting the board, click **Next**.
- Set -
- Solution and Project Name.
- Select Target IDE.
- Click **Finish**.

![Finish project](images/studio-project-configuration.jpeg)
![Finish project](images/studio-project-configuration.png)

5. Once the project is created, click the **Open in VS Code** option on the top right corner.
![Open project in VS Code](images/studio-open-vscode.png)
Expand All @@ -28,7 +28,7 @@ This page provides a detailed description on how to create a Wi-Fi NCP project f

7. Once the project is compiled successfully, the binaries can be flashed either using the **Simplicity Commander** from the tools or using the **Flash** option beside the **Build**.

![Flash Project](images/vscode-flash.jpeg)
![Flash Project](images/vscode-flash.png)

8. When using Commander, select the kit and click the **Flash** option in the left panel. Click **Erase chip**.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ In Simplicity Studio 6, create the Light MAD:
1. In Simplicity Studio, click **Matter**, under **Example Projects and Demos**, select a project, and click **Create**.

![Example Projects and Demos](images/studio-home-tab.png)
![Example Projects and Demos](images/studio-create-project.jpeg)
![Example Projects and Demos](images/studio-create-project.png)

2. In the Project Configuration window, Select the board and click **Next**.
![Select Board](images/studio-select-board.png)
Expand All @@ -14,7 +14,7 @@ In Simplicity Studio 6, create the Light MAD:
- Select Target IDE.
- Click **Finish**.

![Finish project](images/studio-project-configuration.jpeg)
![Finish project](images/studio-project-configuration.png)

3. Once the project is created, click the **Open in VS Code** option on the top right corner.
![Open project in VS Code](images/studio-open-vscode.png)
Expand All @@ -25,7 +25,7 @@ In Simplicity Studio 6, create the Light MAD:

5. Once the project is compiled successfully, the binaries can be flashed either using the **Simplicity Commander** from the tools or using the **Flash** option beside the **Build**.

![Flash Project](images/vscode-flash.jpeg)
![Flash Project](images/vscode-flash.png)

6. When using Commander, select the kit and click the **Flash** option in the left panel. Click **Erase chip**.

Expand Down
Binary file modified sld291-matter-wifi-run-demo/images/matter-shell-enable.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified sld291-matter-wifi-run-demo/images/studio-open-vscode.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified sld291-matter-wifi-run-demo/images/studio-select-board.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified sld291-matter-wifi-run-demo/images/vscode-build-flash.png
Binary file modified sld291-matter-wifi-run-demo/images/vscode-debug-icon.png
Binary file modified sld291-matter-wifi-run-demo/images/vscode-debug-options.png
Diff not rendered.
Binary file modified sld291-matter-wifi-run-demo/images/vscode-start-debug.png
Loading
Loading