Skip to content

Commit 5691e47

Browse files
authored
Merge branch 'master' into feature/app-install-flow-public
2 parents 97ecea3 + 6180583 commit 5691e47

File tree

171 files changed

+13980
-1399
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

171 files changed

+13980
-1399
lines changed

.github/workflows/examples-telink.yaml

+4-4
Original file line numberDiff line numberDiff line change
@@ -189,13 +189,13 @@ jobs:
189189
- name: clean out build output
190190
run: rm -rf ./out
191191

192-
- name: Build example Telink (B91) Pump App
192+
- name: Build example Telink (B91 USB) Pump App
193193
run: |
194194
./scripts/run_in_build_env.sh \
195-
"./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-pump' build"
195+
"./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-pump-usb' build"
196196
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
197-
telink tlsr9518adk80d pump-app \
198-
out/telink-tlsr9518adk80d-pump/zephyr/zephyr.elf \
197+
telink tlsr9518adk80d pump-app-usb \
198+
out/telink-tlsr9518adk80d-pump-usb/zephyr/zephyr.elf \
199199
/tmp/bloat_reports/
200200
201201
- name: clean out build output

.github/workflows/tests.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ jobs:
127127
src/app/zap-templates/zcl/data-model/chip/microwave-oven-mode-cluster.xml \
128128
src/app/zap-templates/zcl/data-model/chip/microwave-oven-control-cluster.xml \
129129
src/app/zap-templates/zcl/data-model/chip/door-lock-cluster.xml \
130+
src/app/zap-templates/zcl/data-model/chip/ecosystem-information-cluster.xml \
130131
src/app/zap-templates/zcl/data-model/chip/energy-evse-cluster.xml \
131132
src/app/zap-templates/zcl/data-model/chip/energy-evse-mode-cluster.xml \
132133
src/app/zap-templates/zcl/data-model/chip/ethernet-network-diagnostics-cluster.xml \
@@ -502,6 +503,7 @@ jobs:
502503
scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --load-from-env /tmp/test_env.yaml --script src/python_testing/TC_ACE_1_5.py'
503504
scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --load-from-env /tmp/test_env.yaml --script src/python_testing/TC_AccessChecker.py'
504505
scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --load-from-env /tmp/test_env.yaml --script src/python_testing/TC_CGEN_2_4.py'
506+
scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --load-from-env /tmp/test_env.yaml --script src/python_testing/TC_CNET_1_4.py'
505507
scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --load-from-env /tmp/test_env.yaml --script src/python_testing/TC_DA_1_2.py'
506508
scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --load-from-env /tmp/test_env.yaml --script src/python_testing/TC_DA_1_5.py'
507509
scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --load-from-env /tmp/test_env.yaml --script src/python_testing/TC_DA_1_7.py'

docs/zap_clusters.md

+1
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ Generally regenerate using one of:
132132
| 1294 | 0x50E | AccountLogin |
133133
| 1295 | 0x50F | ContentControl |
134134
| 1296 | 0x510 | ContentAppObserver |
135+
| 1872 | 0x750 | EcosystemInformation |
135136
| 1873 | 0x751 | CommissionerControl |
136137
| 2820 | 0xB04 | ElectricalMeasurement |
137138
| 4294048773 | 0xFFF1FC05 | UnitTesting |

examples/air-quality-sensor-app/telink/README.md

+26-10
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,17 @@ You can use this example as a reference for creating your own application.
44

