Skip to content

Commit

Permalink
Pull request project-chip#1580: Cherry-pick: Pull request project-chi…
Browse files Browse the repository at this point in the history
…p#1560 & project-chip#1485 SMG RC_2.3.0-1.3-alpha.2 Doc updates

Merge in WMN_TOOLS/matter from cherry-pick/smg_2.3.0-1.3-alpha.2_doc_updates to silabs

Squashed commit of the following:

commit 53c2d49718e63158ea7e58fe0c19c0e31df11ffc
Author: Curtis Rahman <[email protected]>
Date:   Tue Feb 20 16:23:47 2024 -0500

    Further doc corrections

commit 4217ecc0244f20c76a4db90ff74385f398d14fed
Author: Curtis Rahman <[email protected]>
Date:   Tue Feb 13 18:10:17 2024 +0000

    Pull request project-chip#1560: [Documentation] MATTER-3043 SMG Release Documentation

    Merge in WMN_TOOLS/matter from documentation/smg_release_2.3.0-1.3-alpha.2 to RC_2.3.0-1.3

    Squashed commit of the following:

    commit 57654c1e7894a1cc062caeec0963dc18f165d7e5
    Author: Curtis Rahman <[email protected]>
    Date:   Tue Feb 13 10:26:23 2024 -0500

        Addressed PR comments

    commit ea2d2aa653bd027bb23b1362153e2a78c45b58ab
    Author: Mathieu Kardous <[email protected]>
    Date:   Tue Feb 13 14:56:11 2024 +0000

        Applied suggestion

    commit a263ddcccde41982506703ac4015e4766dc85553
    Author: Mathieu Kardous <[email protected]>
    Date:   Tue Feb 13 14:56:01 2024 +0000

        Applied suggestion

    ... and 13 more commits

commit 6db47039b77cd115daeac04ff48000e8a7a9222f
Author: Curtis Rahman <[email protected]>
Date:   Tue Jan 16 18:19:15 2024 +0000

    Pull request project-chip#1485: [Documentation] Update Version and Artifacts

    Merge in WMN_TOOLS/matter from documentation/update_version_v2.3.0-1.3-alpha to RC_2.3.0-1.3

    Squashed commit of the following:

    commit 9005561ab2d421afb0248913bff0fcc8efd5bfe9
    Author: Curtis Rahman <[email protected]>
    Date:   Tue Jan 16 13:16:00 2024 -0500

        Syntax

    commit 1a0ee3bc54f5a302b480b08b5709a0d7752e1102
    Author: Curtis Rahman <[email protected]>
    Date:   Tue Jan 16 13:12:00 2024 -0500

        Removed quotes

    commit 0ab38f75baf3e5c3e8044ee67e62aada49552f0b
    Author: Curtis Rahman <[email protected]>
    Date:   Tue Jan 16 11:22:40 2024 -0500

        Added new features

    ... and 4 more commits
  • Loading branch information
CuRahman authored and jmartinez-silabs committed Apr 25, 2024
1 parent 7c17028 commit 2c67729
Show file tree
Hide file tree
Showing 19 changed files with 242 additions and 127 deletions.
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ body:
- release_2.2.0-1.2-alpha.1
- release_2.2.0-1.2
- release_2.3.0-1.3-alpha.1
- release_2.3.0-1.3-alpha.2
validations:
required: true

Expand Down
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ body:
- release_2.2.0-1.2-alpha.1
- release_2.2.0-1.2
- release_2.3.0-1.3-alpha.1
- release_2.3.0-1.3-alpha.2
validations:
required: true

Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,12 @@ Device: SiWx917 SoC
This repo contains documentation, demos, examples and all the code needed for Matter Accessory Device development on both Thread and Wi-Fi. The Thread development use cases differs from Wi-Fi because the Thread protocol requires the use of an Open Thread Border Router (OTBR).

