-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[TI] ICD support for TI CC13x4 (#32823)
* ICD support for TI CC13x4 * spelling fix * Restyled by whitespace * Restyled by clang-format * Restyled by gn * Restyled by prettier-markdown * replaced SED define with ICD server defines + other code cleanup * Restyled by whitespace * Restyled by clang-format --------- Co-authored-by: Restyled.io <[email protected]>
- Loading branch information
1 parent
0c0c6d6
commit 978dfcb
Showing
42 changed files
with
948 additions
and
578 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
# Configuring Intermittently Connected Devices on TI CC13x4 Platforms | ||
|
||
## Overview | ||
|
||
Intermittently Connected Devices are devices in a network that do not always | ||
need to be active. Matter has defined a cluster that helps capture this | ||
behavior; this configuration is ideal for devices that need to operate with low | ||
power consumption or do not have a need to always be on the network. Matter | ||
examples on the TI CC13x4 platform can be configured to act as ICDs. | ||
|
||
## Platform Code Changes | ||
|
||
To configure a TI example as an ICD, open up the `args.gni` file of the example | ||
and set the following parameter to true: | ||
|
||
``` | ||
chip_enable_icd_server = true | ||
``` | ||
|
||
TI examples have only been tested with the ICD Server configuration. To enable | ||
the client configuration, set `chip_enable_icd_client` to true. | ||
|
||
Persistent subscriptions allow devices to attempt resuming existing | ||
subscriptions following a device reset. To enable persistent subscriptions, set | ||
the following parameter to true: | ||
|
||
``` | ||
chip_persist_subscriptions = true | ||
``` | ||
|
||
Subscription timeout resumption allows devices to attempt re-establishing | ||
subscriptions that may have expired. This feature is disabled out of box. | ||
|
||
In addition, various ICD parameters such as idle/active mode duration, active | ||
mode threshold, and polling intervals can be configured in | ||
`src/platform/cc13xx_26xx/cc13x4_26x4/CHIPPlatformConfig.h` | ||
|
||
``` | ||
#define CHIP_CONFIG_ICD_ACTIVE_MODE_DURATION_MS 1000 | ||
#define CHIP_CONFIG_ICD_ACTIVE_MODE_THRESHOLD_MS 500 | ||
#define CHIP_CONFIG_ICD_IDLE_MODE_DURATION_SEC 300 | ||
#define CHIP_DEVICE_CONFIG_ICD_SLOW_POLL_INTERVAL chip::System::Clock::Milliseconds32(5000) | ||
#define CHIP_DEVICE_CONFIG_ICD_FAST_POLL_INTERVAL chip::System::Clock::Milliseconds32(100) | ||
``` | ||
|
||
## ZAP File Changes | ||
|
||
Open up the ZAP file (in `examples/<example-name>/<example-name>-common`) for | ||
the example being configured as an ICD. Add the ICD Management Cluster for | ||
Endpoint 0. | ||
|
||
Open up the .matter file (in `examples/<example-name>/<example-name>-common`) | ||
corresponding to the example and add in the ICDManagement cluster. | ||
|
||
In addition, each endpoint has a list of clusters that it supports. Add the | ||
ICDManagement cluster to this list. | ||
|
||
The lock-app example's .matter file can be used as a reference. These additions | ||
allow the ICDManagement cluster's callbacks to be accessed. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.