55
![Telink B91 EVK](http://wiki.telink-semi.cn/wiki/assets/Hardware/B91_Generic_Starter_Kit_Hardware_Guide/connection_chart.png)
66

7+
## Supported devices
8+
9+
The example supports building and running on the following devices:
10+
11+
| Board/SoC | Build target | Zephyr Board Info |
12+
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
13+
| [B91](https://wiki.telink-semi.cn/wiki/Hardware/B91_Generic_Starter_Kit_Hardware_Guide) [TLSR9518ADK80D](https://wiki.telink-semi.cn/wiki/chip-series/TLSR951x-Series) | `tlsr9518adk80d`, `tlsr9518adk80d-mars`, `tlsr9518adk80d-usb` | [TLSR9518ADK80D](https://github.com/telink-semi/zephyr/blob/develop/boards/riscv/tlsr9518adk80d/doc/index.rst) |
14+
| [B92](https://wiki.telink-semi.cn/wiki/Hardware/B92_Generic_Starter_Kit_Hardware_Guide) [TLSR9528A](https://wiki.telink-semi.cn/wiki/chip-series/TLSR952x-Series) | `tlsr9528a`, `tlsr9528a_retention` | [TLSR9528A](https://github.com/telink-semi/zephyr/blob/develop/boards/riscv/tlsr9528a/doc/index.rst) |
15+
| [B95](https://wiki.telink-semi.cn/wiki/Hardware/B95_Generic_Starter_Kit_Hardware_Guide) [TLSR9258A](https://wiki.telink-semi.cn/wiki/chip-series/TLSR925x-Series) | `tlsr9258a` | [TLSR9258A](https://github.com/telink-semi/zephyr/blob/develop/boards/riscv/tlsr9258a/doc/index.rst) |
16+
| [W91](https://wiki.telink-semi.cn/wiki/Hardware/W91_Generic_Starter_Kit_Hardware_Guide) [TLSR9118BDK40D](https://wiki.telink-semi.cn/wiki/chip-series/TLSR911x-Series) | `tlsr9118bdk40d` | [TLSR9118BDK40D](https://github.com/telink-semi/zephyr/blob/develop/boards/riscv/tlsr9118bdk40d/doc/index.rst) |
17+
718
## Build and flash
819

920
1. Run the Docker container:
@@ -12,7 +23,7 @@ You can use this example as a reference for creating your own application.
1223
$ docker run -it --rm -v $PWD:/host -w /host ghcr.io/project-chip/chip-build-telink:$(wget -q -O - https://raw.githubusercontent.com/project-chip/connectedhomeip/master/.github/workflows/examples-telink.yaml 2> /dev/null | grep chip-build-telink | awk -F: '{print $NF}')
1324
```
1425

15-
Compatible docker image version can be found in next file:
26+
You can find the compatible Docker image version in the file:
1627

1728
```bash
1829
$ .github/workflows/examples-telink.yaml
@@ -24,8 +35,8 @@ You can use this example as a reference for creating your own application.
2435
$ source ./scripts/activate.sh -p all,telink
2536
```
2637

27-
3. In the example dir run (replace _<build_target>_ with your board name, for
28-
example, `tlsr9118bdk40d`, `tlsr9518adk80d`, `tlsr9528a` or `tlsr9258a`):
38+
3. Build the example (replace _<build_target>_ with your board name, see
39+
[Supported devices](#supported-devices)):
2940

3041
```bash
3142
$ west build -b <build_target>
@@ -35,9 +46,12 @@ You can use this example as a reference for creating your own application.
3546
MB, for example, `-DFLASH_SIZE=1m` or `-DFLASH_SIZE=4m`:
3647

3748
```bash
38-
$ west build -b tlsr9518adk80d -- -DFLASH_SIZE=4m
49+
$ west build -b <build_target> -- -DFLASH_SIZE=4m
3950
```
4051

52+
You can find the target built file called **_zephyr.bin_** under the
53+
**_build/zephyr_** directory.
54+
4155
4. Flash binary:
4256

4357
```
@@ -56,16 +70,18 @@ To get output from device, connect UART to following pins:
5670
| TX | PB2 (pin 16 of J34 connector) |
5771
| GND | GND |
5872

73+
Baud rate: 115200 bits/s
74+
5975
### Buttons
6076

6177
The following buttons are available on **tlsr9518adk80d** board:
6278

63-
| Name | Function | Description |
64-
| :------- | :--------------------- | :----------------------------------------------------------------------------------------------------- |
65-
| Button 1 | Factory reset | Perform factory reset to forget currently commissioned Thread network and back to uncommissioned state |
66-
| Button 2 | `AirQuality` control | Manually triggers the `AirQuality` state |
67-
| Button 3 | Thread start | Commission thread with static credentials and enables the Thread on device |
68-
| Button 4 | Open commission window | The button is opening commissioning window to perform commissioning over BLE |
79+
| Name | Function | Description |
80+
| :------- | :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------ |
81+
| Button 1 | Factory reset | Perform factory reset to forget currently commissioned Thread network and return to a decommissioned state (to activate, push the button 3 times) |
82+
| Button 2 | `AirQuality` control | Manually triggers the `AirQuality` state |
83+
| Button 3 | Thread start | Commission thread with static credentials and enables the Thread on device |
84+
| Button 4 | Open commission window | The button is opening commissioning window to perform commissioning over BLE |
6985

7086
### LEDs
7187

examples/all-clusters-app/all-clusters-common/all-clusters-app.matter

+66
Original file line numberDiff line numberDiff line change
@@ -4582,6 +4582,56 @@ cluster EnergyEvseMode = 157 {
45824582
command ChangeToMode(ChangeToModeRequest): ChangeToModeResponse = 0;
45834583
}
45844584

4585+
/** Attributes and commands for selecting a mode from a list of supported options. */
4586+
cluster WaterHeaterMode = 158 {
4587+
revision 1;
4588+
4589+
enum ModeTag : enum16 {
4590+
kOff = 16384;
4591+
kManual = 16385;
4592+
kTimed = 16386;
4593+
}
4594+
4595+
bitmap Feature : bitmap32 {
4596+
kOnOff = 0x1;
4597+
}
4598+
4599+
struct ModeTagStruct {
4600+
optional vendor_id mfgCode = 0;
4601+
enum16 value = 1;
4602+
}
4603+
4604+
struct ModeOptionStruct {
4605+
char_string<64> label = 0;
4606+
int8u mode = 1;
4607+
ModeTagStruct modeTags[] = 2;
4608+
}
4609+
4610+
readonly attribute ModeOptionStruct supportedModes[] = 0;
4611+
readonly attribute int8u currentMode = 1;
4612+
attribute optional nullable int8u startUpMode = 2;
4613+
attribute optional nullable int8u onMode = 3;
4614+
readonly attribute command_id generatedCommandList[] = 65528;
4615+
readonly attribute command_id acceptedCommandList[] = 65529;
4616+
readonly attribute event_id eventList[] = 65530;
4617+
readonly attribute attrib_id attributeList[] = 65531;
4618+
readonly attribute bitmap32 featureMap = 65532;
4619+
readonly attribute int16u clusterRevision = 65533;
4620+
4621+
request struct ChangeToModeRequest {
4622+
int8u newMode = 0;
4623+
}
4624+
4625+
response struct ChangeToModeResponse = 1 {
4626+
enum8 status = 0;
4627+
optional char_string statusText = 1;
4628+
}
4629+
4630+
/** This command is used to change device modes.
4631+
On receipt of this command the device SHALL respond with a ChangeToModeResponse command. */
4632+
command ChangeToMode(ChangeToModeRequest): ChangeToModeResponse = 0;
4633+
}
4634+
45854635
/** Attributes and commands for selecting a mode from a list of supported options. */
45864636
provisional cluster DeviceEnergyManagementMode = 159 {
45874637
revision 1;
@@ -8479,6 +8529,22 @@ endpoint 1 {
84798529
handle command ChangeToModeResponse;
84808530
}
84818531

8532+
server cluster WaterHeaterMode {
8533+
callback attribute supportedModes;
8534+
callback attribute currentMode;
8535+
ram attribute startUpMode;
8536+
ram attribute onMode;
8537+
callback attribute generatedCommandList;
8538+
callback attribute acceptedCommandList;
8539+
callback attribute eventList;
8540+
callback attribute attributeList;
8541+
callback attribute featureMap;
8542+
ram attribute clusterRevision default = 1;
8543+
8544+
handle command ChangeToMode;
8545+
handle command ChangeToModeResponse;
8546+
}
8547+
84828548
server cluster DeviceEnergyManagementMode {
84838549
callback attribute supportedModes;
84848550
callback attribute currentMode;

examples/all-clusters-app/all-clusters-common/all-clusters-app.zap

+188
Original file line numberDiff line numberDiff line change
@@ -14745,6 +14745,194 @@
1474514745
}
1474614746
]
1474714747
},
14748+
{
14749+
"name": "Water Heater Mode",
14750+
"code": 158,
14751+
"mfgCode": null,
14752+
"define": "WATER_HEATER_MODE_CLUSTER",
14753+
"side": "server",
14754+
"enabled": 1,
14755+
"commands": [
14756+
{
14757+
"name": "ChangeToMode",
14758+
"code": 0,
14759+
"mfgCode": null,
14760+
"source": "client",
14761+
"isIncoming": 1,
14762+
"isEnabled": 1
14763+
},
14764+
{
14765+
"name": "ChangeToModeResponse",
14766+
"code": 1,
14767+
"mfgCode": null,
14768+
"source": "server",
14769+
"isIncoming": 0,
14770+
"isEnabled": 1
14771+
}
14772+
],
14773+
"attributes": [
14774+
{
14775+
"name": "SupportedModes",
14776+
"code": 0,
14777+
"mfgCode": null,
14778+
"side": "server",
14779+
"type": "array",
14780+
"included": 1,
14781+
"storageOption": "External",
14782+
"singleton": 0,
14783+
"bounded": 0,
14784+
"defaultValue": "",
14785+
"reportable": 1,
14786+
"minInterval": 1,
14787+
"maxInterval": 65534,
14788+
"reportableChange": 0
14789+
},
14790+
{
14791+
"name": "CurrentMode",
14792+
"code": 1,
14793+
"mfgCode": null,
14794+
"side": "server",
14795+
"type": "int8u",
14796+
"included": 1,
14797+
"storageOption": "External",
14798+
"singleton": 0,
14799+
"bounded": 0,
14800+
"defaultValue": "",
14801+
"reportable": 1,
14802+
"minInterval": 1,
14803+
"maxInterval": 65534,
14804+
"reportableChange": 0
14805+
},
14806+
{
14807+
"name": "StartUpMode",
14808+
"code": 2,
14809+
"mfgCode": null,
14810+
"side": "server",
14811+
"type": "int8u",
14812+
"included": 1,
14813+
"storageOption": "RAM",
14814+
"singleton": 0,
14815+
"bounded": 0,
14816+
"defaultValue": "",
14817+
"reportable": 1,
14818+
"minInterval": 1,
14819+
"maxInterval": 65534,
14820+
"reportableChange": 0
14821+
},
14822+
{
14823+
"name": "OnMode",
14824+
"code": 3,
14825+
"mfgCode": null,
14826+
"side": "server",
14827+
"type": "int8u",
14828+
"included": 1,
14829+
"storageOption": "RAM",
14830+
"singleton": 0,
14831+
"bounded": 0,
14832+
"defaultValue": "",
14833+
"reportable": 1,
14834+
"minInterval": 1,
14835+
"maxInterval": 65534,
14836+
"reportableChange": 0
14837+
},
14838+
{
14839+
"name": "GeneratedCommandList",
14840+
"code": 65528,
14841+
"mfgCode": null,
14842+
"side": "server",
14843+
"type": "array",
14844+
"included": 1,
14845+
"storageOption": "External",
14846+
"singleton": 0,
14847+
"bounded": 0,
14848+
"defaultValue": "",
14849+
"reportable": 1,
14850+
"minInterval": 1,
14851+
"maxInterval": 65534,
14852+
"reportableChange": 0
14853+
},
14854+
{
14855+
"name": "AcceptedCommandList",
14856+
"code": 65529,
14857+
"mfgCode": null,
14858+
"side": "server",
14859+
"type": "array",
14860+
"included": 1,
14861+
"storageOption": "External",
14862+
"singleton": 0,
14863+
"bounded": 0,
14864+
"defaultValue": "",
14865+
"reportable": 1,
14866+
"minInterval": 1,
14867+
"maxInterval": 65534,
14868+
"reportableChange": 0
14869+
},
14870+
{
14871+
"name": "EventList",
14872+
"code": 65530,
14873+
"mfgCode": null,
14874+
"side": "server",
14875+
"type": "array",
14876+
"included": 1,
14877+
"storageOption": "External",
14878+
"singleton": 0,
14879+
"bounded": 0,
14880+
"defaultValue": "",
14881+
"reportable": 1,
14882+
"minInterval": 1,
14883+
"maxInterval": 65534,
14884+
"reportableChange": 0
14885+
},
14886+
{
14887+
"name": "AttributeList",
14888+
"code": 65531,
14889+
"mfgCode": null,
14890+
"side": "server",
14891+
"type": "array",
14892+
"included": 1,
14893+
"storageOption": "External",
14894+
"singleton": 0,
14895+
"bounded": 0,
14896+
"defaultValue": "",
14897+
"reportable": 1,
14898+
"minInterval": 1,
14899+
"maxInterval": 65534,
14900+
"reportableChange": 0
14901+
},
14902+
{
14903+
"name": "FeatureMap",
14904+
"code": 65532,
14905+
"mfgCode": null,
14906+
"side": "server",
14907+
"type": "bitmap32",
14908+
"included": 1,
14909+
"storageOption": "External",
14910+
"singleton": 0,
14911+
"bounded": 0,
14912+
"defaultValue": "",
14913+
"reportable": 1,
14914+
"minInterval": 1,
14915+
"maxInterval": 65534,
14916+
"reportableChange": 0
14917+
},
14918+
{
14919+
"name": "ClusterRevision",
14920+
"code": 65533,
14921+
"mfgCode": null,
14922+
"side": "server",
14923+
"type": "int16u",
14924+
"included": 1,
14925+
"storageOption": "RAM",
14926+
"singleton": 0,
14927+
"bounded": 0,
14928+
"defaultValue": "1",
14929+
"reportable": 1,
14930+
"minInterval": 1,
14931+
"maxInterval": 65534,
14932+
"reportableChange": 0
14933+
}
14934+
]
14935+
},
1474814936
{
1474914937
"name": "Device Energy Management Mode",
1475014938
"code": 159,

0 commit comments

Comments
 (0)