- To get started with the Thread demo and development see
[Matter Thread](https://siliconlabs.github.io/matter/2.3.0-1.3-alpha.1/thread/DEMO_OVERVIEW.html)
[Matter Thread](https://siliconlabs.github.io/matter/2.3.0-1.3-alpha.2/thread/DEMO_OVERVIEW.html)
- To get started with the Wi-Fi demo and development see
[Matter Wi-Fi](https://siliconlabs.github.io/matter/2.3.0-1.3-alpha.1/wifi/DEMO_OVERVIEW.html)
[Matter Wi-Fi](https://siliconlabs.github.io/matter/2.3.0-1.3-alpha.2/wifi/DEMO_OVERVIEW.html)

The full documentation set starts here:
[Silicon Labs Matter GitHub Documentation](https://siliconlabs.github.io/matter/2.3.0-1.3-alpha.1)
[Silicon Labs Matter GitHub Documentation](https://siliconlabs.github.io/matter/2.3.0-1.3-alpha.2)

---

Expand Down
10 changes: 10 additions & 0 deletions docs/silabs/NEW_FEATURES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
# Silicon Labs Matter New Features

## New Features for v2.3.0-1.3-alpha.2

- Update to use [Gecko SDK (GSDK) v4.4.1](https://docs.silabs.com/gecko-platform/4.4.1/platform-overview/)
- Update to use [WiSeConnect 3 SDK (WiFi SDK) v3.1.3](https://docs.silabs.com/wiseconnect/3.1.3/wiseconnect-developing-with-wiseconnect-sdk/)
- Enhanced 917 SoC sleep functionality
- Sleepy OTA upgrade functionality
- M4 sleep optimization while device is uncommissioned
- M4 sleep optimization when commissioning retry sequence experiences ongoing delay
- Clock usage: Makes use of default sleep clock vs. high frequency clock

## New Features for v2.3.0-1.3-alpha.1

- Update to use [Gecko SDK (GSDK) v4.4.0](https://docs.silabs.com/gecko-platform/4.4.0/platform-overview/)
Expand Down
4 changes: 2 additions & 2 deletions docs/silabs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
project = 'Matter'
copyright = 'Copyright © 2023 Silicon Laboratories. All rights reserved.'
author = 'Silicon Labs'
release = '2.3.0-1.3-alpha.1'
version = '2.3.0-1.3-alpha.1'
release = '2.3.0-1.3-alpha.2'
version = '2.3.0-1.3-alpha.2'


# -- General configuration ---------------------------------------------------
Expand Down
39 changes: 19 additions & 20 deletions docs/silabs/general/ARTIFACTS.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
# Matter Software Artifacts

This page provides links to pre-built software image artifacts that can be
used to set up the Matter Demo for the Thread and Wi-Fi use cases.
used to set up the Matter Demo for the Thread and Wi-Fi use cases. The majority of these artifacts can be found under the "Assets" section on the release page here:

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

https://github.com/SiliconLabs/matter/releases/tag/2.3.0-1.3-alpha.1
https://github.com/SiliconLabs/matter/releases/tag/v2.3.0-1.3-alpha.2

## Matter Hub Raspberry Pi Image

Expand All @@ -15,24 +13,23 @@ Matter chip-tool. Note the image is ~10GB 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.3.0-1.3-alpha.1.zip
https://www.silabs.com/documents/public/software/SilabsMatterPi_2.3.0-1.3-alpha.2.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:
to access the Thread network. Radio Co-Processor (RCP) images are available here:

https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.1/ot-rcp-binaries-2.3.0-1.3-alpha.1.zip
https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.2/ot-rcp-binaries-2.3.0-1.3-alpha.2.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:
Images are located here:

https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.1/matter-accessory-device-images_2.3.0-1.3-alpha.1.zip
https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.2/matter-accessory-device-images_2.3.0-1.3-alpha.2.zip

For Matter over Thread, 3 different types of images are provided:

Expand All @@ -47,13 +44,12 @@ EFR32MG2x device, you will need to flash a bootloader binary on your device alon
with the application image. Bootloader binaries for all of the Matter supported
devices are available here:

https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.1/bootloader_binaries_2.3.0-1.3-alpha.1.zip
https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.2/bootloader_binaries_2.3.0-1.3-alpha.2.zip

## RS9116 Firmware

The RS9116 firmware (rs9116_firmware_files_with_rev_2.3.0-1.3-alpha.1.zip) is used to update the RS9116 which can be found in the Assets section of this page:

https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.1/rs9116_firmware_files_with_rev_2.3.0-1.3-alpha.1.zip
The RS9116 firmware (rs9116_firmware_files_with_rev_2.3.0-1.3-alpha.2.zip) is used to update the RS9116 which can be found here:
https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.2/rs9116_firmware_files_with_rev_2.3.0-1.3-alpha.2.zip

**Note**:
RS9116 chip/module needs to be flashed with proper firmware as mentioned below:
Expand All @@ -63,20 +59,21 @@ RS9116 chip/module needs to be flashed with proper firmware as mentioned below:

## SiWx917 Firmware for SiWx917 NCP

The SiWx917 firmware(SiWx917NCP_firmware_files_2.3.0-1.3-alpha.1.zip) is used to update the SiWx917 NCP which can be found in the Assets section of this page:
The SiWx917 firmware(SiWx917NCP_firmware_files_2.3.0-1.3-alpha.2.zip) is used to update the SiWx917 NCP which can be found here:

https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.1/SiWx917NCP_firmware_files_2.3.0-1.3-alpha.1.zip
https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.2/SiWx917NCP_firmware_files_2.3.0-1.3-alpha.2.zip

**Note**:
SiWx917 NCP board need to be flashed with proper firmware as mentioned below:
- `SiWG917-A.2.9.X.X.X.rps - This firmware image is valid for BRD8036A (A0 Expansion v1.1) board`

- `SiWG917-B.2.X.X.X.X.rps - This firmware image is valid for BRD4346A board`

## SiWx917 Firmware for SiWx917 SoC

The SiWx917 firmware (SiWx917SOC_firmware_files_2.3.0-1.3-alpha.1.zip) along with WiSeConnect 3 SDK is used to update the SiWx917 SoC which can be found in the Assets section of this page:
The SiWx917 firmware (SiWx917SOC_firmware_files_2.3.0-1.3-alpha.2.zip) along with WiSeConnect 3 SDK is used to update the SiWx917 SoC which can be found here:

https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.1/SiWx917SOC_firmware_files_2.3.0-1.3-alpha.1.zip
https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.2/SiWx917SOC_firmware_files_2.3.0-1.3-alpha.2.zip

**Note**:
SiWx917 SoC boards need to be flashed with proper firmware as mentioned below:
Expand All @@ -85,8 +82,10 @@ SiWx917 SoC boards need to be flashed with proper firmware as mentioned below:

## SiWx917 SoC Configuration Files For JLink RTT Logging

In order to check device logs 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](../wifi/JLINK_GUIDE_917.md).
The **JLinkDevices.xml** and **ELF** files referenced in the instructions may be found
here:

The [JLinkDevices.xml](https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.1/JLinkDevices.xml) and **.elf** files referenced in the instructions may be found in the Assets section of this page.
https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.2/JLinkDevices.xml
https://github.com/SiliconLabs/matter/releases/download/v2.3.0-1.3-alpha.2/RS9117_SF_4MB_42bsp.elf

**Note**:- For EFR32MG2x devices, JLink RTT Logging support is already available.
11 changes: 6 additions & 5 deletions docs/silabs/general/COMMIT_HASHES.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,28 +13,29 @@ in this release of the Silicon Labs Matter Out of Box Experience

| Repo | Branch | Commit Hash |
| --------------------------------------- | ---------- | ---------------------------------------- |
| https://github.com/SiliconLabs/ot-efr32 | main | e75c767374a6a6fccd62f024c7217762ae652891 |
| https://github.com/SiliconLabs/ot-efr32 | main | 7074a43e4577d32d5535d52e7940ed2ea7e3a528 |

## Openthread

| Repo | Branch | Commit Hash |
| --------------------------------------- | ---------- | ---------------------------------------- |
| https://github.com/openthread/openthread | main | 7074a43e4577d32d5535d52e7940ed2ea7e3a528 |
| https://github.com/openthread/openthread| main | 7074a43e4577d32d5535d52e7940ed2ea7e3a528 |


## Connectivity Standards Alliance (CSA) connectedhomeip (Matter)

| Repo | Branch | Commit Hash |
| ----------------------------------------------- | ------ | ---------------------------------------- |
| https://github.com/project-chip/connectedhomeip | master | c36f4a7745ac0092982933987c694a6b605de35d |
| https://github.com/project-chip/connectedhomeip | master | 42c44d544b059a8f0d9e3b86e9a1f6cc94cd0ea9 |

## Matter chip-tool

| Repo | Branch | Commit Hash |
| ----------------------------------------------- | ------------------------ | ----------------- |
| https://github.com/SiliconLabs/matter | release_2.3.0-1.3-alpha.1 | c36f4a7745ac0092982933987c694a6b605de35d |
| https://github.com/SiliconLabs/matter | release_2.3.0-1.3-alpha.2 | 42c44d544b059a8f0d9e3b86e9a1f6cc94cd0ea9 |

## Matter Accessory Device (MAD)

| Repo | Branch | Commit Hash |
| ----------------------------------------------- | ------------------------ | ----------------------|
| https://github.com/SiliconLabs/matter | release_2.3.0-1.3-alpha.1 | c36f4a7745ac0092982933987c694a6b605de35d|
| https://github.com/SiliconLabs/matter | release_2.3.0-1.3-alpha.2 | 42c44d544b059a8f0d9e3b86e9a1f6cc94cd0ea9|
112 changes: 95 additions & 17 deletions docs/silabs/general/OTA_SOFTWARE_UPDATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,43 +65,46 @@ The chip-ota-provider-app binary for a Raspberry Pi is a part of the Artifacts p
- To Build OTA-Provider app for Linux Platform, run below command in the matter repository.

```shell
scripts/examples/gn_build_example.sh examples/ota-provider-app/linux out/debug chip_config_network_layer_ble=false
scripts/examples/gn_build_example.sh examples/ota-provider-app/linux out/debug chip_config_network_layer_ble=false
```

## Matter OTA Images
## Matter OTA Application Images
- To create and Build matter OTA from matter code, need two different applications to build mentioned below:
- OTA A
- OTA B

### Build OTA A Application
- Matter OTA-A Application will be used to flash on the matter device.
- In matter cloned directory run below commands to build an OTA A application.
```
For RS9116:

./scripts/examples/gn_silabs_example.sh examples/lighting-app/silabs/ out/rs911x_lighting_A BRD41xxx disable_lcd=true use_external_flash=false chip_enable_ble_rs911x=true --wifi rs9116
For WF200
./scripts/examples/gn_silabs_example.sh examples/lighting-app/silabs/ out/wf200_lighting_A BRD41xxx chip_build_libshell=false --wifi wf200
For SiWx917 NCP
For RS9116:
```
./scripts/examples/gn_silabs_example.sh examples/lighting-app/silabs/ out/rs911x_lighting_A BRD41xxx disable_lcd=true use_external_flash=false chip_enable_ble_rs911x=true --wifi rs9116
```

./scripts/examples/gn_silabs_example.sh examples/lighting-app/silabs/ out/siwx917_lighting BRD41xxx disable_lcd=true use_external_flash=false --wifi SiWx917
For WF200:
```
./scripts/examples/gn_silabs_example.sh examples/lighting-app/silabs/ out/wf200_lighting_A BRD41xxx chip_build_libshell=false --wifi wf200
```

For SiWx917 SOC
For SiWx917 NCP:
```
./scripts/examples/gn_silabs_example.sh examples/lighting-app/silabs/ out/siwx917_lighting BRD41xxx disable_lcd=true use_external_flash=false --wifi SiWx917
```

./scripts/examples/gn_silabs_example.sh examples/lighting-app/silabs/ out/SiWx917_lighting BRD4388A
For SiWx917 SOC:
```
./scripts/examples/gn_silabs_example.sh examples/lighting-app/silabs/ out/SiWx917_lighting BRD4388A
```

```
**Note:** Matter OTA-A application will be having software version as 1 by default in **third_party/silabs/BUILD.gn** file.

### Build OTA B Application
- Matter OTA-B application will be used to create gbl & OTA file.
- Open the file **third_party/silabs/BUILD.gn** from matter code cloned directory and modify **sl_matter_version = 1** to any number.

**Note:** Make sure always **sl_matter_version** should be greater than **sl_hardware_version**
- After Modifying software version build OTA B application using below commands for EFR boards
- After Modifying software version build OTA B application using below commands:

```
For RS9116:
Expand All @@ -124,10 +127,20 @@ For SiWx917 SOC

## Running the OTA Download Scenario

- Image will be created and uploaded onto Raspberry Pi which provides the firmware image chunk by chunk to the device.
- Host will initiate the OTA download and provider app will start the OTA image transfer.
- Host will receive combined image and host will transfer the firmware image on to the flash backup location chunk by chunk.
- Once image is downloaded, the device will reboot into the downloaded image.

### Creation of GBL and OTA Images

#### For EFR NCP Devices

- Create a bootable image file (using the Lighting application image as an
example):

```shell

```shell
commander gbl create chip-efr32-lighting-example.gbl --compress lzma --app chip-efr32-lighting-example.s37
```
**Note**:- Using LZMA compression when building the .gbl file ( passing `--compress lzma` parameter to the `commander gbl create` command) further reduces the downloaded image size.
Expand All @@ -137,6 +150,71 @@ For SiWx917 SOC
```shell
$ commander ota create --type matter --input chip-efr32-lighting-example.gbl --vendorid 0xFFF1 --productid 0x8005 --swstring "2.0" --swversion 2 --digest sha256 -o chip-efr32-lighting-example.ota
```
#### For SiWx917 SoC Devices

Storing a single Matter combined upgrade image(TA+M4) and transfer the image to the co-processor and rewrite the 917 firmware as well as M4 firmware Image then boot loading with the upgraded TA processor image and the M4 processor image.

Host will initiate OTA download to receive combined image (TA+M4) and store M4 and TA image on flash backup location.

##### Use Cases

- Combined image where TA and M4 images to be upgraded. M4 image also has the **sl_matter_version** modified with the latest version.
- Only M4 image to be upgraded. M4 image also has the **sl_matter_version** modified with the latest version.
- Only TA image to be upgraded. In this case, We need to have a M4 image with just **sl_matter_version** modified with the latest version. This would be similar to Combined image upgrade.

##### Creation of OTA Images

- The first step is to create a combined image that contains both the firmwares (TA & M4).
- This image is created by combining the binary images of both firmwares.
- For the Matter OTA file, create a bootable image file with the .rps format (using the Lighting application image as an example) and then create the Matter OTA file from the bootable image file using commands provided below.
- Once the .ota file is created, it will be uploaded onto the Raspberry Pi where the OTA provider application is running.

###### Generating The Combined OTA image

- Create TA  image (.rps) with combined image flag set by using command.

```shell
commander rps convert <ta_image_combined.rps> --taapp <ta_image.rps> --combinedimage
```

- Create M4 .rps file from .s37 using below command.

```shell
commander rps create <m4_image.rps> --app <m4_image.s37>
```

- Create M4 (.rps) with combined image flag set by using command.

```shell
commander rps convert <m4_image_combined.rps> --app <m4_image.rps> --combinedimage
```

- Create combined image from the above created TA and M4 images.

```shell
commander rps convert "combined_image.rps" --app "m4_image_combined.rps" --taapp "ta_image_combined.rps" 
```

- Create the Matter OTA file from the bootable image file.

```shell
./src/app/ota_image_tool.py create -v 0xFFF1 -p 0x8005 -vn 2 -vs "2.0" -da sha256 combined_image.rps combined_image.ota
```
**Note:** For TA(alone) OTA firmware upgrade, follow the same steps as above.

###### Generating The M4 OTA image

- Create M4 (.s37) image to  (.rps) image using below command.

```shell
commander rps create <m4_image.rps> --app <m4_image.s37>
```

- Create the Matter OTA file from the bootable image file

```shell
./src/app/ota_image_tool.py create -v 0xFFF1 -p 0x8005 -vn 2 -vs "2.0" -da sha256 m4_image.rps m4_image.ota
```

### Running OTA Provider

Expand Down
4 changes: 2 additions & 2 deletions docs/silabs/thread/CHIP_TOOL.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,10 @@ $ mattertool levelcontrol read current-level 106 1
- ubuntu (you are here)
- connectedhomeip (git repo:
https://github.com/project-chip/connectedhomeip.git)
- .

- ot-br-posix (git repo:
https://github.com/openthread/ot-br-posix.git)
- .

- scripts (in-house scripts)
- configurations.sh
- matterTool.sh
Expand Down
Loading

0 comments on commit 2c67729

Please sign in to comment.