diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index 4d85f92b4521cd..ecef4f5a31da24 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -377,6 +377,9 @@ jobs:
scripts/run_in_build_env.sh "ninja -C ./out/$BUILD_TYPE"
- name: Setup Build, Run Build and Run Tests
timeout-minutes: 120
+ # We can't enable leak checking here in LSAN_OPTIONS, because on
+ # Darwin that's only supported with a new enough clang, and we're
+ # not building with the pigweed clang here.
run: |
for BUILD_TYPE in default python_lib; do
case $BUILD_TYPE in
diff --git a/.github/workflows/cherry-picks.yaml b/.github/workflows/cherry-picks.yaml
index 97bff5bb6dcd33..b3ff4d58c2c12d 100644
--- a/.github/workflows/cherry-picks.yaml
+++ b/.github/workflows/cherry-picks.yaml
@@ -14,6 +14,9 @@ jobs:
(github.event.pull_request.merged == true)
&& (
(contains(github.event.pull_request.labels.*.name, 'sve'))
+ || (contains(github.event.pull_request.labels.*.name, 'spec'))
+ || (contains(github.event.pull_request.labels.*.name, 'request sve'))
+ || (contains(github.event.pull_request.labels.*.name, 'cert blocker'))
)
steps:
- name: Checkout
@@ -24,7 +27,7 @@ jobs:
uses: carloscastrojumo/github-cherry-pick-action@v1.0.1
with:
token: ${{ secrets.MATTER_PAT }}
- branch: sve
+ branch: sve-2
labels: |
sve cherry pick
reviewers: |
diff --git a/.github/workflows/darwin-tests.yaml b/.github/workflows/darwin-tests.yaml
index eb8106f6b26fa6..82315575292a49 100644
--- a/.github/workflows/darwin-tests.yaml
+++ b/.github/workflows/darwin-tests.yaml
@@ -32,9 +32,10 @@ jobs:
strategy:
matrix:
- build_variant: [no-ble-asan]
+ build_variant: [no-ble-asan-clang]
env:
BUILD_VARIANT: ${{matrix.build_variant}}
+ LSAN_OPTIONS: detect_leaks=1 malloc_context_size=40 suppressions=scripts/tests/chiptest/lsan-mac-suppressions.txt
if: github.actor != 'restyled-io[bot]'
runs-on: macos-latest
diff --git a/.github/workflows/docker_img.yaml b/.github/workflows/docker_img.yaml
index b706dbcac39e42..73c45ee303a756 100644
--- a/.github/workflows/docker_img.yaml
+++ b/.github/workflows/docker_img.yaml
@@ -42,7 +42,12 @@ jobs:
- "-esp32"
- "-esp32-qemu"
- "-infineon"
- - "-imx"
+ # NOTE: imx image requires too much space for GitHub-hosted runners. It fails with:
+ # ```
+ # ....
+ # ApplyLayer exit status 1 stdout: stderr: write /opt/fsl-imx-xwayland/5.15-kirkstone/sysroots/armv8a-poky-linux/opt/ltp/testcases/bin/fanotify15: no space left on device
+ # ```
+ # - "-imx"
- "-k32w"
- "-mbed-os"
- "-nrf-platform"
diff --git a/.github/workflows/examples-cyw30739.yaml b/.github/workflows/examples-cyw30739.yaml
deleted file mode 100644
index a3126dbba0442c..00000000000000
--- a/.github/workflows/examples-cyw30739.yaml
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright (c) 2021 Project CHIP Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-name: Build example - Infineon CYW30739
-
-on:
- push:
- pull_request:
-
-concurrency:
- group: ${{ github.ref }}-${{ github.workflow }}-${{ (github.event_name == 'pull_request' && github.event.number) || (github.event_name == 'workflow_dispatch' && github.run_number) || github.sha }}
- cancel-in-progress: true
-
-jobs:
- cyw30739:
- name: CYW30739
- timeout-minutes: 60
-
- runs-on: ubuntu-latest
- if: github.actor != 'restyled-io[bot]'
-
- container:
- image: connectedhomeip/chip-build:latest
- volumes:
- - "/tmp/bloat_reports:/tmp/bloat_reports"
- steps:
- - uses: Wandalen/wretry.action@v1.0.15
- name: Checkout
- with:
- action: actions/checkout@v3
- with: |
- token: ${{ github.token }}
- attempt_limit: 3
- attempt_delay: 2000
- - name: Checkout submodules
- run: scripts/checkout_submodules.py --shallow --platform cyw30739
-
- - name: Set up environment for size reports
- if: ${{ !env.ACT }}
- env:
- GH_CONTEXT: ${{ toJson(github) }}
- run: scripts/tools/memory/gh_sizes_environment.py "${GH_CONTEXT}"
-
- - name: Bootstrap
- timeout-minutes: 25
- run: scripts/build/gn_bootstrap.sh
- - name: Uploading bootstrap logs
- uses: actions/upload-artifact@v2
- if: ${{ always() && !env.ACT }}
- with:
- name: bootstrap-logs
- path: |
- .environment/gn_out/.ninja_log
- .environment/pigweed-venv/*.log
- - name: Build example CYW30739 Apps
- timeout-minutes: 30
- run: |
- ./scripts/run_in_build_env.sh \
- "./scripts/build/build_examples.py \
- --target-glob 'cyw30739-cyw930739m2evb_01-{light,lock,ota-requestor-no-progress-logging}' \
- build \
- --copy-artifacts-to out/artifacts \
- "
- - name: Get light size stats
- timeout-minutes: 5
- run: |
- .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- cyw30739 cyw930739m2evb_01 light \
- out/artifacts/cyw30739-cyw930739m2evb_01-light/chip-cyw30739-lighting-example.elf \
- /tmp/bloat_reports/
- - name: Get lock size stats
- timeout-minutes: 5
- run: |
- .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- cyw30739 cyw930739m2evb_01 lock \
- out/artifacts/cyw30739-cyw930739m2evb_01-lock/chip-cyw30739-lock-example.elf \
- /tmp/bloat_reports/
- - name: Get ota-requestor size stats
- timeout-minutes: 5
- run: |
- .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- cyw30739 cyw930739m2evb_01 ota-requestor-no-progress-logging \
- out/artifacts/cyw30739-cyw930739m2evb_01-ota-requestor-no-progress-logging/chip-cyw30739-ota-requestor-example.elf \
- /tmp/bloat_reports/
- - name: Uploading Size Reports
- uses: actions/upload-artifact@v2
- if: ${{ !env.ACT }}
- with:
- name: Size,CYW30739-Examples,${{ env.GH_EVENT_PR }},${{ env.GH_EVENT_HASH }},${{ env.GH_EVENT_PARENT }},${{ github.event_name }}
- path: |
- /tmp/bloat_reports/
diff --git a/.github/workflows/examples-efr32.yaml b/.github/workflows/examples-efr32.yaml
index 16aaaa42a189d4..b8c5134d6e9fcd 100644
--- a/.github/workflows/examples-efr32.yaml
+++ b/.github/workflows/examples-efr32.yaml
@@ -48,7 +48,7 @@ jobs:
attempt_limit: 3
attempt_delay: 2000
- name: Checkout submodules
- run: scripts/checkout_submodules.py --shallow --platform efr32
+ run: scripts/checkout_submodules.py --shallow --recursive --platform efr32
# - name: Out of Tree verification
# run: third_party/silabs/out_of_tree_verification.sh
@@ -94,8 +94,8 @@ jobs:
- name: Build example EFR32 Lighting App for BRD4161A with RPCs
timeout-minutes: 15
run: |
- scripts/examples/gn_efr32_example.sh examples/lighting-app/efr32/ out/lighting_app_debug_rpc BRD4161A \
- 'import("//with_pw_rpc.gni")'
+ scripts/examples/gn_efr32_example.sh examples/lighting-app/efr32/ out/lighting_app_debug_rpc BRD4161A "is_debug=false" \
+ disable_lcd=true 'import("//with_pw_rpc.gni")'
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py efr32 BRD4161A+rpc lighting-app \
out/lighting_app_debug_rpc/BRD4161A/chip-efr32-lighting-example.out /tmp/bloat_reports/
- name: Build example EFR32+WF200 WiFi Lock app for BRD4161A
diff --git a/.github/workflows/examples-esp32.yaml b/.github/workflows/examples-esp32.yaml
index b684c60ad82be0..4339a8d0f38b46 100644
--- a/.github/workflows/examples-esp32.yaml
+++ b/.github/workflows/examples-esp32.yaml
@@ -23,7 +23,6 @@ concurrency:
cancel-in-progress: true
jobs:
- # TODO ESP32 https://github.com/project-chip/connectedhomeip/issues/1510
esp32:
name: ESP32
timeout-minutes: 120
diff --git a/.github/workflows/examples-infineon.yaml b/.github/workflows/examples-infineon.yaml
index 7fc9cdd4485be0..cc5a8f522596d5 100644
--- a/.github/workflows/examples-infineon.yaml
+++ b/.github/workflows/examples-infineon.yaml
@@ -12,7 +12,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-name: Build example - Infineon P6
+name: Build example - Infineon
on:
push:
@@ -33,7 +33,8 @@ jobs:
container:
image: connectedhomeip/chip-build-infineon:0.5.91
-
+ volumes:
+ - "/tmp/bloat_reports:/tmp/bloat_reports"
steps:
- uses: Wandalen/wretry.action@v1.0.15
name: Checkout
@@ -44,7 +45,7 @@ jobs:
attempt_limit: 3
attempt_delay: 2000
- name: Checkout submodules
- run: scripts/checkout_submodules.py --shallow --platform p6
+ run: scripts/checkout_submodules.py --shallow --platform infineon
- name: Set up environment for size reports
if: ${{ !env.ACT }}
@@ -63,65 +64,97 @@ jobs:
path: |
.environment/gn_out/.ninja_log
.environment/pigweed-venv/*.log
- - name: Build lock-app example
+ - name: Build PSoC6 lock-app example
timeout-minutes: 15
run: |
scripts/run_in_build_env.sh \
"scripts/build/build_examples.py \
--enable-flashbundle --no-log-timestamps \
- --target infineon-p6-lock \
+ --target infineon-psoc6-lock \
build \
--copy-artifacts-to out/artifacts \
"
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- p6 default lock-app \
- out/infineon-p6-lock/chip-p6-lock-example.out
- - name: Build all-clusters-app example
+ psoc6 cy8ckit_062s2_43012 lock \
+ out/artifacts/infineon-psoc6-lock/chip-psoc6-lock-example.out \
+ /tmp/bloat_reports/
+ - name: Build PSoC6 all-clusters-app example
timeout-minutes: 20
run: |
scripts/run_in_build_env.sh \
"scripts/build/build_examples.py \
--enable-flashbundle --no-log-timestamps \
- --target infineon-p6-all-clusters \
+ --target infineon-psoc6-all-clusters \
build \
--copy-artifacts-to out/artifacts \
"
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- p6 default all-clusters-app \
- out/infineon-p6-all-clusters/chip-p6-clusters-example.out
- - name: Build all-clusters-minimal-app example
+ psoc6 cy8ckit_062s2_43012 all-clusters \
+ out/artifacts/infineon-psoc6-all-clusters/chip-psoc6-clusters-example.out \
+ /tmp/bloat_reports/
+ - name: Build PSoC6 all-clusters-minimal-app example
timeout-minutes: 20
run: |
scripts/run_in_build_env.sh \
"scripts/build/build_examples.py \
--enable-flashbundle --no-log-timestamps \
- --target infineon-p6-all-clusters-minimal \
+ --target infineon-psoc6-all-clusters-minimal \
build \
--copy-artifacts-to out/artifacts \
"
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- p6 default all-clusters-minimal-app \
- out/infineon-p6-all-clusters-minimal/chip-p6-clusters-minimal-example.out
- - name: Build lighting-app example
+ psoc6 cy8ckit_062s2_43012 all-clusters-minimal \
+ out/artifacts/infineon-psoc6-all-clusters-minimal/chip-psoc6-clusters-minimal-example.out \
+ /tmp/bloat_reports/
+ - name: Build PSoC6 lighting-app example
timeout-minutes: 15
run: |
scripts/run_in_build_env.sh \
"scripts/build/build_examples.py \
--enable-flashbundle --no-log-timestamps \
- --target infineon-p6-light \
+ --target infineon-psoc6-light \
build \
--copy-artifacts-to out/artifacts \
"
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- p6 default light-app \
- out/infineon-p6-light/chip-p6-lighting-example.out
+ psoc6 cy8ckit_062s2_43012 light \
+ out/artifacts/infineon-psoc6-light/chip-psoc6-lighting-example.out \
+ /tmp/bloat_reports/
+
+ - name: Build example CYW30739 Apps
+ timeout-minutes: 30
+ run: |
+ ./scripts/run_in_build_env.sh \
+ "./scripts/build/build_examples.py \
+ --target-glob 'cyw30739-cyw930739m2evb_01-{light,lock,ota-requestor-no-progress-logging}' \
+ build \
+ --copy-artifacts-to out/artifacts \
+ "
+ - name: Get light size stats
+ timeout-minutes: 5
+ run: |
+ .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
+ cyw30739 cyw930739m2evb_01 light \
+ out/artifacts/cyw30739-cyw930739m2evb_01-light/chip-cyw30739-lighting-example.elf \
+ /tmp/bloat_reports/
+ - name: Get lock size stats
+ timeout-minutes: 5
+ run: |
+ .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
+ cyw30739 cyw930739m2evb_01 lock \
+ out/artifacts/cyw30739-cyw930739m2evb_01-lock/chip-cyw30739-lock-example.elf \
+ /tmp/bloat_reports/
+ - name: Get ota-requestor size stats
+ timeout-minutes: 5
+ run: |
+ .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
+ cyw30739 cyw930739m2evb_01 ota-requestor-no-progress-logging \
+ out/artifacts/cyw30739-cyw930739m2evb_01-ota-requestor-no-progress-logging/chip-cyw30739-ota-requestor-example.elf \
+ /tmp/bloat_reports/
- name: Uploading Size Reports
uses: actions/upload-artifact@v2
if: ${{ !env.ACT }}
with:
- name: Size,P6-Examples,${{ env.GH_EVENT_PR }},${{ env.GH_EVENT_HASH }},${{ env.GH_EVENT_PARENT }},${{ github.event_name }}
+ name: Size,Infineon-Examples,${{ env.GH_EVENT_PR }},${{ env.GH_EVENT_HASH }},${{ env.GH_EVENT_PARENT }},${{ github.event_name }}
path: |
- out/infineon-p6-lock/p6-default-lock-app-sizes.json
- out/infineon-p6-all-clusters/p6-default-all-clusters-app-sizes.json
- out/infineon-p6-all-clusters-minimal/p6-default-all-clusters-minimal-app-sizes.json
- out/infineon-p6-light/p6-default-light-app-sizes.json
+ /tmp/bloat_reports/
diff --git a/.github/workflows/examples-nrfconnect.yaml b/.github/workflows/examples-nrfconnect.yaml
index 3c110ce1ccece7..5da513c70de6ba 100644
--- a/.github/workflows/examples-nrfconnect.yaml
+++ b/.github/workflows/examples-nrfconnect.yaml
@@ -95,15 +95,6 @@ jobs:
nrfconnect nrf52840dk_nrf52840 lock-app \
examples/lock-app/nrfconnect/build/zephyr/zephyr.elf \
/tmp/bloat_reports/
- - name: Build example nRF Connect SDK Lighting App on nRF52840 DK
- if: github.event_name == 'push' || steps.changed_paths.outputs.nrfconnect == 'true'
- timeout-minutes: 15
- run: |
- scripts/examples/nrfconnect_example.sh lighting-app nrf52840dk_nrf52840
- .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- nrfconnect nrf52840dk_nrf52840 lighting-app \
- examples/lighting-app/nrfconnect/build/zephyr/zephyr.elf \
- /tmp/bloat_reports/
- name: Build example nRF Connect SDK Lighting App on nRF52840 Dongle
if: github.event_name == 'push' || steps.changed_paths.outputs.nrfconnect == 'true'
timeout-minutes: 15
@@ -122,6 +113,15 @@ jobs:
nrfconnect nrf52840dk_nrf52840+rpc lighting-app \
examples/lighting-app/nrfconnect/build/zephyr/zephyr.elf \
/tmp/bloat_reports/
+ - name: Build example nRF Connect SDK Light Switch App on nRF52840 DK
+ if: github.event_name == 'push' || steps.changed_paths.outputs.nrfconnect == 'true'
+ timeout-minutes: 15
+ run: |
+ scripts/examples/nrfconnect_example.sh light-switch-app nrf52840dk_nrf52840
+ .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
+ nrfconnect nrf52840dk_nrf52840 light-switch-app \
+ examples/light-switch-app/nrfconnect/build/zephyr/zephyr.elf \
+ /tmp/bloat_reports/
- name: Build example nRF Connect SDK Shell on nRF52840 DK
if: github.event_name == 'push' || steps.changed_paths.outputs.shell == 'true'
timeout-minutes: 15
@@ -140,24 +140,6 @@ jobs:
nrfconnect nrf52840dk_nrf52840 pigweed-app \
examples/pigweed-app/nrfconnect/build/zephyr/zephyr.elf \
/tmp/bloat_reports/
- - name: Build example nRF Connect SDK Lock App on nRF5340 DK
- if: github.event_name == 'push' || steps.changed_paths.outputs.nrfconnect == 'true'
- timeout-minutes: 15
- run: |
- scripts/examples/nrfconnect_example.sh lock-app nrf5340dk_nrf5340_cpuapp
- .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- nrfconnect nrf5340dk_nrf5340_cpuapp lock-app \
- examples/lock-app/nrfconnect/build/zephyr/zephyr.elf \
- /tmp/bloat_reports/
- - name: Build example nRF Connect SDK Lighting App on nRF5340 DK
- if: github.event_name == 'push' || steps.changed_paths.outputs.nrfconnect == 'true'
- timeout-minutes: 15
- run: |
- scripts/examples/nrfconnect_example.sh lighting-app nrf5340dk_nrf5340_cpuapp
- .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
- nrfconnect nrf5340dk_nrf5340_cpuapp lighting-app \
- examples/lighting-app/nrfconnect/build/zephyr/zephyr.elf \
- /tmp/bloat_reports/
- name: Build example nRF Connect SDK Pump App on nRF52840 DK
if: github.event_name == 'push' || steps.changed_paths.outputs.nrfconnect == 'true'
timeout-minutes: 15
@@ -192,6 +174,24 @@ jobs:
nrfconnect nrf52840dk_nrf52840 all-clusters-minimal-app \
examples/all-clusters-minimal-app/nrfconnect/build/zephyr/zephyr.elf \
/tmp/bloat_reports/
+ - name: Build example nRF Connect SDK Lock App on nRF5340 DK
+ if: github.event_name == 'push' || steps.changed_paths.outputs.nrfconnect == 'true'
+ timeout-minutes: 15
+ run: |
+ scripts/examples/nrfconnect_example.sh lock-app nrf5340dk_nrf5340_cpuapp
+ .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
+ nrfconnect nrf5340dk_nrf5340_cpuapp lock-app \
+ examples/lock-app/nrfconnect/build/zephyr/zephyr.elf \
+ /tmp/bloat_reports/
+ - name: Build example nRF Connect SDK Lighting App on nRF5340 DK
+ if: github.event_name == 'push' || steps.changed_paths.outputs.nrfconnect == 'true'
+ timeout-minutes: 15
+ run: |
+ scripts/examples/nrfconnect_example.sh lighting-app nrf5340dk_nrf5340_cpuapp
+ .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
+ nrfconnect nrf5340dk_nrf5340_cpuapp lighting-app \
+ examples/lighting-app/nrfconnect/build/zephyr/zephyr.elf \
+ /tmp/bloat_reports/
- name: Run unit tests for Zephyr native_posix_64 platform
if: github.event_name == 'push' || steps.changed_paths.outputs.tests == 'true'
timeout-minutes: 15
diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml
index 835b5b27415cd5..f17293a19f381d 100644
--- a/.github/workflows/tests.yaml
+++ b/.github/workflows/tests.yaml
@@ -38,6 +38,7 @@ jobs:
BUILD_VARIANT: ${{matrix.build_variant}}
CHIP_TOOL_VARIANT: ${{matrix.chip_tool}}
TSAN_OPTIONS: "halt_on_error=1 suppressions=scripts/tests/chiptest/tsan-linux-suppressions.txt"
+ LSAN_OPTIONS: detect_leaks=1
if: github.actor != 'restyled-io[bot]'
runs-on: ubuntu-latest
@@ -132,6 +133,7 @@ jobs:
BUILD_VARIANT: ${{matrix.build_variant}}
CHIP_TOOL_VARIANT: ${{matrix.chip_tool}}
TSAN_OPTIONS: "halt_on_error=1"
+ LSAN_OPTIONS: detect_leaks=1 suppressions=scripts/tests/chiptest/lsan-mac-suppressions.txt
if: github.actor != 'restyled-io[bot]'
runs-on: macos-latest
diff --git a/.gitmodules b/.gitmodules
index 16d589e739d539..2f40b45697df5a 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -62,7 +62,7 @@
path = third_party/freertos/repo
url = https://github.com/FreeRTOS/FreeRTOS-Kernel.git
branch = V10.3.1-kernel-only
- platforms = ameba,cc13x2_26x2,bl602,efr32,esp32,k32w0,p6,qpg
+ platforms = ameba,cc13x2_26x2,bl602,efr32,esp32,k32w0,infineon,qpg
[submodule "simw-top-mini"]
path = third_party/simw-top-mini/repo
url = https://github.com/NXP/plug-and-trust.git
@@ -78,12 +78,13 @@
platforms = qpg
[submodule "third_party/openthread/ot-efr32"]
path = third_party/openthread/ot-efr32
- url = https://github.com/openthread/ot-efr32.git
+ url = https://github.com/SiliconLabs/ot-efr32.git
+ branch = matter_sve
platforms = efr32
[submodule "third_party/openthread/ot-ifx"]
path = third_party/openthread/ot-ifx
url = https://github.com/Infineon/ot-ifx-release.git
- platforms = cyw30739
+ platforms = infineon
[submodule "third_party/mbed-os/repo"]
path = third_party/mbed-os/repo
url = https://github.com/ARMmbed/mbed-os.git
@@ -100,129 +101,129 @@
branch = main
platforms = mbed
[submodule "p6/abstraction-rtos"]
- path = third_party/p6/p6_sdk/libs/abstraction-rtos
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/abstraction-rtos
url = https://github.com/Infineon/abstraction-rtos
- platforms = p6
+ platforms = infineon
[submodule "p6/bluetooth-freertos"]
- path = third_party/p6/p6_sdk/libs/bluetooth-freertos
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/bluetooth-freertos
url = https://github.com/Infineon/bluetooth-freertos
branch = v2.X
- platforms = p6
+ platforms = infineon
[submodule "p6/btstack"]
- path = third_party/p6/p6_sdk/libs/btstack
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/btstack
url = https://github.com/Infineon/btstack
- platforms = p6
+ platforms = infineon
[submodule "p6/clib-support"]
- path = third_party/p6/p6_sdk/libs/clib-support
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/clib-support
url = https://github.com/Infineon/clib-support
- platforms = p6
+ platforms = infineon
[submodule "p6/connectivity-utilities"]
- path = third_party/p6/p6_sdk/libs/connectivity-utilities
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/connectivity-utilities
url = https://github.com/Infineon/connectivity-utilities
- platforms = p6
+ platforms = infineon
[submodule "p6/core-lib"]
- path = third_party/p6/p6_sdk/libs/core-lib
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/core-lib
url = https://github.com/Infineon/core-lib
- platforms = p6
+ platforms = infineon
[submodule "p6/core-make"]
- path = third_party/p6/p6_sdk/libs/core-make
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/core-make
url = https://github.com/Infineon/core-make
- platforms = p6
+ platforms = infineon
[submodule "p6/kv-store"]
- path = third_party/p6/p6_sdk/libs/kv-store
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/kv-store
url = https://github.com/Infineon/kv-store
- platforms = p6
+ platforms = infineon
[submodule "p6/mtb-hal-cat1"]
- path = third_party/p6/p6_sdk/libs/mtb-hal-cat1
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/mtb-hal-cat1
url = https://github.com/Infineon/mtb-hal-cat1
- platforms = p6
+ platforms = infineon
[submodule "p6/mtb-pdl-cat1"]
- path = third_party/p6/p6_sdk/libs/mtb-pdl-cat1
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/mtb-pdl-cat1
url = https://github.com/Infineon/mtb-pdl-cat1
- platforms = p6
+ platforms = infineon
[submodule "p6/psoc6cm0p"]
- path = third_party/p6/p6_sdk/libs/psoc6cm0p
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/psoc6cm0p
url = https://github.com/Infineon/psoc6cm0p
- platforms = p6
+ platforms = infineon
[submodule "p6/whd-bsp-integration"]
- path = third_party/p6/p6_sdk/libs/whd-bsp-integration
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/whd-bsp-integration
url = https://github.com/Infineon/whd-bsp-integration
- platforms = p6
+ platforms = infineon
[submodule "p6/wifi-connection-manager"]
- path = third_party/p6/p6_sdk/libs/wifi-connection-manager
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/wifi-connection-manager
url = https://github.com/Infineon/wifi-connection-manager
- platforms = p6
+ platforms = infineon
[submodule "p6/wifi-host-driver"]
- path = third_party/p6/p6_sdk/libs/wifi-host-driver
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/wifi-host-driver
url = https://github.com/Infineon/wifi-host-driver
- platforms = p6
+ platforms = infineon
[submodule "p6/wifi-mw-core"]
- path = third_party/p6/p6_sdk/libs/wifi-mw-core
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/wifi-mw-core
url = https://github.com/Infineon/wifi-mw-core
- platforms = p6
+ platforms = infineon
[submodule "p6/TARGET_CY8CKIT-062S2-43012"]
- path = third_party/p6/p6_sdk/libs/TARGET_CY8CKIT-062S2-43012
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/TARGET_CY8CKIT-062S2-43012
url = https://github.com/Infineon/TARGET_CY8CKIT-062S2-43012
- platforms = p6
+ platforms = infineon
[submodule "p6/freertos"]
- path = third_party/p6/p6_sdk/libs/freertos
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/freertos
url = https://github.com/Infineon/freertos
- platforms = p6
+ platforms = infineon
[submodule "p6/retarget-io"]
- path = third_party/p6/p6_sdk/libs/retarget-io
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/retarget-io
url = https://github.com/Infineon/retarget-io
- platforms = p6
+ platforms = infineon
[submodule "p6/mbedtls"]
- path = third_party/p6/p6_sdk/libs/mbedtls
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/mbedtls
url = https://github.com/ARMmbed/mbedtls
- platforms = p6
+ platforms = infineon
[submodule "p6/secure-sockets"]
- path = third_party/p6/p6_sdk/libs/secure-sockets
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/secure-sockets
url = https://github.com/Infineon/secure-sockets
- platforms = p6
+ platforms = infineon
[submodule "p6/recipe-make-cat1a"]
- path = third_party/p6/p6_sdk/libs/recipe-make-cat1a
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/recipe-make-cat1a
url = https://github.com/Infineon/recipe-make-cat1a
- platforms = p6
+ platforms = infineon
[submodule "third_party/pybind11/repo"]
path = third_party/pybind11/repo
url = https://github.com/pybind/pybind11
branch = stable
[submodule "p6/lwip"]
- path = third_party/p6/p6_sdk/libs/lwip
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/lwip
url = https://github.com/lwip-tcpip/lwip.git
- platforms = p6
+ platforms = infineon
[submodule "third_party/jsoncpp/repo"]
path = third_party/jsoncpp/repo
url = https://github.com/open-source-parsers/jsoncpp.git
[submodule "cyw30739_sdk/30739A0"]
- path = third_party/cyw30739_sdk/repos/30739A0
+ path = third_party/infineon/cyw30739_sdk/repos/30739A0
url = https://github.com/Infineon/OT-Matter-30739A0.git
- platforms = cyw30739
+ platforms = infineon
[submodule "cyw30739_sdk/include"]
- path = third_party/cyw30739_sdk/repos/btsdk-include
+ path = third_party/infineon/cyw30739_sdk/repos/btsdk-include
url = https://github.com/Infineon/btsdk-include.git
- platforms = cyw30739
+ platforms = infineon
[submodule "cyw30739_sdk/target"]
- path = third_party/cyw30739_sdk/repos/CYW930739M2EVB-01
+ path = third_party/infineon/cyw30739_sdk/repos/CYW930739M2EVB-01
url = https://github.com/Infineon/OT-Matter-TARGET_CYW930739M2EVB-01.git
- platforms = cyw30739
+ platforms = infineon
[submodule "cyw30739_sdk/tools"]
- path = third_party/cyw30739_sdk/repos/btsdk-tools
+ path = third_party/infineon/cyw30739_sdk/repos/btsdk-tools
url = https://github.com/Infineon/btsdk-tools.git
- platforms = cyw30739
+ platforms = infineon
[submodule "third_party/p6/p6_sdk/libs/anycloud-ota"]
- path = third_party/p6/p6_sdk/libs/anycloud-ota
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/anycloud-ota
url = https://github.com/Infineon/anycloud-ota
- platforms = p6
+ platforms = infineon
[submodule "third_party/mbed-mcu-boot/repo"]
path = third_party/mbed-mcu-boot/repo
url = https://github.com/ATmobica/mcuboot.git
platforms = mbed
[submodule "p6/serial-flash"]
- path = third_party/p6/p6_sdk/libs/serial-flash
+ path = third_party/infineon/psoc6/psoc6_sdk/libs/serial-flash
url = https://github.com/Infineon/serial-flash
- platforms = p6
+ platforms = infineon
[submodule "third_party/telink_sdk/repo"]
path = third_party/telink_sdk/repo
url = https://github.com/telink-semi/telink_b91_ble_single_connection_sdk_matter
diff --git a/.vscode/tasks.json b/.vscode/tasks.json
index 20aff730a74613..6dfc67d22b5457 100644
--- a/.vscode/tasks.json
+++ b/.vscode/tasks.json
@@ -331,6 +331,7 @@
"android-arm64-chip-tvserver",
"android-x64-chip-tool",
"android-x86-chip-tool",
+ "bl602-light",
"efr32-brd4161a-light",
"efr32-brd4163a-light",
"efr32-brd4164a-light",
diff --git a/BUILD.gn b/BUILD.gn
index a233ab272621c7..7dbbb83d3cc77b 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -271,8 +271,8 @@ if (current_toolchain != "${dir_pw_toolchain}/default:default") {
# Set this to true to enable efr32 builds by default.
enable_efr32_builds = false
- # Set this to true to enable p6 builds by default.
- enable_p6_builds = false
+ # Set this to true to enable psoc6 builds by default.
+ enable_psoc6_builds = false
# Set this to true to enable Qorvo qpg builds by default.
enable_qpg_builds = false
@@ -364,8 +364,8 @@ if (current_toolchain != "${dir_pw_toolchain}/default:default") {
# Build the efr32 lock app example.
enable_efr32_lock_app_build = enable_efr32_builds
- # Build the p6 lock app example.
- enable_p6_lock_app_build = enable_p6_builds
+ # Build the psoc6 lock app example.
+ enable_psoc6_lock_app_build = enable_psoc6_builds
# Build the qpgxxxx lock app example.
enable_qpg_lock_app_build = enable_qpg_builds && !is_debug
@@ -610,12 +610,12 @@ if (current_toolchain != "${dir_pw_toolchain}/default:default") {
extra_build_deps += [ ":efr32_lock_app" ]
}
- if (enable_p6_lock_app_build) {
- group("p6_lock_app") {
- deps = [ "${chip_root}/examples/lock-app/p6(${chip_root}/config/p6/toolchain:p6_lock_app)" ]
+ if (enable_psoc6_lock_app_build) {
+ group("psoc6_lock_app") {
+ deps = [ "${chip_root}/examples/lock-app/infineon/psoc6(${chip_root}/config/psoc6/toolchain:psoc6_lock_app)" ]
}
- extra_build_deps += [ ":p6_lock_app" ]
+ extra_build_deps += [ ":psoc6_lock_app" ]
}
if (enable_qpg_lock_app_build) {
diff --git a/build_overrides/p6.gni b/build_overrides/psoc6.gni
similarity index 75%
rename from build_overrides/p6.gni
rename to build_overrides/psoc6.gni
index 0ae9c543ee8456..a4fc95b53917c1 100644
--- a/build_overrides/p6.gni
+++ b/build_overrides/psoc6.gni
@@ -13,11 +13,11 @@
# limitations under the License.
declare_args() {
- # Root directory for p6 SDK build files.
- p6_sdk_build_root = "//third_party/p6"
+ # Root directory for psoc6 SDK build files.
+ psoc6_sdk_build_root = "//third_party/infineon/psoc6"
}
declare_args() {
- # Root directory for p6 SDK sources.
- p6_sdk_root = "${p6_sdk_build_root}/p6_sdk"
+ # Root directory for psoc6 SDK sources.
+ psoc6_sdk_root = "${psoc6_sdk_build_root}/psoc6_sdk"
}
diff --git a/config/esp32/components/chip/Kconfig b/config/esp32/components/chip/Kconfig
index 4a6cc6dd6e889e..55cafa1c8a07a8 100644
--- a/config/esp32/components/chip/Kconfig
+++ b/config/esp32/components/chip/Kconfig
@@ -387,6 +387,7 @@ menu "CHIP Device Layer"
menu "WiFi AP Options"
config ENABLE_WIFI_AP
+ depends on ESP_WIFI_SOFTAP_SUPPORT
bool "Enable CHIP WIFI AP"
default y
help
diff --git a/config/p6/toolchain/BUILD.gn b/config/psoc6/toolchain/BUILD.gn
similarity index 88%
rename from config/p6/toolchain/BUILD.gn
rename to config/psoc6/toolchain/BUILD.gn
index 219ae1bf1102ed..542012522ea8cb 100644
--- a/config/p6/toolchain/BUILD.gn
+++ b/config/psoc6/toolchain/BUILD.gn
@@ -17,9 +17,9 @@ import("//build_overrides/chip.gni")
import("${build_root}/toolchain/arm_gcc/arm_toolchain.gni")
-arm_toolchain("p6_lock_app") {
+arm_toolchain("psoc6_lock_app") {
toolchain_args = {
current_os = "freertos"
- import("${chip_root}/examples/lock-app/p6/args.gni")
+ import("${chip_root}/examples/lock-app/infineon/psoc6/args.gni")
}
}
diff --git a/docs/guides/BUILDING.md b/docs/guides/BUILDING.md
index 5bcd865ca5db1b..00bf6d97a581f9 100644
--- a/docs/guides/BUILDING.md
+++ b/docs/guides/BUILDING.md
@@ -8,7 +8,7 @@ Tested on:
- macOS 10.15
- Debian 11
-- Ubuntu 20.04 LTS
+- Ubuntu 22.04 LTS
Build system features:
@@ -81,9 +81,8 @@ dependency.
### Installing prerequisites on Raspberry Pi 4
-Using `rpi-imager`, install the Ubuntu _21.04_ 64-bit _server_ OS for arm64
-architectures on a micro SD card. This release will have bluez 5.55 or newer
-which is required for BLE functionality.
+Using `rpi-imager`, install the Ubuntu _22.04_ 64-bit _server_ OS for arm64
+architectures on a micro SD card.
Boot the SD card, login with the default user account "ubuntu" and password
"ubuntu", then proceed with
diff --git a/docs/guides/README.md b/docs/guides/README.md
index 34b71306f7aedd..44d0a8dc9fcb4a 100644
--- a/docs/guides/README.md
+++ b/docs/guides/README.md
@@ -4,7 +4,8 @@
- [Android - Building](./android_building.md)
- [Apple - Testing with iPhone, iPad, macOS, Apple TV, HomePod, Watch, etc](./darwin.md)
-- [Infineon - Software Update](./infineon_p6_software_update.md)
+- [Espressif (ESP32) - Getting Started Guide](./esp32/README.md)
+- [Infineon PSoC6 - Software Update](./infineon_psoc6_software_update.md)
- [Linux - Simulated Devices](./simulated_device_linux.md)
- [mbedOS - Adding a new target](./mbedos_add_new_target.md)
- [mbedOS - Commissioning](./mbedos_commissioning.md)
diff --git a/docs/guides/darwin.md b/docs/guides/darwin.md
index 2d9443d70a6d0a..b28a9925d53cd0 100644
--- a/docs/guides/darwin.md
+++ b/docs/guides/darwin.md
@@ -205,7 +205,6 @@ requirements
##### Guides
- [Bouffalo Lab](/examples/lighting-app/bouffalolab/bl602/README.md)
-- [CYW30739 Lighting](/examples/lighting-app/cyw30739/README.md)
- [EFR32 Window Covering](/examples/window-app/efr32/README.md)
- [ESP32 All Clusters](/examples/all-clusters-app/esp32/README.md)
- [ESP32 Lighting](/examples/lighting-app/esp32/README.md)
@@ -215,7 +214,8 @@ requirements
- [nRF Connect Pump](/examples/pump-app/nrfconnect/README.md)
- [NXP Examples](./nxp_imx8m_linux_examples.md)
- [NXP](/examples/all-clusters-app/nxp/mw320/README.md)
-- [P6](/examples/all-clusters-app/p6/README.md)
+- [Infineon CYW30739 Lighting](/examples/lighting-app/infineon/cyw30739/README.md)
+- [Infineon PSoC6](/examples/all-clusters-app/infineon/psoc6/README.md)
- [Qorvo](/examples/lighting-app/qpg/README.md)
- [SiliconLabs](./silabs_efr32_building.md)
- [Simulated Linux](./simulated_device_linux.md)
diff --git a/docs/guides/esp32/README.md b/docs/guides/esp32/README.md
index f73718941a5067..0cdead51a8c289 100644
--- a/docs/guides/esp32/README.md
+++ b/docs/guides/esp32/README.md
@@ -1,7 +1,10 @@
-## ESP32 Guides
+## Espressif (ESP32) Getting Started Guide
---
+Please follow the steps below to create and test a fully functional Matter
+example on ESP32 series of SoCs
+
- [Setup ESP-IDF and CHIP Environment](setup_idf_chip.md)
- [Using factory data from NVS](factory_data.md)
- [Building and commissioning the application](build_app_and_commission.md)
diff --git a/docs/guides/infineon_p6_software_update.md b/docs/guides/infineon_psoc6_software_update.md
similarity index 75%
rename from docs/guides/infineon_p6_software_update.md
rename to docs/guides/infineon_psoc6_software_update.md
index 136f577dfb6301..7cddc020c6c417 100644
--- a/docs/guides/infineon_p6_software_update.md
+++ b/docs/guides/infineon_psoc6_software_update.md
@@ -1,8 +1,8 @@
-# Matter Software Update with Infineon P6 example applications
+# Matter Software Update with Infineon PSoC6 example applications
The Over The Air (OTA) Software Update functionality can be added to any of the
-Infineon P6 example applications by passing the `chip_enable_ota_requestor=true`
-option to the build script.
+Infineon PSoC6 example applications by passing the
+`chip_enable_ota_requestor=true` option to the build script.
## Running the OTA Download scenario
@@ -11,7 +11,7 @@ option to the build script.
OTA Requestor is any node that needs to be updated and can communicate with
the OTA Provider to fetch applicable software updates. In the procedure
described below, the OTA Provider will be a Linux application and the
- example running on the Infineon P6 board will work as the OTA Requestor.
+ example running on the Infineon PSoC6 board will work as the OTA Requestor.
- On a Linux or Darwin platform build the chip-tool and the ota-provider-app
as follows:
@@ -21,33 +21,33 @@ option to the build script.
scripts/examples/gn_build_example.sh examples/ota-provider-app/linux out/debug chip_config_network_layer_ble=false
```
-- Build the P6 OTA Requestor application from the chip root dir:
+- Build the PSoC6 OTA Requestor application from the chip root dir:
```
- $ scripts/build/build_examples.py --enable-flashbundle --target infineon-p6-lock-ota build
- $ third_party/p6/p6_sdk/ota/ota_base_build.sh out/infineon-p6-lock-ota chip-p6-lock-example
+ $ scripts/build/build_examples.py --enable-flashbundle --target infineon-psoc6-lock-ota build
+ $ third_party/psoc6/psoc6_sdk/ota/ota_base_build.sh out/infineon-psoc6-lock-ota chip-psoc6-lock-example
```
-- Build the P6 OTA Update application from the chip root dir and create OTA
+- Build the PSoC6 OTA Update application from the chip root dir and create OTA
file
```
- $ scripts/build/build_examples.py --enable-flashbundle --no-log-timestamps --target infineon-p6-lock-ota-updateimage build
- $ third_party/p6/p6_sdk/ota/ota_update_build.sh out/infineon-p6-lock-ota-updateimage chip-p6-lock-example
+ $ scripts/build/build_examples.py --enable-flashbundle --no-log-timestamps --target infineon-psoc6-lock-ota-updateimage build
+ $ third_party/psoc6/psoc6_sdk/ota/ota_update_build.sh out/infineon-psoc6-lock-ota-updateimage chip-psoc6-lock-example
```
* Additionally a pre-compiled bootloader must be flashed to the board using
[Cypress Programmer](https://softwaretools.infineon.com/tools/com.ifx.tb.tool.cypressprogrammer).
This image can be found at:
- $ ./third_party/p6/p6_sdk/ota/matter-psoc6-mcuboot-bootloader.hex
+ $ ./third_party/psoc6/psoc6_sdk/ota/matter-psoc6-mcuboot-bootloader.hex
* In a terminal start the Provider app passing to it the path to the Matter
OTA file created in the previous step:(output of ota_update_build step)
```
rm -r /tmp/chip_*
- ./out/debug/chip-ota-provider-app -f chip-p6-lock-example.ota
+ ./out/debug/chip-ota-provider-app -f chip-psoc6-lock-example.ota
```
* In a separate terminal run the chip-tool commands to provision the Provider:
diff --git a/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter b/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter
index e177c7a6cbb599..96c706ad0ed1fe 100644
--- a/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter
+++ b/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter
@@ -1520,12 +1520,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
@@ -3827,6 +3827,39 @@ server cluster TestCluster = 4294048773 {
command TestEmitTestFabricScopedEventRequest(TestEmitTestFabricScopedEventRequestRequest): TestEmitTestFabricScopedEventResponse = 21;
}
+server cluster FaultInjection = 4294048774 {
+ enum FaultType : ENUM8 {
+ kUnspecified = 0;
+ kSystemFault = 1;
+ kInetFault = 2;
+ kChipFault = 3;
+ kCertFault = 4;
+ }
+
+ readonly attribute command_id generatedCommandList[] = 65528;
+ readonly attribute command_id acceptedCommandList[] = 65529;
+ readonly attribute attrib_id attributeList[] = 65531;
+ readonly attribute bitmap32 featureMap = 65532;
+ readonly attribute int16u clusterRevision = 65533;
+
+ request struct FailAtFaultRequest {
+ FaultType type = 0;
+ INT32U id = 1;
+ INT32U numCallsToSkip = 2;
+ INT32U numCallsToFail = 3;
+ BOOLEAN takeMutex = 4;
+ }
+
+ request struct FailRandomlyAtFaultRequest {
+ FaultType type = 0;
+ INT32U id = 1;
+ INT8U percentage = 2;
+ }
+
+ command access(invoke: manage) FailAtFault(FailAtFaultRequest): DefaultSuccess = 0;
+ command access(invoke: manage) FailRandomlyAtFault(FailRandomlyAtFaultRequest): DefaultSuccess = 1;
+}
+
endpoint 0 {
device type rootdevice = 22;
binding cluster OtaSoftwareUpdateProvider;
@@ -4145,6 +4178,14 @@ endpoint 0 {
ram attribute featureMap;
ram attribute clusterRevision default = 3;
}
+
+ server cluster FaultInjection {
+ callback attribute generatedCommandList;
+ callback attribute acceptedCommandList;
+ callback attribute attributeList;
+ ram attribute featureMap;
+ ram attribute clusterRevision default = 1;
+ }
}
endpoint 1 {
device type onofflight = 256;
diff --git a/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap b/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap
index 89133045cc89c6..a77c6e149bdbb6 100644
--- a/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap
+++ b/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap
@@ -8445,6 +8445,156 @@
"reportableChange": 0
}
]
+ },
+ {
+ "name": "Fault Injection",
+ "code": 4294048774,
+ "mfgCode": null,
+ "define": "FAULT_INJECTION_CLUSTER",
+ "side": "client",
+ "enabled": 0,
+ "commands": [
+ {
+ "name": "FailAtFault",
+ "code": 0,
+ "mfgCode": null,
+ "source": "client",
+ "incoming": 1,
+ "outgoing": 1
+ },
+ {
+ "name": "FailRandomlyAtFault",
+ "code": 1,
+ "mfgCode": null,
+ "source": "client",
+ "incoming": 1,
+ "outgoing": 0
+ }
+ ],
+ "attributes": [
+ {
+ "name": "FeatureMap",
+ "code": 65532,
+ "mfgCode": null,
+ "side": "client",
+ "type": "bitmap32",
+ "included": 1,
+ "storageOption": "RAM",
+ "singleton": 0,
+ "bounded": 0,
+ "defaultValue": "0",
+ "reportable": 1,
+ "minInterval": 1,
+ "maxInterval": 65534,
+ "reportableChange": 0
+ },
+ {
+ "name": "ClusterRevision",
+ "code": 65533,
+ "mfgCode": null,
+ "side": "client",
+ "type": "int16u",
+ "included": 1,
+ "storageOption": "RAM",
+ "singleton": 0,
+ "bounded": 0,
+ "defaultValue": "1",
+ "reportable": 1,
+ "minInterval": 1,
+ "maxInterval": 65534,
+ "reportableChange": 0
+ }
+ ]
+ },
+ {
+ "name": "Fault Injection",
+ "code": 4294048774,
+ "mfgCode": null,
+ "define": "FAULT_INJECTION_CLUSTER",
+ "side": "server",
+ "enabled": 1,
+ "attributes": [
+ {
+ "name": "GeneratedCommandList",
+ "code": 65528,
+ "mfgCode": null,
+ "side": "server",
+ "type": "array",
+ "included": 1,
+ "storageOption": "External",
+ "singleton": 0,
+ "bounded": 0,
+ "defaultValue": "",
+ "reportable": 1,
+ "minInterval": 1,
+ "maxInterval": 65534,
+ "reportableChange": 0
+ },
+ {
+ "name": "AcceptedCommandList",
+ "code": 65529,
+ "mfgCode": null,
+ "side": "server",
+ "type": "array",
+ "included": 1,
+ "storageOption": "External",
+ "singleton": 0,
+ "bounded": 0,
+ "defaultValue": "",
+ "reportable": 1,
+ "minInterval": 1,
+ "maxInterval": 65534,
+ "reportableChange": 0
+ },
+ {
+ "name": "AttributeList",
+ "code": 65531,
+ "mfgCode": null,
+ "side": "server",
+ "type": "array",
+ "included": 1,
+ "storageOption": "External",
+ "singleton": 0,
+ "bounded": 0,
+ "defaultValue": "",
+ "reportable": 1,
+ "minInterval": 1,
+ "maxInterval": 65534,
+ "reportableChange": 0
+ },
+ {
+ "name": "FeatureMap",
+ "code": 65532,
+ "mfgCode": null,
+ "side": "server",
+ "type": "bitmap32",
+ "included": 1,
+ "storageOption": "RAM",
+ "singleton": 0,
+ "bounded": 0,
+ "defaultValue": "0",
+ "reportable": 1,
+ "minInterval": 1,
+ "maxInterval": 65534,
+ "reportableChange": 0
+ },
+ {
+ "name": "ClusterRevision",
+ "code": 65533,
+ "mfgCode": null,
+ "side": "server",
+ "type": "int16u",
+ "included": 1,
+ "storageOption": "RAM",
+ "singleton": 0,
+ "bounded": 0,
+ "defaultValue": "1",
+ "reportable": 1,
+ "minInterval": 1,
+ "maxInterval": 65534,
+ "reportableChange": 0
+ }
+ ]
}
]
},
diff --git a/examples/all-clusters-app/esp32/main/CMakeLists.txt b/examples/all-clusters-app/esp32/main/CMakeLists.txt
index 7c33a523e965bb..f8ea390ec05a99 100644
--- a/examples/all-clusters-app/esp32/main/CMakeLists.txt
+++ b/examples/all-clusters-app/esp32/main/CMakeLists.txt
@@ -23,6 +23,7 @@ set(PRIV_INCLUDE_DIRS_LIST
"${CMAKE_CURRENT_LIST_DIR}/include"
"${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers"
"${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/platform/esp32"
+ "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/third_party/nlfaultinjection/repo/include"
)
set(SRC_DIRS_LIST
"${CMAKE_CURRENT_LIST_DIR}"
@@ -41,6 +42,7 @@ set(SRC_DIRS_LIST
"${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/clusters/application-basic-server"
"${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/clusters/test-cluster-server"
"${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/clusters/descriptor"
+ "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/clusters/fault-injection-server"
"${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/clusters/fan-control-server"
"${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/clusters/fixed-label-server"
"${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/clusters/user-label-server"
diff --git a/examples/all-clusters-app/esp32/main/Kconfig.projbuild b/examples/all-clusters-app/esp32/main/Kconfig.projbuild
index 8791a80a443e71..dbf11ecaab5a57 100644
--- a/examples/all-clusters-app/esp32/main/Kconfig.projbuild
+++ b/examples/all-clusters-app/esp32/main/Kconfig.projbuild
@@ -53,6 +53,7 @@ menu "Demo"
config RENDEZVOUS_MODE_SOFTAP
bool "Soft-AP"
+ select ESP_WIFI_SOFTAP_SUPPORT
config RENDEZVOUS_MODE_BLE
bool "BLE"
depends on BT_ENABLED
@@ -60,17 +61,11 @@ menu "Demo"
bool "On-Network"
config RENDEZVOUS_MODE_SOFTAP_ON_NETWORK
bool "Soft-AP / On-Network"
+ select ESP_WIFI_SOFTAP_SUPPORT
config RENDEZVOUS_MODE_BLE_ON_NETWORK
bool "BLE / On-Network"
endchoice
- config ECHO_HOST_IP
- string "IPV4 address"
- default "127.0.0.1"
- depends on USE_ECHO_CLIENT
- help
- The IPV4 Address of the ECHO Server.
-
# NOTE: This config is not displayed as a input in the Kconfig menu, as its value is
# entirely derived from the Device Type choice. However the CONFIG_EXAMPLE_DISPLAY_TYPE
# define that is produced is needed to configure the TFT library correctly.
diff --git a/examples/all-clusters-app/esp32/sdkconfig.defaults b/examples/all-clusters-app/esp32/sdkconfig.defaults
index 5f996f40946d68..a9c28a1a863a25 100644
--- a/examples/all-clusters-app/esp32/sdkconfig.defaults
+++ b/examples/all-clusters-app/esp32/sdkconfig.defaults
@@ -53,3 +53,6 @@ CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT=y
# Serial Flasher config
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="4MB"
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/all-clusters-app/p6/.gn b/examples/all-clusters-app/infineon/psoc6/.gn
similarity index 100%
rename from examples/all-clusters-app/p6/.gn
rename to examples/all-clusters-app/infineon/psoc6/.gn
diff --git a/examples/all-clusters-app/p6/BUILD.gn b/examples/all-clusters-app/infineon/psoc6/BUILD.gn
similarity index 79%
rename from examples/all-clusters-app/p6/BUILD.gn
rename to examples/all-clusters-app/infineon/psoc6/BUILD.gn
index 1fa873956a4830..a92d8fb969e171 100644
--- a/examples/all-clusters-app/p6/BUILD.gn
+++ b/examples/all-clusters-app/infineon/psoc6/BUILD.gn
@@ -14,17 +14,17 @@
import("//build_overrides/build.gni")
import("//build_overrides/chip.gni")
-import("//build_overrides/p6.gni")
+import("//build_overrides/psoc6.gni")
import("${build_root}/config/defaults.gni")
import("${chip_root}/src/platform/device.gni")
-import("${p6_sdk_build_root}/p6_executable.gni")
-import("${p6_sdk_build_root}/p6_sdk.gni")
+import("${psoc6_sdk_build_root}/psoc6_executable.gni")
+import("${psoc6_sdk_build_root}/psoc6_sdk.gni")
assert(current_os == "freertos")
-p6_project_dir = "${chip_root}/examples/all-clusters-app/p6"
-examples_plat_dir = "${chip_root}/examples/platform/p6"
+psoc6_project_dir = "${chip_root}/examples/all-clusters-app/infineon/psoc6"
+examples_plat_dir = "${chip_root}/examples/platform/infineon/psoc6"
declare_args() {
# Dump memory usage at link time.
@@ -40,8 +40,8 @@ declare_args() {
build_update_image = false
}
-config("p6_ota_config") {
- linker_script = "${p6_sdk_root}/ota/cy8c6xxa_cm4_dual_ota_int.ld"
+config("psoc6_ota_config") {
+ linker_script = "${psoc6_sdk_root}/ota/cy8c6xxa_cm4_dual_ota_int.ld"
ldflags = [ "-T" + rebase_path(linker_script, root_build_dir) ]
@@ -78,38 +78,39 @@ config("p6_ota_config") {
}
}
-p6_sdk_sources("all_clusters_app_sdk_sources") {
+psoc6_sdk_sources("all_clusters_app_sdk_sources") {
include_dirs = [
- "${chip_root}/src/platform/P6",
- "${p6_project_dir}/include",
+ "${chip_root}/src/platform/PSOC6",
+ "${psoc6_project_dir}/include",
"${examples_plat_dir}",
]
defines = [
- "BOARD_ID=${p6_board}",
+ "BOARD_ID=${psoc6_board}",
"P6_LOG_ENABLED=1",
"CHIP_DEVICE_CONFIG_USE_TEST_SETUP_PIN_CODE=${setup_pin_code}",
]
- sources = [ "${p6_project_dir}/include/CHIPProjectConfig.h" ]
+ sources = [ "${psoc6_project_dir}/include/CHIPProjectConfig.h" ]
- public_configs = [ "${chip_root}/third_party/p6:p6_sdk_config" ]
+ public_configs =
+ [ "${chip_root}/third_party/infineon/psoc6:psoc6_sdk_config" ]
if (chip_enable_ota_requestor) {
- public_configs += [ ":p6_ota_config" ]
+ public_configs += [ ":psoc6_ota_config" ]
}
}
-p6_executable("clusters_app") {
+psoc6_executable("clusters_app") {
include_dirs = []
defines = []
- output_name = "chip-p6-clusters-example.out"
+ output_name = "chip-psoc6-clusters-example.out"
sources = [
"${chip_root}/examples/all-clusters-app/all-clusters-common/src/bridged-actions-stub.cpp",
"${chip_root}/examples/all-clusters-app/all-clusters-common/src/static-supported-modes-manager.cpp",
"${examples_plat_dir}/LEDWidget.cpp",
- "${examples_plat_dir}/init_p6Platform.cpp",
+ "${examples_plat_dir}/init_psoc6Platform.cpp",
"src/AppTask.cpp",
"src/ButtonHandler.cpp",
"src/ClusterManager.cpp",
@@ -129,7 +130,7 @@ p6_executable("clusters_app") {
include_dirs += [
"include",
"${examples_plat_dir}",
- "${p6_project_dir}/include",
+ "${psoc6_project_dir}/include",
"${chip_root}/examples/all-clusters-app/all-clusters-common/include",
]
@@ -150,10 +151,10 @@ p6_executable("clusters_app") {
output_dir = root_out_dir
}
-group("p6") {
+group("psoc6") {
deps = [ ":clusters_app" ]
}
group("default") {
- deps = [ ":p6" ]
+ deps = [ ":psoc6" ]
}
diff --git a/examples/all-clusters-app/p6/README.md b/examples/all-clusters-app/infineon/psoc6/README.md
similarity index 75%
rename from examples/all-clusters-app/p6/README.md
rename to examples/all-clusters-app/infineon/psoc6/README.md
index d218c24c97dc46..c28c43d9c3f248 100644
--- a/examples/all-clusters-app/p6/README.md
+++ b/examples/all-clusters-app/infineon/psoc6/README.md
@@ -1,10 +1,10 @@
-#CHIP P6 All Clusters Example
+#CHIP PSoC6 All Clusters Example
An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
-- [Matter P6 All Clusters Example](#chip-p6-clusters-example)
+- [Matter PSoC6 All Clusters Example](#chip-psoc6-clusters-example)
- [Introduction](#introduction)
- [Building](#building)
- [Flashing the Application](#flashing-the-application)
@@ -20,13 +20,13 @@ An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
## Introduction
-The P6 clusters example provides a baseline demonstration of a Cluster control
-device, built using Matter and the Infineon Modustoolbox SDK. It can be
+The PSoC6 clusters example provides a baseline demonstration of a Cluster
+control device, built using Matter and the Infineon Modustoolbox SDK. It can be
controlled by Matter controller over Wi-Fi network.
-The P6 device can be commissioned over Bluetooth Low Energy where the device and
-the Matter controller will exchange security information with the Rendezvous
-procedure. Wi-Fi Network credentials are then provided to the P6 device which
+The PSoC6 device can be commissioned over Bluetooth Low Energy where the device
+and the Matter controller will exchange security information with the Rendezvous
+procedure. Wi-Fi Network credentials are then provided to the PSoC6 device which
will then join the network.
@@ -36,8 +36,8 @@ will then join the network.
- [Modustoolbox Software](https://www.cypress.com/products/modustoolbox)
Refer to `integrations/docker/images/chip-build-infineon/Dockerfile` or
- `scripts/examples/gn_p6_example.sh` for downloading the Software and related
- tools.
+ `scripts/examples/gn_psoc6_example.sh` for downloading the Software and
+ related tools.
- Install some additional tools (likely already present for Matter
developers):
@@ -54,7 +54,7 @@ will then join the network.
* Build the example application:
$ source scripts/activate.sh
- $ scripts/build/build_examples.py --no-log-timestamps --target 'infineon-p6-all-clusters' build
+ $ scripts/build/build_examples.py --no-log-timestamps --target 'infineon-psoc6-all-clusters' build
- To delete generated executable, libraries and object files use:
@@ -72,7 +72,7 @@ will then join the network.
- On the command line:
$ cd ~/connectedhomeip
- $ python3 out/infineon-p6-all-clusters/chip-p6-clusters-example.flash.py
+ $ python3 out/infineon-psoc6-all-clusters/chip-psoc6-clusters-example.flash.py
@@ -84,7 +84,7 @@ Commissioning can be carried out using BLE.
### Setting up Chip tool
-Once P6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
+Once PSoC6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
perform commissioning and cluster control.
- Set up python controller.
@@ -125,6 +125,6 @@ commands. These power cycle the BlueTooth hardware and disable BR/EDR mode.
## OTA Software Update
-For the description of Software Update process with infineon P6 example
+For the description of Software Update process with infineon PSoC6 example
applications see
-[Infineon P6 OTA Software Update](../../../docs/guides/infineon_p6_software_update.md)
+[Infineon PSoC6 OTA Software Update](../../../../docs/guides/infineon_psoc6_software_update.md)
diff --git a/examples/all-clusters-app/p6/args.gni b/examples/all-clusters-app/infineon/psoc6/args.gni
similarity index 89%
rename from examples/all-clusters-app/p6/args.gni
rename to examples/all-clusters-app/infineon/psoc6/args.gni
index 2a93385cf36bd6..ce7a2ab93e794d 100644
--- a/examples/all-clusters-app/p6/args.gni
+++ b/examples/all-clusters-app/infineon/psoc6/args.gni
@@ -14,7 +14,7 @@
import("//build_overrides/chip.gni")
import("//build_overrides/pigweed.gni")
-import("${chip_root}/src/platform/P6/args.gni")
+import("${chip_root}/src/platform/Infineon/PSOC6/args.gni")
-p6_target_project =
+psoc6_target_project =
get_label_info(":all_clusters_app_sdk_sources", "label_no_toolchain")
diff --git a/examples/all-clusters-app/infineon/psoc6/build_overrides b/examples/all-clusters-app/infineon/psoc6/build_overrides
new file mode 120000
index 00000000000000..ee19c065d619a2
--- /dev/null
+++ b/examples/all-clusters-app/infineon/psoc6/build_overrides
@@ -0,0 +1 @@
+../../../build_overrides/
\ No newline at end of file
diff --git a/examples/all-clusters-app/p6/include/AppConfig.h b/examples/all-clusters-app/infineon/psoc6/include/AppConfig.h
similarity index 93%
rename from examples/all-clusters-app/p6/include/AppConfig.h
rename to examples/all-clusters-app/infineon/psoc6/include/AppConfig.h
index 8e9ebe286ef421..bffd31f0d8a23b 100644
--- a/examples/all-clusters-app/p6/include/AppConfig.h
+++ b/examples/all-clusters-app/infineon/psoc6/include/AppConfig.h
@@ -28,8 +28,11 @@
#define APP_TASK_NAME "APP"
#define APP_LIGHT_BUTTON_IDX 0
+#define APP_FUNCTION_BUTTON_IDX 1
+
#define APP_LIGHT_BUTTON CYBSP_USER_BTN1
-#define APP_BUTTON_DEBOUNCE_PERIOD_MS 50
+#define APP_FUNCTION_BUTTON CYBSP_USER_BTN2
+#define APP_BUTTON_DEBOUNCE_PERIOD_MS 200
#define APP_BUTTON_PRESSED 0
#define APP_BUTTON_RELEASED 1
diff --git a/examples/all-clusters-app/p6/include/AppEvent.h b/examples/all-clusters-app/infineon/psoc6/include/AppEvent.h
similarity index 100%
rename from examples/all-clusters-app/p6/include/AppEvent.h
rename to examples/all-clusters-app/infineon/psoc6/include/AppEvent.h
diff --git a/examples/all-clusters-app/p6/include/AppTask.h b/examples/all-clusters-app/infineon/psoc6/include/AppTask.h
similarity index 82%
rename from examples/all-clusters-app/p6/include/AppTask.h
rename to examples/all-clusters-app/infineon/psoc6/include/AppTask.h
index 499de504d53ee6..9fade8c82356bf 100644
--- a/examples/all-clusters-app/p6/include/AppTask.h
+++ b/examples/all-clusters-app/infineon/psoc6/include/AppTask.h
@@ -54,8 +54,22 @@ class AppTask
CHIP_ERROR Init();
static AppTask sAppTask;
+ void CancelTimer(void);
void DispatchEvent(AppEvent * event);
+ static void FunctionTimerEventHandler(AppEvent * event);
+ static void FunctionHandler(AppEvent * event);
+ static void TimerEventHandler(TimerHandle_t timer);
static void OnOffUpdateClusterState(intptr_t context);
+ void StartTimer(uint32_t aTimeoutMs);
+
+ enum class Function
+ {
+ kNoneSelected = 0,
+ kFactoryReset = 1,
+ kInvalid
+ };
+ Function mFunction = Function::kNoneSelected;
+ bool mFunctionTimerActive = false;
};
inline AppTask & GetAppTask(void)
diff --git a/examples/all-clusters-minimal-app/p6/include/ButtonHandler.h b/examples/all-clusters-app/infineon/psoc6/include/ButtonHandler.h
similarity index 93%
rename from examples/all-clusters-minimal-app/p6/include/ButtonHandler.h
rename to examples/all-clusters-app/infineon/psoc6/include/ButtonHandler.h
index a4128c68f86f0e..ac4d795d64280e 100644
--- a/examples/all-clusters-minimal-app/p6/include/ButtonHandler.h
+++ b/examples/all-clusters-app/infineon/psoc6/include/ButtonHandler.h
@@ -36,5 +36,6 @@ class ButtonHandler
private:
static void GpioInit(void);
static void light_button_callback(void * handler_arg, cyhal_gpio_event_t event);
+ static void func_button_callback(void * handler_arg, cyhal_gpio_event_t event);
static void TimerCallback(TimerHandle_t xTimer);
};
diff --git a/examples/all-clusters-app/p6/include/CHIPProjectConfig.h b/examples/all-clusters-app/infineon/psoc6/include/CHIPProjectConfig.h
similarity index 100%
rename from examples/all-clusters-app/p6/include/CHIPProjectConfig.h
rename to examples/all-clusters-app/infineon/psoc6/include/CHIPProjectConfig.h
diff --git a/examples/all-clusters-app/p6/include/ClusterManager.h b/examples/all-clusters-app/infineon/psoc6/include/ClusterManager.h
similarity index 100%
rename from examples/all-clusters-app/p6/include/ClusterManager.h
rename to examples/all-clusters-app/infineon/psoc6/include/ClusterManager.h
diff --git a/examples/all-clusters-app/p6/src/AppTask.cpp b/examples/all-clusters-app/infineon/psoc6/src/AppTask.cpp
similarity index 72%
rename from examples/all-clusters-app/p6/src/AppTask.cpp
rename to examples/all-clusters-app/infineon/psoc6/src/AppTask.cpp
index 584b4cbed491d7..4e0d1c8cf731e8 100644
--- a/examples/all-clusters-app/p6/src/AppTask.cpp
+++ b/examples/all-clusters-app/infineon/psoc6/src/AppTask.cpp
@@ -42,7 +42,7 @@
#include
#include
-#include
+#include
/* OTA related includes */
#if CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
@@ -50,7 +50,7 @@
#include
#include
#include
-#include
+#include
using chip::BDXDownloader;
using chip::CharSpan;
@@ -72,12 +72,14 @@ using namespace ::chip::System;
#define APP_EVENT_QUEUE_SIZE 10
#define APP_TASK_STACK_SIZE (4096)
#define APP_WAIT_LOOP 1000
+#define FACTORY_RESET_CANCEL_WINDOW_TIMEOUT 5000
LEDWidget sStatusLED;
LEDWidget sLightLED;
LEDWidget sClusterLED;
namespace {
+TimerHandle_t sFunctionTimer; // FreeRTOS app sw timer.
TaskHandle_t sAppTaskHandle;
QueueHandle_t sAppEventQueue;
@@ -184,6 +186,18 @@ CHIP_ERROR AppTask::Init()
// Initialise WSTK buttons PB0 and PB1 (including debounce).
ButtonHandler::Init();
+ // Create FreeRTOS sw timer for Function Selection.
+ sFunctionTimer = xTimerCreate("FnTmr", // Just a text name, not used by the RTOS kernel
+ 1, // == default timer period (mS)
+ false, // no timer reload (==one-shot)
+ (void *) this, // init timer id = app task obj context
+ TimerEventHandler // timer callback handler
+ );
+ if (sFunctionTimer == NULL)
+ {
+ P6_LOG("funct timer create failed");
+ appError(APP_ERROR_CREATE_TIMER_FAILED);
+ }
NetWorkCommissioningInstInit();
P6_LOG("Current Software Version: %s", CHIP_DEVICE_CONFIG_DEVICE_SOFTWARE_VERSION_STRING);
@@ -234,7 +248,7 @@ void AppTask::LightActionEventHandler(AppEvent * event)
void AppTask::ButtonEventHandler(uint8_t btnIdx, uint8_t btnAction)
{
- if (btnIdx != APP_LIGHT_BUTTON_IDX)
+ if (btnIdx != APP_LIGHT_BUTTON_IDX && btnIdx != APP_FUNCTION_BUTTON_IDX)
{
return;
}
@@ -244,11 +258,106 @@ void AppTask::ButtonEventHandler(uint8_t btnIdx, uint8_t btnAction)
button_event.ButtonEvent.ButtonIdx = btnIdx;
button_event.ButtonEvent.Action = btnAction;
- if ((btnIdx == APP_LIGHT_BUTTON_IDX) && (btnAction == APP_BUTTON_RELEASED))
+ if (btnIdx == APP_LIGHT_BUTTON_IDX)
{
button_event.Handler = LightActionEventHandler;
sAppTask.PostEvent(&button_event);
}
+ else if (btnIdx == APP_FUNCTION_BUTTON_IDX)
+ {
+ button_event.Handler = FunctionHandler;
+ sAppTask.PostEvent(&button_event);
+ }
+}
+
+void AppTask::TimerEventHandler(TimerHandle_t timer)
+{
+ AppEvent event;
+ event.Type = AppEvent::kEventType_Timer;
+ event.TimerEvent.Context = (void *) timer;
+ event.Handler = FunctionTimerEventHandler;
+ sAppTask.PostEvent(&event);
+}
+
+void AppTask::FunctionTimerEventHandler(AppEvent * event)
+{
+ if (event->Type != AppEvent::kEventType_Timer)
+ {
+ return;
+ }
+
+ if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
+ {
+ // Actually trigger Factory Reset
+ sAppTask.mFunction = Function::kNoneSelected;
+ chip::Server::GetInstance().ScheduleFactoryReset();
+ }
+}
+
+void AppTask::FunctionHandler(AppEvent * event)
+{
+ if (event->ButtonEvent.Action == APP_BUTTON_PRESSED)
+ {
+ if (!sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kNoneSelected)
+ {
+ P6_LOG("Factory Reset Triggered. Press button again within %us to cancel.", FACTORY_RESET_CANCEL_WINDOW_TIMEOUT / 1000);
+ // Start timer for FACTORY_RESET_CANCEL_WINDOW_TIMEOUT to allow user to
+ // cancel, if required.
+ sAppTask.StartTimer(FACTORY_RESET_CANCEL_WINDOW_TIMEOUT);
+
+ sAppTask.mFunction = Function::kFactoryReset;
+
+ // Turn off all LEDs before starting blink to make sure blink is
+ // co-ordinated.
+ sStatusLED.Set(false);
+ sLightLED.Set(false);
+
+ sStatusLED.Blink(500);
+ sLightLED.Blink(500);
+ }
+ else if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
+ {
+
+ sAppTask.CancelTimer();
+
+ // Change the function to none selected since factory reset has been
+ // canceled.
+ sAppTask.mFunction = Function::kNoneSelected;
+
+ P6_LOG("Factory Reset has been Canceled");
+ }
+ }
+}
+
+void AppTask::CancelTimer()
+{
+ if (xTimerStop(sFunctionTimer, 0) == pdFAIL)
+ {
+ P6_LOG("app timer stop() failed");
+ appError(APP_ERROR_STOP_TIMER_FAILED);
+ }
+
+ mFunctionTimerActive = false;
+}
+
+void AppTask::StartTimer(uint32_t aTimeoutInMs)
+{
+ if (xTimerIsTimerActive(sFunctionTimer))
+ {
+ P6_LOG("app timer already started!");
+ CancelTimer();
+ }
+
+ // timer is not active, change its period to required value (== restart).
+ // FreeRTOS- Block for a maximum of 100 ticks if the change period command
+ // cannot immediately be sent to the timer command queue.
+ if (xTimerChangePeriod(sFunctionTimer, aTimeoutInMs / portTICK_PERIOD_MS, 100) != pdPASS)
+ {
+ P6_LOG("app timer start() failed");
+ appError(APP_ERROR_START_TIMER_FAILED);
+ }
+
+ mFunctionTimerActive = true;
}
void AppTask::PostEvent(const AppEvent * event)
diff --git a/examples/all-clusters-app/p6/src/ButtonHandler.cpp b/examples/all-clusters-app/infineon/psoc6/src/ButtonHandler.cpp
similarity index 54%
rename from examples/all-clusters-app/p6/src/ButtonHandler.cpp
rename to examples/all-clusters-app/infineon/psoc6/src/ButtonHandler.cpp
index b9765cbeec03b3..56c088b46ad83d 100644
--- a/examples/all-clusters-app/p6/src/ButtonHandler.cpp
+++ b/examples/all-clusters-app/infineon/psoc6/src/ButtonHandler.cpp
@@ -23,22 +23,28 @@
#include "AppTask.h"
namespace {
+constexpr int kButtonCount = 2;
-TimerHandle_t buttonTimer; // FreeRTOS timers used for debouncing buttons
+TimerHandle_t buttonTimers[kButtonCount]; // FreeRTOS timers used for debouncing
+// buttons. Array to hold handles to
+// the created timers.
} // namespace
void ButtonHandler::Init(void)
{
GpioInit();
-
- buttonTimer = xTimerCreate("BtnTmr", // Just a text name, not used by the RTOS kernel
- APP_BUTTON_DEBOUNCE_PERIOD_MS, // timer period
- false, // no timer reload (==one-shot)
- (void *) (int) APP_LIGHT_BUTTON_IDX, // init timer id = button index
- TimerCallback // timer callback handler (all buttons use
- // the same timer cn function)
- );
+ // Create FreeRTOS sw timers for debouncing buttons.
+ for (uint8_t i = 0; i < kButtonCount; i++)
+ {
+ buttonTimers[i] = xTimerCreate("BtnTmr", // Just a text name, not used by the RTOS kernel
+ APP_BUTTON_DEBOUNCE_PERIOD_MS, // timer period
+ false, // no timer reload (==one-shot)
+ (void *) (int) i, // init timer id = button index
+ TimerCallback // timer callback handler (all buttons use
+ // the same timer cn function)
+ );
+ }
}
void ButtonHandler::GpioInit(void)
@@ -50,19 +56,34 @@ void ButtonHandler::GpioInit(void)
{
printf(" cyhal_gpio_init failed for APP_LIGHT_BUTTON\r\n");
}
-
+ result = cyhal_gpio_init(APP_FUNCTION_BUTTON, CYHAL_GPIO_DIR_INPUT, CYHAL_GPIO_DRIVE_PULLUP, CYBSP_BTN_OFF);
+ if (result != CY_RSLT_SUCCESS)
+ {
+ printf(" cyhal_gpio_init failed for APP_FUNCTION_BUTTON\r\n");
+ }
/* Configure GPIO interrupt. */
static cyhal_gpio_callback_data_t light_button_cbdata;
+ static cyhal_gpio_callback_data_t func_button_cbdata;
light_button_cbdata.callback = light_button_callback;
light_button_cbdata.callback_arg = NULL;
cyhal_gpio_register_callback(APP_LIGHT_BUTTON, &light_button_cbdata);
+ func_button_cbdata.callback = func_button_callback;
+ func_button_cbdata.callback_arg = NULL;
+ cyhal_gpio_register_callback(APP_FUNCTION_BUTTON, &func_button_cbdata);
cyhal_gpio_enable_event(APP_LIGHT_BUTTON, CYHAL_GPIO_IRQ_FALL, GPIO_INTERRUPT_PRIORITY, true);
+ cyhal_gpio_enable_event(APP_FUNCTION_BUTTON, CYHAL_GPIO_IRQ_FALL, GPIO_INTERRUPT_PRIORITY, true);
}
void ButtonHandler::light_button_callback(void * handler_arg, cyhal_gpio_event_t event)
{
portBASE_TYPE taskWoken = pdFALSE;
- xTimerStartFromISR(buttonTimer, &taskWoken);
+ xTimerStartFromISR(buttonTimers[APP_LIGHT_BUTTON_IDX], &taskWoken);
+}
+
+void ButtonHandler::func_button_callback(void * handler_arg, cyhal_gpio_event_t event)
+{
+ portBASE_TYPE taskWoken = pdFALSE;
+ xTimerStartFromISR(buttonTimers[APP_FUNCTION_BUTTON_IDX], &taskWoken);
}
void ButtonHandler::TimerCallback(TimerHandle_t xTimer)
@@ -77,11 +98,16 @@ void ButtonHandler::TimerCallback(TimerHandle_t xTimer)
case APP_LIGHT_BUTTON_IDX:
buttonevent = cyhal_gpio_read(APP_LIGHT_BUTTON);
break;
-
+ case APP_FUNCTION_BUTTON_IDX:
+ buttonevent = cyhal_gpio_read(APP_FUNCTION_BUTTON);
+ break;
default:
P6_LOG("Unhandled TimerID: %d", timerId);
break;
}
- GetAppTask().ButtonEventHandler(timerId, (buttonevent) ? APP_BUTTON_PRESSED : APP_BUTTON_RELEASED);
+ if (buttonevent)
+ {
+ GetAppTask().ButtonEventHandler(timerId, APP_BUTTON_PRESSED);
+ }
}
diff --git a/examples/all-clusters-app/p6/src/ClusterManager.cpp b/examples/all-clusters-app/infineon/psoc6/src/ClusterManager.cpp
similarity index 100%
rename from examples/all-clusters-app/p6/src/ClusterManager.cpp
rename to examples/all-clusters-app/infineon/psoc6/src/ClusterManager.cpp
diff --git a/examples/all-clusters-app/p6/src/ZclCallbacks.cpp b/examples/all-clusters-app/infineon/psoc6/src/ZclCallbacks.cpp
similarity index 100%
rename from examples/all-clusters-app/p6/src/ZclCallbacks.cpp
rename to examples/all-clusters-app/infineon/psoc6/src/ZclCallbacks.cpp
diff --git a/examples/all-clusters-minimal-app/p6/src/main.cpp b/examples/all-clusters-app/infineon/psoc6/src/main.cpp
similarity index 99%
rename from examples/all-clusters-minimal-app/p6/src/main.cpp
rename to examples/all-clusters-app/infineon/psoc6/src/main.cpp
index 7f38b516b93fe1..84b1961f9a881f 100644
--- a/examples/all-clusters-minimal-app/p6/src/main.cpp
+++ b/examples/all-clusters-app/infineon/psoc6/src/main.cpp
@@ -36,7 +36,7 @@
#include "AppConfig.h"
#include "cyhal_wdt.h"
-#include "init_p6Platform.h"
+#include "init_psoc6Platform.h"
#include
#ifdef HEAP_MONITORING
diff --git a/examples/all-clusters-app/infineon/psoc6/third_party/connectedhomeip b/examples/all-clusters-app/infineon/psoc6/third_party/connectedhomeip
new file mode 120000
index 00000000000000..3efed95be5dbe9
--- /dev/null
+++ b/examples/all-clusters-app/infineon/psoc6/third_party/connectedhomeip
@@ -0,0 +1 @@
+../../../../../
\ No newline at end of file
diff --git a/examples/all-clusters-app/p6/build_overrides b/examples/all-clusters-app/p6/build_overrides
deleted file mode 120000
index 194ee0b812dc3d..00000000000000
--- a/examples/all-clusters-app/p6/build_overrides
+++ /dev/null
@@ -1 +0,0 @@
-../../build_overrides/
\ No newline at end of file
diff --git a/examples/all-clusters-app/p6/third_party/connectedhomeip b/examples/all-clusters-app/p6/third_party/connectedhomeip
deleted file mode 120000
index 11a54ed360106c..00000000000000
--- a/examples/all-clusters-app/p6/third_party/connectedhomeip
+++ /dev/null
@@ -1 +0,0 @@
-../../../../
\ No newline at end of file
diff --git a/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter b/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter
index a1e8488dc08e68..0393515a9434ca 100644
--- a/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter
+++ b/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter
@@ -1370,12 +1370,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/all-clusters-minimal-app/esp32/main/Kconfig.projbuild b/examples/all-clusters-minimal-app/esp32/main/Kconfig.projbuild
index 8791a80a443e71..dbf11ecaab5a57 100644
--- a/examples/all-clusters-minimal-app/esp32/main/Kconfig.projbuild
+++ b/examples/all-clusters-minimal-app/esp32/main/Kconfig.projbuild
@@ -53,6 +53,7 @@ menu "Demo"
config RENDEZVOUS_MODE_SOFTAP
bool "Soft-AP"
+ select ESP_WIFI_SOFTAP_SUPPORT
config RENDEZVOUS_MODE_BLE
bool "BLE"
depends on BT_ENABLED
@@ -60,17 +61,11 @@ menu "Demo"
bool "On-Network"
config RENDEZVOUS_MODE_SOFTAP_ON_NETWORK
bool "Soft-AP / On-Network"
+ select ESP_WIFI_SOFTAP_SUPPORT
config RENDEZVOUS_MODE_BLE_ON_NETWORK
bool "BLE / On-Network"
endchoice
- config ECHO_HOST_IP
- string "IPV4 address"
- default "127.0.0.1"
- depends on USE_ECHO_CLIENT
- help
- The IPV4 Address of the ECHO Server.
-
# NOTE: This config is not displayed as a input in the Kconfig menu, as its value is
# entirely derived from the Device Type choice. However the CONFIG_EXAMPLE_DISPLAY_TYPE
# define that is produced is needed to configure the TFT library correctly.
diff --git a/examples/all-clusters-minimal-app/esp32/sdkconfig.defaults b/examples/all-clusters-minimal-app/esp32/sdkconfig.defaults
index 5f996f40946d68..a9c28a1a863a25 100644
--- a/examples/all-clusters-minimal-app/esp32/sdkconfig.defaults
+++ b/examples/all-clusters-minimal-app/esp32/sdkconfig.defaults
@@ -53,3 +53,6 @@ CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT=y
# Serial Flasher config
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="4MB"
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/all-clusters-minimal-app/p6/.gn b/examples/all-clusters-minimal-app/infineon/psoc6/.gn
similarity index 100%
rename from examples/all-clusters-minimal-app/p6/.gn
rename to examples/all-clusters-minimal-app/infineon/psoc6/.gn
diff --git a/examples/all-clusters-minimal-app/p6/BUILD.gn b/examples/all-clusters-minimal-app/infineon/psoc6/BUILD.gn
similarity index 78%
rename from examples/all-clusters-minimal-app/p6/BUILD.gn
rename to examples/all-clusters-minimal-app/infineon/psoc6/BUILD.gn
index 53d303ce5f4ecb..2b90698856083a 100644
--- a/examples/all-clusters-minimal-app/p6/BUILD.gn
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/BUILD.gn
@@ -14,17 +14,18 @@
import("//build_overrides/build.gni")
import("//build_overrides/chip.gni")
-import("//build_overrides/p6.gni")
+import("//build_overrides/psoc6.gni")
import("${build_root}/config/defaults.gni")
import("${chip_root}/src/platform/device.gni")
-import("${p6_sdk_build_root}/p6_executable.gni")
-import("${p6_sdk_build_root}/p6_sdk.gni")
+import("${psoc6_sdk_build_root}/psoc6_executable.gni")
+import("${psoc6_sdk_build_root}/psoc6_sdk.gni")
assert(current_os == "freertos")
-p6_project_dir = "${chip_root}/examples/all-clusters-minimal-app/p6"
-examples_plat_dir = "${chip_root}/examples/platform/p6"
+psoc6_project_dir =
+ "${chip_root}/examples/all-clusters-minimal-app/infineon/psoc6"
+examples_plat_dir = "${chip_root}/examples/platform/infineon/psoc6"
declare_args() {
# Dump memory usage at link time.
@@ -40,8 +41,8 @@ declare_args() {
build_update_image = false
}
-config("p6_ota_config") {
- linker_script = "${p6_sdk_root}/ota/cy8c6xxa_cm4_dual_ota_int.ld"
+config("psoc6_ota_config") {
+ linker_script = "${psoc6_sdk_root}/ota/cy8c6xxa_cm4_dual_ota_int.ld"
ldflags = [ "-T" + rebase_path(linker_script, root_build_dir) ]
@@ -78,38 +79,39 @@ config("p6_ota_config") {
}
}
-p6_sdk_sources("all_clusters_app_sdk_sources") {
+psoc6_sdk_sources("all_clusters_app_sdk_sources") {
include_dirs = [
- "${chip_root}/src/platform/P6",
- "${p6_project_dir}/include",
+ "${chip_root}/src/platform/PSOC6",
+ "${psoc6_project_dir}/include",
"${examples_plat_dir}",
]
defines = [
- "BOARD_ID=${p6_board}",
+ "BOARD_ID=${psoc6_board}",
"P6_LOG_ENABLED=1",
"CHIP_DEVICE_CONFIG_USE_TEST_SETUP_PIN_CODE=${setup_pin_code}",
]
- sources = [ "${p6_project_dir}/include/CHIPProjectConfig.h" ]
+ sources = [ "${psoc6_project_dir}/include/CHIPProjectConfig.h" ]
- public_configs = [ "${chip_root}/third_party/p6:p6_sdk_config" ]
+ public_configs =
+ [ "${chip_root}/third_party/infineon/psoc6:psoc6_sdk_config" ]
if (chip_enable_ota_requestor) {
- public_configs += [ ":p6_ota_config" ]
+ public_configs += [ ":psoc6_ota_config" ]
}
}
-p6_executable("clusters_minimal_app") {
+psoc6_executable("clusters_minimal_app") {
include_dirs = []
defines = []
- output_name = "chip-p6-clusters-minimal-example.out"
+ output_name = "chip-psoc6-clusters-minimal-example.out"
sources = [
"${chip_root}/examples/all-clusters-app/all-clusters-common/src/bridged-actions-stub.cpp",
"${chip_root}/examples/all-clusters-app/all-clusters-common/src/static-supported-modes-manager.cpp",
"${examples_plat_dir}/LEDWidget.cpp",
- "${examples_plat_dir}/init_p6Platform.cpp",
+ "${examples_plat_dir}/init_psoc6Platform.cpp",
"src/AppTask.cpp",
"src/ButtonHandler.cpp",
"src/ClusterManager.cpp",
@@ -129,7 +131,7 @@ p6_executable("clusters_minimal_app") {
include_dirs += [
"include",
"${examples_plat_dir}",
- "${p6_project_dir}/include",
+ "${psoc6_project_dir}/include",
"${chip_root}/examples/all-clusters-app/all-clusters-common/include",
]
@@ -150,10 +152,10 @@ p6_executable("clusters_minimal_app") {
output_dir = root_out_dir
}
-group("p6") {
+group("psoc6") {
deps = [ ":clusters_minimal_app" ]
}
group("default") {
- deps = [ ":p6" ]
+ deps = [ ":psoc6" ]
}
diff --git a/examples/all-clusters-minimal-app/p6/README.md b/examples/all-clusters-minimal-app/infineon/psoc6/README.md
similarity index 75%
rename from examples/all-clusters-minimal-app/p6/README.md
rename to examples/all-clusters-minimal-app/infineon/psoc6/README.md
index 730891ccef53a1..1f7a40ef9b28ac 100644
--- a/examples/all-clusters-minimal-app/p6/README.md
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/README.md
@@ -1,10 +1,10 @@
-#CHIP P6 All Clusters Example
+#CHIP PSoC6 All Clusters Example
An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
-- [Matter P6 All Clusters Example](#chip-p6-clusters-example)
+- [Matter PSoC6 All Clusters Example](#chip-psoc6-clusters-example)
- [Introduction](#introduction)
- [Building](#building)
- [Flashing the Application](#flashing-the-application)
@@ -20,13 +20,13 @@ An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
## Introduction
-The P6 clusters example provides a baseline demonstration of a Cluster control
-device, built using Matter and the Infineon Modustoolbox SDK. It can be
+The PSoC6 clusters example provides a baseline demonstration of a Cluster
+control device, built using Matter and the Infineon Modustoolbox SDK. It can be
controlled by Matter controller over Wi-Fi network.
-The P6 device can be commissioned over Bluetooth Low Energy where the device and
-the Matter controller will exchange security information with the Rendezvous
-procedure. Wi-Fi Network credentials are then provided to the P6 device which
+The PSoC6 device can be commissioned over Bluetooth Low Energy where the device
+and the Matter controller will exchange security information with the Rendezvous
+procedure. Wi-Fi Network credentials are then provided to the PSoC6 device which
will then join the network.
@@ -36,8 +36,8 @@ will then join the network.
- [Modustoolbox Software](https://www.cypress.com/products/modustoolbox)
Refer to `integrations/docker/images/chip-build-infineon/Dockerfile` or
- `scripts/examples/gn_p6_example.sh` for downloading the Software and related
- tools.
+ `scripts/examples/gn_psoc6_example.sh` for downloading the Software and
+ related tools.
- Install some additional tools (likely already present for Matter
developers):
@@ -54,7 +54,7 @@ will then join the network.
* Build the example application:
$ source scripts/activate.sh
- $ scripts/build/build_examples.py --no-log-timestamps --target 'infineon-p6-all-clusters-minimal' build
+ $ scripts/build/build_examples.py --no-log-timestamps --target 'infineon-psoc6-all-clusters-minimal' build
- To delete generated executable, libraries and object files use:
@@ -72,7 +72,7 @@ will then join the network.
- On the command line:
$ cd ~/connectedhomeip
- $ python3 out/infineon-p6-all-clusters-minimal/chip-p6-clusters-minimal-example.flash.py
+ $ python3 out/infineon-psoc6-all-clusters-minimal/chip-psoc6-clusters-minimal-example.flash.py
@@ -84,7 +84,7 @@ Commissioning can be carried out using BLE.
### Setting up Chip tool
-Once P6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
+Once PSoC6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
perform commissioning and cluster control.
- Set up python controller.
@@ -125,6 +125,6 @@ commands. These power cycle the BlueTooth hardware and disable BR/EDR mode.
## OTA Software Update
-For the description of Software Update process with infineon P6 example
+For the description of Software Update process with infineon PSoC6 example
applications see
-[Infineon P6 OTA Software Update](../../../docs/guides/infineon_p6_software_update.md)
+[Infineon PSoC6 OTA Software Update](../../../../docs/guides/infineon_psoc6_software_update.md)
diff --git a/examples/all-clusters-minimal-app/p6/args.gni b/examples/all-clusters-minimal-app/infineon/psoc6/args.gni
similarity index 89%
rename from examples/all-clusters-minimal-app/p6/args.gni
rename to examples/all-clusters-minimal-app/infineon/psoc6/args.gni
index 2a93385cf36bd6..ce7a2ab93e794d 100644
--- a/examples/all-clusters-minimal-app/p6/args.gni
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/args.gni
@@ -14,7 +14,7 @@
import("//build_overrides/chip.gni")
import("//build_overrides/pigweed.gni")
-import("${chip_root}/src/platform/P6/args.gni")
+import("${chip_root}/src/platform/Infineon/PSOC6/args.gni")
-p6_target_project =
+psoc6_target_project =
get_label_info(":all_clusters_app_sdk_sources", "label_no_toolchain")
diff --git a/examples/all-clusters-minimal-app/infineon/psoc6/build_overrides b/examples/all-clusters-minimal-app/infineon/psoc6/build_overrides
new file mode 120000
index 00000000000000..ee19c065d619a2
--- /dev/null
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/build_overrides
@@ -0,0 +1 @@
+../../../build_overrides/
\ No newline at end of file
diff --git a/examples/all-clusters-minimal-app/p6/include/AppConfig.h b/examples/all-clusters-minimal-app/infineon/psoc6/include/AppConfig.h
similarity index 93%
rename from examples/all-clusters-minimal-app/p6/include/AppConfig.h
rename to examples/all-clusters-minimal-app/infineon/psoc6/include/AppConfig.h
index 8e9ebe286ef421..bffd31f0d8a23b 100644
--- a/examples/all-clusters-minimal-app/p6/include/AppConfig.h
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/include/AppConfig.h
@@ -28,8 +28,11 @@
#define APP_TASK_NAME "APP"
#define APP_LIGHT_BUTTON_IDX 0
+#define APP_FUNCTION_BUTTON_IDX 1
+
#define APP_LIGHT_BUTTON CYBSP_USER_BTN1
-#define APP_BUTTON_DEBOUNCE_PERIOD_MS 50
+#define APP_FUNCTION_BUTTON CYBSP_USER_BTN2
+#define APP_BUTTON_DEBOUNCE_PERIOD_MS 200
#define APP_BUTTON_PRESSED 0
#define APP_BUTTON_RELEASED 1
diff --git a/examples/all-clusters-minimal-app/p6/include/AppEvent.h b/examples/all-clusters-minimal-app/infineon/psoc6/include/AppEvent.h
similarity index 100%
rename from examples/all-clusters-minimal-app/p6/include/AppEvent.h
rename to examples/all-clusters-minimal-app/infineon/psoc6/include/AppEvent.h
diff --git a/examples/all-clusters-minimal-app/p6/include/AppTask.h b/examples/all-clusters-minimal-app/infineon/psoc6/include/AppTask.h
similarity index 82%
rename from examples/all-clusters-minimal-app/p6/include/AppTask.h
rename to examples/all-clusters-minimal-app/infineon/psoc6/include/AppTask.h
index 5bb9a9163225bf..6dbd906b8104d6 100644
--- a/examples/all-clusters-minimal-app/p6/include/AppTask.h
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/include/AppTask.h
@@ -54,8 +54,22 @@ class AppTask
CHIP_ERROR Init();
static AppTask sAppTask;
+ void CancelTimer(void);
void DispatchEvent(AppEvent * event);
+ static void FunctionTimerEventHandler(AppEvent * event);
+ static void FunctionHandler(AppEvent * event);
+ static void TimerEventHandler(TimerHandle_t timer);
static void OnOffUpdateClusterState(intptr_t context);
+ void StartTimer(uint32_t aTimeoutMs);
+
+ enum class Function
+ {
+ kNoneSelected = 0,
+ kFactoryReset = 1,
+ kInvalid
+ };
+ Function mFunction = Function::kNoneSelected;
+ bool mFunctionTimerActive = false;
};
inline AppTask & GetAppTask(void)
diff --git a/examples/all-clusters-app/p6/include/ButtonHandler.h b/examples/all-clusters-minimal-app/infineon/psoc6/include/ButtonHandler.h
similarity index 93%
rename from examples/all-clusters-app/p6/include/ButtonHandler.h
rename to examples/all-clusters-minimal-app/infineon/psoc6/include/ButtonHandler.h
index a4128c68f86f0e..ac4d795d64280e 100644
--- a/examples/all-clusters-app/p6/include/ButtonHandler.h
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/include/ButtonHandler.h
@@ -36,5 +36,6 @@ class ButtonHandler
private:
static void GpioInit(void);
static void light_button_callback(void * handler_arg, cyhal_gpio_event_t event);
+ static void func_button_callback(void * handler_arg, cyhal_gpio_event_t event);
static void TimerCallback(TimerHandle_t xTimer);
};
diff --git a/examples/all-clusters-minimal-app/p6/include/CHIPProjectConfig.h b/examples/all-clusters-minimal-app/infineon/psoc6/include/CHIPProjectConfig.h
similarity index 100%
rename from examples/all-clusters-minimal-app/p6/include/CHIPProjectConfig.h
rename to examples/all-clusters-minimal-app/infineon/psoc6/include/CHIPProjectConfig.h
diff --git a/examples/all-clusters-minimal-app/p6/include/ClusterManager.h b/examples/all-clusters-minimal-app/infineon/psoc6/include/ClusterManager.h
similarity index 100%
rename from examples/all-clusters-minimal-app/p6/include/ClusterManager.h
rename to examples/all-clusters-minimal-app/infineon/psoc6/include/ClusterManager.h
diff --git a/examples/all-clusters-minimal-app/p6/src/AppTask.cpp b/examples/all-clusters-minimal-app/infineon/psoc6/src/AppTask.cpp
similarity index 72%
rename from examples/all-clusters-minimal-app/p6/src/AppTask.cpp
rename to examples/all-clusters-minimal-app/infineon/psoc6/src/AppTask.cpp
index e9ce95ad12c304..13eb9e09e01431 100644
--- a/examples/all-clusters-minimal-app/p6/src/AppTask.cpp
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/src/AppTask.cpp
@@ -42,7 +42,7 @@
#include
#include
-#include
+#include
/* OTA related includes */
#if CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
@@ -50,7 +50,7 @@
#include
#include
#include
-#include
+#include
using chip::BDXDownloader;
using chip::CharSpan;
@@ -72,12 +72,14 @@ using namespace ::chip::System;
#define APP_EVENT_QUEUE_SIZE 10
#define APP_TASK_STACK_SIZE (4096)
#define APP_WAIT_LOOP 1000
+#define FACTORY_RESET_CANCEL_WINDOW_TIMEOUT 5000
LEDWidget sStatusLED;
LEDWidget sLightLED;
LEDWidget sClusterLED;
namespace {
+TimerHandle_t sFunctionTimer; // FreeRTOS app sw timer.
TaskHandle_t sAppTaskHandle;
QueueHandle_t sAppEventQueue;
@@ -184,6 +186,18 @@ CHIP_ERROR AppTask::Init()
// Initialise WSTK buttons PB0 and PB1 (including debounce).
ButtonHandler::Init();
+ // Create FreeRTOS sw timer for Function Selection.
+ sFunctionTimer = xTimerCreate("FnTmr", // Just a text name, not used by the RTOS kernel
+ 1, // == default timer period (mS)
+ false, // no timer reload (==one-shot)
+ (void *) this, // init timer id = app task obj context
+ TimerEventHandler // timer callback handler
+ );
+ if (sFunctionTimer == NULL)
+ {
+ P6_LOG("funct timer create failed");
+ appError(APP_ERROR_CREATE_TIMER_FAILED);
+ }
NetWorkCommissioningInstInit();
P6_LOG("Current Software Version: %s", CHIP_DEVICE_CONFIG_DEVICE_SOFTWARE_VERSION_STRING);
@@ -234,7 +248,7 @@ void AppTask::LightActionEventHandler(AppEvent * aEvent)
void AppTask::ButtonEventHandler(uint8_t btnIdx, uint8_t btnAction)
{
- if (btnIdx != APP_LIGHT_BUTTON_IDX)
+ if (btnIdx != APP_LIGHT_BUTTON_IDX && btnIdx != APP_FUNCTION_BUTTON_IDX)
{
return;
}
@@ -244,11 +258,106 @@ void AppTask::ButtonEventHandler(uint8_t btnIdx, uint8_t btnAction)
button_event.ButtonEvent.ButtonIdx = btnIdx;
button_event.ButtonEvent.Action = btnAction;
- if ((btnIdx == APP_LIGHT_BUTTON_IDX) && (btnAction == APP_BUTTON_RELEASED))
+ if (btnIdx == APP_LIGHT_BUTTON_IDX)
{
button_event.Handler = LightActionEventHandler;
sAppTask.PostEvent(&button_event);
}
+ else if (btnIdx == APP_FUNCTION_BUTTON_IDX)
+ {
+ button_event.Handler = FunctionHandler;
+ sAppTask.PostEvent(&button_event);
+ }
+}
+
+void AppTask::TimerEventHandler(TimerHandle_t timer)
+{
+ AppEvent event;
+ event.Type = AppEvent::kEventType_Timer;
+ event.TimerEvent.Context = (void *) timer;
+ event.Handler = FunctionTimerEventHandler;
+ sAppTask.PostEvent(&event);
+}
+
+void AppTask::FunctionTimerEventHandler(AppEvent * event)
+{
+ if (event->Type != AppEvent::kEventType_Timer)
+ {
+ return;
+ }
+
+ if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
+ {
+ // Actually trigger Factory Reset
+ sAppTask.mFunction = Function::kNoneSelected;
+ chip::Server::GetInstance().ScheduleFactoryReset();
+ }
+}
+
+void AppTask::FunctionHandler(AppEvent * event)
+{
+ if (event->ButtonEvent.Action == APP_BUTTON_PRESSED)
+ {
+ if (!sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kNoneSelected)
+ {
+ P6_LOG("Factory Reset Triggered. Press button again within %us to cancel.", FACTORY_RESET_CANCEL_WINDOW_TIMEOUT / 1000);
+ // Start timer for FACTORY_RESET_CANCEL_WINDOW_TIMEOUT to allow user to
+ // cancel, if required.
+ sAppTask.StartTimer(FACTORY_RESET_CANCEL_WINDOW_TIMEOUT);
+
+ sAppTask.mFunction = Function::kFactoryReset;
+
+ // Turn off all LEDs before starting blink to make sure blink is
+ // co-ordinated.
+ sStatusLED.Set(false);
+ sLightLED.Set(false);
+
+ sStatusLED.Blink(500);
+ sLightLED.Blink(500);
+ }
+ else if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
+ {
+
+ sAppTask.CancelTimer();
+
+ // Change the function to none selected since factory reset has been
+ // canceled.
+ sAppTask.mFunction = Function::kNoneSelected;
+
+ P6_LOG("Factory Reset has been Canceled");
+ }
+ }
+}
+
+void AppTask::CancelTimer()
+{
+ if (xTimerStop(sFunctionTimer, 0) == pdFAIL)
+ {
+ P6_LOG("app timer stop() failed");
+ appError(APP_ERROR_STOP_TIMER_FAILED);
+ }
+
+ mFunctionTimerActive = false;
+}
+
+void AppTask::StartTimer(uint32_t aTimeoutInMs)
+{
+ if (xTimerIsTimerActive(sFunctionTimer))
+ {
+ P6_LOG("app timer already started!");
+ CancelTimer();
+ }
+
+ // timer is not active, change its period to required value (== restart).
+ // FreeRTOS- Block for a maximum of 100 ticks if the change period command
+ // cannot immediately be sent to the timer command queue.
+ if (xTimerChangePeriod(sFunctionTimer, aTimeoutInMs / portTICK_PERIOD_MS, 100) != pdPASS)
+ {
+ P6_LOG("app timer start() failed");
+ appError(APP_ERROR_START_TIMER_FAILED);
+ }
+
+ mFunctionTimerActive = true;
}
void AppTask::PostEvent(const AppEvent * aEvent)
diff --git a/examples/all-clusters-minimal-app/p6/src/ButtonHandler.cpp b/examples/all-clusters-minimal-app/infineon/psoc6/src/ButtonHandler.cpp
similarity index 54%
rename from examples/all-clusters-minimal-app/p6/src/ButtonHandler.cpp
rename to examples/all-clusters-minimal-app/infineon/psoc6/src/ButtonHandler.cpp
index b9765cbeec03b3..56c088b46ad83d 100644
--- a/examples/all-clusters-minimal-app/p6/src/ButtonHandler.cpp
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/src/ButtonHandler.cpp
@@ -23,22 +23,28 @@
#include "AppTask.h"
namespace {
+constexpr int kButtonCount = 2;
-TimerHandle_t buttonTimer; // FreeRTOS timers used for debouncing buttons
+TimerHandle_t buttonTimers[kButtonCount]; // FreeRTOS timers used for debouncing
+// buttons. Array to hold handles to
+// the created timers.
} // namespace
void ButtonHandler::Init(void)
{
GpioInit();
-
- buttonTimer = xTimerCreate("BtnTmr", // Just a text name, not used by the RTOS kernel
- APP_BUTTON_DEBOUNCE_PERIOD_MS, // timer period
- false, // no timer reload (==one-shot)
- (void *) (int) APP_LIGHT_BUTTON_IDX, // init timer id = button index
- TimerCallback // timer callback handler (all buttons use
- // the same timer cn function)
- );
+ // Create FreeRTOS sw timers for debouncing buttons.
+ for (uint8_t i = 0; i < kButtonCount; i++)
+ {
+ buttonTimers[i] = xTimerCreate("BtnTmr", // Just a text name, not used by the RTOS kernel
+ APP_BUTTON_DEBOUNCE_PERIOD_MS, // timer period
+ false, // no timer reload (==one-shot)
+ (void *) (int) i, // init timer id = button index
+ TimerCallback // timer callback handler (all buttons use
+ // the same timer cn function)
+ );
+ }
}
void ButtonHandler::GpioInit(void)
@@ -50,19 +56,34 @@ void ButtonHandler::GpioInit(void)
{
printf(" cyhal_gpio_init failed for APP_LIGHT_BUTTON\r\n");
}
-
+ result = cyhal_gpio_init(APP_FUNCTION_BUTTON, CYHAL_GPIO_DIR_INPUT, CYHAL_GPIO_DRIVE_PULLUP, CYBSP_BTN_OFF);
+ if (result != CY_RSLT_SUCCESS)
+ {
+ printf(" cyhal_gpio_init failed for APP_FUNCTION_BUTTON\r\n");
+ }
/* Configure GPIO interrupt. */
static cyhal_gpio_callback_data_t light_button_cbdata;
+ static cyhal_gpio_callback_data_t func_button_cbdata;
light_button_cbdata.callback = light_button_callback;
light_button_cbdata.callback_arg = NULL;
cyhal_gpio_register_callback(APP_LIGHT_BUTTON, &light_button_cbdata);
+ func_button_cbdata.callback = func_button_callback;
+ func_button_cbdata.callback_arg = NULL;
+ cyhal_gpio_register_callback(APP_FUNCTION_BUTTON, &func_button_cbdata);
cyhal_gpio_enable_event(APP_LIGHT_BUTTON, CYHAL_GPIO_IRQ_FALL, GPIO_INTERRUPT_PRIORITY, true);
+ cyhal_gpio_enable_event(APP_FUNCTION_BUTTON, CYHAL_GPIO_IRQ_FALL, GPIO_INTERRUPT_PRIORITY, true);
}
void ButtonHandler::light_button_callback(void * handler_arg, cyhal_gpio_event_t event)
{
portBASE_TYPE taskWoken = pdFALSE;
- xTimerStartFromISR(buttonTimer, &taskWoken);
+ xTimerStartFromISR(buttonTimers[APP_LIGHT_BUTTON_IDX], &taskWoken);
+}
+
+void ButtonHandler::func_button_callback(void * handler_arg, cyhal_gpio_event_t event)
+{
+ portBASE_TYPE taskWoken = pdFALSE;
+ xTimerStartFromISR(buttonTimers[APP_FUNCTION_BUTTON_IDX], &taskWoken);
}
void ButtonHandler::TimerCallback(TimerHandle_t xTimer)
@@ -77,11 +98,16 @@ void ButtonHandler::TimerCallback(TimerHandle_t xTimer)
case APP_LIGHT_BUTTON_IDX:
buttonevent = cyhal_gpio_read(APP_LIGHT_BUTTON);
break;
-
+ case APP_FUNCTION_BUTTON_IDX:
+ buttonevent = cyhal_gpio_read(APP_FUNCTION_BUTTON);
+ break;
default:
P6_LOG("Unhandled TimerID: %d", timerId);
break;
}
- GetAppTask().ButtonEventHandler(timerId, (buttonevent) ? APP_BUTTON_PRESSED : APP_BUTTON_RELEASED);
+ if (buttonevent)
+ {
+ GetAppTask().ButtonEventHandler(timerId, APP_BUTTON_PRESSED);
+ }
}
diff --git a/examples/all-clusters-minimal-app/p6/src/ClusterManager.cpp b/examples/all-clusters-minimal-app/infineon/psoc6/src/ClusterManager.cpp
similarity index 100%
rename from examples/all-clusters-minimal-app/p6/src/ClusterManager.cpp
rename to examples/all-clusters-minimal-app/infineon/psoc6/src/ClusterManager.cpp
diff --git a/examples/all-clusters-minimal-app/p6/src/ZclCallbacks.cpp b/examples/all-clusters-minimal-app/infineon/psoc6/src/ZclCallbacks.cpp
similarity index 100%
rename from examples/all-clusters-minimal-app/p6/src/ZclCallbacks.cpp
rename to examples/all-clusters-minimal-app/infineon/psoc6/src/ZclCallbacks.cpp
diff --git a/examples/all-clusters-app/p6/src/main.cpp b/examples/all-clusters-minimal-app/infineon/psoc6/src/main.cpp
similarity index 96%
rename from examples/all-clusters-app/p6/src/main.cpp
rename to examples/all-clusters-minimal-app/infineon/psoc6/src/main.cpp
index 7f38b516b93fe1..a7587170607d28 100644
--- a/examples/all-clusters-app/p6/src/main.cpp
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/src/main.cpp
@@ -36,7 +36,7 @@
#include "AppConfig.h"
#include "cyhal_wdt.h"
-#include "init_p6Platform.h"
+#include "init_psoc6Platform.h"
#include
#ifdef HEAP_MONITORING
@@ -143,7 +143,7 @@ int main(void)
#endif
P6_LOG("==================================================\r\n");
- P6_LOG("chip-p6-all-clusters-example starting Version %d\r\n", CHIP_DEVICE_CONFIG_DEVICE_SOFTWARE_VERSION);
+ P6_LOG("chip-p6-all-clusters-minimal-example starting Version %d\r\n", CHIP_DEVICE_CONFIG_DEVICE_SOFTWARE_VERSION);
P6_LOG("==================================================\r\n");
/* Start the FreeRTOS scheduler */
diff --git a/examples/all-clusters-minimal-app/infineon/psoc6/third_party/connectedhomeip b/examples/all-clusters-minimal-app/infineon/psoc6/third_party/connectedhomeip
new file mode 120000
index 00000000000000..3efed95be5dbe9
--- /dev/null
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/third_party/connectedhomeip
@@ -0,0 +1 @@
+../../../../../
\ No newline at end of file
diff --git a/examples/all-clusters-minimal-app/p6/build_overrides b/examples/all-clusters-minimal-app/p6/build_overrides
deleted file mode 120000
index 194ee0b812dc3d..00000000000000
--- a/examples/all-clusters-minimal-app/p6/build_overrides
+++ /dev/null
@@ -1 +0,0 @@
-../../build_overrides/
\ No newline at end of file
diff --git a/examples/all-clusters-minimal-app/p6/third_party/connectedhomeip b/examples/all-clusters-minimal-app/p6/third_party/connectedhomeip
deleted file mode 120000
index 11a54ed360106c..00000000000000
--- a/examples/all-clusters-minimal-app/p6/third_party/connectedhomeip
+++ /dev/null
@@ -1 +0,0 @@
-../../../../
\ No newline at end of file
diff --git a/examples/bridge-app/bridge-common/bridge-app.matter b/examples/bridge-app/bridge-common/bridge-app.matter
index a5e458b508db8b..4ba029df533fff 100644
--- a/examples/bridge-app/bridge-common/bridge-app.matter
+++ b/examples/bridge-app/bridge-common/bridge-app.matter
@@ -1207,12 +1207,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute command_id generatedCommandList[] = 65528;
diff --git a/examples/bridge-app/esp32/sdkconfig.defaults b/examples/bridge-app/esp32/sdkconfig.defaults
index 6a6589e1040577..d76496f541c9ba 100644
--- a/examples/bridge-app/esp32/sdkconfig.defaults
+++ b/examples/bridge-app/esp32/sdkconfig.defaults
@@ -39,3 +39,6 @@ CONFIG_PARTITION_TABLE_FILENAME="partitions.csv"
CONFIG_LWIP_HOOK_IP6_ROUTE_DEFAULT=y
CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT=y
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/build_overrides/cyw30739_sdk.gni b/examples/build_overrides/cyw30739_sdk.gni
index d2c81de46ba614..d98ac9866b0a4f 100644
--- a/examples/build_overrides/cyw30739_sdk.gni
+++ b/examples/build_overrides/cyw30739_sdk.gni
@@ -15,5 +15,5 @@
declare_args() {
# Root directory for CYW30739 SDK.
cyw30739_sdk_build_root =
- "//third_party/connectedhomeip/third_party/cyw30739_sdk"
+ "//third_party/connectedhomeip/third_party/infineon/cyw30739_sdk"
}
diff --git a/examples/build_overrides/p6.gni b/examples/build_overrides/psoc6.gni
similarity index 73%
rename from examples/build_overrides/p6.gni
rename to examples/build_overrides/psoc6.gni
index 91890631da64bf..87d5ca9f2a295f 100644
--- a/examples/build_overrides/p6.gni
+++ b/examples/build_overrides/psoc6.gni
@@ -13,11 +13,12 @@
# limitations under the License.
declare_args() {
- # Root directory for P6 SDK.
- p6_sdk_build_root = "//third_party/connectedhomeip/third_party/p6"
+ # Root directory for PSOC6 SDK.
+ psoc6_sdk_build_root =
+ "//third_party/connectedhomeip/third_party/infineon/psoc6"
}
declare_args() {
- # Root directory for p6 SDK sources.
- p6_sdk_root = "${p6_sdk_build_root}/p6_sdk"
+ # Root directory for psoc6 SDK sources.
+ psoc6_sdk_root = "${psoc6_sdk_build_root}/psoc6_sdk"
}
diff --git a/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter b/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter
index 88e49031a81a7a..94e2afd10550fb 100644
--- a/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter
+++ b/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter
@@ -1178,12 +1178,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter b/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter
index 49ea336f8ac5ff..6d5ef0db2c89ac 100644
--- a/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter
+++ b/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter
@@ -1057,12 +1057,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter b/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter
index a6c9d6b3bff113..679ac23100dce5 100644
--- a/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter
+++ b/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter
@@ -1312,12 +1312,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter b/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter
index bb7d739f8a736e..61072d01cfed8f 100644
--- a/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter
+++ b/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter
@@ -1279,12 +1279,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter b/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter
index 62185b243bd1a2..7fa6bae61d59dc 100644
--- a/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter
+++ b/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter
@@ -1312,12 +1312,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter b/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter
index 643a9f84a8cf10..1eeb6ff8a7eae8 100644
--- a/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter
+++ b/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter
@@ -1070,12 +1070,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter b/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter
index 0298dc9600af84..3b125b0dc67048 100644
--- a/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter
+++ b/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter
@@ -1305,12 +1305,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter b/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter
index d7283b11cc18e2..6f07b93ec1db88 100644
--- a/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter
+++ b/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter
@@ -1070,12 +1070,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter b/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter
index 82a55dc63925ee..a079bc8b4b2d1f 100644
--- a/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter
+++ b/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter
@@ -1070,12 +1070,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter b/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter
index 51bd1880a09e75..2f3f18f70b6d62 100644
--- a/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter
+++ b/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter
@@ -1070,12 +1070,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter b/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter
index f695c6978b12b6..734df25acf13da 100644
--- a/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter
+++ b/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter
@@ -1312,12 +1312,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter b/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter
index d02bfd290b559d..80b9c2508fecae 100644
--- a/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter
+++ b/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter
@@ -1371,12 +1371,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter b/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter
index 434da308d335d7..770296d2fe04a5 100644
--- a/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter
+++ b/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter
@@ -1218,12 +1218,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter b/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter
index 12e9a22853af12..5f45a4cfb94265 100644
--- a/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter
+++ b/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter
@@ -1070,12 +1070,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter b/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter
index 709ac25bad5cf7..b0de2dbd8f02f0 100644
--- a/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter
+++ b/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter
@@ -1192,12 +1192,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter b/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter
index 759a2a2311206b..4797130d1ae28f 100644
--- a/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter
+++ b/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter
@@ -1070,12 +1070,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter b/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter
index cbccf1d36b21af..130092342ac222 100644
--- a/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter
+++ b/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter
@@ -1168,12 +1168,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter b/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter
index 6118a6848531ea..6d996b85f85e6a 100644
--- a/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter
+++ b/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter
@@ -1168,12 +1168,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/chef/efr32/BUILD.gn b/examples/chef/efr32/BUILD.gn
index e938574e195aa6..e23b747fcad1dd 100644
--- a/examples/chef/efr32/BUILD.gn
+++ b/examples/chef/efr32/BUILD.gn
@@ -206,21 +206,10 @@ efr32_executable("chef_app") {
# OpenThread Settings
if (chip_enable_openthread) {
deps += [
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform",
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform-utils",
+ "${chip_root}/third_party/openthread:openthread",
+ "${chip_root}/third_party/openthread:openthread-platform",
"${examples_plat_dir}:efr-matter-shell",
]
- if (chip_openthread_ftd) {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-ftd",
- "${chip_root}/third_party/openthread/repo:libopenthread-ftd",
- ]
- } else {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-mtd",
- "${chip_root}/third_party/openthread/repo:libopenthread-mtd",
- ]
- }
}
if (chip_enable_ota_requestor) {
@@ -258,7 +247,11 @@ efr32_executable("chef_app") {
}
if (!disable_lcd) {
- sources += [ "${examples_plat_dir}/display/lcd.c" ]
+ sources += [
+ "${examples_plat_dir}/display/demo-ui.c",
+ "${examples_plat_dir}/display/lcd.cpp",
+ ]
+ include_dirs += [ "${examples_plat_dir}/display" ]
defines += [ "DISPLAY_ENABLED" ]
if (show_qr_code) {
defines += [ "QR_CODE_ENABLED" ]
diff --git a/examples/chef/efr32/args.gni b/examples/chef/efr32/args.gni
index 7d077dce704c2f..4e322f1022501b 100644
--- a/examples/chef/efr32/args.gni
+++ b/examples/chef/efr32/args.gni
@@ -24,3 +24,5 @@ pw_rpc_CONFIG = "$dir_pw_rpc:disable_global_mutex"
pw_log_BACKEND = "${chip_root}/src/lib/support/pw_log_chip"
pw_assert_BACKEND = "$dir_pw_assert_log:check_backend"
chip_enable_openthread = true
+openthread_external_platform =
+ "${chip_root}/third_party/openthread/platforms/efr32:libopenthread-efr32"
diff --git a/examples/chef/efr32/include/AppConfig.h b/examples/chef/efr32/include/AppConfig.h
index 91501d889a6234..946b593cab50a4 100644
--- a/examples/chef/efr32/include/AppConfig.h
+++ b/examples/chef/efr32/include/AppConfig.h
@@ -32,7 +32,7 @@
extern "C" {
#endif
-void efr32LogInit(void);
+void efr32InitLog(void);
void efr32Log(const char * aFormat, ...);
#define EFR32_LOG(...) efr32Log(__VA_ARGS__);
diff --git a/examples/chef/esp32/main/Kconfig.projbuild b/examples/chef/esp32/main/Kconfig.projbuild
index 307b7f6ccb83bc..a2b3ea3ce1c34c 100644
--- a/examples/chef/esp32/main/Kconfig.projbuild
+++ b/examples/chef/esp32/main/Kconfig.projbuild
@@ -55,6 +55,7 @@ menu "Demo"
bool "Bypass"
config RENDEZVOUS_MODE_SOFTAP
bool "Soft-AP"
+ select ESP_WIFI_SOFTAP_SUPPORT
config RENDEZVOUS_MODE_BLE
bool "BLE"
depends on BT_ENABLED
@@ -62,17 +63,11 @@ menu "Demo"
bool "On-Network"
config RENDEZVOUS_MODE_SOFTAP_ON_NETWORK
bool "Soft-AP / On-Network"
+ select ESP_WIFI_SOFTAP_SUPPORT
config RENDEZVOUS_MODE_BLE_ON_NETWORK
bool "BLE / On-Network"
endchoice
- config ECHO_HOST_IP
- string "IPV4 address"
- default "127.0.0.1"
- depends on USE_ECHO_CLIENT
- help
- The IPV4 Address of the ECHO Server.
-
# NOTE: This config is not displayed as a input in the Kconfig menu, as its value is
# entirely derived from the Device Type choice. However the CONFIG_EXAMPLE_DISPLAY_TYPE
# define that is produced is needed to configure the TFT library correctly.
diff --git a/examples/chef/esp32/sdkconfig.defaults b/examples/chef/esp32/sdkconfig.defaults
index ab2bb7c5dcb419..a3a1d8a272b8b3 100644
--- a/examples/chef/esp32/sdkconfig.defaults
+++ b/examples/chef/esp32/sdkconfig.defaults
@@ -47,3 +47,6 @@ CONFIG_STACK_CHECK=y
# Serial Flasher config
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="4MB"
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/chip-tool/BUILD.gn b/examples/chip-tool/BUILD.gn
index 2c5880cea2d9a0..f7340a3fb3f00b 100644
--- a/examples/chip-tool/BUILD.gn
+++ b/examples/chip-tool/BUILD.gn
@@ -61,6 +61,7 @@ static_library("chip-tool-utils") {
"commands/discover/DiscoverCommand.cpp",
"commands/discover/DiscoverCommissionablesCommand.cpp",
"commands/discover/DiscoverCommissionersCommand.cpp",
+ "commands/pairing/PairingCommand.cpp",
# TODO - enable CommissionedListCommand once DNS Cache is implemented
# "commands/pairing/CommissionedListCommand.cpp",
@@ -97,6 +98,7 @@ static_library("chip-tool-utils") {
"${chip_root}/src/app/tests/suites/commands/log",
"${chip_root}/src/app/tests/suites/commands/system",
"${chip_root}/src/app/tests/suites/pics",
+ "${chip_root}/src/controller/data_model",
"${chip_root}/src/credentials:file_attestation_trust_store",
"${chip_root}/src/lib",
"${chip_root}/src/platform",
@@ -115,15 +117,9 @@ static_library("chip-tool-utils") {
}
executable("chip-tool") {
- sources = [
- "commands/pairing/PairingCommand.cpp",
- "main.cpp",
- ]
+ sources = [ "main.cpp" ]
- deps = [
- ":chip-tool-utils",
- "${chip_root}/src/controller/data_model",
- ]
+ deps = [ ":chip-tool-utils" ]
output_dir = root_out_dir
}
diff --git a/examples/chip-tool/commands/clusters/CustomArgument.h b/examples/chip-tool/commands/clusters/CustomArgument.h
index 6755703fa0b7d5..63fe7d7ade387e 100644
--- a/examples/chip-tool/commands/clusters/CustomArgument.h
+++ b/examples/chip-tool/commands/clusters/CustomArgument.h
@@ -19,6 +19,7 @@
#pragma once
#include
+#include
#include
#include
diff --git a/examples/chip-tool/commands/clusters/SubscriptionsCommands.h b/examples/chip-tool/commands/clusters/SubscriptionsCommands.h
index 9626070b3fa953..2c4d96a71edd26 100644
--- a/examples/chip-tool/commands/clusters/SubscriptionsCommands.h
+++ b/examples/chip-tool/commands/clusters/SubscriptionsCommands.h
@@ -30,12 +30,15 @@ class ShutdownSubscription : public CHIPCommand
CHIPCommand("shutdown-one", credsIssuerConfig, "Shut down a single subscription, identified by its subscription id.")
{
AddArgument("subscription-id", 0, UINT64_MAX, &mSubscriptionId);
+ AddArgument("node-id", 0, UINT64_MAX, &mNodeId,
+ "The node id, scoped to the commissioner name the command is running under.");
}
/////////// CHIPCommand Interface /////////
CHIP_ERROR RunCommand() override
{
- CHIP_ERROR err = chip::app::InteractionModelEngine::GetInstance()->ShutdownSubscription(mSubscriptionId);
+ CHIP_ERROR err = chip::app::InteractionModelEngine::GetInstance()->ShutdownSubscription(
+ chip::ScopedNodeId(mNodeId, CurrentCommissioner().GetFabricIndex()), mSubscriptionId);
SetCommandExitStatus(err);
return CHIP_NO_ERROR;
}
@@ -43,6 +46,7 @@ class ShutdownSubscription : public CHIPCommand
private:
chip::SubscriptionId mSubscriptionId;
+ chip::NodeId mNodeId;
};
class ShutdownSubscriptionsForNode : public CHIPCommand
diff --git a/examples/chip-tool/commands/common/CHIPCommand.cpp b/examples/chip-tool/commands/common/CHIPCommand.cpp
index 663ebee8257d61..89dd1d536e4550 100644
--- a/examples/chip-tool/commands/common/CHIPCommand.cpp
+++ b/examples/chip-tool/commands/common/CHIPCommand.cpp
@@ -358,6 +358,12 @@ CHIP_ERROR CHIPCommand::InitializeCommissioner(std::string key, chip::FabricId f
// store the credentials in persistent storage, and
// generate when not available in the storage.
ReturnLogErrorOnFailure(mCommissionerStorage.Init(key.c_str()));
+ if (mUseMaxSizedCerts.HasValue())
+ {
+ auto option = CredentialIssuerCommands::CredentialIssuerOptions::kMaximizeCertificateSizes;
+ mCredIssuerCmds->SetCredentialIssuerOption(option, mUseMaxSizedCerts.Value());
+ }
+
ReturnLogErrorOnFailure(mCredIssuerCmds->InitializeCredentialsIssuer(mCommissionerStorage));
chip::MutableByteSpan nocSpan(noc.Get(), chip::Controller::kMaxCHIPDERCertLength);
diff --git a/examples/chip-tool/commands/common/CHIPCommand.h b/examples/chip-tool/commands/common/CHIPCommand.h
index 1714928ea1096c..7dd36a7c7d6214 100644
--- a/examples/chip-tool/commands/common/CHIPCommand.h
+++ b/examples/chip-tool/commands/common/CHIPCommand.h
@@ -70,6 +70,9 @@ class CHIPCommand : public Command
"4. The default if not specified is \"alpha\".");
AddArgument("commissioner-nodeid", 0, UINT64_MAX, &mCommissionerNodeId,
"The node id to use for chip-tool. If not provided, kTestControllerNodeId (112233, 0x1B669) will be used.");
+ AddArgument("use-max-sized-certs", 0, 1, &mUseMaxSizedCerts,
+ "Maximize the size of operational certificates. If not provided or 0 (\"false\"), normally sized operational "
+ "certificates are generated.");
#if CHIP_CONFIG_TRANSPORT_TRACE_ENABLED
AddArgument("trace_file", &mTraceFile);
AddArgument("trace_log", 0, 1, &mTraceLog);
@@ -153,6 +156,7 @@ class CHIPCommand : public Command
chip::Optional mCommissionerNodeId;
chip::Optional mBleAdapterId;
chip::Optional mPaaTrustStorePath;
+ chip::Optional mUseMaxSizedCerts;
// Cached trust store so commands other than the original startup command
// can spin up commissioners as needed.
diff --git a/examples/chip-tool/commands/common/CredentialIssuerCommands.h b/examples/chip-tool/commands/common/CredentialIssuerCommands.h
index 951ef86efceb40..cc04863ee2f8b6 100644
--- a/examples/chip-tool/commands/common/CredentialIssuerCommands.h
+++ b/examples/chip-tool/commands/common/CredentialIssuerCommands.h
@@ -74,4 +74,23 @@ class CredentialIssuerCommands
virtual CHIP_ERROR GenerateControllerNOCChain(chip::NodeId nodeId, chip::FabricId fabricId, const chip::CATValues & cats,
chip::Crypto::P256Keypair & keypair, chip::MutableByteSpan & rcac,
chip::MutableByteSpan & icac, chip::MutableByteSpan & noc) = 0;
+
+ // All options must start false
+ enum CredentialIssuerOptions : uint8_t
+ {
+ kMaximizeCertificateSizes = 0, // If set, certificate chains will be maximized for testing via padding
+ };
+
+ virtual void SetCredentialIssuerOption(CredentialIssuerOptions option, bool isEnabled)
+ {
+ // Do nothing
+ (void) option;
+ (void) isEnabled;
+ }
+
+ virtual bool GetCredentialIssuerOption(CredentialIssuerOptions option)
+ {
+ // All options always start false
+ return false;
+ }
};
diff --git a/examples/chip-tool/commands/discover/Commands.h b/examples/chip-tool/commands/discover/Commands.h
index f7a41183bedf56..b6ef1e3240ebb7 100644
--- a/examples/chip-tool/commands/discover/Commands.h
+++ b/examples/chip-tool/commands/discover/Commands.h
@@ -18,9 +18,10 @@
#pragma once
-#include "DiscoverCommand.h"
-#include "DiscoverCommissionablesCommand.h"
-#include "DiscoverCommissionersCommand.h"
+#include "commands/common/Commands.h"
+#include "commands/discover/DiscoverCommand.h"
+#include "commands/discover/DiscoverCommissionablesCommand.h"
+#include "commands/discover/DiscoverCommissionersCommand.h"
#include
class Resolve : public DiscoverCommand, public chip::AddressResolve::NodeListener
diff --git a/examples/chip-tool/commands/example/ExampleCredentialIssuerCommands.h b/examples/chip-tool/commands/example/ExampleCredentialIssuerCommands.h
index 74646c8b5f10ba..40a2871b19437b 100644
--- a/examples/chip-tool/commands/example/ExampleCredentialIssuerCommands.h
+++ b/examples/chip-tool/commands/example/ExampleCredentialIssuerCommands.h
@@ -49,6 +49,33 @@ class ExampleCredentialIssuerCommands : public CredentialIssuerCommands
return mOpCredsIssuer.GenerateNOCChainAfterValidation(nodeId, fabricId, cats, keypair.Pubkey(), rcac, icac, noc);
}
+ void SetCredentialIssuerOption(CredentialIssuerOptions option, bool isEnabled) override
+ {
+ switch (option)
+ {
+ case CredentialIssuerOptions::kMaximizeCertificateSizes:
+ mUsesMaxSizedCerts = isEnabled;
+ mOpCredsIssuer.SetMaximallyLargeCertsUsed(mUsesMaxSizedCerts);
+ break;
+ default:
+ break;
+ }
+ }
+
+ bool GetCredentialIssuerOption(CredentialIssuerOptions option) override
+ {
+ switch (option)
+ {
+ case CredentialIssuerOptions::kMaximizeCertificateSizes:
+ return mUsesMaxSizedCerts;
+ default:
+ return false;
+ }
+ }
+
+protected:
+ bool mUsesMaxSizedCerts = false;
+
private:
chip::Controller::ExampleOperationalCredentialsIssuer mOpCredsIssuer;
};
diff --git a/examples/chip-tool/commands/group/Commands.h b/examples/chip-tool/commands/group/Commands.h
index 6aa59c581fdd80..e60ba6853fda85 100644
--- a/examples/chip-tool/commands/group/Commands.h
+++ b/examples/chip-tool/commands/group/Commands.h
@@ -18,11 +18,12 @@
#pragma once
-#include "../common/CHIPCommand.h"
-#include "../common/Command.h"
-
#include
+#include "commands/common/CHIPCommand.h"
+#include "commands/common/Command.h"
+#include "commands/common/Commands.h"
+
class ShowControllerGroups : public CHIPCommand
{
public:
diff --git a/examples/chip-tool/commands/interactive/Commands.h b/examples/chip-tool/commands/interactive/Commands.h
index 19feb20f163999..04249045c9caef 100644
--- a/examples/chip-tool/commands/interactive/Commands.h
+++ b/examples/chip-tool/commands/interactive/Commands.h
@@ -18,10 +18,9 @@
#pragma once
-#include "../common/CHIPCommand.h"
-#include "../common/Commands.h"
-
-#include "InteractiveCommands.h"
+#include "commands/common/CHIPCommand.h"
+#include "commands/common/Commands.h"
+#include "commands/interactive/InteractiveCommands.h"
void registerCommandsInteractive(Commands & commands, CredentialIssuerCommands * credsIssuerConfig)
{
diff --git a/examples/chip-tool/commands/pairing/Commands.h b/examples/chip-tool/commands/pairing/Commands.h
index 80506e6df0e9e0..4841d0c0e0f03c 100644
--- a/examples/chip-tool/commands/pairing/Commands.h
+++ b/examples/chip-tool/commands/pairing/Commands.h
@@ -18,10 +18,11 @@
#pragma once
-#include "CloseSessionCommand.h"
-#include "CommissionedListCommand.h"
-#include "OpenCommissioningWindowCommand.h"
-#include "PairingCommand.h"
+#include "commands/common/Commands.h"
+#include "commands/pairing/CloseSessionCommand.h"
+#include "commands/pairing/CommissionedListCommand.h"
+#include "commands/pairing/OpenCommissioningWindowCommand.h"
+#include "commands/pairing/PairingCommand.h"
#include
#include
diff --git a/examples/chip-tool/commands/payload/Commands.h b/examples/chip-tool/commands/payload/Commands.h
index 1b5eb2c7c5c62a..0cc5cae0a0879c 100644
--- a/examples/chip-tool/commands/payload/Commands.h
+++ b/examples/chip-tool/commands/payload/Commands.h
@@ -18,10 +18,11 @@
#pragma once
-#include "AdditionalDataParseCommand.h"
-#include "SetupPayloadGenerateCommand.h"
-#include "SetupPayloadParseCommand.h"
-#include "SetupPayloadVerhoeff.h"
+#include "commands/common/Commands.h"
+#include "commands/payload/AdditionalDataParseCommand.h"
+#include "commands/payload/SetupPayloadGenerateCommand.h"
+#include "commands/payload/SetupPayloadParseCommand.h"
+#include "commands/payload/SetupPayloadVerhoeff.h"
void registerCommandsPayload(Commands & commands)
{
diff --git a/examples/chip-tool/templates/ComplexArgumentParser.zapt b/examples/chip-tool/templates/ComplexArgumentParser.zapt
index 9597dc57fcbdab..9ac2c7094c8cd0 100644
--- a/examples/chip-tool/templates/ComplexArgumentParser.zapt
+++ b/examples/chip-tool/templates/ComplexArgumentParser.zapt
@@ -1,5 +1,10 @@
{{> header}}
+#include
+
+#include
+#include
+
{{#structs_with_cluster_name}}
static CHIP_ERROR Setup(const char * label, {{zapTypeToEncodableClusterObjectType name ns=clusterName}} & request, Json::Value & value);
diff --git a/examples/chip-tool/templates/helper.js b/examples/chip-tool/templates/helper.js
deleted file mode 100644
index 6fdc65cc32090d..00000000000000
--- a/examples/chip-tool/templates/helper.js
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- *
- * Copyright (c) 2021 Project CHIP Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Import helpers from zap core
-const zapPath = '../../../third_party/zap/repo/dist/src-electron/';
-const templateUtil = require(zapPath + 'generator/template-util.js');
-const zclHelper = require(zapPath + 'generator/helper-zcl.js');
-const zclQuery = require(zapPath + 'db/query-zcl.js');
-
-const ChipTypesHelper = require('../../../src/app/zap-templates/common/ChipTypesHelper.js');
-
-function asDelimitedCommand(name)
-{
- return name.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
-}
-
-function asTypeMinValue(type)
-{
- function fn(pkgId)
- {
- const options = { 'hash' : {} };
- this.isArray = false;
- return zclHelper.asUnderlyingZclType.call(this, type, options).then(zclType => {
- const basicType = ChipTypesHelper.asBasicType(zclType);
- switch (basicType) {
- case 'bool':
- return '0';
- case 'int8_t':
- case 'int16_t':
- case 'int32_t':
- case 'int64_t':
- return 'INT' + parseInt(basicType.slice(3)) + '_MIN';
- case 'uint8_t':
- case 'uint16_t':
- case 'uint32_t':
- case 'uint64_t':
- return '0';
- case 'float':
- case 'double':
- return `-std::numeric_limits<${basicType}>::infinity()`;
- default:
- error = 'asTypeMinValue: Unhandled underlying type ' + zclType + ' for original type ' + type;
- throw error;
- }
- })
- }
-
- const promise = templateUtil.ensureZclPackageId(this).then(fn.bind(this)).catch(err => {
- console.log(err);
- throw err;
- });
- return templateUtil.templatePromise(this.global, promise);
-}
-
-function asTypeMaxValue(type)
-{
- function fn(pkgId)
- {
- const options = { 'hash' : {} };
- return zclHelper.asUnderlyingZclType.call(this, type, options).then(zclType => {
- const basicType = ChipTypesHelper.asBasicType(zclType);
- switch (basicType) {
- case 'bool':
- return '1';
- case 'int8_t':
- case 'int16_t':
- case 'int32_t':
- case 'int64_t':
- return 'INT' + parseInt(basicType.slice(3)) + '_MAX';
- case 'uint8_t':
- case 'uint16_t':
- case 'uint32_t':
- case 'uint64_t':
- return 'UINT' + parseInt(basicType.slice(4)) + '_MAX';
- case 'float':
- case 'double':
- return `std::numeric_limits<${basicType}>::infinity()`;
- default:
- return 'err';
- error = 'asTypeMaxValue: Unhandled underlying type ' + zclType + ' for original type ' + type;
- throw error;
- }
- })
- }
-
- const promise = templateUtil.ensureZclPackageId(this).then(fn.bind(this)).catch(err => {
- console.log(err);
- throw err;
- });
- return templateUtil.templatePromise(this.global, promise);
-}
-
-async function structs_with_cluster_name(options)
-{
- const packageId = await templateUtil.ensureZclPackageId(this);
-
- const structs = await zclQuery.selectAllStructsWithItems(this.global.db, packageId);
-
- let blocks = [];
- for (const s of structs) {
- if (s.struct_cluster_count == 0) {
- continue;
- }
-
- if (s.struct_cluster_count == 1) {
- const clusters = await zclQuery.selectStructClusters(this.global.db, s.id);
- blocks.push(
- { id : s.id, name : s.name, struct_fabric_idx_field : s.struct_fabric_idx_field, clusterName : clusters[0].name });
- }
-
- if (s.struct_cluster_count > 1) {
- blocks.push({ id : s.id, name : s.name, struct_fabric_idx_field : s.struct_fabric_idx_field, clusterName : "detail" });
- }
- }
-
- return templateUtil.collectBlocks(blocks, options, this);
-}
-
-async function assertSameTestType(current, expected)
-{
- if (current == expected) {
- return '';
- }
-
- const filename = this.parent.parent.parent.filename;
- const testName = this.parent.parent.parent.testName;
- const error = `\nFile: ${filename}\nTest: ${testName}\nCluster ${this.parent.cluster} Attribute: ${this.name}: Constraint type "${
- expected}" does not match the current type "${current}".`;
- throw error;
-}
-
-//
-// Module exports
-//
-exports.asDelimitedCommand = asDelimitedCommand;
-exports.asTypeMinValue = asTypeMinValue;
-exports.asTypeMaxValue = asTypeMaxValue;
-exports.structs_with_cluster_name = structs_with_cluster_name;
-exports.assertSameTestType = assertSameTestType;
diff --git a/examples/chip-tool/templates/logging/DataModelLogger.zapt b/examples/chip-tool/templates/logging/DataModelLogger.zapt
index 69550b9bdf12b1..468f26619d689d 100644
--- a/examples/chip-tool/templates/logging/DataModelLogger.zapt
+++ b/examples/chip-tool/templates/logging/DataModelLogger.zapt
@@ -1,5 +1,8 @@
{{> header}}
+#include
+#include
+
{{#structs_with_cluster_name}}
static CHIP_ERROR LogValue(const char * label, size_t indent, {{zapTypeToDecodableClusterObjectType name ns=clusterName isArgument=true}} value);
{{/structs_with_cluster_name}}
diff --git a/examples/chip-tool/templates/templates.json b/examples/chip-tool/templates/templates.json
index e61ce2120942d7..1552ab8566bfa6 100644
--- a/examples/chip-tool/templates/templates.json
+++ b/examples/chip-tool/templates/templates.json
@@ -2,11 +2,11 @@
"name": "CHIP Tool templates",
"version": "chip-v1",
"helpers": [
- "../../../src/app/zap-templates/partials/helper.js",
- "../../../src/app/zap-templates/common/StringHelper.js",
- "../../../src/app/zap-templates/templates/app/helper.js",
- "../../../src/app/zap-templates/templates/chip/helper.js",
- "helper.js"
+ "partials/helper.js",
+ "common/StringHelper.js",
+ "templates/app/helper.js",
+ "templates/chip/helper.js",
+ "chip-tool/templates/helper.js"
],
"override": "../../../src/app/zap-templates/common/override.js",
"partials": [
diff --git a/examples/chip-tool/templates/tests/commands.zapt b/examples/chip-tool/templates/tests/commands.zapt
index 4c73a5675ac12c..64b9b349372e76 100644
--- a/examples/chip-tool/templates/tests/commands.zapt
+++ b/examples/chip-tool/templates/tests/commands.zapt
@@ -5,6 +5,7 @@
#if CONFIG_ENABLE_YAML_TESTS
#include
+#include
#include
#include
#include
@@ -17,7 +18,7 @@ public:
TestList() : Command("list") {};
CHIP_ERROR Run() override
{
- {{#chip_tests (getTests)}}printf("{{filename}}\n");{{/chip_tests}}
+ {{#chip_tests "../../../../src/app/tests/suites/ciTests.json"}}printf("{{filename}}\n");{{/chip_tests}}
return CHIP_NO_ERROR;
}
@@ -29,14 +30,14 @@ public:
ManualTestList() : Command("list-manual") {};
CHIP_ERROR Run() override
{
- {{#chip_tests (getManualTests)}}printf("{{filename}}\n");{{/chip_tests}}
+ {{#chip_tests "../../../../src/app/tests/suites/manualTests.json"}}printf("{{filename}}\n");{{/chip_tests}}
return CHIP_NO_ERROR;
}
};
-{{>test_cluster tests=(getTests) credsIssuerConfigArg=true needsWaitDuration=true}}
-{{>test_cluster tests=(getManualTests) credsIssuerConfigArg=true needsWaitDuration=true}}
+{{>test_cluster tests="../../../../src/app/tests/suites/ciTests.json" credsIssuerConfigArg=true needsWaitDuration=true}}
+{{>test_cluster tests="../../../../src/app/tests/suites/manualTests.json" credsIssuerConfigArg=true needsWaitDuration=true}}
#endif // CONFIG_ENABLE_YAML_TESTS
@@ -48,10 +49,10 @@ void registerCommandsTests(Commands & commands, CredentialIssuerCommands * creds
#if CONFIG_ENABLE_YAML_TESTS
make_unique(),
make_unique(),
- {{#chip_tests (getTests)}}
+ {{#chip_tests "../../../../src/app/tests/suites/ciTests.json"}}
make_unique<{{filename}}Suite>(credsIssuerConfig),
{{/chip_tests}}
- {{#chip_tests (getManualTests)}}
+ {{#chip_tests "../../../../src/app/tests/suites/manualTests.json"}}
make_unique<{{filename}}Suite>(credsIssuerConfig),
{{/chip_tests}}
#endif // CONFIG_ENABLE_YAML_TESTS
diff --git a/examples/chip-tool/templates/tests/helper.js b/examples/chip-tool/templates/tests/helper.js
deleted file mode 100644
index d50912ca9f5703..00000000000000
--- a/examples/chip-tool/templates/tests/helper.js
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- *
- * Copyright (c) 2022 Project CHIP Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-const { zapTypeToDecodableClusterObjectType, zapTypeToEncodableClusterObjectType, asUpperCamelCase, asLowerCamelCase }
-= require('../../../../src/app/zap-templates/templates/app/helper.js');
-const { isTestOnlyCluster } = require('../../../../src/app/zap-templates/common/simulated-clusters/SimulatedClusters.js');
-
-function utf8StringLength(str)
-{
- return new TextEncoder().encode(str).length
-}
-
-/*
- * Returns the name to use for accessing a given property of
- * a decodable type.
- *
- */
-function asPropertyValue(options)
-{
- let rootObject = 'value';
-
- let context = options.hash.context || this;
-
- // The decodable type for commands is a struct by default, even if the
- // command just returns a single value.
- if (context.parent.isCommand) {
- rootObject += '.' + asLowerCamelCase(context.name);
- }
-
- if (context.isOptional && !options.hash.dontUnwrapValue) {
- rootObject += '.Value()';
- }
-
- return rootObject;
-}
-
-async function asEncodableType()
-{
- // Copy some properties needed by zapTypeToEncodableClusterObjectType
- let target = { global : this.global, entryType : this.entryType };
-
- let type;
- if ('commandObject' in this) {
- type = this.commandObject.name;
- } else if ('attributeObject' in this) {
- type = this.attributeObject.type;
- target.isArray = this.attributeObject.isArray;
- target.isOptional = this.attributeObject.isOptional;
- target.isNullable = this.attributeObject.isNullable;
- } else {
- throw new Error("Unsupported encodable type");
- }
-
- if (isTestOnlyCluster(this.cluster) || 'commandObject' in this) {
- return `chip::app::Clusters::${asUpperCamelCase(this.cluster)}::Commands::${asUpperCamelCase(type)}::Type`;
- }
-
- const options = { 'hash' : { ns : this.cluster } };
- return await zapTypeToEncodableClusterObjectType.call(target, type, options);
-}
-
-async function asDecodableType()
-{
- // Copy some properties needed by zapTypeToDecodableClusterObjectType
- let target = { global : this.global, entryType : this.entryType };
-
- let type;
- if ('commandObject' in this) {
- type = this.commandObject.responseName;
- } else if ('attributeObject' in this) {
- type = this.attributeObject.type;
- target.isArray = this.attributeObject.isArray;
- target.isOptional = this.attributeObject.isOptional;
- target.isNullable = this.attributeObject.isNullable;
- } else if ('eventObject' in this) {
- type = this.event;
- } else {
- throw new Error("Unsupported decodable type");
- }
-
- if (isTestOnlyCluster(this.cluster) || 'commandObject' in this) {
- return `chip::app::Clusters::${asUpperCamelCase(this.cluster)}::Commands::${asUpperCamelCase(type)}::DecodableType`;
- }
-
- const options = { 'hash' : { ns : this.cluster } };
- return await zapTypeToDecodableClusterObjectType.call(target, type, options);
-}
-
-//
-// Module exports
-//
-exports.utf8StringLength = utf8StringLength;
-exports.asPropertyValue = asPropertyValue;
-exports.asDecodableType = asDecodableType;
-exports.asEncodableType = asEncodableType;
diff --git a/examples/chip-tool/templates/tests/templates.json b/examples/chip-tool/templates/tests/templates.json
index 45152c4b2a0fab..93505fe7a1fce4 100644
--- a/examples/chip-tool/templates/tests/templates.json
+++ b/examples/chip-tool/templates/tests/templates.json
@@ -2,15 +2,19 @@
"name": "CHIP Tool Tests templates",
"version": "chip-v1",
"helpers": [
- "../../../../src/app/zap-templates/partials/helper.js",
- "../../../../src/app/zap-templates/common/StringHelper.js",
- "../../../../src/app/zap-templates/templates/app/helper.js",
- "../../../../src/app/zap-templates/templates/chip/helper.js",
- "../../../../src/app/zap-templates/common/ClusterTestGeneration.js",
- "../helper.js",
- "helper.js",
- "tests.js"
+ "partials/helper.js",
+ "common/StringHelper.js",
+ "templates/app/helper.js",
+ "templates/chip/helper.js",
+ "common/ClusterTestGeneration.js",
+ "chip-tool/templates/helper.js",
+ "chip-tool/templates/tests/helper.js"
],
+ "resources": {
+ "pics-metafile": "../../../../src/app/tests/suites/certification/PICS.yaml",
+ "certification-metadir": "../../../../src/app/tests/suites/certification",
+ "test-metadir": "../../../../src/app/tests/suites"
+ },
"override": "../../../../src/app/zap-templates/common/override.js",
"partials": [
{
diff --git a/examples/chip-tool/templates/tests/tests.js b/examples/chip-tool/templates/tests/tests.js
deleted file mode 100644
index 2f4df96281d27b..00000000000000
--- a/examples/chip-tool/templates/tests/tests.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- *
- * Copyright (c) 2021 Project CHIP Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-const testPath = '../../../../src/app/tests/suites/';
-const TestSuite = require(testPath + 'tests.js');
-
-function getManualTests()
-{
- return TestSuite.getManualTests();
-}
-
-function getTests()
-{
- return TestSuite.getTests();
-}
-
-//
-// Module exports
-//
-exports.getTests = getTests;
-exports.getManualTests = getManualTests;
diff --git a/examples/common/pigweed/protos/device_service.options b/examples/common/pigweed/protos/device_service.options
index b5f9da673ff778..a0798688c38a84 100644
--- a/examples/common/pigweed/protos/device_service.options
+++ b/examples/common/pigweed/protos/device_service.options
@@ -5,3 +5,4 @@ chip.rpc.PairingInfo.qr_code max_size:256
chip.rpc.PairingInfo.qr_code_url max_size:256
chip.rpc.SpakeInfo.verifier max_size:97 // kSpake2p_VerifierSerialized_Length
chip.rpc.SpakeInfo.salt max_size:32 // kSpake2p_Max_PBKDF_Salt_Length
+chip.rpc.MetadataForProvider.tlv max_size:512 // length defined in chip spec 11.20.6.7
diff --git a/examples/common/pigweed/protos/device_service.proto b/examples/common/pigweed/protos/device_service.proto
index 1c13d7d7281f14..6903e4a9055414 100644
--- a/examples/common/pigweed/protos/device_service.proto
+++ b/examples/common/pigweed/protos/device_service.proto
@@ -41,10 +41,15 @@ message PairingState {
bool pairing_enabled = 1;
}
+message MetadataForProvider {
+ bytes tlv = 1;
+}
+
service Device {
rpc FactoryReset(pw.protobuf.Empty) returns (pw.protobuf.Empty){}
rpc Reboot(pw.protobuf.Empty) returns (pw.protobuf.Empty){}
rpc TriggerOta(pw.protobuf.Empty) returns (pw.protobuf.Empty){}
+ rpc SetOtaMetadataForProvider(MetadataForProvider) returns (pw.protobuf.Empty){}
rpc GetDeviceInfo(pw.protobuf.Empty) returns (DeviceInfo){}
rpc GetDeviceState(pw.protobuf.Empty) returns (DeviceState){}
rpc SetPairingState(PairingState) returns (pw.protobuf.Empty){}
diff --git a/examples/common/pigweed/rpc_services/Device.h b/examples/common/pigweed/rpc_services/Device.h
index d3d5afd165810d..4a80cb44516236 100644
--- a/examples/common/pigweed/rpc_services/Device.h
+++ b/examples/common/pigweed/rpc_services/Device.h
@@ -223,7 +223,7 @@ class Device : public pw_rpc::nanopb::Device::Service
virtual pw::Status TriggerOta(const pw_protobuf_Empty & request, pw_protobuf_Empty & response)
{
-#if CONFIG_CHIP_OTA_REQUESTOR
+#if CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
chip::DeviceLayer::PlatformMgr().ScheduleWork(
[](intptr_t) {
chip::OTARequestorInterface * requestor = chip::GetRequestorInstance();
@@ -238,10 +238,33 @@ class Device : public pw_rpc::nanopb::Device::Service
},
reinterpret_cast(nullptr));
return pw::OkStatus();
-#else
+#else // CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
ChipLogError(AppServer, "Trigger OTA requested, but OTA requestor not compiled in.");
return pw::Status::Unimplemented();
-#endif
+#endif // CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
+ }
+
+ virtual pw::Status SetOtaMetadataForProvider(const chip_rpc_MetadataForProvider & request, pw_protobuf_Empty & response)
+ {
+#if CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
+ chip::OTARequestorInterface * requestor = chip::GetRequestorInstance();
+ if (requestor == nullptr)
+ {
+ ChipLogError(SoftwareUpdate, "Can't get the CASESessionManager");
+ return pw::Status::Unavailable();
+ }
+ else if (sizeof(metadataForProviderBuffer) < request.tlv.size)
+ {
+ return pw::Status::ResourceExhausted();
+ }
+ memcpy(metadataForProviderBuffer, request.tlv.bytes, request.tlv.size);
+ DeviceLayer::StackLock lock;
+ requestor->SetMetadataForProvider(chip::ByteSpan(metadataForProviderBuffer, request.tlv.size));
+ return pw::OkStatus();
+#else // CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
+ ChipLogError(AppServer, "OTA set metadata for provider requested, but OTA requestor not compiled in.");
+ return pw::Status::Unimplemented();
+#endif // CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
}
virtual pw::Status SetPairingState(const chip_rpc_PairingState & request, pw_protobuf_Empty & response)
@@ -415,6 +438,10 @@ class Device : public pw_rpc::nanopb::Device::Service
}
private:
+#if CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
+ static constexpr size_t kMaxMetadataForProviderLength = 512; // length defined in chip spec 11.20.6.7
+ uint8_t metadataForProviderBuffer[kMaxMetadataForProviderLength];
+#endif // CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
Internal::CommissionableDataProviderRpcWrapper mCommissionableDataProvider;
};
diff --git a/examples/darwin-framework-tool/commands/common/CHIPToolKeypair.mm b/examples/darwin-framework-tool/commands/common/CHIPToolKeypair.mm
index 425a45fba62f83..6c60345fc973a1 100644
--- a/examples/darwin-framework-tool/commands/common/CHIPToolKeypair.mm
+++ b/examples/darwin-framework-tool/commands/common/CHIPToolKeypair.mm
@@ -17,6 +17,7 @@ @interface CHIPToolKeypair ()
@property (nonatomic) chip::Crypto::P256Keypair mIssuer;
@property (nonatomic) NSData * ipk;
@property (atomic) uint32_t mNow;
+@property (nonatomic, readonly) SecKeyRef mPublicKey;
@end
@implementation CHIPToolKeypair
@@ -46,16 +47,19 @@ - (NSData *)signMessageECDSA_RAW:(NSData *)message
- (SecKeyRef)publicKey
{
- chip::Crypto::P256PublicKey publicKey = _mKeyPair.Pubkey();
- NSData * publicKeyNSData = [NSData dataWithBytes:publicKey.Bytes() length:publicKey.Length()];
- NSDictionary * attributes = @{
- (__bridge NSString *) kSecAttrKeyClass : (__bridge NSString *) kSecAttrKeyClassPublic,
- (NSString *) kSecAttrKeyType : (NSString *) kSecAttrKeyTypeECSECPrimeRandom,
- (NSString *) kSecAttrKeySizeInBits : @Public_KeySize,
- (NSString *) kSecAttrLabel : kCHIPToolKeychainLabel,
- (NSString *) kSecAttrApplicationTag : @CHIPPlugin_CAKeyTag,
- };
- return SecKeyCreateWithData((__bridge CFDataRef) publicKeyNSData, (__bridge CFDictionaryRef) attributes, nullptr);
+ if (_mPublicKey == nil) {
+ chip::Crypto::P256PublicKey publicKey = _mKeyPair.Pubkey();
+ NSData * publicKeyNSData = [NSData dataWithBytes:publicKey.Bytes() length:publicKey.Length()];
+ NSDictionary * attributes = @{
+ (__bridge NSString *) kSecAttrKeyClass : (__bridge NSString *) kSecAttrKeyClassPublic,
+ (NSString *) kSecAttrKeyType : (NSString *) kSecAttrKeyTypeECSECPrimeRandom,
+ (NSString *) kSecAttrKeySizeInBits : @Public_KeySize,
+ (NSString *) kSecAttrLabel : kCHIPToolKeychainLabel,
+ (NSString *) kSecAttrApplicationTag : @CHIPPlugin_CAKeyTag,
+ };
+ _mPublicKey = SecKeyCreateWithData((__bridge CFDataRef) publicKeyNSData, (__bridge CFDictionaryRef) attributes, nullptr);
+ }
+ return _mPublicKey;
}
- (CHIP_ERROR)Deserialize:(chip::Crypto::P256SerializedKeypair &)input
@@ -136,4 +140,11 @@ - (CHIP_ERROR)initSerializedKeyFromValue:(NSData *)value serializedKey:(chip::Cr
return CHIP_NO_ERROR;
}
+- (void)dealloc
+{
+ if (_mPublicKey) {
+ CFRelease(_mPublicKey);
+ }
+}
+
@end
diff --git a/examples/darwin-framework-tool/templates/helper.js b/examples/darwin-framework-tool/templates/helper.js
deleted file mode 100644
index 16197e409ac13c..00000000000000
--- a/examples/darwin-framework-tool/templates/helper.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- *
- * Copyright (c) 2021 Project CHIP Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function hasArguments()
-{
- return !!this.arguments.length
-}
-
-//
-// Module exports
-//
-exports.hasArguments = hasArguments;
diff --git a/examples/darwin-framework-tool/templates/templates.json b/examples/darwin-framework-tool/templates/templates.json
index 1535bf06327870..a571ccb860cf48 100644
--- a/examples/darwin-framework-tool/templates/templates.json
+++ b/examples/darwin-framework-tool/templates/templates.json
@@ -2,14 +2,19 @@
"name": "CHIP Tool Darwin templates",
"version": "chip-v1",
"helpers": [
- "../../../examples/chip-tool/templates/helper.js",
- "../../../src/app/zap-templates/common/StringHelper.js",
- "../../../src/app/zap-templates/partials/helper.js",
- "../../../src/app/zap-templates/templates/app/helper.js",
- "../../../src/app/zap-templates/templates/chip/helper.js",
- "../../../src/app/zap-templates/common/ClusterTestGeneration.js",
- "../../../src/darwin/Framework/CHIP/templates/helper.js"
+ "chip-tool/templates/helper.js",
+ "common/StringHelper.js",
+ "partials/helper.js",
+ "templates/app/helper.js",
+ "templates/chip/helper.js",
+ "common/ClusterTestGeneration.js",
+ "darwin/Framework/CHIP/templates/helper.js"
],
+ "resources": {
+ "pics-metafile": "../../../src/app/tests/suites/certification/PICS.yaml",
+ "certification-metadir": "../../../src/app/tests/suites/certification",
+ "test-metadir": "../../../src/app/tests/suites"
+ },
"override": "../../../src/app/zap-templates/common/override.js",
"partials": [
{
diff --git a/examples/darwin-framework-tool/templates/tests/ciTests.json b/examples/darwin-framework-tool/templates/tests/ciTests.json
new file mode 100644
index 00000000000000..fd8f8840d162a0
--- /dev/null
+++ b/examples/darwin-framework-tool/templates/tests/ciTests.json
@@ -0,0 +1,25 @@
+{
+ "include": "../../../../src/app/tests/suites/ciTests.json",
+ "disable": [
+ "Test_TC_SC_4_2",
+ "TestClusterComplexTypes",
+ "TestEvents",
+ "TestDiscovery",
+ "TestGroupMessaging",
+ "Test_TC_DGTHREAD_2_1",
+ "Test_TC_DGTHREAD_2_2",
+ "Test_TC_DGTHREAD_2_3",
+ "Test_TC_DGTHREAD_2_4",
+ "Test_TC_CC_7_2",
+ "Test_TC_CC_6_2",
+ "Test_TC_CC_6_3",
+ "Test_TC_CC_8_1",
+ "Test_TC_APPLAUNCHER_3_7",
+ "Test_TC_APPLAUNCHER_3_8",
+ "Test_TC_APPLAUNCHER_3_9",
+ "Test_TC_BINFO_2_1",
+ "Test_TC_SWTCH_2_1",
+ "Test_TC_G_2_1",
+ "Test_TC_FLABEL_2_1"
+ ]
+}
diff --git a/examples/darwin-framework-tool/templates/tests/commands.zapt b/examples/darwin-framework-tool/templates/tests/commands.zapt
index 5a3f1c07707024..2d1f547489bc4c 100644
--- a/examples/darwin-framework-tool/templates/tests/commands.zapt
+++ b/examples/darwin-framework-tool/templates/tests/commands.zapt
@@ -16,7 +16,7 @@ public:
TestList() : Command("list") {};
CHIP_ERROR Run() override
{
- {{#chip_tests (getTests)}}printf("{{filename}}\n");{{/chip_tests}}
+ {{#chip_tests "ciTests.json"}}printf("{{filename}}\n");{{/chip_tests}}
return CHIP_NO_ERROR;
}
@@ -28,14 +28,14 @@ public:
ManualTestList() : Command("list-manual") {};
CHIP_ERROR Run() override
{
- {{#chip_tests (getManualTests)}}printf("{{filename}}\n");{{/chip_tests}}
+ {{#chip_tests "manualTests.json"}}printf("{{filename}}\n");{{/chip_tests}}
return CHIP_NO_ERROR;
}
};
-{{>test_cluster tests=(getTests) credsIssuerConfigArg=false}}
-{{>test_cluster tests=(getManualTests) credsIssuerConfigArg=false}}
+{{>test_cluster tests="ciTests.json" credsIssuerConfigArg=false}}
+{{>test_cluster tests="manualTests.json" credsIssuerConfigArg=false}}
#endif // CONFIG_ENABLE_YAML_TESTS
@@ -47,10 +47,10 @@ void registerCommandsTests(Commands & commands)
#if CONFIG_ENABLE_YAML_TESTS
make_unique(),
make_unique(),
- {{#chip_tests (getTests)}}
+ {{#chip_tests "ciTests.json"}}
make_unique<{{filename}}>(),
{{/chip_tests}}
- {{#chip_tests (getManualTests)}}
+ {{#chip_tests "manualTests.json"}}
make_unique<{{filename}}>(),
{{/chip_tests}}
#endif // CONFIG_ENABLE_YAML_TESTS
diff --git a/examples/darwin-framework-tool/templates/tests/manualTests.json b/examples/darwin-framework-tool/templates/tests/manualTests.json
new file mode 100644
index 00000000000000..167f6d2a59e00c
--- /dev/null
+++ b/examples/darwin-framework-tool/templates/tests/manualTests.json
@@ -0,0 +1,3 @@
+{
+ "collection": []
+}
diff --git a/examples/darwin-framework-tool/templates/tests/templates.json b/examples/darwin-framework-tool/templates/tests/templates.json
index 6f46ea7e9aaf65..9ca4d2e533c183 100644
--- a/examples/darwin-framework-tool/templates/tests/templates.json
+++ b/examples/darwin-framework-tool/templates/tests/templates.json
@@ -2,17 +2,21 @@
"name": "CHIP Tool Tests templates",
"version": "chip-v1",
"helpers": [
- "../../../../examples/chip-tool/templates/helper.js",
- "../../../../examples/chip-tool/templates/tests/helper.js",
- "../../../../src/app/zap-templates/partials/helper.js",
- "../../../../src/app/zap-templates/common/StringHelper.js",
- "../../../../src/app/zap-templates/templates/app/helper.js",
- "../../../../src/app/zap-templates/templates/chip/helper.js",
- "../../../../src/app/zap-templates/common/ClusterTestGeneration.js",
- "../../../../src/darwin/Framework/CHIP/templates/helper.js",
- "../helper.js",
- "tests.js"
+ "chip-tool/templates/helper.js",
+ "chip-tool/templates/tests/helper.js",
+ "partials/helper.js",
+ "common/StringHelper.js",
+ "templates/app/helper.js",
+ "templates/chip/helper.js",
+ "common/ClusterTestGeneration.js",
+ "darwin/Framework/CHIP/templates/helper.js",
+ "darwin-framework-tool/templates/helper.js"
],
+ "resources": {
+ "pics-metafile": "../../../../src/app/tests/suites/certification/PICS.yaml",
+ "certification-metadir": "../../../../src/app/tests/suites/certification",
+ "test-metadir": "../../../../src/app/tests/suites"
+ },
"override": "../../../../src/app/zap-templates/common/override.js",
"partials": [
{
diff --git a/examples/darwin-framework-tool/templates/tests/tests.js b/examples/darwin-framework-tool/templates/tests/tests.js
deleted file mode 100644
index 13c3a062d1c9ab..00000000000000
--- a/examples/darwin-framework-tool/templates/tests/tests.js
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- *
- * Copyright (c) 2021 Project CHIP Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-const testPath = '../../../../src/app/tests/suites/';
-const TestSuite = require(testPath + 'tests.js');
-
-function getManualTests()
-{
- return [];
-}
-
-// clang-format off
-
-function getTests() {
-
- let tests = TestSuite.getTests();
-
- // TODO: This test needs FindCommissionable
- tests.disable('Test_TC_SC_4_2');
-
- // TestClusterComplexTypes requires representing nullable optionals in ways
- // that can differentiate missing and null, which Darwin can't right now.
- tests.disable('TestClusterComplexTypes');
-
- // TODO: TestEvents not supported in the codegen yet.
- tests.disable('TestEvents');
-
- // TODO: TestDiscovery needs FindCommissionable
- tests.disable('TestDiscovery');
-
- // TODO: TestGroupMessaging does not work on Darwin for now.
- tests.disable('TestGroupMessaging');
-
- // TODO: Test_TC_DIAG_TH_NW_2_1 does not work on Darwin for now.
- tests.disable('Test_TC_DGTHREAD_2_1');
-
- // TODO: Test_TC_DIAG_TH_NW_2_2 does not work on Darwin for now.
- tests.disable('Test_TC_DGTHREAD_2_2');
-
- // TODO: Test_TC_DIAG_TH_NW_2_3 does not work on Darwin for now.
- tests.disable('Test_TC_DGTHREAD_2_3');
-
- // TODO: Test_TC_DIAG_TH_NW_2_4 does not work on Darwin for now.
- tests.disable('Test_TC_DGTHREAD_2_4');
-
- // TODO: Test_TC_CC_7_2 seems to rely on pretty tight timing that seem to not
- // work right in the darwin tests.
- tests.disable('Test_TC_CC_7_2');
-
- // TODO: Test_TC_CC_6_2 does not work on Darwin(no ble asan) for now.
- tests.disable('Test_TC_CC_6_2');
-
- // TODO: Test_TC_CC_6_3 does not work on Darwin(no ble asan) for now.
- tests.disable('Test_TC_CC_6_3');
-
- // TODO: Test_TC_CC_8_1 does not work on Darwin(no ble asan) for now.
- tests.disable('Test_TC_CC_8_1');
-
- // TODO: Test_TC_CC_9_1 does not work on Darwin for now.
- // But is disabled in CI, so we can't disable it here.
- //tests.disable('Test_TC_CC_9_1');
-
- // TODO: Test_TC_CC_9_2 does not work on Darwin for now.
- // But is disabled in CI, so we can't disable it here.
- //tests.disable('Test_TC_CC_9_2');
-
- // TODO: Test_TC_CC_9_3 does not work on Darwin for now.
- // But is disabled in CI, so we can't disable it here.
- //tests.disable('Test_TC_CC_9_3');
-
- // TODO: Test_TC_MC_3_7 does not work on Darwin for now.
- tests.disable('Test_TC_APPLAUNCHER_3_7');
-
- // TODO: Test_TC_MC_3_8 does not work on Darwin for now.
- tests.disable('Test_TC_APPLAUNCHER_3_8');
-
- // TODO: Test_TC_MC_3_9 does not work on Darwin for now.
- tests.disable('Test_TC_APPLAUNCHER_3_9');
-
- // TODO: Test_TC_BINFO_2_1 does not work on Darwin for now.
- tests.disable('Test_TC_BINFO_2_1');
-
- // TODO: Test_TC_SWTCH_2_1 does not work on Darwin for now.
- tests.disable('Test_TC_SWTCH_2_1');
-
- return tests;
-}
-
-//
-// Module exports
-//
-exports.getTests = getTests;
-exports.getManualTests = getManualTests;
diff --git a/examples/light-switch-app/efr32/BUILD.gn b/examples/light-switch-app/efr32/BUILD.gn
index b3fb8fdd5b86c8..2d628f537f9f6e 100644
--- a/examples/light-switch-app/efr32/BUILD.gn
+++ b/examples/light-switch-app/efr32/BUILD.gn
@@ -199,21 +199,10 @@ efr32_executable("light_switch_app") {
# OpenThread Settings
if (chip_enable_openthread) {
deps += [
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform",
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform-utils",
+ "${chip_root}/third_party/openthread:openthread",
+ "${chip_root}/third_party/openthread:openthread-platform",
"${examples_plat_dir}:efr-matter-shell",
]
- if (chip_openthread_ftd) {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-ftd",
- "${chip_root}/third_party/openthread/repo:libopenthread-ftd",
- ]
- } else {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-mtd",
- "${chip_root}/third_party/openthread/repo:libopenthread-mtd",
- ]
- }
}
# Attestation Credentials
@@ -265,8 +254,15 @@ efr32_executable("light_switch_app") {
}
if (!disable_lcd) {
- sources += [ "${examples_plat_dir}/display/lcd.c" ]
- defines += [ "DISPLAY_ENABLED" ]
+ sources += [
+ "${examples_plat_dir}/display/demo-ui.c",
+ "${examples_plat_dir}/display/lcd.cpp",
+ ]
+ include_dirs += [ "${examples_plat_dir}/display" ]
+ defines += [
+ "DISPLAY_ENABLED",
+ "IS_DEMO_SWITCH=1",
+ ]
if (show_qr_code) {
defines += [ "QR_CODE_ENABLED" ]
deps += [ "${chip_root}/examples/common/QRCode" ]
diff --git a/examples/light-switch-app/efr32/args.gni b/examples/light-switch-app/efr32/args.gni
index 7df1c5e400f56f..8e1885d95d18d4 100644
--- a/examples/light-switch-app/efr32/args.gni
+++ b/examples/light-switch-app/efr32/args.gni
@@ -24,3 +24,5 @@ pw_log_BACKEND = "${chip_root}/src/lib/support/pw_log_chip"
pw_assert_BACKEND = "$dir_pw_assert_log:check_backend"
chip_enable_openthread = true
pw_rpc_CONFIG = "$dir_pw_rpc:disable_global_mutex"
+openthread_external_platform =
+ "${chip_root}/third_party/openthread/platforms/efr32:libopenthread-efr32"
diff --git a/examples/light-switch-app/efr32/include/AppConfig.h b/examples/light-switch-app/efr32/include/AppConfig.h
index 91501d889a6234..946b593cab50a4 100644
--- a/examples/light-switch-app/efr32/include/AppConfig.h
+++ b/examples/light-switch-app/efr32/include/AppConfig.h
@@ -32,7 +32,7 @@
extern "C" {
#endif
-void efr32LogInit(void);
+void efr32InitLog(void);
void efr32Log(const char * aFormat, ...);
#define EFR32_LOG(...) efr32Log(__VA_ARGS__);
diff --git a/examples/light-switch-app/efr32/src/AppTask.cpp b/examples/light-switch-app/efr32/src/AppTask.cpp
index 29d9e6527ea8e9..83ac3ac8c94ec7 100644
--- a/examples/light-switch-app/efr32/src/AppTask.cpp
+++ b/examples/light-switch-app/efr32/src/AppTask.cpp
@@ -70,6 +70,8 @@ namespace {
EmberAfIdentifyEffectIdentifier sIdentifyEffect = EMBER_ZCL_IDENTIFY_EFFECT_IDENTIFIER_STOP_EFFECT;
+bool mCurrentButtonState = false;
+
/**********************************************************
* Identify Callbacks
*********************************************************/
@@ -146,6 +148,9 @@ AppTask AppTask::sAppTask;
CHIP_ERROR AppTask::Init()
{
CHIP_ERROR err = CHIP_NO_ERROR;
+#ifdef DISPLAY_ENABLED
+ GetLCD().Init((uint8_t *) "Light Switch");
+#endif
err = BaseApplication::Init(&gIdentify);
if (err != CHIP_NO_ERROR)
@@ -221,9 +226,23 @@ void AppTask::SwitchActionEventHandler(AppEvent * aEvent)
if (aEvent->Type == AppEvent::kEventType_Button)
{
BindingCommandData * data = Platform::New();
- data->commandId = chip::app::Clusters::OnOff::Commands::Toggle::Id;
data->clusterId = chip::app::Clusters::OnOff::Id;
+ if (mCurrentButtonState)
+ {
+ mCurrentButtonState = false;
+ data->commandId = chip::app::Clusters::OnOff::Commands::Off::Id;
+ }
+ else
+ {
+ data->commandId = chip::app::Clusters::OnOff::Commands::On::Id;
+ mCurrentButtonState = true;
+ }
+
+#ifdef DISPLAY_ENABLED
+ sAppTask.GetLCD().WriteDemoUI(mCurrentButtonState);
+#endif
+
DeviceLayer::PlatformMgr().ScheduleWork(SwitchWorkerFunction, reinterpret_cast(data));
}
}
diff --git a/examples/light-switch-app/esp32/sdkconfig.defaults b/examples/light-switch-app/esp32/sdkconfig.defaults
index f8d119e98c2bec..4e780d862ad614 100644
--- a/examples/light-switch-app/esp32/sdkconfig.defaults
+++ b/examples/light-switch-app/esp32/sdkconfig.defaults
@@ -45,4 +45,7 @@ CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="4MB"
#enable debug shell
-CONFIG_ENABLE_CHIP_SHELL=y
\ No newline at end of file
+CONFIG_ENABLE_CHIP_SHELL=y
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/light-switch-app/light-switch-common/light-switch-app.matter b/examples/light-switch-app/light-switch-common/light-switch-app.matter
index 606239367b542d..27a458acdc6195 100644
--- a/examples/light-switch-app/light-switch-common/light-switch-app.matter
+++ b/examples/light-switch-app/light-switch-common/light-switch-app.matter
@@ -1262,12 +1262,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/light-switch-app/nrfconnect/CMakeLists.txt b/examples/light-switch-app/nrfconnect/CMakeLists.txt
index 865b8262749bb9..3a0084efa79c42 100644
--- a/examples/light-switch-app/nrfconnect/CMakeLists.txt
+++ b/examples/light-switch-app/nrfconnect/CMakeLists.txt
@@ -60,7 +60,7 @@ target_sources(app PRIVATE
main/BindingHandler.cpp
${GEN_DIR}/light-switch-app/zap-generated/callback-stub.cpp
${GEN_DIR}/light-switch-app/zap-generated/IMClusterCommandHandler.cpp
- ${NRFCONNECT_COMMON}/util/LEDWidget.cpp
+ ${NRFCONNECT_COMMON}/util/LEDWidget.cpp)
if(CONFIG_CHIP_OTA_REQUESTOR)
diff --git a/examples/lighting-app/cyw30739/build_overrides b/examples/lighting-app/cyw30739/build_overrides
deleted file mode 120000
index e578e73312ebd1..00000000000000
--- a/examples/lighting-app/cyw30739/build_overrides
+++ /dev/null
@@ -1 +0,0 @@
-../../build_overrides
\ No newline at end of file
diff --git a/examples/lighting-app/cyw30739/third_party/connectedhomeip b/examples/lighting-app/cyw30739/third_party/connectedhomeip
deleted file mode 120000
index c866b86874994d..00000000000000
--- a/examples/lighting-app/cyw30739/third_party/connectedhomeip
+++ /dev/null
@@ -1 +0,0 @@
-../../../..
\ No newline at end of file
diff --git a/examples/lighting-app/efr32/BUILD.gn b/examples/lighting-app/efr32/BUILD.gn
index 9a9e4c15b8f33c..fbd5a88a7909b9 100644
--- a/examples/lighting-app/efr32/BUILD.gn
+++ b/examples/lighting-app/efr32/BUILD.gn
@@ -204,21 +204,10 @@ efr32_executable("lighting_app") {
# OpenThread Settings
if (chip_enable_openthread) {
deps += [
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform",
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform-utils",
+ "${chip_root}/third_party/openthread:openthread",
+ "${chip_root}/third_party/openthread:openthread-platform",
"${examples_plat_dir}:efr-matter-shell",
]
- if (chip_openthread_ftd) {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-ftd",
- "${chip_root}/third_party/openthread/repo:libopenthread-ftd",
- ]
- } else {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-mtd",
- "${chip_root}/third_party/openthread/repo:libopenthread-mtd",
- ]
- }
}
if (chip_enable_ota_requestor) {
@@ -265,8 +254,16 @@ efr32_executable("lighting_app") {
}
if (!disable_lcd) {
- sources += [ "${examples_plat_dir}/display/lcd.c" ]
- defines += [ "DISPLAY_ENABLED" ]
+ sources += [
+ "${examples_plat_dir}/display/demo-ui.c",
+ "${examples_plat_dir}/display/lcd.cpp",
+ ]
+
+ include_dirs += [ "${examples_plat_dir}/display" ]
+ defines += [
+ "DISPLAY_ENABLED",
+ "IS_DEMO_LIGHT=1",
+ ]
if (show_qr_code) {
defines += [ "QR_CODE_ENABLED" ]
diff --git a/examples/lighting-app/efr32/args.gni b/examples/lighting-app/efr32/args.gni
index 7df1c5e400f56f..1e5ed4ca14102c 100644
--- a/examples/lighting-app/efr32/args.gni
+++ b/examples/lighting-app/efr32/args.gni
@@ -24,3 +24,6 @@ pw_log_BACKEND = "${chip_root}/src/lib/support/pw_log_chip"
pw_assert_BACKEND = "$dir_pw_assert_log:check_backend"
chip_enable_openthread = true
pw_rpc_CONFIG = "$dir_pw_rpc:disable_global_mutex"
+
+openthread_external_platform =
+ "${chip_root}/third_party/openthread/platforms/efr32:libopenthread-efr32"
diff --git a/examples/lighting-app/efr32/src/AppTask.cpp b/examples/lighting-app/efr32/src/AppTask.cpp
index d8fe8940ce3434..89963785b8f02b 100644
--- a/examples/lighting-app/efr32/src/AppTask.cpp
+++ b/examples/lighting-app/efr32/src/AppTask.cpp
@@ -21,12 +21,7 @@
#include "AppConfig.h"
#include "AppEvent.h"
#include "LEDWidget.h"
-#ifdef DISPLAY_ENABLED
-#include "lcd.h"
-#ifdef QR_CODE_ENABLED
-#include "qrcodegen.h"
-#endif // QR_CODE_ENABLED
-#endif // DISPLAY_ENABLED
+
#include "sl_simple_led_instances.h"
#include
#include
@@ -132,6 +127,9 @@ AppTask AppTask::sAppTask;
CHIP_ERROR AppTask::Init()
{
CHIP_ERROR err = CHIP_NO_ERROR;
+#ifdef DISPLAY_ENABLED
+ GetLCD().Init((uint8_t *) "Lighting-App");
+#endif
err = BaseApplication::Init(&gIdentify);
if (err != CHIP_NO_ERROR)
@@ -266,16 +264,13 @@ void AppTask::ButtonEventHandler(const sl_button_t * buttonHandle, uint8_t btnAc
void AppTask::ActionInitiated(LightingManager::Action_t aAction, int32_t aActor)
{
// Action initiated, update the light led
- if (aAction == LightingManager::ON_ACTION)
- {
- EFR32_LOG("Turning light ON")
- sLightLED.Set(true);
- }
- else if (aAction == LightingManager::OFF_ACTION)
- {
- EFR32_LOG("Turning light OFF")
- sLightLED.Set(false);
- }
+ bool lightOn = aAction == LightingManager::ON_ACTION;
+ EFR32_LOG("Turning light %s", (lightOn) ? "On" : "Off")
+ sLightLED.Set(lightOn);
+
+#ifdef DISPLAY_ENABLED
+ sAppTask.GetLCD().WriteDemoUI(lightOn);
+#endif
if (aActor == AppEvent::kEventType_Button)
{
diff --git a/examples/lighting-app/esp32/main/AppTask.cpp b/examples/lighting-app/esp32/main/AppTask.cpp
index 5d3718855b8eba..1af833792d0f71 100644
--- a/examples/lighting-app/esp32/main/AppTask.cpp
+++ b/examples/lighting-app/esp32/main/AppTask.cpp
@@ -152,7 +152,7 @@ void AppTask::ButtonPressCallback()
void AppTask::UpdateClusterState()
{
- ESP_LOGI(TAG, "Writting to OnOff cluster");
+ ESP_LOGI(TAG, "Writing to OnOff cluster");
// write the new on/off value
EmberAfStatus status = Clusters::OnOff::Attributes::OnOff::Set(kLightEndpointId, AppLED.IsTurnedOn());
@@ -161,7 +161,7 @@ void AppTask::UpdateClusterState()
ESP_LOGE(TAG, "Updating on/off cluster failed: %x", status);
}
- ESP_LOGE(TAG, "Writting to Current Level cluster");
+ ESP_LOGI(TAG, "Writing to Current Level cluster");
status = Clusters::LevelControl::Attributes::CurrentLevel::Set(kLightEndpointId, AppLED.GetLevel());
if (status != EMBER_ZCL_STATUS_SUCCESS)
diff --git a/examples/lighting-app/esp32/main/LEDWidget.cpp b/examples/lighting-app/esp32/main/LEDWidget.cpp
index 8eb1aa5114c857..12cbf0f6d3295a 100644
--- a/examples/lighting-app/esp32/main/LEDWidget.cpp
+++ b/examples/lighting-app/esp32/main/LEDWidget.cpp
@@ -126,7 +126,7 @@ void LEDWidget::DoSet(void)
mStrip->refresh(mStrip, 100);
}
#else
- ESP_LOGE(TAG, "DoSet to GPIO number %d", mGPIONum);
+ ESP_LOGI(TAG, "DoSet to GPIO number %d", mGPIONum);
if (mGPIONum < GPIO_NUM_MAX)
{
ledc_set_duty(LEDC_LOW_SPEED_MODE, LEDC_CHANNEL_0, brightness);
diff --git a/examples/lighting-app/esp32/sdkconfig.defaults b/examples/lighting-app/esp32/sdkconfig.defaults
index 23a3766c340c04..e051a3f2b37aee 100644
--- a/examples/lighting-app/esp32/sdkconfig.defaults
+++ b/examples/lighting-app/esp32/sdkconfig.defaults
@@ -43,3 +43,6 @@ CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT=y
# Serial Flasher config
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="4MB"
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/lighting-app/cyw30739/.gn b/examples/lighting-app/infineon/cyw30739/.gn
similarity index 100%
rename from examples/lighting-app/cyw30739/.gn
rename to examples/lighting-app/infineon/cyw30739/.gn
diff --git a/examples/lighting-app/cyw30739/BUILD.gn b/examples/lighting-app/infineon/cyw30739/BUILD.gn
similarity index 93%
rename from examples/lighting-app/cyw30739/BUILD.gn
rename to examples/lighting-app/infineon/cyw30739/BUILD.gn
index 86d7342430b378..be63607b0bf97b 100644
--- a/examples/lighting-app/cyw30739/BUILD.gn
+++ b/examples/lighting-app/infineon/cyw30739/BUILD.gn
@@ -19,8 +19,8 @@ import("//build_overrides/cyw30739_sdk.gni")
import("${cyw30739_sdk_build_root}/cyw30739_executable.gni")
import("${cyw30739_sdk_build_root}/cyw30739_sdk.gni")
-cyw30739_project_dir = "${chip_root}/examples/lighting-app/cyw30739"
-examples_plat_dir = "${chip_root}/examples/platform/cyw30739"
+cyw30739_project_dir = "${chip_root}/examples/lighting-app/infineon/cyw30739"
+examples_plat_dir = "${chip_root}/examples/platform/infineon/cyw30739"
declare_args() {
setupPinCode = 20202021
diff --git a/examples/lighting-app/cyw30739/README.md b/examples/lighting-app/infineon/cyw30739/README.md
similarity index 93%
rename from examples/lighting-app/cyw30739/README.md
rename to examples/lighting-app/infineon/cyw30739/README.md
index d43e663b5f12e0..72753e2299f942 100644
--- a/examples/lighting-app/cyw30739/README.md
+++ b/examples/lighting-app/infineon/cyw30739/README.md
@@ -32,7 +32,7 @@ dataset and CASE credentials are then provided.
```bash
$ cd ~/connectedhomeip
$ git submodule update --init
- $ ./scripts/examples/gn_build_example.sh examples/lighting-app/cyw30739 out/lighting-app
+ $ ./scripts/examples/gn_build_example.sh examples/lighting-app/infineon/cyw30739 out/lighting-app
```
- To delete generated executable, libraries and object files use:
@@ -45,7 +45,7 @@ dataset and CASE credentials are then provided.
- OR use GN/Ninja directly
```bash
- $ cd ~/connectedhomeip/examples/lighting-app/cyw30739
+ $ cd ~/connectedhomeip/examples/lighting-app/infineon/cyw30739
$ git submodule update --init
$ source third_party/connectedhomeip/scripts/activate.sh
$ gn gen out/debug
@@ -55,7 +55,7 @@ dataset and CASE credentials are then provided.
- To delete generated executable, libraries and object files use:
```bash
- $ cd ~/connectedhomeip/examples/lighting-app/cyw30739
+ $ cd ~/connectedhomeip/examples/lighting-app/infineon/cyw30739
$ rm -rf out/
```
@@ -75,7 +75,7 @@ Put the CYW30739 in to the recovery mode before running the flash script.
- On the command line:
```bash
- $ cd ~/connectedhomeip/examples/lighting-app/cyw30739
+ $ cd ~/connectedhomeip/examples/lighting-app/infineon/cyw30739
$ python3 out/debug/chip-cyw30739-lighting-example.flash.py
```
diff --git a/examples/lock-app/cyw30739/args.gni b/examples/lighting-app/infineon/cyw30739/args.gni
similarity index 93%
rename from examples/lock-app/cyw30739/args.gni
rename to examples/lighting-app/infineon/cyw30739/args.gni
index 267c1db9b56817..ff653ee769356a 100644
--- a/examples/lock-app/cyw30739/args.gni
+++ b/examples/lighting-app/infineon/cyw30739/args.gni
@@ -13,7 +13,7 @@
# limitations under the License.
import("//build_overrides/chip.gni")
-import("${chip_root}/src/platform/CYW30739/args.gni")
+import("${chip_root}/src/platform/Infineon/CYW30739/args.gni")
cyw30739_sdk_target = get_label_info(":sdk", "label_no_toolchain")
diff --git a/examples/lighting-app/infineon/cyw30739/build_overrides b/examples/lighting-app/infineon/cyw30739/build_overrides
new file mode 120000
index 00000000000000..ee19c065d619a2
--- /dev/null
+++ b/examples/lighting-app/infineon/cyw30739/build_overrides
@@ -0,0 +1 @@
+../../../build_overrides/
\ No newline at end of file
diff --git a/examples/lighting-app/cyw30739/include/AppShellCommands.h b/examples/lighting-app/infineon/cyw30739/include/AppShellCommands.h
similarity index 100%
rename from examples/lighting-app/cyw30739/include/AppShellCommands.h
rename to examples/lighting-app/infineon/cyw30739/include/AppShellCommands.h
diff --git a/examples/lighting-app/cyw30739/include/ButtonHandler.h b/examples/lighting-app/infineon/cyw30739/include/ButtonHandler.h
similarity index 100%
rename from examples/lighting-app/cyw30739/include/ButtonHandler.h
rename to examples/lighting-app/infineon/cyw30739/include/ButtonHandler.h
diff --git a/examples/lighting-app/cyw30739/include/CHIPProjectConfig.h b/examples/lighting-app/infineon/cyw30739/include/CHIPProjectConfig.h
similarity index 100%
rename from examples/lighting-app/cyw30739/include/CHIPProjectConfig.h
rename to examples/lighting-app/infineon/cyw30739/include/CHIPProjectConfig.h
diff --git a/examples/lighting-app/cyw30739/include/LightingManager.h b/examples/lighting-app/infineon/cyw30739/include/LightingManager.h
similarity index 100%
rename from examples/lighting-app/cyw30739/include/LightingManager.h
rename to examples/lighting-app/infineon/cyw30739/include/LightingManager.h
diff --git a/examples/lighting-app/cyw30739/src/AppShellCommands.cpp b/examples/lighting-app/infineon/cyw30739/src/AppShellCommands.cpp
similarity index 100%
rename from examples/lighting-app/cyw30739/src/AppShellCommands.cpp
rename to examples/lighting-app/infineon/cyw30739/src/AppShellCommands.cpp
diff --git a/examples/lighting-app/cyw30739/src/ButtonHandler.cpp b/examples/lighting-app/infineon/cyw30739/src/ButtonHandler.cpp
similarity index 100%
rename from examples/lighting-app/cyw30739/src/ButtonHandler.cpp
rename to examples/lighting-app/infineon/cyw30739/src/ButtonHandler.cpp
diff --git a/examples/lighting-app/cyw30739/src/LightingManager.cpp b/examples/lighting-app/infineon/cyw30739/src/LightingManager.cpp
similarity index 100%
rename from examples/lighting-app/cyw30739/src/LightingManager.cpp
rename to examples/lighting-app/infineon/cyw30739/src/LightingManager.cpp
diff --git a/examples/lighting-app/cyw30739/src/ZclCallbacks.cpp b/examples/lighting-app/infineon/cyw30739/src/ZclCallbacks.cpp
similarity index 100%
rename from examples/lighting-app/cyw30739/src/ZclCallbacks.cpp
rename to examples/lighting-app/infineon/cyw30739/src/ZclCallbacks.cpp
diff --git a/examples/lighting-app/cyw30739/src/main.cpp b/examples/lighting-app/infineon/cyw30739/src/main.cpp
similarity index 100%
rename from examples/lighting-app/cyw30739/src/main.cpp
rename to examples/lighting-app/infineon/cyw30739/src/main.cpp
diff --git a/examples/lighting-app/cyw30739/static_config.txt b/examples/lighting-app/infineon/cyw30739/static_config.txt
similarity index 100%
rename from examples/lighting-app/cyw30739/static_config.txt
rename to examples/lighting-app/infineon/cyw30739/static_config.txt
diff --git a/examples/lighting-app/infineon/cyw30739/third_party/connectedhomeip b/examples/lighting-app/infineon/cyw30739/third_party/connectedhomeip
new file mode 120000
index 00000000000000..3efed95be5dbe9
--- /dev/null
+++ b/examples/lighting-app/infineon/cyw30739/third_party/connectedhomeip
@@ -0,0 +1 @@
+../../../../../
\ No newline at end of file
diff --git a/examples/lighting-app/p6/.gn b/examples/lighting-app/infineon/psoc6/.gn
similarity index 100%
rename from examples/lighting-app/p6/.gn
rename to examples/lighting-app/infineon/psoc6/.gn
diff --git a/examples/lighting-app/p6/BUILD.gn b/examples/lighting-app/infineon/psoc6/BUILD.gn
similarity index 77%
rename from examples/lighting-app/p6/BUILD.gn
rename to examples/lighting-app/infineon/psoc6/BUILD.gn
index 7e6608f45c60d7..08a91b1180728f 100644
--- a/examples/lighting-app/p6/BUILD.gn
+++ b/examples/lighting-app/infineon/psoc6/BUILD.gn
@@ -14,17 +14,17 @@
import("//build_overrides/build.gni")
import("//build_overrides/chip.gni")
-import("//build_overrides/p6.gni")
+import("//build_overrides/psoc6.gni")
import("${build_root}/config/defaults.gni")
import("${chip_root}/src/platform/device.gni")
-import("${p6_sdk_build_root}/p6_executable.gni")
-import("${p6_sdk_build_root}/p6_sdk.gni")
+import("${psoc6_sdk_build_root}/psoc6_executable.gni")
+import("${psoc6_sdk_build_root}/psoc6_sdk.gni")
assert(current_os == "freertos")
-p6_project_dir = "${chip_root}/examples/lighting-app/p6"
-examples_plat_dir = "${chip_root}/examples/platform/p6"
+psoc6_project_dir = "${chip_root}/examples/lighting-app/infineon/psoc6"
+examples_plat_dir = "${chip_root}/examples/platform/infineon/psoc6"
declare_args() {
# Dump memory usage at link time.
@@ -40,8 +40,8 @@ declare_args() {
build_update_image = false
}
-config("p6_ota_config") {
- linker_script = "${p6_sdk_root}/ota/cy8c6xxa_cm4_dual_ota_int.ld"
+config("psoc6_ota_config") {
+ linker_script = "${psoc6_sdk_root}/ota/cy8c6xxa_cm4_dual_ota_int.ld"
ldflags = [ "-T" + rebase_path(linker_script, root_build_dir) ]
@@ -78,35 +78,37 @@ config("p6_ota_config") {
}
}
-p6_sdk_sources("lighting_app_sdk_sources") {
+psoc6_sdk_sources("lighting_app_sdk_sources") {
include_dirs = [
- "${chip_root}/src/platform/P6",
- "${p6_project_dir}/include",
+ "${chip_root}/src/platform/PSOC6",
+ "${psoc6_project_dir}/include",
"${examples_plat_dir}",
]
defines = [
- "BOARD_ID=${p6_board}",
+ "BOARD_ID=${psoc6_board}",
"P6_LOG_ENABLED=1",
"CHIP_DEVICE_CONFIG_USE_TEST_SETUP_PIN_CODE=${setup_pin_code}",
]
- sources = [ "${p6_project_dir}/include/CHIPProjectConfig.h" ]
- public_configs = [ "${chip_root}/third_party/p6:p6_sdk_config" ]
+ sources = [ "${psoc6_project_dir}/include/CHIPProjectConfig.h" ]
+
+ public_configs =
+ [ "${chip_root}/third_party/infineon/psoc6:psoc6_sdk_config" ]
if (chip_enable_ota_requestor) {
- public_configs += [ ":p6_ota_config" ]
+ public_configs += [ ":psoc6_ota_config" ]
}
}
-p6_executable("lighting_app") {
+psoc6_executable("lighting_app") {
include_dirs = []
defines = []
- output_name = "chip-p6-lighting-example.out"
+ output_name = "chip-psoc6-lighting-example.out"
sources = [
"${examples_plat_dir}/LEDWidget.cpp",
- "${examples_plat_dir}/init_p6Platform.cpp",
+ "${examples_plat_dir}/init_psoc6Platform.cpp",
"src/AppTask.cpp",
"src/ButtonHandler.cpp",
"src/LightingManager.cpp",
@@ -126,7 +128,7 @@ p6_executable("lighting_app") {
include_dirs += [
"include",
"${examples_plat_dir}",
- "${p6_project_dir}/include",
+ "${psoc6_project_dir}/include",
]
defines = []
@@ -146,10 +148,10 @@ p6_executable("lighting_app") {
output_dir = root_out_dir
}
-group("p6") {
+group("psoc6") {
deps = [ ":lighting_app" ]
}
group("default") {
- deps = [ ":p6" ]
+ deps = [ ":psoc6" ]
}
diff --git a/examples/lighting-app/p6/README.md b/examples/lighting-app/infineon/psoc6/README.md
similarity index 81%
rename from examples/lighting-app/p6/README.md
rename to examples/lighting-app/infineon/psoc6/README.md
index e37894efcafb2d..ea229f0f391029 100644
--- a/examples/lighting-app/p6/README.md
+++ b/examples/lighting-app/infineon/psoc6/README.md
@@ -1,10 +1,10 @@
-#CHIP P6 Lighting Example
+#CHIP PSoC6 Lighting Example
An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
-- [Matter P6 Lighting Example](#chip-p6-Lighting-example)
+- [Matter PSoC6 Lighting Example](#chip-psoc6-Lighting-example)
- [Introduction](#introduction)
- [Building](#building)
- [Flashing the Application](#flashing-the-application)
@@ -21,13 +21,13 @@ An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
## Introduction
-The P6 lighting example provides a baseline demonstration of a Light control
+The PSoC6 lighting example provides a baseline demonstration of a Light control
device, built using Matter and the Infineon Modustoolbox SDK. It can be
controlled by Matter controller over Wi-Fi network.
-The P6 device can be commissioned over Bluetooth Low Energy where the device and
-the Matter controller will exchange security information with the Rendezvous
-procedure. Wi-Fi Network credentials are then provided to the P6 device which
+The PSoC6 device can be commissioned over Bluetooth Low Energy where the device
+and the Matter controller will exchange security information with the Rendezvous
+procedure. Wi-Fi Network credentials are then provided to the PSoC6 device which
will then join the network.
@@ -37,8 +37,8 @@ will then join the network.
- [Modustoolbox Software](https://www.cypress.com/products/modustoolbox)
Refer to `integrations/docker/images/chip-build-infineon/Dockerfile` or
- `scripts/examples/gn_p6_example.sh` for downloading the Software and related
- tools.
+ `scripts/examples/gn_psoc6_example.sh` for downloading the Software and
+ related tools.
- Install some additional tools (likely already present for Matter
developers): \$ sudo apt install gcc g++ clang ninja-build python
@@ -51,7 +51,7 @@ will then join the network.
* Build the example application:
$ source scripts/activate.sh
- $ scripts/build/build_examples.py --no-log-timestamps --target 'infineon-p6-light' build
+ $ scripts/build/build_examples.py --no-log-timestamps --target 'infineon-psoc6-light' build
- To delete generated executable, libraries and object files use:
@@ -69,7 +69,7 @@ will then join the network.
- On the command line:
$ cd ~/connectedhomeip
- $ python3 out/infineon-p6-light/chip-p6-lighting-example.flash.py
+ $ python3 out/infineon-psoc6-light/chip-psoc6-lighting-example.flash.py
@@ -81,7 +81,7 @@ Commissioning can be carried out using BLE.
### Setting up Chip tool
-Once P6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
+Once PSoC6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
perform commissioning and cluster control.
- Set up python controller.
@@ -139,6 +139,6 @@ commands. These power cycle the BlueTooth hardware and disable BR/EDR mode.
## OTA Software Update
-For the description of Software Update process with infineon P6 example
+For the description of Software Update process with infineon PSoC6 example
applications see
-[Infineon P6 OTA Software Update](../../../docs/guides/infineon_p6_software_update.md)
+[Infineon PSoC6 OTA Software Update](../../../../docs/guides/infineon_psoc6_software_update.md)
diff --git a/examples/lighting-app/p6/args.gni b/examples/lighting-app/infineon/psoc6/args.gni
similarity index 89%
rename from examples/lighting-app/p6/args.gni
rename to examples/lighting-app/infineon/psoc6/args.gni
index f239efee01e5da..9ca701ab363c9f 100644
--- a/examples/lighting-app/p6/args.gni
+++ b/examples/lighting-app/infineon/psoc6/args.gni
@@ -14,7 +14,7 @@
import("//build_overrides/chip.gni")
import("//build_overrides/pigweed.gni")
-import("${chip_root}/src/platform/P6/args.gni")
+import("${chip_root}/src/platform/Infineon/PSOC6/args.gni")
-p6_target_project =
+psoc6_target_project =
get_label_info(":lighting_app_sdk_sources", "label_no_toolchain")
diff --git a/examples/lighting-app/infineon/psoc6/build_overrides b/examples/lighting-app/infineon/psoc6/build_overrides
new file mode 120000
index 00000000000000..ee19c065d619a2
--- /dev/null
+++ b/examples/lighting-app/infineon/psoc6/build_overrides
@@ -0,0 +1 @@
+../../../build_overrides/
\ No newline at end of file
diff --git a/examples/lighting-app/p6/include/AppConfig.h b/examples/lighting-app/infineon/psoc6/include/AppConfig.h
similarity index 97%
rename from examples/lighting-app/p6/include/AppConfig.h
rename to examples/lighting-app/infineon/psoc6/include/AppConfig.h
index 5ed6edd44bd594..b199aaf7a1b4d5 100644
--- a/examples/lighting-app/p6/include/AppConfig.h
+++ b/examples/lighting-app/infineon/psoc6/include/AppConfig.h
@@ -31,7 +31,7 @@
#define APP_LIGHT_BUTTON CYBSP_USER_BTN1
#define APP_FUNCTION_BUTTON CYBSP_USER_BTN2
-#define APP_BUTTON_DEBOUNCE_PERIOD_MS 50
+#define APP_BUTTON_DEBOUNCE_PERIOD_MS 200
#define APP_BUTTON_PRESSED 0
#define APP_BUTTON_RELEASED 1
diff --git a/examples/lighting-app/p6/include/AppEvent.h b/examples/lighting-app/infineon/psoc6/include/AppEvent.h
similarity index 100%
rename from examples/lighting-app/p6/include/AppEvent.h
rename to examples/lighting-app/infineon/psoc6/include/AppEvent.h
diff --git a/examples/lighting-app/p6/include/AppTask.h b/examples/lighting-app/infineon/psoc6/include/AppTask.h
similarity index 95%
rename from examples/lighting-app/p6/include/AppTask.h
rename to examples/lighting-app/infineon/psoc6/include/AppTask.h
index a3760122a17ce5..580744cb2fe2d2 100644
--- a/examples/lighting-app/p6/include/AppTask.h
+++ b/examples/lighting-app/infineon/psoc6/include/AppTask.h
@@ -74,11 +74,8 @@ class AppTask
enum class Function
{
- kNoneSelected = 0,
- kSoftwareUpdate = 0,
- kStartBleAdv = 1,
- kFactoryReset = 2,
-
+ kNoneSelected = 0,
+ kFactoryReset = 1,
kInvalid
};
diff --git a/examples/lighting-app/p6/include/ButtonHandler.h b/examples/lighting-app/infineon/psoc6/include/ButtonHandler.h
similarity index 100%
rename from examples/lighting-app/p6/include/ButtonHandler.h
rename to examples/lighting-app/infineon/psoc6/include/ButtonHandler.h
diff --git a/examples/lighting-app/p6/include/CHIPProjectConfig.h b/examples/lighting-app/infineon/psoc6/include/CHIPProjectConfig.h
similarity index 100%
rename from examples/lighting-app/p6/include/CHIPProjectConfig.h
rename to examples/lighting-app/infineon/psoc6/include/CHIPProjectConfig.h
diff --git a/examples/lighting-app/p6/include/LightingManager.h b/examples/lighting-app/infineon/psoc6/include/LightingManager.h
similarity index 100%
rename from examples/lighting-app/p6/include/LightingManager.h
rename to examples/lighting-app/infineon/psoc6/include/LightingManager.h
diff --git a/examples/lighting-app/p6/src/AppTask.cpp b/examples/lighting-app/infineon/psoc6/src/AppTask.cpp
similarity index 89%
rename from examples/lighting-app/p6/src/AppTask.cpp
rename to examples/lighting-app/infineon/psoc6/src/AppTask.cpp
index c0b2833ad40086..2ee2baf54bcde8 100644
--- a/examples/lighting-app/p6/src/AppTask.cpp
+++ b/examples/lighting-app/infineon/psoc6/src/AppTask.cpp
@@ -40,7 +40,7 @@
#include
#include
-#include
+#include
/* OTA related includes */
#if CHIP_DEVICE_CONFIG_ENABLE_OTA_REQUESTOR
@@ -48,7 +48,7 @@
#include
#include
#include
-#include
+#include
using chip::BDXDownloader;
using chip::CharSpan;
@@ -67,8 +67,7 @@ using namespace ::chip::DeviceLayer;
using namespace ::chip::System;
#endif
-#define FACTORY_RESET_TRIGGER_TIMEOUT 3000
-#define FACTORY_RESET_CANCEL_WINDOW_TIMEOUT 3000
+#define FACTORY_RESET_CANCEL_WINDOW_TIMEOUT 5000
#define APP_TASK_STACK_SIZE (4096)
#define APP_TASK_PRIORITY 2
#define APP_EVENT_QUEUE_SIZE 10
@@ -367,27 +366,7 @@ void AppTask::FunctionTimerEventHandler(AppEvent * event)
return;
}
- // If we reached here, the button was held past FACTORY_RESET_TRIGGER_TIMEOUT,
- // initiate factory reset
- if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kStartBleAdv)
- {
- P6_LOG("Factory Reset Triggered. Release button within %ums to cancel.", FACTORY_RESET_CANCEL_WINDOW_TIMEOUT);
-
- // Start timer for FACTORY_RESET_CANCEL_WINDOW_TIMEOUT to allow user to
- // cancel, if required.
- sAppTask.StartTimer(FACTORY_RESET_CANCEL_WINDOW_TIMEOUT);
-
- sAppTask.mFunction = Function::kFactoryReset;
-
- // Turn off all LEDs before starting blink to make sure blink is
- // co-ordinated.
- sStatusLED.Set(false);
- sLightLED.Set(false);
-
- sStatusLED.Blink(500);
- sLightLED.Blink(500);
- }
- else if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
+ if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
{
// Actually trigger Factory Reset
sAppTask.mFunction = Function::kNoneSelected;
@@ -397,28 +376,24 @@ void AppTask::FunctionTimerEventHandler(AppEvent * event)
void AppTask::FunctionHandler(AppEvent * event)
{
- // To trigger software update: press the APP_FUNCTION_BUTTON button briefly (<
- // FACTORY_RESET_TRIGGER_TIMEOUT) To initiate factory reset: press the
- // APP_FUNCTION_BUTTON for FACTORY_RESET_TRIGGER_TIMEOUT +
- // FACTORY_RESET_CANCEL_WINDOW_TIMEOUT All LEDs start blinking after
- // FACTORY_RESET_TRIGGER_TIMEOUT to signal factory reset has been initiated.
- // To cancel factory reset: release the APP_FUNCTION_BUTTON once all LEDs
- // start blinking within the FACTORY_RESET_CANCEL_WINDOW_TIMEOUT
- if (event->ButtonEvent.Action == APP_BUTTON_RELEASED)
+ if (event->ButtonEvent.Action == APP_BUTTON_PRESSED)
{
if (!sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kNoneSelected)
{
- sAppTask.StartTimer(FACTORY_RESET_TRIGGER_TIMEOUT);
- sAppTask.mFunction = Function::kStartBleAdv;
- }
- }
- else
- {
- // If the button was released before factory reset got initiated, start Thread Network
- if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kStartBleAdv)
- {
- sAppTask.CancelTimer();
- sAppTask.mFunction = Function::kNoneSelected;
+ P6_LOG("Factory Reset Triggered. Press button again within %us to cancel.", FACTORY_RESET_CANCEL_WINDOW_TIMEOUT / 1000);
+ // Start timer for FACTORY_RESET_CANCEL_WINDOW_TIMEOUT to allow user to
+ // cancel, if required.
+ sAppTask.StartTimer(FACTORY_RESET_CANCEL_WINDOW_TIMEOUT);
+
+ sAppTask.mFunction = Function::kFactoryReset;
+
+ // Turn off all LEDs before starting blink to make sure blink is
+ // co-ordinated.
+ sStatusLED.Set(false);
+ sLightLED.Set(false);
+
+ sStatusLED.Blink(500);
+ sLightLED.Blink(500);
}
else if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
{
diff --git a/examples/lighting-app/p6/src/ButtonHandler.cpp b/examples/lighting-app/infineon/psoc6/src/ButtonHandler.cpp
similarity index 95%
rename from examples/lighting-app/p6/src/ButtonHandler.cpp
rename to examples/lighting-app/infineon/psoc6/src/ButtonHandler.cpp
index 80384347fd24a6..e4a0d483d20c69 100644
--- a/examples/lighting-app/p6/src/ButtonHandler.cpp
+++ b/examples/lighting-app/infineon/psoc6/src/ButtonHandler.cpp
@@ -53,7 +53,7 @@ void ButtonHandler::GpioInit(void)
result = cyhal_gpio_init(APP_LIGHT_BUTTON, CYHAL_GPIO_DIR_INPUT, CYHAL_GPIO_DRIVE_PULLUP, CYBSP_BTN_OFF);
if (result != CY_RSLT_SUCCESS)
{
- printf(" cyhal_gpio_init failed for APP_LOCK_BUTTON\r\n");
+ printf(" cyhal_gpio_init failed for APP_LIGHT_BUTTON\r\n");
}
result = cyhal_gpio_init(APP_FUNCTION_BUTTON, CYHAL_GPIO_DIR_INPUT, CYHAL_GPIO_DRIVE_PULLUP, CYBSP_BTN_OFF);
if (result != CY_RSLT_SUCCESS)
@@ -98,5 +98,8 @@ void ButtonHandler::TimerCallback(TimerHandle_t xTimer)
{
buttonevent = cyhal_gpio_read(APP_LIGHT_BUTTON);
}
- GetAppTask().ButtonEventHandler(timerId, (buttonevent) ? APP_BUTTON_PRESSED : APP_BUTTON_RELEASED);
+ if (buttonevent)
+ {
+ GetAppTask().ButtonEventHandler(timerId, APP_BUTTON_PRESSED);
+ }
}
diff --git a/examples/lighting-app/p6/src/LightingManager.cpp b/examples/lighting-app/infineon/psoc6/src/LightingManager.cpp
similarity index 100%
rename from examples/lighting-app/p6/src/LightingManager.cpp
rename to examples/lighting-app/infineon/psoc6/src/LightingManager.cpp
diff --git a/examples/lighting-app/p6/src/ZclCallbacks.cpp b/examples/lighting-app/infineon/psoc6/src/ZclCallbacks.cpp
similarity index 100%
rename from examples/lighting-app/p6/src/ZclCallbacks.cpp
rename to examples/lighting-app/infineon/psoc6/src/ZclCallbacks.cpp
diff --git a/examples/lighting-app/p6/src/main.cpp b/examples/lighting-app/infineon/psoc6/src/main.cpp
similarity index 99%
rename from examples/lighting-app/p6/src/main.cpp
rename to examples/lighting-app/infineon/psoc6/src/main.cpp
index 9c5daa77856b60..a2dcdae1cc63f1 100644
--- a/examples/lighting-app/p6/src/main.cpp
+++ b/examples/lighting-app/infineon/psoc6/src/main.cpp
@@ -35,7 +35,7 @@
#include "AppConfig.h"
#include "cyhal_wdt.h"
-#include "init_p6Platform.h"
+#include "init_psoc6Platform.h"
#include
#ifdef HEAP_MONITORING
diff --git a/examples/lighting-app/infineon/psoc6/third_party/connectedhomeip b/examples/lighting-app/infineon/psoc6/third_party/connectedhomeip
new file mode 120000
index 00000000000000..3efed95be5dbe9
--- /dev/null
+++ b/examples/lighting-app/infineon/psoc6/third_party/connectedhomeip
@@ -0,0 +1 @@
+../../../../../
\ No newline at end of file
diff --git a/examples/lighting-app/lighting-common/lighting-app.matter b/examples/lighting-app/lighting-common/lighting-app.matter
index 08d29a50fcf79b..43839293478d6d 100644
--- a/examples/lighting-app/lighting-common/lighting-app.matter
+++ b/examples/lighting-app/lighting-common/lighting-app.matter
@@ -1208,12 +1208,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/lighting-app/p6/build_overrides b/examples/lighting-app/p6/build_overrides
deleted file mode 120000
index e578e73312ebd1..00000000000000
--- a/examples/lighting-app/p6/build_overrides
+++ /dev/null
@@ -1 +0,0 @@
-../../build_overrides
\ No newline at end of file
diff --git a/examples/lighting-app/p6/third_party/connectedhomeip b/examples/lighting-app/p6/third_party/connectedhomeip
deleted file mode 120000
index c866b86874994d..00000000000000
--- a/examples/lighting-app/p6/third_party/connectedhomeip
+++ /dev/null
@@ -1 +0,0 @@
-../../../..
\ No newline at end of file
diff --git a/examples/lock-app/cc32xx/main/AppTask.cpp b/examples/lock-app/cc32xx/main/AppTask.cpp
index 18196a25b751aa..40390e66fc2c94 100644
--- a/examples/lock-app/cc32xx/main/AppTask.cpp
+++ b/examples/lock-app/cc32xx/main/AppTask.cpp
@@ -48,8 +48,6 @@ extern int WiFi_init();
extern void DisplayBanner();
}
-/* Application Version and Naming*/
-
#define APP_TASK_STACK_SIZE (4096)
#define APP_TASK_PRIORITY 4
#define APP_EVENT_QUEUE_SIZE 10
@@ -172,9 +170,6 @@ int AppTask::Init()
PLAT_LOG("Print Onboarding Codes");
PrintOnboardingCodes(chip::RendezvousInformationFlags(chip::RendezvousInformationFlag::kOnNetwork));
- PLAT_LOG("Start DNS Server");
- chip::app::DnssdServer::Instance().StartServer();
-
return 0;
}
diff --git a/examples/lock-app/cyw30739/build_overrides b/examples/lock-app/cyw30739/build_overrides
deleted file mode 120000
index e578e73312ebd1..00000000000000
--- a/examples/lock-app/cyw30739/build_overrides
+++ /dev/null
@@ -1 +0,0 @@
-../../build_overrides
\ No newline at end of file
diff --git a/examples/lock-app/cyw30739/third_party/connectedhomeip b/examples/lock-app/cyw30739/third_party/connectedhomeip
deleted file mode 120000
index c866b86874994d..00000000000000
--- a/examples/lock-app/cyw30739/third_party/connectedhomeip
+++ /dev/null
@@ -1 +0,0 @@
-../../../..
\ No newline at end of file
diff --git a/examples/lock-app/efr32/BUILD.gn b/examples/lock-app/efr32/BUILD.gn
index a739b266110543..e76b9cd48f1d1e 100644
--- a/examples/lock-app/efr32/BUILD.gn
+++ b/examples/lock-app/efr32/BUILD.gn
@@ -201,21 +201,10 @@ efr32_executable("lock_app") {
# OpenThread Settings
if (chip_enable_openthread) {
deps += [
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform",
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform-utils",
+ "${chip_root}/third_party/openthread:openthread",
+ "${chip_root}/third_party/openthread:openthread-platform",
"${examples_plat_dir}:efr-matter-shell",
]
- if (chip_openthread_ftd) {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-ftd",
- "${chip_root}/third_party/openthread/repo:libopenthread-ftd",
- ]
- } else {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-mtd",
- "${chip_root}/third_party/openthread/repo:libopenthread-mtd",
- ]
- }
}
if (chip_enable_ota_requestor) {
@@ -262,8 +251,15 @@ efr32_executable("lock_app") {
}
if (!disable_lcd) {
- sources += [ "${examples_plat_dir}/display/lcd.c" ]
- defines += [ "DISPLAY_ENABLED" ]
+ sources += [
+ "${examples_plat_dir}/display/demo-ui.c",
+ "${examples_plat_dir}/display/lcd.cpp",
+ ]
+ include_dirs += [ "${examples_plat_dir}/display" ]
+ defines += [
+ "DISPLAY_ENABLED",
+ "IS_DEMO_LOCK=1",
+ ]
if (show_qr_code) {
defines += [ "QR_CODE_ENABLED" ]
deps += [ "${chip_root}/examples/common/QRCode" ]
diff --git a/examples/lock-app/efr32/args.gni b/examples/lock-app/efr32/args.gni
index b4a0322c442f40..9ff5e1fd3992f1 100644
--- a/examples/lock-app/efr32/args.gni
+++ b/examples/lock-app/efr32/args.gni
@@ -24,3 +24,5 @@ chip_enable_openthread = true
pw_log_BACKEND = "${chip_root}/src/lib/support/pw_log_chip"
pw_assert_BACKEND = "$dir_pw_assert_log:check_backend"
pw_rpc_CONFIG = "$dir_pw_rpc:disable_global_mutex"
+openthread_external_platform =
+ "${chip_root}/third_party/openthread/platforms/efr32:libopenthread-efr32"
diff --git a/examples/lock-app/efr32/include/AppConfig.h b/examples/lock-app/efr32/include/AppConfig.h
index 852083cb9cbd91..096560abefe349 100644
--- a/examples/lock-app/efr32/include/AppConfig.h
+++ b/examples/lock-app/efr32/include/AppConfig.h
@@ -32,7 +32,7 @@
extern "C" {
#endif
-void efr32LogInit(void);
+void efr32InitLog(void);
void efr32Log(const char * aFormat, ...);
#define EFR32_LOG(...) efr32Log(__VA_ARGS__);
diff --git a/examples/lock-app/efr32/src/AppTask.cpp b/examples/lock-app/efr32/src/AppTask.cpp
index 8b72c5aac4a28f..33a331c752920b 100644
--- a/examples/lock-app/efr32/src/AppTask.cpp
+++ b/examples/lock-app/efr32/src/AppTask.cpp
@@ -142,6 +142,10 @@ CHIP_ERROR AppTask::Init()
{
CHIP_ERROR err = CHIP_NO_ERROR;
+#ifdef DISPLAY_ENABLED
+ GetLCD().Init((uint8_t *) "Lock-App", true);
+#endif
+
err = BaseApplication::Init(&gIdentify);
if (err != CHIP_NO_ERROR)
{
@@ -354,16 +358,14 @@ void AppTask::ButtonEventHandler(const sl_button_t * buttonHandle, uint8_t btnAc
void AppTask::ActionInitiated(LockManager::Action_t aAction, int32_t aActor)
{
- // Action initiated, update the light led
- if (aAction == LockManager::LOCK_ACTION)
+ if (aAction == LockManager::UNLOCK_ACTION || aAction == LockManager::LOCK_ACTION)
{
- EFR32_LOG("Lock Action has been initiated")
- sLockLED.Set(false);
- }
- else if (aAction == LockManager::UNLOCK_ACTION)
- {
- EFR32_LOG("Unlock Action has been initiated")
- sLockLED.Set(true);
+ bool locked = (aAction == LockManager::LOCK_ACTION);
+ EFR32_LOG("%s Action has been initiated", (locked) ? "Lock" : "Unlock");
+ sLockLED.Set(!locked);
+#ifdef DISPLAY_ENABLED
+ sAppTask.GetLCD().WriteDemoUI(locked);
+#endif
}
if (aActor == AppEvent::kEventType_Button)
diff --git a/examples/lock-app/esp32/main/Kconfig.projbuild b/examples/lock-app/esp32/main/Kconfig.projbuild
index e2ec051d774fe1..4ec2e859c0b1f5 100644
--- a/examples/lock-app/esp32/main/Kconfig.projbuild
+++ b/examples/lock-app/esp32/main/Kconfig.projbuild
@@ -36,20 +36,6 @@ menu "Demo"
bool "Ethernet"
endchoice
- config USE_ECHO_CLIENT
- bool "Enable the built-in Echo Client"
- default "n"
- help
- This enables a local FreeRTOS Echo Client so that the end-to-end echo server can be
- tested easily
-
- config ECHO_HOST_IP
- string "IPV4 address"
- default "127.0.0.1"
- depends on USE_ECHO_CLIENT
- help
- The IPV4 Address of the ECHO Server.
-
config RENDEZVOUS_MODE
int
range 0 8
diff --git a/examples/lock-app/esp32/sdkconfig.defaults b/examples/lock-app/esp32/sdkconfig.defaults
index c9b513d752fc6c..d53bfc85c76c22 100644
--- a/examples/lock-app/esp32/sdkconfig.defaults
+++ b/examples/lock-app/esp32/sdkconfig.defaults
@@ -43,3 +43,6 @@ CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT=y
#Lock app PID
CONFIG_DEVICE_PRODUCT_ID=0x8006
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/lock-app/cyw30739/.gn b/examples/lock-app/infineon/cyw30739/.gn
similarity index 100%
rename from examples/lock-app/cyw30739/.gn
rename to examples/lock-app/infineon/cyw30739/.gn
diff --git a/examples/lock-app/cyw30739/BUILD.gn b/examples/lock-app/infineon/cyw30739/BUILD.gn
similarity index 93%
rename from examples/lock-app/cyw30739/BUILD.gn
rename to examples/lock-app/infineon/cyw30739/BUILD.gn
index 87f0e15e92bff3..8d0cc6333d32d9 100644
--- a/examples/lock-app/cyw30739/BUILD.gn
+++ b/examples/lock-app/infineon/cyw30739/BUILD.gn
@@ -19,8 +19,8 @@ import("//build_overrides/cyw30739_sdk.gni")
import("${cyw30739_sdk_build_root}/cyw30739_executable.gni")
import("${cyw30739_sdk_build_root}/cyw30739_sdk.gni")
-cyw30739_project_dir = "${chip_root}/examples/lock-app/cyw30739"
-examples_plat_dir = "${chip_root}/examples/platform/cyw30739"
+cyw30739_project_dir = "${chip_root}/examples/lock-app/infineon/cyw30739"
+examples_plat_dir = "${chip_root}/examples/platform/infineon/cyw30739"
declare_args() {
setupPinCode = 20202021
diff --git a/examples/lock-app/cyw30739/README.md b/examples/lock-app/infineon/cyw30739/README.md
similarity index 92%
rename from examples/lock-app/cyw30739/README.md
rename to examples/lock-app/infineon/cyw30739/README.md
index 41a6a23598d3df..12ac917071ce55 100644
--- a/examples/lock-app/cyw30739/README.md
+++ b/examples/lock-app/infineon/cyw30739/README.md
@@ -32,7 +32,7 @@ dataset and CASE credentials are then provided.
```bash
$ cd ~/connectedhomeip
$ git submodule update --init
- $ ./scripts/examples/gn_build_example.sh examples/lock-app/cyw30739 out/lock-app
+ $ ./scripts/examples/gn_build_example.sh examples/lock-app/infineon/cyw30739 out/lock-app
```
- To delete generated executable, libraries and object files use:
@@ -45,7 +45,7 @@ dataset and CASE credentials are then provided.
- OR use GN/Ninja directly
```bash
- $ cd ~/connectedhomeip/examples/lock-app/cyw30739
+ $ cd ~/connectedhomeip/examples/lock-app/infineon/cyw30739
$ git submodule update --init
$ source third_party/connectedhomeip/scripts/activate.sh
$ gn gen out/debug
@@ -55,7 +55,7 @@ dataset and CASE credentials are then provided.
- To delete generated executable, libraries and object files use:
```bash
- $ cd ~/connectedhomeip/examples/lock-app/cyw30739
+ $ cd ~/connectedhomeip/examples/lock-app/infineon/cyw30739
$ rm -rf out/
```
@@ -75,7 +75,7 @@ Put the CYW30739 in to the recovery mode before running the flash script.
- On the command line:
```bash
- $ cd ~/connectedhomeip/examples/lock-app/cyw30739
+ $ cd ~/connectedhomeip/examples/lock-app/infineon/cyw30739
$ python3 out/debug/chip-cyw30739-lock-example.flash.py
```
diff --git a/examples/lighting-app/cyw30739/args.gni b/examples/lock-app/infineon/cyw30739/args.gni
similarity index 93%
rename from examples/lighting-app/cyw30739/args.gni
rename to examples/lock-app/infineon/cyw30739/args.gni
index 267c1db9b56817..ff653ee769356a 100644
--- a/examples/lighting-app/cyw30739/args.gni
+++ b/examples/lock-app/infineon/cyw30739/args.gni
@@ -13,7 +13,7 @@
# limitations under the License.
import("//build_overrides/chip.gni")
-import("${chip_root}/src/platform/CYW30739/args.gni")
+import("${chip_root}/src/platform/Infineon/CYW30739/args.gni")
cyw30739_sdk_target = get_label_info(":sdk", "label_no_toolchain")
diff --git a/examples/lock-app/infineon/cyw30739/build_overrides b/examples/lock-app/infineon/cyw30739/build_overrides
new file mode 120000
index 00000000000000..ee19c065d619a2
--- /dev/null
+++ b/examples/lock-app/infineon/cyw30739/build_overrides
@@ -0,0 +1 @@
+../../../build_overrides/
\ No newline at end of file
diff --git a/examples/lock-app/cyw30739/include/AppEvent.h b/examples/lock-app/infineon/cyw30739/include/AppEvent.h
similarity index 100%
rename from examples/lock-app/cyw30739/include/AppEvent.h
rename to examples/lock-app/infineon/cyw30739/include/AppEvent.h
diff --git a/examples/lock-app/cyw30739/include/AppShellCommands.h b/examples/lock-app/infineon/cyw30739/include/AppShellCommands.h
similarity index 100%
rename from examples/lock-app/cyw30739/include/AppShellCommands.h
rename to examples/lock-app/infineon/cyw30739/include/AppShellCommands.h
diff --git a/examples/lock-app/cyw30739/include/ButtonHandler.h b/examples/lock-app/infineon/cyw30739/include/ButtonHandler.h
similarity index 100%
rename from examples/lock-app/cyw30739/include/ButtonHandler.h
rename to examples/lock-app/infineon/cyw30739/include/ButtonHandler.h
diff --git a/examples/lock-app/cyw30739/include/CHIPProjectConfig.h b/examples/lock-app/infineon/cyw30739/include/CHIPProjectConfig.h
similarity index 100%
rename from examples/lock-app/cyw30739/include/CHIPProjectConfig.h
rename to examples/lock-app/infineon/cyw30739/include/CHIPProjectConfig.h
diff --git a/examples/lock-app/cyw30739/include/LockManager.h b/examples/lock-app/infineon/cyw30739/include/LockManager.h
similarity index 100%
rename from examples/lock-app/cyw30739/include/LockManager.h
rename to examples/lock-app/infineon/cyw30739/include/LockManager.h
diff --git a/examples/lock-app/cyw30739/include/chip_lock.h b/examples/lock-app/infineon/cyw30739/include/chip_lock.h
similarity index 100%
rename from examples/lock-app/cyw30739/include/chip_lock.h
rename to examples/lock-app/infineon/cyw30739/include/chip_lock.h
diff --git a/examples/lock-app/cyw30739/src/AppShellCommands.cpp b/examples/lock-app/infineon/cyw30739/src/AppShellCommands.cpp
similarity index 100%
rename from examples/lock-app/cyw30739/src/AppShellCommands.cpp
rename to examples/lock-app/infineon/cyw30739/src/AppShellCommands.cpp
diff --git a/examples/lock-app/cyw30739/src/ButtonHandler.cpp b/examples/lock-app/infineon/cyw30739/src/ButtonHandler.cpp
similarity index 100%
rename from examples/lock-app/cyw30739/src/ButtonHandler.cpp
rename to examples/lock-app/infineon/cyw30739/src/ButtonHandler.cpp
diff --git a/examples/lock-app/cyw30739/src/LockManager.cpp b/examples/lock-app/infineon/cyw30739/src/LockManager.cpp
similarity index 100%
rename from examples/lock-app/cyw30739/src/LockManager.cpp
rename to examples/lock-app/infineon/cyw30739/src/LockManager.cpp
diff --git a/examples/lock-app/cyw30739/src/ZclCallbacks.cpp b/examples/lock-app/infineon/cyw30739/src/ZclCallbacks.cpp
similarity index 100%
rename from examples/lock-app/cyw30739/src/ZclCallbacks.cpp
rename to examples/lock-app/infineon/cyw30739/src/ZclCallbacks.cpp
diff --git a/examples/lock-app/cyw30739/src/main.cpp b/examples/lock-app/infineon/cyw30739/src/main.cpp
similarity index 100%
rename from examples/lock-app/cyw30739/src/main.cpp
rename to examples/lock-app/infineon/cyw30739/src/main.cpp
diff --git a/examples/lock-app/cyw30739/static_config.txt b/examples/lock-app/infineon/cyw30739/static_config.txt
similarity index 100%
rename from examples/lock-app/cyw30739/static_config.txt
rename to examples/lock-app/infineon/cyw30739/static_config.txt
diff --git a/examples/lock-app/infineon/cyw30739/third_party/connectedhomeip b/examples/lock-app/infineon/cyw30739/third_party/connectedhomeip
new file mode 120000
index 00000000000000..3efed95be5dbe9
--- /dev/null
+++ b/examples/lock-app/infineon/cyw30739/third_party/connectedhomeip
@@ -0,0 +1 @@
+../../../../../
\ No newline at end of file
diff --git a/examples/lock-app/p6/.gn b/examples/lock-app/infineon/psoc6/.gn
similarity index 100%
rename from examples/lock-app/p6/.gn
rename to examples/lock-app/infineon/psoc6/.gn
diff --git a/examples/lock-app/p6/BUILD.gn b/examples/lock-app/infineon/psoc6/BUILD.gn
similarity index 75%
rename from examples/lock-app/p6/BUILD.gn
rename to examples/lock-app/infineon/psoc6/BUILD.gn
index b0db8078d672b5..83823b18d0eaff 100644
--- a/examples/lock-app/p6/BUILD.gn
+++ b/examples/lock-app/infineon/psoc6/BUILD.gn
@@ -14,17 +14,17 @@
import("//build_overrides/build.gni")
import("//build_overrides/chip.gni")
-import("//build_overrides/p6.gni")
+import("//build_overrides/psoc6.gni")
import("${build_root}/config/defaults.gni")
import("${chip_root}/src/platform/device.gni")
-import("${p6_sdk_build_root}/p6_executable.gni")
-import("${p6_sdk_build_root}/p6_sdk.gni")
+import("${psoc6_sdk_build_root}/psoc6_executable.gni")
+import("${psoc6_sdk_build_root}/psoc6_sdk.gni")
assert(current_os == "freertos")
-p6_project_dir = "${chip_root}/examples/lock-app/p6"
-examples_plat_dir = "${chip_root}/examples/platform/p6"
+psoc6_project_dir = "${chip_root}/examples/lock-app/infineon/psoc6"
+examples_plat_dir = "${chip_root}/examples/platform/infineon/psoc6"
declare_args() {
# Dump memory usage at link time.
@@ -37,8 +37,8 @@ declare_args() {
build_update_image = false
}
-config("p6_ota_config") {
- linker_script = "${p6_sdk_root}/ota/cy8c6xxa_cm4_dual_ota_int.ld"
+config("psoc6_ota_config") {
+ linker_script = "${psoc6_sdk_root}/ota/cy8c6xxa_cm4_dual_ota_int.ld"
ldflags = [ "-T" + rebase_path(linker_script, root_build_dir) ]
@@ -74,32 +74,33 @@ config("p6_ota_config") {
defines += [ "CHIP_DEVICE_CONFIG_DEVICE_SOFTWARE_VERSION=2" ]
}
}
-p6_sdk_sources("lock_app_sdk_sources") {
+psoc6_sdk_sources("lock_app_sdk_sources") {
include_dirs = [
- "${chip_root}/src/platform/P6",
- "${p6_project_dir}/include",
+ "${chip_root}/src/platform/PSOC6",
+ "${psoc6_project_dir}/include",
"${examples_plat_dir}",
]
defines = [
- "BOARD_ID=${p6_board}",
+ "BOARD_ID=${psoc6_board}",
"P6_LOG_ENABLED=1",
"CHIP_DEVICE_CONFIG_USE_TEST_SETUP_PIN_CODE=${setup_pin_code}",
]
- sources = [ "${p6_project_dir}/include/CHIPProjectConfig.h" ]
+ sources = [ "${psoc6_project_dir}/include/CHIPProjectConfig.h" ]
- public_configs = [ "${chip_root}/third_party/p6:p6_sdk_config" ]
+ public_configs =
+ [ "${chip_root}/third_party/infineon/psoc6:psoc6_sdk_config" ]
if (chip_enable_ota_requestor) {
- public_configs += [ ":p6_ota_config" ]
+ public_configs += [ ":psoc6_ota_config" ]
}
}
-p6_executable("lock_app") {
+psoc6_executable("lock_app") {
include_dirs = []
defines = []
- output_name = "chip-p6-lock-example.out"
+ output_name = "chip-psoc6-lock-example.out"
public_deps = [
":lock_app_sdk_sources",
@@ -113,13 +114,13 @@ p6_executable("lock_app") {
include_dirs += [
"include",
"${examples_plat_dir}",
- "${p6_project_dir}/include",
+ "${psoc6_project_dir}/include",
]
sources = [
"${examples_plat_dir}/LEDWidget.cpp",
- "${examples_plat_dir}/init_p6Platform.cpp",
- "${p6_project_dir}/include/CHIPProjectConfig.h",
+ "${examples_plat_dir}/init_psoc6Platform.cpp",
+ "${psoc6_project_dir}/include/CHIPProjectConfig.h",
"src/AppTask.cpp",
"src/ButtonHandler.cpp",
"src/LockManager.cpp",
@@ -137,10 +138,10 @@ p6_executable("lock_app") {
}
}
-group("p6") {
+group("psoc6") {
deps = [ ":lock_app" ]
}
group("default") {
- deps = [ ":p6" ]
+ deps = [ ":psoc6" ]
}
diff --git a/examples/lock-app/p6/README.md b/examples/lock-app/infineon/psoc6/README.md
similarity index 81%
rename from examples/lock-app/p6/README.md
rename to examples/lock-app/infineon/psoc6/README.md
index 345782204802df..5046ce5c0343c7 100644
--- a/examples/lock-app/p6/README.md
+++ b/examples/lock-app/infineon/psoc6/README.md
@@ -1,10 +1,10 @@
-# Matter P6 Lock Example
+# Matter PSoC6 Lock Example
An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
-- [Matter P6 Lock Example](#chip-p6-lock-example)
+- [Matter PSoC6 Lock Example](#chip-psoc6-lock-example)
- [Introduction](#introduction)
- [Building](#building)
- [Flashing the Application](#flashing-the-application)
@@ -21,13 +21,13 @@ An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
## Introduction
-The P6 lock example provides a demonstration of a door lock control device,
+The PSoC6 lock example provides a demonstration of a door lock control device,
built using Matter and the Infineon Modustoolbox SDK. It can be controlled by a
Matter controller over Wi-Fi network.
-The P6 device can be commissioned over Bluetooth Low Energy where the device and
-the Matter controller will exchange security information with the Rendezvous
-procedure. Wi-Fi Network credentials are then provided to the P6 device which
+The PSoC6 device can be commissioned over Bluetooth Low Energy where the device
+and the Matter controller will exchange security information with the Rendezvous
+procedure. Wi-Fi Network credentials are then provided to the PSoC6 device which
will then join the network.
@@ -37,8 +37,8 @@ will then join the network.
- [Modustoolbox Software](https://www.cypress.com/products/modustoolbox)
Refer to `integrations/docker/images/chip-build-infineon/Dockerfile` or
- `scripts/examples/gn_p6_example.sh` for downloading the Software and related
- tools.
+ `scripts/examples/gn_psoc6_example.sh` for downloading the Software and
+ related tools.
- Install some additional tools (likely already present for Matter
developers): \$ sudo apt install gcc g++ clang ninja-build python
@@ -51,7 +51,7 @@ will then join the network.
* Build the example application:
$ source scripts/activate.sh
- $ scripts/build/build_examples.py --no-log-timestamps --target 'infineon-p6-lock' build
+ $ scripts/build/build_examples.py --no-log-timestamps --target 'infineon-psoc6-lock' build
- To delete generated executable, libraries and object files use:
@@ -69,7 +69,7 @@ will then join the network.
- On the command line:
$ cd ~/connectedhomeip
- $ python3 out/infineon-p6-lock/chip-p6-lock-example.flash.py
+ $ python3 out/infineon-psoc6-lock/chip-psoc6-lock-example.flash.py
@@ -81,7 +81,7 @@ Commissioning can be carried out using BLE.
### Setting up Chip tool
-Once P6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
+Once PSoC6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
perform commissioning and cluster control.
- Set up python controller.
@@ -139,6 +139,6 @@ commands. These power cycle the BlueTooth hardware and disable BR/EDR mode.
## OTA Software Update
-For the description of Software Update process with infineon P6 example
+For the description of Software Update process with infineon PSoC6 example
applications see
-[Infineon P6 OTA Software Update](../../../docs/guides/infineon_p6_software_update.md)
+[Infineon PSoC6 OTA Software Update](../../../docs/guides/infineon_psoc6_software_update.md)
diff --git a/examples/lock-app/p6/args.gni b/examples/lock-app/infineon/psoc6/args.gni
similarity index 89%
rename from examples/lock-app/p6/args.gni
rename to examples/lock-app/infineon/psoc6/args.gni
index a83cf1abdcb38e..62bdc6d3f6908c 100644
--- a/examples/lock-app/p6/args.gni
+++ b/examples/lock-app/infineon/psoc6/args.gni
@@ -14,7 +14,7 @@
import("//build_overrides/chip.gni")
import("//build_overrides/pigweed.gni")
-import("${chip_root}/src/platform/P6/args.gni")
+import("${chip_root}/src/platform/Infineon/PSOC6/args.gni")
-p6_target_project =
+psoc6_target_project =
get_label_info(":lock_app_sdk_sources", "label_no_toolchain")
diff --git a/examples/lock-app/infineon/psoc6/build_overrides b/examples/lock-app/infineon/psoc6/build_overrides
new file mode 120000
index 00000000000000..ee19c065d619a2
--- /dev/null
+++ b/examples/lock-app/infineon/psoc6/build_overrides
@@ -0,0 +1 @@
+../../../build_overrides/
\ No newline at end of file
diff --git a/examples/lock-app/p6/include/AppConfig.h b/examples/lock-app/infineon/psoc6/include/AppConfig.h
similarity index 97%
rename from examples/lock-app/p6/include/AppConfig.h
rename to examples/lock-app/infineon/psoc6/include/AppConfig.h
index 1046f7821a6b9e..5e9c988a389a8f 100644
--- a/examples/lock-app/p6/include/AppConfig.h
+++ b/examples/lock-app/infineon/psoc6/include/AppConfig.h
@@ -31,7 +31,7 @@
#define APP_LOCK_BUTTON CYBSP_USER_BTN1
#define APP_FUNCTION_BUTTON CYBSP_USER_BTN2
-#define APP_BUTTON_DEBOUNCE_PERIOD_MS 50
+#define APP_BUTTON_DEBOUNCE_PERIOD_MS 200
#define APP_BUTTON_PRESSED 0
#define APP_BUTTON_RELEASED 1
diff --git a/examples/lock-app/p6/include/AppEvent.h b/examples/lock-app/infineon/psoc6/include/AppEvent.h
similarity index 100%
rename from examples/lock-app/p6/include/AppEvent.h
rename to examples/lock-app/infineon/psoc6/include/AppEvent.h
diff --git a/examples/lock-app/p6/include/AppTask.h b/examples/lock-app/infineon/psoc6/include/AppTask.h
similarity index 95%
rename from examples/lock-app/p6/include/AppTask.h
rename to examples/lock-app/infineon/psoc6/include/AppTask.h
index 8974d83523baa9..f83ba6c1e42730 100644
--- a/examples/lock-app/p6/include/AppTask.h
+++ b/examples/lock-app/infineon/psoc6/include/AppTask.h
@@ -76,11 +76,8 @@ class AppTask
enum class Function
{
- kNoneSelected = 0,
- kSoftwareUpdate = 0,
- kStartBleAdv = 1,
- kFactoryReset = 2,
-
+ kNoneSelected = 0,
+ kFactoryReset = 1,
kInvalid
};
diff --git a/examples/lock-app/p6/include/ButtonHandler.h b/examples/lock-app/infineon/psoc6/include/ButtonHandler.h
similarity index 100%
rename from examples/lock-app/p6/include/ButtonHandler.h
rename to examples/lock-app/infineon/psoc6/include/ButtonHandler.h
diff --git a/examples/lock-app/p6/include/CHIPProjectConfig.h b/examples/lock-app/infineon/psoc6/include/CHIPProjectConfig.h
similarity index 100%
rename from examples/lock-app/p6/include/CHIPProjectConfig.h
rename to examples/lock-app/infineon/psoc6/include/CHIPProjectConfig.h
diff --git a/examples/lock-app/p6/include/LockManager.h b/examples/lock-app/infineon/psoc6/include/LockManager.h
similarity index 100%
rename from examples/lock-app/p6/include/LockManager.h
rename to examples/lock-app/infineon/psoc6/include/LockManager.h
diff --git a/examples/lock-app/p6/src/AppTask.cpp b/examples/lock-app/infineon/psoc6/src/AppTask.cpp
similarity index 91%
rename from examples/lock-app/p6/src/AppTask.cpp
rename to examples/lock-app/infineon/psoc6/src/AppTask.cpp
index 866f43de610ae9..fe4baf6eb3f752 100644
--- a/examples/lock-app/p6/src/AppTask.cpp
+++ b/examples/lock-app/infineon/psoc6/src/AppTask.cpp
@@ -44,7 +44,7 @@
#include
#include
-#include
+#include
#include
#include
@@ -56,7 +56,7 @@
#include
#include
#include
-#include
+#include
using chip::BDXDownloader;
using chip::CharSpan;
@@ -76,8 +76,7 @@ using namespace ::chip::System;
#endif
-#define FACTORY_RESET_TRIGGER_TIMEOUT 3000
-#define FACTORY_RESET_CANCEL_WINDOW_TIMEOUT 3000
+#define FACTORY_RESET_CANCEL_WINDOW_TIMEOUT 5000
#define APP_TASK_STACK_SIZE (4096)
#define APP_TASK_PRIORITY 2
#define APP_EVENT_QUEUE_SIZE 10
@@ -448,27 +447,7 @@ void AppTask::FunctionTimerEventHandler(AppEvent * event)
return;
}
- // If we reached here, the button was held past FACTORY_RESET_TRIGGER_TIMEOUT,
- // initiate factory reset
- if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kStartBleAdv)
- {
- P6_LOG("Factory Reset Triggered. Release button within %ums to cancel.", FACTORY_RESET_CANCEL_WINDOW_TIMEOUT);
-
- // Start timer for FACTORY_RESET_CANCEL_WINDOW_TIMEOUT to allow user to
- // cancel, if required.
- sAppTask.StartTimer(FACTORY_RESET_CANCEL_WINDOW_TIMEOUT);
-
- sAppTask.mFunction = Function::kFactoryReset;
-
- // Turn off all LEDs before starting blink to make sure blink is
- // co-ordinated.
- sStatusLED.Set(false);
- sLockLED.Set(false);
-
- sStatusLED.Blink(500);
- sLockLED.Blink(500);
- }
- else if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
+ if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
{
// Actually trigger Factory Reset
sAppTask.mFunction = Function::kNoneSelected;
@@ -482,28 +461,25 @@ void AppTask::FunctionHandler(AppEvent * event)
{
return;
}
- // To trigger software update: press the APP_FUNCTION_BUTTON button briefly (<
- // FACTORY_RESET_TRIGGER_TIMEOUT) To initiate factory reset: press the
- // APP_FUNCTION_BUTTON for FACTORY_RESET_TRIGGER_TIMEOUT +
- // FACTORY_RESET_CANCEL_WINDOW_TIMEOUT All LEDs start blinking after
- // FACTORY_RESET_TRIGGER_TIMEOUT to signal factory reset has been initiated.
- // To cancel factory reset: release the APP_FUNCTION_BUTTON once all LEDs
- // start blinking within the FACTORY_RESET_CANCEL_WINDOW_TIMEOUT
- if (event->ButtonEvent.Action == APP_BUTTON_RELEASED)
+
+ if (event->ButtonEvent.Action == APP_BUTTON_PRESSED)
{
if (!sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kNoneSelected)
{
- sAppTask.StartTimer(FACTORY_RESET_TRIGGER_TIMEOUT);
- sAppTask.mFunction = Function::kStartBleAdv;
- }
- }
- else
- {
- // If the button was released before factory reset got initiated, start Thread Network
- if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kStartBleAdv)
- {
- sAppTask.CancelTimer();
- sAppTask.mFunction = Function::kNoneSelected;
+ P6_LOG("Factory Reset Triggered. Press button again within %us to cancel.", FACTORY_RESET_CANCEL_WINDOW_TIMEOUT / 1000);
+ // Start timer for FACTORY_RESET_CANCEL_WINDOW_TIMEOUT to allow user to
+ // cancel, if required.
+ sAppTask.StartTimer(FACTORY_RESET_CANCEL_WINDOW_TIMEOUT);
+
+ sAppTask.mFunction = Function::kFactoryReset;
+
+ // Turn off all LEDs before starting blink to make sure blink is
+ // co-ordinated.
+ sStatusLED.Set(false);
+ sLockLED.Set(false);
+
+ sStatusLED.Blink(500);
+ sLockLED.Blink(500);
}
else if (sAppTask.mFunctionTimerActive && sAppTask.mFunction == Function::kFactoryReset)
{
@@ -612,10 +588,31 @@ void AppTask::PostEvent(const AppEvent * event)
{
if (sAppEventQueue != NULL)
{
- if (!xQueueSend(sAppEventQueue, event, 1))
+ BaseType_t status;
+ if (xPortIsInsideInterrupt())
{
- P6_LOG("Failed to post event to app task event queue");
+ BaseType_t higherPrioTaskWoken = pdFALSE;
+ status = xQueueSendFromISR(sAppEventQueue, event, &higherPrioTaskWoken);
+
+#ifdef portYIELD_FROM_ISR
+ portYIELD_FROM_ISR(higherPrioTaskWoken);
+#elif portEND_SWITCHING_ISR // portYIELD_FROM_ISR or portEND_SWITCHING_ISR
+ portEND_SWITCHING_ISR(higherPrioTaskWoken);
+#else // portYIELD_FROM_ISR or portEND_SWITCHING_ISR
+#error "Must have portYIELD_FROM_ISR or portEND_SWITCHING_ISR"
+#endif // portYIELD_FROM_ISR or portEND_SWITCHING_ISR
}
+ else
+ {
+ status = xQueueSend(sAppEventQueue, event, 1);
+ }
+
+ if (!status)
+ P6_LOG("Failed to post event to app task event queue");
+ }
+ else
+ {
+ P6_LOG("Event Queue is NULL should never happen");
}
}
diff --git a/examples/lock-app/p6/src/ButtonHandler.cpp b/examples/lock-app/infineon/psoc6/src/ButtonHandler.cpp
similarity index 97%
rename from examples/lock-app/p6/src/ButtonHandler.cpp
rename to examples/lock-app/infineon/psoc6/src/ButtonHandler.cpp
index d0bd98a52686ed..20a7c6bce7d1c0 100644
--- a/examples/lock-app/p6/src/ButtonHandler.cpp
+++ b/examples/lock-app/infineon/psoc6/src/ButtonHandler.cpp
@@ -97,5 +97,9 @@ void ButtonHandler::TimerCallback(TimerHandle_t xTimer)
{
buttonevent = cyhal_gpio_read(APP_LOCK_BUTTON);
}
- GetAppTask().ButtonEventHandler(timerId, (buttonevent) ? APP_BUTTON_PRESSED : APP_BUTTON_RELEASED);
+
+ if (buttonevent)
+ {
+ GetAppTask().ButtonEventHandler(timerId, APP_BUTTON_PRESSED);
+ }
}
diff --git a/examples/lock-app/p6/src/LockManager.cpp b/examples/lock-app/infineon/psoc6/src/LockManager.cpp
similarity index 99%
rename from examples/lock-app/p6/src/LockManager.cpp
rename to examples/lock-app/infineon/psoc6/src/LockManager.cpp
index d83b984b789779..059f059f3735eb 100644
--- a/examples/lock-app/p6/src/LockManager.cpp
+++ b/examples/lock-app/infineon/psoc6/src/LockManager.cpp
@@ -25,7 +25,7 @@
#include
#include
#include
-#include
+#include
LockManager LockManager::sLock;
diff --git a/examples/lock-app/p6/src/ZclCallbacks.cpp b/examples/lock-app/infineon/psoc6/src/ZclCallbacks.cpp
similarity index 100%
rename from examples/lock-app/p6/src/ZclCallbacks.cpp
rename to examples/lock-app/infineon/psoc6/src/ZclCallbacks.cpp
diff --git a/examples/lock-app/p6/src/main.cpp b/examples/lock-app/infineon/psoc6/src/main.cpp
similarity index 99%
rename from examples/lock-app/p6/src/main.cpp
rename to examples/lock-app/infineon/psoc6/src/main.cpp
index f998b3c4e54f54..8dc525dc8d717f 100644
--- a/examples/lock-app/p6/src/main.cpp
+++ b/examples/lock-app/infineon/psoc6/src/main.cpp
@@ -35,7 +35,7 @@
#include "AppConfig.h"
#include "cyhal_wdt.h"
-#include "init_p6Platform.h"
+#include "init_psoc6Platform.h"
#include
#define MAIN_TASK_STACK_SIZE (4096)
diff --git a/examples/lock-app/infineon/psoc6/third_party/connectedhomeip b/examples/lock-app/infineon/psoc6/third_party/connectedhomeip
new file mode 120000
index 00000000000000..3efed95be5dbe9
--- /dev/null
+++ b/examples/lock-app/infineon/psoc6/third_party/connectedhomeip
@@ -0,0 +1 @@
+../../../../../
\ No newline at end of file
diff --git a/examples/lock-app/lock-common/lock-app.matter b/examples/lock-app/lock-common/lock-app.matter
index e9ecd31dec7fb0..4cefbed40a134e 100644
--- a/examples/lock-app/lock-common/lock-app.matter
+++ b/examples/lock-app/lock-common/lock-app.matter
@@ -1139,12 +1139,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/lock-app/p6/build_overrides b/examples/lock-app/p6/build_overrides
deleted file mode 120000
index 194ee0b812dc3d..00000000000000
--- a/examples/lock-app/p6/build_overrides
+++ /dev/null
@@ -1 +0,0 @@
-../../build_overrides/
\ No newline at end of file
diff --git a/examples/lock-app/p6/third_party/connectedhomeip b/examples/lock-app/p6/third_party/connectedhomeip
deleted file mode 120000
index 11a54ed360106c..00000000000000
--- a/examples/lock-app/p6/third_party/connectedhomeip
+++ /dev/null
@@ -1 +0,0 @@
-../../../../
\ No newline at end of file
diff --git a/examples/ota-provider-app/esp32/sdkconfig.defaults b/examples/ota-provider-app/esp32/sdkconfig.defaults
index 537c6deab2897f..7fce894e5a80d8 100644
--- a/examples/ota-provider-app/esp32/sdkconfig.defaults
+++ b/examples/ota-provider-app/esp32/sdkconfig.defaults
@@ -58,3 +58,6 @@ CONFIG_USE_TEST_SETUP_DISCRIMINATOR=0xF01
# Enable chip shell
CONFIG_ENABLE_CHIP_SHELL=y
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/ota-provider-app/ota-provider-common/ota-provider-app.matter b/examples/ota-provider-app/ota-provider-common/ota-provider-app.matter
index 9c754da2cbe516..116c938fb8e65b 100644
--- a/examples/ota-provider-app/ota-provider-common/ota-provider-app.matter
+++ b/examples/ota-provider-app/ota-provider-common/ota-provider-app.matter
@@ -585,12 +585,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/ota-requestor-app/cyw30739/build_overrides b/examples/ota-requestor-app/cyw30739/build_overrides
deleted file mode 120000
index e578e73312ebd1..00000000000000
--- a/examples/ota-requestor-app/cyw30739/build_overrides
+++ /dev/null
@@ -1 +0,0 @@
-../../build_overrides
\ No newline at end of file
diff --git a/examples/ota-requestor-app/cyw30739/third_party/connectedhomeip b/examples/ota-requestor-app/cyw30739/third_party/connectedhomeip
deleted file mode 120000
index c866b86874994d..00000000000000
--- a/examples/ota-requestor-app/cyw30739/third_party/connectedhomeip
+++ /dev/null
@@ -1 +0,0 @@
-../../../..
\ No newline at end of file
diff --git a/examples/ota-requestor-app/esp32/main/main.cpp b/examples/ota-requestor-app/esp32/main/main.cpp
index 021fd5b3fb6675..ba9ed616b05e5f 100644
--- a/examples/ota-requestor-app/esp32/main/main.cpp
+++ b/examples/ota-requestor-app/esp32/main/main.cpp
@@ -80,6 +80,40 @@ DeviceLayer::ESP32DeviceInfoProvider gExampleDeviceInfoProvider;
#else
DeviceLayer::DeviceInfoProviderImpl gExampleDeviceInfoProvider;
#endif // CONFIG_ENABLE_ESP32_DEVICE_INFO_PROVIDER
+
+void OTAEventsHandler(const DeviceLayer::ChipDeviceEvent * event, intptr_t arg)
+{
+ if (event->Type == DeviceLayer::DeviceEventType::kOtaStateChanged)
+ {
+ switch (event->OtaStateChanged.newState)
+ {
+ case DeviceLayer::kOtaDownloadInProgress:
+ ChipLogProgress(DeviceLayer, "OTA image download in progress");
+ break;
+ case DeviceLayer::kOtaDownloadComplete:
+ ChipLogProgress(DeviceLayer, "OTA image download complete");
+ break;
+ case DeviceLayer::kOtaDownloadFailed:
+ ChipLogProgress(DeviceLayer, "OTA image download failed");
+ break;
+ case DeviceLayer::kOtaDownloadAborted:
+ ChipLogProgress(DeviceLayer, "OTA image download aborted");
+ break;
+ case DeviceLayer::kOtaApplyInProgress:
+ ChipLogProgress(DeviceLayer, "OTA image apply in progress");
+ break;
+ case DeviceLayer::kOtaApplyComplete:
+ ChipLogProgress(DeviceLayer, "OTA image apply complete");
+ break;
+ case DeviceLayer::kOtaApplyFailed:
+ ChipLogProgress(DeviceLayer, "OTA image apply failed");
+ break;
+ default:
+ break;
+ }
+ }
+}
+
} // namespace
extern "C" void app_main()
@@ -136,4 +170,6 @@ extern "C" void app_main()
#endif // CONFIG_ENABLE_ESP32_FACTORY_DATA_PROVIDER
chip::DeviceLayer::PlatformMgr().ScheduleWork(InitServer, reinterpret_cast(nullptr));
+
+ chip::DeviceLayer::PlatformMgrImpl().AddEventHandler(OTAEventsHandler, reinterpret_cast(nullptr));
}
diff --git a/examples/ota-requestor-app/esp32/sdkconfig.defaults b/examples/ota-requestor-app/esp32/sdkconfig.defaults
index beec4822b35cdf..17b6e378f65ca9 100644
--- a/examples/ota-requestor-app/esp32/sdkconfig.defaults
+++ b/examples/ota-requestor-app/esp32/sdkconfig.defaults
@@ -59,3 +59,6 @@ CONFIG_DEVICE_SOFTWARE_VERSION_NUMBER=2
# Enable Chip Shell
CONFIG_ENABLE_CHIP_SHELL=y
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/ota-requestor-app/cyw30739/.gn b/examples/ota-requestor-app/infineon/cyw30739/.gn
similarity index 100%
rename from examples/ota-requestor-app/cyw30739/.gn
rename to examples/ota-requestor-app/infineon/cyw30739/.gn
diff --git a/examples/ota-requestor-app/cyw30739/BUILD.gn b/examples/ota-requestor-app/infineon/cyw30739/BUILD.gn
similarity index 92%
rename from examples/ota-requestor-app/cyw30739/BUILD.gn
rename to examples/ota-requestor-app/infineon/cyw30739/BUILD.gn
index b1ea6fde6aa876..3701330b0f7113 100644
--- a/examples/ota-requestor-app/cyw30739/BUILD.gn
+++ b/examples/ota-requestor-app/infineon/cyw30739/BUILD.gn
@@ -19,8 +19,9 @@ import("//build_overrides/cyw30739_sdk.gni")
import("${cyw30739_sdk_build_root}/cyw30739_executable.gni")
import("${cyw30739_sdk_build_root}/cyw30739_sdk.gni")
-cyw30739_project_dir = "${chip_root}/examples/ota-requestor-app/cyw30739"
-examples_plat_dir = "${chip_root}/examples/platform/cyw30739"
+cyw30739_project_dir =
+ "${chip_root}/examples/ota-requestor-app/infineon/cyw30739"
+examples_plat_dir = "${chip_root}/examples/platform/infineon/cyw30739"
declare_args() {
setupPinCode = 20202021
diff --git a/examples/ota-requestor-app/cyw30739/README.md b/examples/ota-requestor-app/infineon/cyw30739/README.md
similarity index 93%
rename from examples/ota-requestor-app/cyw30739/README.md
rename to examples/ota-requestor-app/infineon/cyw30739/README.md
index 49737cd4f270fc..7ac0990009fbcd 100644
--- a/examples/ota-requestor-app/cyw30739/README.md
+++ b/examples/ota-requestor-app/infineon/cyw30739/README.md
@@ -33,7 +33,7 @@ dataset and CASE credentials are then provided.
```bash
$ cd ~/connectedhomeip
$ git submodule update --init
- $ ./scripts/examples/gn_build_example.sh examples/ota-requestor-app/cyw30739 out/ota-requestor-app
+ $ ./scripts/examples/gn_build_example.sh examples/ota-requestor-app/infineon/cyw30739 out/ota-requestor-app
```
- To delete generated executable, libraries and object files use:
@@ -46,7 +46,7 @@ dataset and CASE credentials are then provided.
- OR use GN/Ninja directly
```bash
- $ cd ~/connectedhomeip/examples/ota-requestor-app/cyw30739
+ $ cd ~/connectedhomeip/examples/ota-requestor-app/infineon/cyw30739
$ git submodule update --init
$ source third_party/connectedhomeip/scripts/activate.sh
$ gn gen out/debug
@@ -56,7 +56,7 @@ dataset and CASE credentials are then provided.
- To delete generated executable, libraries and object files use:
```bash
- $ cd ~/connectedhomeip/examples/ota-requestor-app/cyw30739
+ $ cd ~/connectedhomeip/examples/ota-requestor-app/infineon/cyw30739
$ rm -rf out/
```
@@ -76,7 +76,7 @@ Put the CYW30739 in to the recovery mode before running the flash script.
- On the command line:
```bash
- $ cd ~/connectedhomeip/examples/ota-requestor-app/cyw30739
+ $ cd ~/connectedhomeip/examples/ota-requestor-app/infineon/cyw30739
$ python3 out/debug/chip-cyw30739-ota-requestor-example.flash.py
```
diff --git a/examples/ota-requestor-app/cyw30739/args.gni b/examples/ota-requestor-app/infineon/cyw30739/args.gni
similarity index 92%
rename from examples/ota-requestor-app/cyw30739/args.gni
rename to examples/ota-requestor-app/infineon/cyw30739/args.gni
index 8eda8fb616b4aa..37d8fa8d701fb9 100644
--- a/examples/ota-requestor-app/cyw30739/args.gni
+++ b/examples/ota-requestor-app/infineon/cyw30739/args.gni
@@ -13,7 +13,7 @@
# limitations under the License.
import("//build_overrides/chip.gni")
-import("${chip_root}/src/platform/CYW30739/args.gni")
+import("${chip_root}/src/platform/Infineon/CYW30739/args.gni")
cyw30739_sdk_target = get_label_info(":sdk", "label_no_toolchain")
diff --git a/examples/ota-requestor-app/infineon/cyw30739/build_overrides b/examples/ota-requestor-app/infineon/cyw30739/build_overrides
new file mode 120000
index 00000000000000..ee19c065d619a2
--- /dev/null
+++ b/examples/ota-requestor-app/infineon/cyw30739/build_overrides
@@ -0,0 +1 @@
+../../../build_overrides/
\ No newline at end of file
diff --git a/examples/ota-requestor-app/cyw30739/include/CHIPProjectConfig.h b/examples/ota-requestor-app/infineon/cyw30739/include/CHIPProjectConfig.h
similarity index 100%
rename from examples/ota-requestor-app/cyw30739/include/CHIPProjectConfig.h
rename to examples/ota-requestor-app/infineon/cyw30739/include/CHIPProjectConfig.h
diff --git a/examples/ota-requestor-app/cyw30739/src/main.cpp b/examples/ota-requestor-app/infineon/cyw30739/src/main.cpp
similarity index 100%
rename from examples/ota-requestor-app/cyw30739/src/main.cpp
rename to examples/ota-requestor-app/infineon/cyw30739/src/main.cpp
diff --git a/examples/ota-requestor-app/cyw30739/static_config.txt b/examples/ota-requestor-app/infineon/cyw30739/static_config.txt
similarity index 100%
rename from examples/ota-requestor-app/cyw30739/static_config.txt
rename to examples/ota-requestor-app/infineon/cyw30739/static_config.txt
diff --git a/examples/ota-requestor-app/infineon/cyw30739/third_party/connectedhomeip b/examples/ota-requestor-app/infineon/cyw30739/third_party/connectedhomeip
new file mode 120000
index 00000000000000..3efed95be5dbe9
--- /dev/null
+++ b/examples/ota-requestor-app/infineon/cyw30739/third_party/connectedhomeip
@@ -0,0 +1 @@
+../../../../../
\ No newline at end of file
diff --git a/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter b/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter
index 27b5cb68c0562c..b4f355b42db983 100644
--- a/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter
+++ b/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter
@@ -767,12 +767,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/persistent-storage/efr32/include/AppConfig.h b/examples/persistent-storage/efr32/include/AppConfig.h
index 74a5ae90e43c83..ae2846d90c6caa 100644
--- a/examples/persistent-storage/efr32/include/AppConfig.h
+++ b/examples/persistent-storage/efr32/include/AppConfig.h
@@ -24,7 +24,7 @@
extern "C" {
#endif
-void efr32LogInit(void);
+void efr32InitLog(void);
void efr32Log(const char * aFormat, ...);
#define EFR32_LOG(...) efr32Log(__VA_ARGS__);
diff --git a/examples/persistent-storage/p6/.gn b/examples/persistent-storage/infineon/psoc6/.gn
similarity index 100%
rename from examples/persistent-storage/p6/.gn
rename to examples/persistent-storage/infineon/psoc6/.gn
diff --git a/examples/persistent-storage/p6/BUILD.gn b/examples/persistent-storage/infineon/psoc6/BUILD.gn
similarity index 63%
rename from examples/persistent-storage/p6/BUILD.gn
rename to examples/persistent-storage/infineon/psoc6/BUILD.gn
index 944a2e07178056..d359f833815136 100644
--- a/examples/persistent-storage/p6/BUILD.gn
+++ b/examples/persistent-storage/infineon/psoc6/BUILD.gn
@@ -14,43 +14,44 @@
import("//build_overrides/build.gni")
import("//build_overrides/chip.gni")
-import("//build_overrides/p6.gni")
+import("//build_overrides/psoc6.gni")
import("${build_root}/config/defaults.gni")
-import("${p6_sdk_build_root}/p6_executable.gni")
-import("${p6_sdk_build_root}/p6_sdk.gni")
+import("${psoc6_sdk_build_root}/psoc6_executable.gni")
+import("${psoc6_sdk_build_root}/psoc6_sdk.gni")
assert(current_os == "freertos")
-p6_project_dir = "${chip_root}/examples/persistent-storage/p6"
-examples_plat_dir = "${chip_root}/examples/platform/p6"
+psoc6_project_dir = "${chip_root}/examples/persistent-storage/infineon/psoc6"
+examples_plat_dir = "${chip_root}/examples/platform/infineon/psoc6"
declare_args() {
# Dump memory usage at link time.
chip_print_memory_usage = false
}
-p6_sdk_sources("persistent_storage_app_sdk_sources") {
+psoc6_sdk_sources("persistent_storage_app_sdk_sources") {
include_dirs = [
- "${chip_root}/src/platform/P6",
- "${p6_project_dir}/include",
+ "${chip_root}/src/platform/Infineon/PSOC6",
+ "${psoc6_project_dir}/include",
"${examples_plat_dir}",
]
defines = [
- "BOARD_ID=${p6_board}",
+ "BOARD_ID=${psoc6_board}",
"P6_LOG_ENABLED=1",
]
- sources = [ "${p6_project_dir}/include/CHIPProjectConfig.h" ]
+ sources = [ "${psoc6_project_dir}/include/CHIPProjectConfig.h" ]
- public_configs = [ "${chip_root}/third_party/p6:p6_sdk_config" ]
+ public_configs =
+ [ "${chip_root}/third_party/infineon/psoc6:psoc6_sdk_config" ]
}
-p6_executable("persistent_storage_app") {
+psoc6_executable("persistent_storage_app") {
include_dirs = []
defines = []
- output_name = "chip-p6-persistent-storage-example.out"
+ output_name = "chip-psoc6-persistent-storage-example.out"
public_deps = [
":persistent_storage_app_sdk_sources",
@@ -61,14 +62,14 @@ p6_executable("persistent_storage_app") {
include_dirs += [
"include",
"${examples_plat_dir}",
- "${p6_project_dir}/include",
+ "${psoc6_project_dir}/include",
"${chip_root}/examples/persistent-storage",
]
sources = [
"${chip_root}/examples/persistent-storage/KeyValueStorageTest.cpp",
- "${examples_plat_dir}/init_p6Platform.cpp",
- "${p6_project_dir}/include/CHIPProjectConfig.h",
+ "${examples_plat_dir}/init_psoc6Platform.cpp",
+ "${psoc6_project_dir}/include/CHIPProjectConfig.h",
"main.cpp",
]
@@ -82,10 +83,10 @@ p6_executable("persistent_storage_app") {
}
}
-group("p6") {
+group("psoc6") {
deps = [ ":persistent_storage_app" ]
}
group("default") {
- deps = [ ":p6" ]
+ deps = [ ":psoc6" ]
}
diff --git a/examples/persistent-storage/p6/README.md b/examples/persistent-storage/infineon/psoc6/README.md
similarity index 65%
rename from examples/persistent-storage/p6/README.md
rename to examples/persistent-storage/infineon/psoc6/README.md
index 8f30ecab6dbc39..19a32c60c85acf 100644
--- a/examples/persistent-storage/p6/README.md
+++ b/examples/persistent-storage/infineon/psoc6/README.md
@@ -1,12 +1,12 @@
-# CHIP P6 Persistent Storage Example
+# CHIP PSoC6 Persistent Storage Example
An example testing and demonstrating the key value storage API.
-- [CHIP P6 Persistent Storage Example](#chip-P6-persistent-storage-example)
+- [CHIP PSoC6 Persistent Storage Example](#chip-PSoC6-persistent-storage-example)
- [Introduction](#introduction)
- - [P6](#P6)
+ - [PSoC6](#PSoC6)
- [Building](#building)
- [Flashing the Application](#flashing-the-application)
@@ -23,12 +23,12 @@ to use the API.
In the future this example can be moved into a unit test when available on all
platforms.
-
+
-## P6
+## PSoC6
-The P6 platform KVS is fully implemented, the KVS is enabled and configured by
-providing a file during the init call.
+The Infineon PSoC6 platform KVS is fully implemented, the KVS is enabled and
+configured by providing a file during the init call.
@@ -38,7 +38,7 @@ providing a file during the init call.
$ git submodule update --init
$ source third_party/connectedhomeip/scripts/activate.sh
- $ ./scripts/examples/gn_p6_example.sh examples/persistent-storage/p6 out/persistent_storage_app_p6
+ $ ./scripts/examples/gn_psoc6_example.sh examples/persistent-storage/infineon/psoc6 out/persistent_storage_app_psoc6
@@ -51,4 +51,4 @@ providing a file during the init call.
- On the command line:
$ cd ~/connectedhomeip
- $ python3 out/persistent_storage_app_p6/chip-p6-persistent-storage-example.flash.py
+ $ python3 out/persistent_storage_app_psoc6/chip-psoc6-persistent-storage-example.flash.py
diff --git a/examples/persistent-storage/p6/args.gni b/examples/persistent-storage/infineon/psoc6/args.gni
similarity index 89%
rename from examples/persistent-storage/p6/args.gni
rename to examples/persistent-storage/infineon/psoc6/args.gni
index 1c30d812940d3d..0b4443ebd96fcc 100644
--- a/examples/persistent-storage/p6/args.gni
+++ b/examples/persistent-storage/infineon/psoc6/args.gni
@@ -14,7 +14,7 @@
import("//build_overrides/chip.gni")
import("//build_overrides/pigweed.gni")
-import("${chip_root}/src/platform/P6/args.gni")
+import("${chip_root}/src/platform/Infineon/PSOC6/args.gni")
-p6_target_project =
+psoc6_target_project =
get_label_info(":persistent_storage_app_sdk_sources", "label_no_toolchain")
diff --git a/examples/persistent-storage/infineon/psoc6/build_overrides b/examples/persistent-storage/infineon/psoc6/build_overrides
new file mode 120000
index 00000000000000..ee19c065d619a2
--- /dev/null
+++ b/examples/persistent-storage/infineon/psoc6/build_overrides
@@ -0,0 +1 @@
+../../../build_overrides/
\ No newline at end of file
diff --git a/examples/persistent-storage/p6/include/AppConfig.h b/examples/persistent-storage/infineon/psoc6/include/AppConfig.h
similarity index 100%
rename from examples/persistent-storage/p6/include/AppConfig.h
rename to examples/persistent-storage/infineon/psoc6/include/AppConfig.h
diff --git a/examples/persistent-storage/p6/include/CHIPProjectConfig.h b/examples/persistent-storage/infineon/psoc6/include/CHIPProjectConfig.h
similarity index 100%
rename from examples/persistent-storage/p6/include/CHIPProjectConfig.h
rename to examples/persistent-storage/infineon/psoc6/include/CHIPProjectConfig.h
diff --git a/examples/persistent-storage/p6/main.cpp b/examples/persistent-storage/infineon/psoc6/main.cpp
similarity index 98%
rename from examples/persistent-storage/p6/main.cpp
rename to examples/persistent-storage/infineon/psoc6/main.cpp
index 03a5132aa73d99..104d63ffea0085 100644
--- a/examples/persistent-storage/p6/main.cpp
+++ b/examples/persistent-storage/infineon/psoc6/main.cpp
@@ -18,7 +18,7 @@
#include "AppConfig.h"
#include "KeyValueStorageTest.h"
-#include "init_p6Platform.h"
+#include "init_psoc6Platform.h"
#include
#include
#include
diff --git a/examples/persistent-storage/infineon/psoc6/third_party/connectedhomeip b/examples/persistent-storage/infineon/psoc6/third_party/connectedhomeip
new file mode 120000
index 00000000000000..3efed95be5dbe9
--- /dev/null
+++ b/examples/persistent-storage/infineon/psoc6/third_party/connectedhomeip
@@ -0,0 +1 @@
+../../../../../
\ No newline at end of file
diff --git a/examples/persistent-storage/p6/build_overrides b/examples/persistent-storage/p6/build_overrides
deleted file mode 120000
index 194ee0b812dc3d..00000000000000
--- a/examples/persistent-storage/p6/build_overrides
+++ /dev/null
@@ -1 +0,0 @@
-../../build_overrides/
\ No newline at end of file
diff --git a/examples/persistent-storage/p6/third_party/connectedhomeip b/examples/persistent-storage/p6/third_party/connectedhomeip
deleted file mode 120000
index c866b86874994d..00000000000000
--- a/examples/persistent-storage/p6/third_party/connectedhomeip
+++ /dev/null
@@ -1 +0,0 @@
-../../../..
\ No newline at end of file
diff --git a/examples/pigweed-app/efr32/include/AppConfig.h b/examples/pigweed-app/efr32/include/AppConfig.h
index 61a5430dafeeb8..8935b7f3bb7284 100644
--- a/examples/pigweed-app/efr32/include/AppConfig.h
+++ b/examples/pigweed-app/efr32/include/AppConfig.h
@@ -39,7 +39,7 @@
extern "C" {
#endif
-void efr32LogInit(void);
+void efr32InitLog(void);
void efr32Log(const char * aFormat, ...);
#define EFR32_LOG(...) efr32Log(__VA_ARGS__);
void appError(int err);
diff --git a/examples/placeholder/linux/apps/app1/ciTests.json b/examples/placeholder/linux/apps/app1/ciTests.json
new file mode 100644
index 00000000000000..7d3af1e9b509ba
--- /dev/null
+++ b/examples/placeholder/linux/apps/app1/ciTests.json
@@ -0,0 +1,4 @@
+{
+ "Test": ["Test_TC_BINFO_2_3_Simulated"],
+ "collection": ["Test"]
+}
diff --git a/examples/placeholder/linux/apps/app1/config.matter b/examples/placeholder/linux/apps/app1/config.matter
index 3c94652f6d9edd..eb235f5eaa24fa 100644
--- a/examples/placeholder/linux/apps/app1/config.matter
+++ b/examples/placeholder/linux/apps/app1/config.matter
@@ -1211,12 +1211,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/placeholder/linux/apps/app1/tests.js b/examples/placeholder/linux/apps/app1/tests.js
deleted file mode 100644
index 134085e4c85367..00000000000000
--- a/examples/placeholder/linux/apps/app1/tests.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- *
- * Copyright (c) 2021 Project CHIP Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function getTests()
-{
- const tests = [
- "Test_TC_BINFO_2_3_Simulated",
- ];
-
- return tests.join(', ');
-}
-
-//
-// Module exports
-//
-exports.getTests = getTests;
diff --git a/examples/placeholder/linux/apps/app2/config.matter b/examples/placeholder/linux/apps/app2/config.matter
index 3c94652f6d9edd..eb235f5eaa24fa 100644
--- a/examples/placeholder/linux/apps/app2/config.matter
+++ b/examples/placeholder/linux/apps/app2/config.matter
@@ -1211,12 +1211,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/placeholder/templates/helper.js b/examples/placeholder/templates/helper.js
deleted file mode 100644
index 01fc3dad95fec5..00000000000000
--- a/examples/placeholder/templates/helper.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- *
- * Copyright (c) 2021 Project CHIP Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function getTests()
-{
- try {
- const appTest = require('../linux/apps/app1/tests.js');
- return appTest.getTests();
- } catch (e) {
- console.info("No tests configuration has been found.");
- return '';
- }
-}
-
-//
-// Module exports
-//
-exports.getTests = getTests;
diff --git a/examples/placeholder/templates/templates.json b/examples/placeholder/templates/templates.json
index 8efe91f4650a47..5b4ee12daebc49 100644
--- a/examples/placeholder/templates/templates.json
+++ b/examples/placeholder/templates/templates.json
@@ -2,15 +2,19 @@
"name": "Placeholder templates",
"version": "chip-v1",
"helpers": [
- "../../../src/app/zap-templates/partials/helper.js",
- "../../../src/app/zap-templates/common/StringHelper.js",
- "../../../src/app/zap-templates/templates/app/helper.js",
- "../../../src/app/zap-templates/templates/chip/helper.js",
- "../../../src/app/zap-templates/common/ClusterTestGeneration.js",
- "../../../examples/chip-tool/templates/helper.js",
- "../../../examples/chip-tool/templates/tests/helper.js",
- "helper.js"
+ "partials/helper.js",
+ "common/StringHelper.js",
+ "templates/app/helper.js",
+ "templates/chip/helper.js",
+ "common/ClusterTestGeneration.js",
+ "chip-tool/templates/helper.js",
+ "chip-tool/templates/tests/helper.js"
],
+ "resources": {
+ "pics-metafile": "../../../src/app/tests/suites/certification/PICS.yaml",
+ "certification-metadir": "../../../src/app/tests/suites/certification",
+ "test-metadir": "../../../src/app/tests/suites"
+ },
"override": "../../../src/app/zap-templates/common/override.js",
"partials": [
{
diff --git a/examples/placeholder/templates/tests-commands.zapt b/examples/placeholder/templates/tests-commands.zapt
index 3c4f7a11776f72..f7bcbe375e802a 100644
--- a/examples/placeholder/templates/tests-commands.zapt
+++ b/examples/placeholder/templates/tests-commands.zapt
@@ -6,28 +6,23 @@
#include
-{{#if (getTests)}}
-{{>test_cluster tests=(getTests) credsIssuerConfigArg=false needsWaitDuration=false}}
-{{/if}}
+{{>test_cluster tests="../linux/apps/app1/ciTests.json" credsIssuerConfigArg=false needsWaitDuration=false}}
std::unique_ptrGetTestCommand(std::string testName)
{
- {{#if (getTests)}}
- {{#chip_tests (getTests)}}
+ {{#chip_tests "../linux/apps/app1/ciTests.json"}}
if (testName == "{{filename}}")
{
return std::unique_ptr<{{filename}}Suite>(new {{filename}}Suite());
}
{{/chip_tests}}
- {{/if}}
return nullptr;
}
void PrintTestCommands()
{
- {{#if (getTests)}}
- {{#chip_tests (getTests)}}
+ {{#chip_tests "../linux/apps/app1/ciTests.json"}}
{{#first}}
ChipLogError(chipTool, "Supported commands:");
{{/first}}
@@ -35,5 +30,4 @@ void PrintTestCommands()
{{else}}
ChipLogError("\t No available commands.");
{{/chip_tests}}
- {{/if}}
}
diff --git a/examples/platform/efr32/BUILD.gn b/examples/platform/efr32/BUILD.gn
index ba36aeff00c83b..d1522f93d6d686 100644
--- a/examples/platform/efr32/BUILD.gn
+++ b/examples/platform/efr32/BUILD.gn
@@ -15,6 +15,7 @@
import("//build_overrides/chip.gni")
import("//build_overrides/efr32_sdk.gni")
import("${chip_root}/src/lib/lib.gni")
+import("${chip_root}/src/platform/device.gni")
import("${efr32_sdk_build_root}/efr32_sdk.gni")
config("chip_examples_project_config") {
@@ -40,14 +41,19 @@ config("chip_examples_project_config") {
}
source_set("openthread_core_config_efr32_chip_examples") {
- sources = [ "project_include/OpenThreadConfig.h" ]
+ if (chip_enable_openthread) {
+ sources = [ "project_include/OpenThreadConfig.h" ]
- public_deps = [
- "${chip_root}/third_party/openthread/platforms/efr32:openthread_core_config_efr32",
- "${efr32_sdk_build_root}:efr32_sdk",
- ]
+ public_deps = [ "${efr32_sdk_build_root}:efr32_sdk" ]
- public_configs = [ ":chip_examples_project_config" ]
+ if (use_silabs_thread_lib) {
+ public_deps += [ "${efr32_sdk_build_root}:openthread_core_config_efr32" ]
+ } else {
+ public_deps += [ "${chip_root}/third_party/openthread/platforms/efr32:openthread_core_config_efr32" ]
+ }
+
+ public_configs = [ ":chip_examples_project_config" ]
+ }
}
source_set("efr-matter-shell") {
diff --git a/examples/platform/efr32/BaseApplication.cpp b/examples/platform/efr32/BaseApplication.cpp
index 47dbb9c001361d..66d8cbc0a4efa5 100644
--- a/examples/platform/efr32/BaseApplication.cpp
+++ b/examples/platform/efr32/BaseApplication.cpp
@@ -120,6 +120,10 @@ bool mFunctionTimerActive;
Identify * gIdentifyptr = nullptr;
+#ifdef DISPLAY_ENABLED
+SilabsLCD slLCD;
+#endif
+
} // namespace
/**********************************************************
@@ -214,7 +218,8 @@ CHIP_ERROR BaseApplication::Init(Identify * identifyObj)
if (GetQRCode(QRCode, chip::RendezvousInformationFlags(chip::RendezvousInformationFlag::kBLE)) == CHIP_NO_ERROR)
{
- LCDWriteQRCode((uint8_t *) QRCode.data());
+ slLCD.SetQRCode((uint8_t *) QRCode.data(), QRCode.size());
+ slLCD.ShowQRCode(true, true);
}
else
{
@@ -386,6 +391,11 @@ void BaseApplication::ButtonHandler(AppEvent * aEvent)
CancelFunctionTimer();
mFunction = kFunction_NoneSelected;
+#ifdef DISPLAY_ENABLED
+ // TOGGLE QRCode/LCD demo UI
+ slLCD.ToggleQRCode();
+#endif
+
#ifdef SL_WIFI
if (!ConnectivityMgr().IsWiFiStationProvisioned())
#else
@@ -469,6 +479,13 @@ void BaseApplication::LightTimerEventHandler(TimerHandle_t xTimer)
LightEventHandler();
}
+#ifdef DISPLAY_ENABLED
+SilabsLCD & BaseApplication::GetLCD(void)
+{
+ return slLCD;
+}
+#endif
+
void BaseApplication::PostEvent(const AppEvent * aEvent)
{
if (sAppEventQueue != NULL)
diff --git a/examples/platform/efr32/BaseApplication.h b/examples/platform/efr32/BaseApplication.h
index 41e2c1dbe64ffd..9c7ef22d8fe7d6 100644
--- a/examples/platform/efr32/BaseApplication.h
+++ b/examples/platform/efr32/BaseApplication.h
@@ -35,6 +35,14 @@
#include
#include
+#ifdef DISPLAY_ENABLED
+#include "demo-ui.h"
+#include "lcd.h"
+#ifdef QR_CODE_ENABLED
+#include "qrcodegen.h"
+#endif // QR_CODE_ENABLED
+#endif // DISPLAY_ENABLED
+
/**********************************************************
* Defines
*********************************************************/
@@ -73,6 +81,13 @@ class BaseApplication
*/
static void PostEvent(const AppEvent * event);
+#ifdef DISPLAY_ENABLED
+ /**
+ * @brief Return LCD object
+ */
+ static SilabsLCD & GetLCD(void);
+#endif
+
/**
* @brief Event handler when a button is pressed
* Function posts an event for button processing
@@ -165,8 +180,7 @@ class BaseApplication
static void LightEventHandler();
/**********************************************************
- * Private Attributes declaration
+ * Protected Attributes declaration
*********************************************************/
-
bool mSyncClusterToButtonAction;
};
diff --git a/examples/platform/efr32/FreeRTOSConfig.h b/examples/platform/efr32/FreeRTOSConfig.h
index 3408b5667aa9bc..f42179230d6bb0 100644
--- a/examples/platform/efr32/FreeRTOSConfig.h
+++ b/examples/platform/efr32/FreeRTOSConfig.h
@@ -198,7 +198,7 @@ See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
#ifndef configTOTAL_HEAP_SIZE
#ifdef SL_WIFI
-#define configTOTAL_HEAP_SIZE ((size_t)(30 * 1024))
+#define configTOTAL_HEAP_SIZE ((size_t)(34 * 1024))
#else
#define configTOTAL_HEAP_SIZE ((size_t)(20 * 1024))
#endif
diff --git a/examples/platform/efr32/display/demo-ui-bitmaps.h b/examples/platform/efr32/display/demo-ui-bitmaps.h
new file mode 100644
index 00000000000000..6f77ce4b733139
--- /dev/null
+++ b/examples/platform/efr32/display/demo-ui-bitmaps.h
@@ -0,0 +1,326 @@
+/***************************************************************************/ /**
+ * @file
+ * @brief User Interface bitmaps for demo.
+ *******************************************************************************
+ * # License
+ * Copyright 2020 Silicon Laboratories Inc.
+ *www.silabs.com
+ *******************************************************************************
+ *
+ * The licensor of this software is Silicon
+ *Laboratories Inc. Your use of this software is
+ *governed by the terms of Silicon Labs Master
+ *Software License Agreement (MSLA) available at
+ * www.silabs.com/about-us/legal/master-software-license-agreement.
+ *This software is distributed to you in Source Code
+ *format and is governed by the sections of the MSLA
+ *applicable to Source Code.
+ *
+ ******************************************************************************/
+
+#ifndef SILABS_DEMO_UI_BITMAPS_H
+#define SILABS_DEMO_UI_BITMAPS_H
+
+#define SILICONLABS_BITMAP_WIDTH 128
+#define SILICONLABS_BITMAP_HEIGHT 45
+
+#define ZIGBEE_BITMAP_WIDTH 16
+#define ZIGBEE_BITMAP_HEIGHT 16
+
+#define RAIL_BITMAP_WIDTH 16
+#define RAIL_BITMAP_HEIGHT 16
+
+#define CONNECT_BITMAP_WIDTH 16
+#define CONNECT_BITMAP_HEIGHT 16
+
+#define BLUETOOTH_BITMAP_WIDTH 16
+#define BLUETOOTH_BITMAP_HEIGHT 18
+
+#define SILABS_BITMAP \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xfd, 0xff, 0xff, 0x01, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0xff, 0xff, 0x3f, 0x00, \
+ 0x00, 0x00, 0x00, 0xff, 0xff, 0x1f, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0xfe, \
+ 0xff, 0x1f, 0xf8, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x1f, 0xf0, 0xff, \
+ 0xff, 0xff, 0x1f, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x1f, 0xe0, 0xff, 0xff, 0xff, 0xc3, 0xff, \
+ 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x0f, 0xc0, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0x07, 0x00, 0x00, \
+ 0x00, 0x00, 0x00, 0xff, 0xff, 0x07, 0xc0, 0xff, 0xff, 0x1f, 0xf8, 0xff, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, \
+ 0xff, 0x01, 0xc0, 0xff, 0xff, 0x07, 0xfc, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x7f, 0x00, 0x80, 0xff, \
+ 0xff, 0x01, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x00, 0x80, 0xff, 0x7f, 0x00, 0xff, 0xff, \
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x3f, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0xf0, \
+ 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x0f, 0x80, 0xff, 0xff, 0xff, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x01, \
+ 0x00, 0x00, 0xc0, 0xff, 0x03, 0xc0, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xe0, 0xff, \
+ 0x01, 0xc0, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xe0, 0xff, 0x00, 0xc0, 0xff, 0xff, \
+ 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, 0xf0, 0x7f, 0x00, 0x80, 0xff, 0xff, 0xff, 0x0f, 0xfc, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0xf8, 0x3f, 0x00, 0x80, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, \
+ 0x0f, 0x00, 0xfc, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xc0, 0xff, 0xff, 0xff, 0x0f, 0x00, 0xfe, 0x0f, \
+ 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0x1f, 0x00, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0x3f, 0xfc, 0xff, 0xff, 0x1f, 0x80, 0xff, 0x07, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0x3f, 0xf8, 0xff, 0xff, 0x1f, 0xc0, 0xff, 0x03, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x00, 0xf0, 0xff, 0xff, \
+ 0x0f, 0xf0, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0x3f, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0xfc, 0xff, 0x03, \
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x07, 0xfe, 0xff, 0x01, 0x00, 0x00, 0x3f, 0x00, \
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x83, 0xff, 0xff, 0x01, 0x00, 0xc0, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, \
+ 0x00, 0xfc, 0xff, 0xff, 0xe1, 0xff, 0xff, 0x03, 0x00, 0xf0, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, \
+ 0xf8, 0xff, 0xff, 0x03, 0x00, 0xf8, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0x03, \
+ 0x00, 0xfe, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0x07, 0x00, 0xff, 0xff, 0x01, \
+ 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x80, 0xff, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, \
+ 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xc0, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0x3f, 0xc0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0xff, 0xff, 0xff, \
+ 0x1f, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
+
+#define THREAD_BITMAP_WIDTH 16
+#define THREAD_BITMAP_HEIGHT 18
+
+#define THREAD_BITMAP \
+ 0x1F, 0xF8, 0x07, 0xE0, 0x03, 0xCE, 0x01, 0x9F, 0x01, 0xB3, 0x00, 0x33, 0xF0, 0x3F, 0xF8, 0x1F, 0x0C, 0x03, 0x0C, 0x03, 0x18, \
+ 0x03, 0x11, 0x83, 0x01, 0x83, 0x03, 0xC3, 0x07, 0xE3, 0x1F, 0xFB, 0x7f, 0xff, 0xff, 0xff
+
+#define WIFI_BITMAP_WIDTH 18
+#define WIFI_BITMAP_HEIGHT 18
+
+#define WIFI_BITMAP \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0x01, 0xE0, 0x03, 0x00, 0xC7, 0xFF, 0xB8, 0xFF, 0xF7, 0x07, 0xF8, 0x0F, 0xC0, 0x3F, \
+ 0x3F, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0x7F, 0xF8, 0xFF, 0xE1, 0xFF, 0xCF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F
+
+#define MATTER_LOGO_WIDTH 18
+#define MATTER_LOGO_HEIGHT 17
+
+#define MATTER_LOGO_BITMAP \
+ 0xFF, 0xFF, 0xFF, 0xF3, 0xFF, 0xCF, 0xFF, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0x12, 0xFF, 0x01, 0xFE, 0xFF, 0xFF, 0xF3, 0x3F, 0x8F, \
+ 0x7F, 0xFC, 0xFC, 0xFC, 0xE3, 0xF1, 0x87, 0x87, 0xC7, 0xDE, 0x88, 0x33, 0xC7, 0xCF, 0xFC, 0xFF, 0xFF, 0x03
+
+// APP Logo, boolean only. must be 64x64
+#if IS_DEMO_SWITCH
+#define ON_DEMO_BITMAP \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, \
+ 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0xC0, 0xFF, 0xFF, 0x03, 0xF8, 0xFF, 0xFF, 0x1F, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0xF8, 0xFF, 0xFF, 0x1F, 0xE0, 0xFF, 0xFF, 0x07, 0xF8, 0xFF, 0xFF, 0x1F, 0xE0, 0xFF, 0xFF, 0x07, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0xE0, 0xFF, 0xFF, 0x07, 0xF8, 0xFF, 0xFF, 0x1F, 0xE0, 0xFF, 0xFF, 0x07, 0xF8, 0xFF, 0xFF, 0x1F, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0xF8, 0xFF, 0xFF, 0x1F, 0xE0, 0xFF, 0xFF, 0x07, 0xF8, 0xFF, 0xFF, 0x1F, 0xE0, 0xFF, 0xFF, 0x07, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0xC0, 0xFF, 0xFF, 0x03, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, \
+ 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, \
+ 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+
+#define OFF_DEMO_BITMAP \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, \
+ 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, \
+ 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0xF8, 0xFF, 0xFF, 0x1F, 0xFC, 0xFF, 0xFF, 0x3F, 0xF8, 0xFF, 0xFF, 0x1F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0x3C, 0x00, 0x00, 0x3C, 0xFC, 0xFF, 0xFF, 0x3F, 0x3C, 0x00, 0x00, 0x3C, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0x3C, 0x00, 0x00, 0x3C, 0xFC, 0xFF, 0xFF, 0x3F, 0x3C, 0x00, 0x00, 0x3C, 0xFC, 0xFF, 0xFF, 0x3F, 0x3C, 0x00, 0x00, \
+ 0x3C, 0xFC, 0xFF, 0xFF, 0x3F, 0x3C, 0x00, 0x00, 0x3C, 0xFC, 0xFF, 0xFF, 0x3F, 0x3C, 0x00, 0x00, 0x3C, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0x3C, 0x00, 0x00, 0x3C, 0xFC, 0xFF, 0xFF, 0x3F, 0x3C, 0x00, 0x00, 0x3C, 0xFC, 0xFF, 0xFF, 0x3F, 0x3C, 0x00, 0x00, \
+ 0x3C, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xF8, 0xFF, 0xFF, 0x1F, 0xFC, 0xFF, 0xFF, \
+ 0x3F, 0xF8, 0xFF, 0xFF, 0x1F, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, \
+ 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, \
+ 0xFF, 0x01, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+#elif IS_DEMO_LIGHT
+#define ON_DEMO_BITMAP \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xff, 0xff, \
+ 0x8f, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0x1f, 0xfe, 0x07, 0xe0, \
+ 0x7f, 0xf8, 0xff, 0xff, 0x3f, 0xfc, 0x00, 0x00, 0x3f, 0xfc, 0xff, 0xff, 0x7f, 0x3c, 0xe0, 0x07, 0x3c, 0xfe, 0xff, 0xff, \
+ 0xff, 0x1f, 0xfe, 0x7f, 0xf8, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, \
+ 0xe3, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, \
+ 0xff, 0xf1, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, \
+ 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, \
+ 0x7f, 0xfe, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, \
+ 0x7f, 0xfc, 0xff, 0x0f, 0x38, 0xfe, 0xff, 0xff, 0x7f, 0x1c, 0xf0, 0x0f, 0x38, 0xfe, 0x03, 0xc0, 0x7f, 0x1c, 0xf0, 0x0f, \
+ 0x38, 0xfe, 0x27, 0xe9, 0x7f, 0x1c, 0xf0, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, \
+ 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xe7, 0xe7, 0x7f, 0xfc, 0xff, 0xff, 0x7f, 0xfe, 0xef, 0xf7, 0x7f, 0xfe, 0xff, 0xff, \
+ 0x7f, 0xfc, 0xef, 0xf7, 0x3f, 0xfe, 0xff, 0xff, 0xff, 0xfc, 0xef, 0xf3, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xcf, 0xf3, \
+ 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xdf, 0xfb, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xdf, 0xfb, 0x8f, 0xff, 0xff, 0xff, \
+ 0xff, 0xe3, 0x9f, 0xf9, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xc3, 0x9f, 0xf9, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x9f, 0xfd, \
+ 0xe3, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xbf, 0xfd, 0xf1, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x3f, 0xfc, 0xf8, 0xff, 0xff, 0xff, \
+ 0xff, 0x3f, 0x3e, 0x7c, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0x3f, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0x3f, \
+ 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0x8f, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, 0xc0, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0x3f, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
+
+#define OFF_DEMO_BITMAP \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xe0, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xe0, 0x07, 0xfc, 0xff, 0xff, 0xff, \
+ 0xff, 0x1f, 0xfe, 0x7f, 0xf8, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, \
+ 0xe3, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, \
+ 0xff, 0xf1, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, \
+ 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, \
+ 0x7f, 0xfe, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, \
+ 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, \
+ 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, \
+ 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, \
+ 0x7f, 0xfc, 0xff, 0xff, 0x3f, 0xfe, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, \
+ 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, \
+ 0xff, 0xe3, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, \
+ 0xe3, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, \
+ 0xff, 0x3f, 0xfe, 0x7f, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0x3f, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0x3f, \
+ 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0x8f, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, 0xc0, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0x3f, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
+#elif IS_DEMO_LOCK
+#define ON_DEMO_BITMAP \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, \
+ 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xE0, 0x07, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x0F, 0xFC, 0x3F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xFE, 0x7F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xFE, 0x7F, \
+ 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, \
+ 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x80, 0x01, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0xE0, 0x07, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF0, 0x0F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF8, 0x1F, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF8, 0x1F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xFC, 0x3F, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0xFC, 0x3F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF8, 0x1F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF8, 0x1F, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF0, 0x0F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xE0, 0x07, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x80, 0x01, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+
+#define OFF_DEMO_BITMAP \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, \
+ 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xE0, 0x07, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x0F, 0xFC, 0x3F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xFE, 0x7F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xFE, 0x7F, \
+ 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x80, 0x01, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0xE0, 0x07, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF0, 0x0F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF8, 0x1F, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF8, 0x1F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xFC, 0x3F, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0xFC, 0x3F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF8, 0x1F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF8, 0x1F, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xF0, 0x0F, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0xE0, 0x07, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x80, 0x01, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, \
+ 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, \
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+#else // Unknown demo....
+#define ON_DEMO_BITMAP \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0x7F, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x7F, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00, \
+ 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x07, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0x0F, \
+ 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0xFC, 0x3F, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFE, 0x7F, 0xFE, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x1F, 0xF8, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0F, 0xF0, \
+ 0x0F, 0xFF, 0xFF, 0xFF, 0x7F, 0xE0, 0x07, 0xE0, 0x07, 0xFE, 0xFF, 0xFF, 0x7F, 0xC0, 0x03, 0xC0, 0x03, 0xFE, 0xFF, 0xFF, \
+ 0x7F, 0xC0, 0x03, 0xC0, 0x03, 0xFE, 0xFF, 0xFF, 0x3F, 0xC0, 0x03, 0xC0, 0x03, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, \
+ 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, \
+ 0x8F, 0x01, 0x80, 0x01, 0x80, 0xF1, 0xFF, 0xFF, 0xCF, 0x03, 0xC0, 0x03, 0xC0, 0xF3, 0xFF, 0xFF, 0xEF, 0x07, 0xE0, 0x07, \
+ 0xE0, 0xF7, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x3F, 0xFC, 0x3F, 0xFC, 0xFF, 0xFF, 0xFF, 0x7F, 0x7E, 0x7E, 0x7E, 0x7E, 0xFE, 0xFF, 0xFF, 0x3F, 0xFC, 0x3F, 0xFC, \
+ 0x3F, 0xFC, 0xFF, 0xFF, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0xE0, 0x07, 0xE0, 0x07, 0xF8, 0xFF, 0xFF, 0x3F, 0xC0, 0x03, 0xC0, 0x03, 0xFC, 0xFF, 0xFF, 0x3F, 0x80, 0x01, 0x80, \
+ 0x01, 0xFC, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, \
+ 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, \
+ 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x1F, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+
+#define OFF_DEMO_BITMAP \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0x7F, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x7F, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00, \
+ 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x07, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, \
+ 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x01, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, \
+ 0x00, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, \
+ 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, \
+ 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, \
+ 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF0, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, \
+ 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, \
+ 0x00, 0xF0, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, \
+ 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, \
+ 0x00, 0xFC, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, \
+ 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, \
+ 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0x1F, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+
+#endif
+
+#endif // SILABS_DEMO_UI_BITMAPS_H
diff --git a/examples/platform/efr32/display/demo-ui.c b/examples/platform/efr32/display/demo-ui.c
new file mode 100644
index 00000000000000..73a8d52ea71090
--- /dev/null
+++ b/examples/platform/efr32/display/demo-ui.c
@@ -0,0 +1,136 @@
+/**
+ * @file
+ * @brief User Interface core logic for demo.
+ *******************************************************************************
+ * # License
+ * Copyright 2020 Silicon Laboratories Inc.
+ *www.silabs.com
+ *******************************************************************************
+ *
+ * The licensor of this software is Silicon
+ *Laboratories Inc. Your use of this software is
+ *governed by the terms of Silicon Labs Master
+ *Software License Agreement (MSLA) available at
+ * www.silabs.com/about-us/legal/master-software-license-agreement.
+ *This software is distributed to you in Source Code
+ *format and is governed by the sections of the MSLA
+ *applicable to Source Code.
+ *
+ ******************************************************************************/
+
+#include "demo-ui.h"
+#include "demo-ui-bitmaps.h"
+#include "dmd/dmd.h"
+#include "em_types.h"
+#include "glib.h"
+#include
+#include
+
+// Main Logo and App image
+#define SILICONLABS_X_POSITION ((glibContext.pDisplayGeometry->xSize - SILICONLABS_BITMAP_WIDTH) / 2)
+#define SILICONLABS_Y_POSITION 0
+#define APP_BITMAP_WIDTH 64
+#define APP_BITMAP_HEIGHT 64
+#define APP_X_POSITION ((glibContext.pDisplayGeometry->xSize - APP_BITMAP_WIDTH) / 2)
+#define APP_Y_POSITION (glibContext.pDisplayGeometry->ySize - APP_BITMAP_HEIGHT - 5)
+#define PROT1_ID_X_POSITION 1
+#define PROT2_ID_X_POSITION 79
+
+// Matter Logo
+#define PROT2_BITMAP_WIDTH MATTER_LOGO_WIDTH
+#define PROT2_BITMAP_HEIGHT MATTER_LOGO_HEIGHT
+#define PROT2_X_POSITION 104
+#define PROT2_Y_POSITION (APP_Y_POSITION + (APP_Y_POSITION / 2))
+#define PROT2_BITMAP (matterLogoBitmap)
+#define PROT2_BITMAP_CONN (matterLogoBitmap)
+
+// Networking Protocol Logo
+#ifdef SL_WIFI
+#define PROT1_BITMAP_WIDTH WIFI_BITMAP_WIDTH
+#define PROT1_BITMAP_HEIGHT WIFI_BITMAP_HEIGHT
+#define PROT1_X_POSITION 8
+#define PROT1_Y_POSITION (APP_Y_POSITION + (APP_Y_POSITION / 2))
+#define PROT1_BITMAP (networkBitMap)
+#define PROT1_BITMAP_CONN (networkBitMap)
+#else
+#define PROT1_BITMAP_WIDTH THREAD_BITMAP_WIDTH
+#define PROT1_BITMAP_HEIGHT THREAD_BITMAP_HEIGHT
+#define PROT1_X_POSITION 8
+#define PROT1_Y_POSITION (APP_Y_POSITION + (APP_Y_POSITION / 2))
+#define PROT1_BITMAP (networkBitMap)
+#define PROT1_BITMAP_CONN (networkBitMap)
+#endif
+
+/*******************************************************************************
+ *************************** LOCAL VARIABLES ********************************
+ ******************************************************************************/
+static GLIB_Context_t glibContext; /* Global glib context */
+
+static const uint8_t siliconlabsBitmap[] = { SILABS_BITMAP };
+static const uint8_t matterLogoBitmap[] = { MATTER_LOGO_BITMAP };
+
+static const uint8_t OnStateBitMap[] = { ON_DEMO_BITMAP };
+static const uint8_t OffStateBitMap[] = { OFF_DEMO_BITMAP };
+
+#ifdef SL_WIFI
+static const uint8_t networkBitMap[] = { WIFI_BITMAP };
+#else
+static const uint8_t networkBitMap[] = { THREAD_BITMAP };
+#endif
+
+// Future usage
+// static const uint8_t unconnectedBitMap[] = { QUESTION_MARK_BITMAP };
+
+/*******************************************************************************
+ ************************** LOCAL FUNCTIONS ********************************
+ ******************************************************************************/
+static void demoUIDisplayLogo(void)
+{
+ GLIB_drawBitmap(&glibContext, SILICONLABS_X_POSITION, SILICONLABS_Y_POSITION, SILICONLABS_BITMAP_WIDTH,
+ SILICONLABS_BITMAP_HEIGHT, siliconlabsBitmap);
+}
+
+/*******************************************************************************
+ ************************** GLOBAL FUNCTIONS *******************************
+ ******************************************************************************/
+void demoUIInit(GLIB_Context_t * context)
+{
+ memcpy(&glibContext, context, sizeof(GLIB_Context_t));
+}
+
+void demoUIDisplayHeader(char * name)
+{
+ demoUIDisplayLogo();
+ if (APP_NAME_MAX_LENGTH >= strlen(name))
+ {
+ GLIB_drawStringOnLine(&glibContext, name, 5, GLIB_ALIGN_CENTER, 0, 0, true);
+ }
+ DMD_updateDisplay();
+}
+
+void demoUIDisplayApp(bool on)
+{
+ GLIB_drawBitmap(&glibContext, APP_X_POSITION, APP_Y_POSITION, APP_BITMAP_WIDTH, APP_BITMAP_HEIGHT,
+ (on ? OnStateBitMap : OffStateBitMap));
+ DMD_updateDisplay();
+}
+
+void demoUIDisplayProtocol(demoUIProtocol protocol, bool isConnected)
+{
+ GLIB_drawBitmap(&glibContext, (protocol == DEMO_UI_PROTOCOL1 ? PROT1_X_POSITION : PROT2_X_POSITION),
+ (protocol == DEMO_UI_PROTOCOL1 ? PROT1_Y_POSITION : PROT2_Y_POSITION),
+ (protocol == DEMO_UI_PROTOCOL1 ? PROT1_BITMAP_WIDTH : PROT2_BITMAP_WIDTH),
+ (protocol == DEMO_UI_PROTOCOL1 ? PROT1_BITMAP_HEIGHT : PROT2_BITMAP_HEIGHT),
+ (protocol == DEMO_UI_PROTOCOL1 ? (isConnected ? PROT1_BITMAP_CONN : PROT1_BITMAP)
+ : (isConnected ? PROT2_BITMAP_CONN : PROT2_BITMAP)));
+ DMD_updateDisplay();
+}
+
+void demoUIClearMainScreen(uint8_t * name)
+{
+ GLIB_clear(&glibContext);
+ demoUIDisplayHeader((char *) name);
+ demoUIDisplayApp(false);
+ demoUIDisplayProtocol(DEMO_UI_PROTOCOL1, false);
+ demoUIDisplayProtocol(DEMO_UI_PROTOCOL2, false);
+}
diff --git a/examples/platform/efr32/display/demo-ui.h b/examples/platform/efr32/display/demo-ui.h
new file mode 100644
index 00000000000000..6197a4e73c71ef
--- /dev/null
+++ b/examples/platform/efr32/display/demo-ui.h
@@ -0,0 +1,139 @@
+/***************************************************************************/ /**
+ * @file
+ * @brief User Interface for demo.
+ *******************************************************************************
+ * # License
+ * Copyright 2020 Silicon Laboratories Inc.
+ *www.silabs.com
+ *******************************************************************************
+ *
+ * The licensor of this software is Silicon
+ *Laboratories Inc. Your use of this software is
+ *governed by the terms of Silicon Labs Master
+ *Software License Agreement (MSLA) available at
+ * www.silabs.com/about-us/legal/master-software-license-agreement.
+ *This software is distributed to you in Source Code
+ *format and is governed by the sections of the MSLA
+ *applicable to Source Code.
+ *
+ ******************************************************************************/
+
+#pragma once
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "glib.h"
+/**************************************************************************/ /**
+ * DEMO UI uses the underlying DMD interface and the
+ *GLIB and exposes several wrapper functions to
+ *application. These functions are used to display
+ * different bitmaps for the demo.
+ *
+ ******************************************************************************/
+
+#define APP_NAME_MAX_LENGTH 20
+
+/*******************************************************************************
+ ******************************** ENUMS ************************************
+ ******************************************************************************/
+
+typedef enum
+{
+ DEMO_UI_PROTOCOL1,
+ DEMO_UI_PROTOCOL2
+} demoUIProtocol;
+
+typedef enum
+{
+ DEMO_UI_LIGHT_OFF,
+ DEMO_UI_LIGHT_ON
+} demoUILightState_t;
+
+typedef enum
+{
+ DEMO_UI_DIRECTION_PROT1,
+ DEMO_UI_DIRECTION_PROT2,
+ DEMO_UI_DIRECTION_SWITCH,
+ DEMO_UI_DIRECTION_INVALID
+} demoUILightDirection_t;
+
+typedef enum
+{
+ DEMO_UI_NO_NETWORK,
+ DEMO_UI_SCANNING,
+ DEMO_UI_JOINING,
+ DEMO_UI_FORMING,
+ DEMO_UI_NETWORK_UP,
+ DEMO_UI_STATE_UNKNOWN
+} demoUIZigBeeNetworkState_t;
+
+/*******************************************************************************
+ ****************************** PROTOTYPES *********************************
+ ******************************************************************************/
+
+/**************************************************************************/ /**
+ * @brief
+ * Initilize the GLIB and DMD interfaces.
+ *
+ * @param[in] void
+ *
+ * @return
+ * void
+ *****************************************************************************/
+void demoUIInit(GLIB_Context_t * context);
+
+/**************************************************************************/ /**
+ * @brief
+ * Update the display with Silicon Labs logo and
+ *application name.
+ *
+ * @param[in] name name of the current application.
+ *
+ * @return
+ * void
+ *****************************************************************************/
+void demoUIDisplayHeader(char * name);
+
+/**************************************************************************/ /**
+ * @brief
+ * Update the display with App image. Bool state only
+ *for now.
+ *
+ * @param[in] on status of App
+ *
+ * @return
+ * void
+ *****************************************************************************/
+void demoUIDisplayApp(bool on);
+
+/**************************************************************************/ /**
+ * @brief
+ * Update the display to show if the bluetooth is
+ *connected to the mobile device.
+ *
+ * @param[in] bool, true if the Light is connected to
+ *mobile device, false otherwise.
+ *
+ * @return
+ * void
+ *****************************************************************************/
+void demoUIDisplayProtocol(demoUIProtocol protocol, bool isConnected);
+
+/**************************************************************************/ /**
+ * @brief
+ * Clear the Lcd screen and display the main screen.
+ *
+ * @param[in] name - application name
+ * @param[in] showPROT1 - show protocol 1 related icon.
+ * @param[in] showPROT2 - show protocol 2 related icon.
+ *
+ * @return
+ * void
+ *****************************************************************************/
+void demoUIClearMainScreen(uint8_t * name);
+
+#ifdef __cplusplus
+}
+#endif
diff --git a/examples/platform/efr32/display/lcd.c b/examples/platform/efr32/display/lcd.cpp
similarity index 62%
rename from examples/platform/efr32/display/lcd.c
rename to examples/platform/efr32/display/lcd.cpp
index a62f89c8ba25ab..9b66cfe1f024cc 100644
--- a/examples/platform/efr32/display/lcd.c
+++ b/examples/platform/efr32/display/lcd.cpp
@@ -19,6 +19,7 @@
#include
#include
+#include "demo-ui.h"
#include "lcd.h"
#include "dmd.h"
@@ -35,25 +36,36 @@
#define QR_CODE_MODULE_SIZE 3
#define QR_CODE_BORDER_SIZE 0
-static GLIB_Context_t glibContext;
#ifdef QR_CODE_ENABLED
static uint8_t qrCode[qrcodegen_BUFFER_LEN_FOR_VERSION(QR_CODE_VERSION)];
static uint8_t workBuffer[qrcodegen_BUFFER_LEN_FOR_VERSION(QR_CODE_VERSION)];
#endif // QR_CODE_ENABLED
-#ifdef QR_CODE_ENABLED
-static void LCDFillRect(uint8_t x, uint8_t y, uint8_t w, uint8_t h);
-#endif // QR_CODE_ENABLED
-
-void initLCD(void)
+CHIP_ERROR SilabsLCD::Init(uint8_t * name, bool initialState)
{
EMSTATUS status;
+ CHIP_ERROR err = CHIP_NO_ERROR;
+
+ // Check if Name is to long
+ if (name != nullptr)
+ {
+ if (APP_NAME_MAX_LENGTH < strlen((char *) name))
+ {
+ EFR32_LOG("App Name too long");
+ return CHIP_ERROR_INVALID_ARGUMENT;
+ }
+ else
+ {
+ strcpy((char *) mName, (char *) name);
+ }
+ }
/* Enable the memory lcd */
status = sl_board_enable_display();
- if (status == SL_STATUS_OK)
+ if (status != SL_STATUS_OK)
{
EFR32_LOG("Board Display enable fail %d", status);
+ err = CHIP_ERROR_INTERNAL;
}
/* Initialize the DMD module for the DISPLAY device driver. */
@@ -61,6 +73,7 @@ void initLCD(void)
if (DMD_OK != status)
{
EFR32_LOG("DMD init failed %d", status);
+ err = CHIP_ERROR_INTERNAL;
}
/* Initialize the glib context */
@@ -68,6 +81,7 @@ void initLCD(void)
if (GLIB_OK != status)
{
EFR32_LOG("Glib context init failed %d", status);
+ err = CHIP_ERROR_INTERNAL;
}
glibContext.backgroundColor = White;
@@ -76,34 +90,57 @@ void initLCD(void)
if (GLIB_OK != status)
{
EFR32_LOG("Glib clear failed %d", status);
+ err = CHIP_ERROR_INTERNAL;
}
+ demoUIInit(&glibContext);
+
+ dState.mainState = initialState;
+
+ return err;
}
/* This function is necessary because currently glib.h cannot be used within a C++ context. */
-void * LCDContext()
+void * SilabsLCD::Context()
{
return (void *) &glibContext;
}
-int LCD_clear(void * pContext)
+int SilabsLCD::Clear()
{
- return GLIB_clear((GLIB_Context_t *) pContext);
+ return GLIB_clear(&glibContext);
}
-int LCD_drawPixel(void * pContext, int32_t x, int32_t y)
+int SilabsLCD::DrawPixel(void * pContext, int32_t x, int32_t y)
{
return GLIB_drawPixel((GLIB_Context_t *) pContext, x, y);
}
-int LCD_update(void)
+int SilabsLCD::Update(void)
{
return DMD_updateDisplay();
}
+void SilabsLCD::WriteDemoUI(bool state)
+{
+ if (mShowQRCode)
+ {
+ mShowQRCode = false;
+ }
+ dState.mainState = state;
+ WriteDemoUI();
+}
+
+void SilabsLCD::WriteDemoUI()
+{
+ Clear();
+ demoUIClearMainScreen(mName);
+ demoUIDisplayApp(dState.mainState);
+}
+
#ifdef QR_CODE_ENABLED
-void LCDWriteQRCode(uint8_t * str)
+void SilabsLCD::WriteQRCode()
{
- if (!qrcodegen_encodeText((const char *) str, workBuffer, qrCode, qrcodegen_Ecc_LOW, QR_CODE_VERSION, QR_CODE_VERSION,
+ if (!qrcodegen_encodeText((const char *) mQRCodeBuffer, workBuffer, qrCode, qrcodegen_Ecc_LOW, QR_CODE_VERSION, QR_CODE_VERSION,
qrcodegen_Mask_AUTO, true))
{
EFR32_LOG("qrcodegen_encodeText() failed");
@@ -133,7 +170,30 @@ void LCDWriteQRCode(uint8_t * str)
DMD_updateDisplay();
}
-void LCDFillRect(uint8_t x, uint8_t y, uint8_t w, uint8_t h)
+void SilabsLCD::SetQRCode(uint8_t * str, uint32_t size)
+{
+ if (size < chip::QRCodeBasicSetupPayloadGenerator::kMaxQRCodeBase38RepresentationLength + 1)
+ {
+ memcpy(mQRCodeBuffer, str, size);
+ }
+}
+
+void SilabsLCD::ShowQRCode(bool show, bool forceRefresh)
+{
+ if (show != mShowQRCode || forceRefresh)
+ {
+ (show) ? WriteQRCode() : WriteDemoUI();
+ mShowQRCode = show;
+ }
+}
+
+void SilabsLCD::ToggleQRCode(void)
+{
+ (mShowQRCode) ? WriteDemoUI() : WriteQRCode();
+ mShowQRCode = !mShowQRCode;
+}
+
+void SilabsLCD::LCDFillRect(uint8_t x, uint8_t y, uint8_t w, uint8_t h)
{
for (int i = 0; i < h; i++)
{
diff --git a/examples/platform/efr32/display/lcd.h b/examples/platform/efr32/display/lcd.h
new file mode 100644
index 00000000000000..c9729e15d05de4
--- /dev/null
+++ b/examples/platform/efr32/display/lcd.h
@@ -0,0 +1,71 @@
+/*
+ *
+ * Copyright (c) 2020 Project CHIP Authors
+ * All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#pragma once
+
+#include "AppConfig.h"
+#include "glib.h"
+#ifdef QR_CODE_ENABLED
+#include "qrcodegen.h"
+#include
+#endif // QR_CODE_ENABLED
+
+#include "demo-ui.h"
+
+#define MAX_STR_LEN 48
+
+class SilabsLCD
+{
+
+public:
+ CHIP_ERROR Init(uint8_t * name = nullptr, bool initialState = false);
+ void * Context();
+ int Clear(void);
+ int DrawPixel(void * pContext, int32_t x, int32_t y);
+ int Update(void);
+ void WriteDemoUI(bool state);
+#ifdef QR_CODE_ENABLED
+ void SetQRCode(uint8_t * str, uint32_t size);
+ void ShowQRCode(bool show, bool forceRefresh = false);
+ void ToggleQRCode(void);
+#endif
+
+private:
+ typedef struct demoState
+ {
+ bool mainState = false;
+ bool protocol1 = false; /* data */
+ } DemoState_t;
+
+ void WriteQRCode();
+ void WriteDemoUI();
+#ifdef QR_CODE_ENABLED
+ void LCDFillRect(uint8_t x, uint8_t y, uint8_t w, uint8_t h);
+ char mQRCodeBuffer[chip::QRCodeBasicSetupPayloadGenerator::kMaxQRCodeBase38RepresentationLength + 1];
+ bool mShowQRCode = true;
+#endif
+ GLIB_Context_t glibContext;
+
+#ifdef SL_DEMO_NAME
+ uint8_t mName[] = SL_DEMO_NAME
+#else
+ uint8_t mName[APP_NAME_MAX_LENGTH + 1];
+#endif
+
+ DemoState_t dState;
+};
diff --git a/examples/platform/efr32/efr32_utils.h b/examples/platform/efr32/efr32_utils.h
index 610bde3e4e2511..98087091d9c0e9 100644
--- a/examples/platform/efr32/efr32_utils.h
+++ b/examples/platform/efr32/efr32_utils.h
@@ -24,7 +24,7 @@
extern "C" {
#endif
-void efr32LogInit(void);
+void efr32InitLog(void);
void efr32Log(const char * aFormat, ...);
#define EFR32_LOG(...) efr32Log(__VA_ARGS__);
diff --git a/examples/platform/efr32/init_efrPlatform.cpp b/examples/platform/efr32/init_efrPlatform.cpp
index f251f48f5dbab1..36ee0018e8a814 100644
--- a/examples/platform/efr32/init_efrPlatform.cpp
+++ b/examples/platform/efr32/init_efrPlatform.cpp
@@ -56,10 +56,6 @@ extern "C" {
#include "sl_mbedtls.h"
#include "sl_system_init.h"
-#if DISPLAY_ENABLED
-#include "lcd.h"
-#endif
-
void initAntenna(void);
void init_efrPlatform(void)
@@ -67,18 +63,13 @@ void init_efrPlatform(void)
sl_system_init();
sl_mbedtls_init();
-#if DISPLAY_ENABLED
- initLCD();
-#endif
-
#if EFR32_LOG_ENABLED
- efr32LogInit();
+ efr32InitLog();
#endif
#if CHIP_ENABLE_OPENTHREAD
efr32RadioInit();
efr32AlarmInit();
- efr32MiscInit();
#endif // CHIP_ENABLE_OPENTHREAD
}
diff --git a/examples/platform/efr32/lcd.h b/examples/platform/efr32/lcd.h
deleted file mode 100644
index b3702305d40f69..00000000000000
--- a/examples/platform/efr32/lcd.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- *
- * Copyright (c) 2020 Project CHIP Authors
- * All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#pragma once
-
-#include "AppConfig.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define MAX_STR_LEN 48
-
-void initLCD(void);
-void * LCDContext();
-int LCD_clear(void * pContext);
-int LCD_drawPixel(void * pContext, int32_t x, int32_t y);
-int LCD_update(void);
-void LCDWriteQRCode(uint8_t * str);
-
-#ifdef __cplusplus
-}
-#endif
diff --git a/examples/platform/efr32/ldscripts/efr32mg24.ld b/examples/platform/efr32/ldscripts/efr32mg24.ld
index bf3f9fd6aa0cb3..b057a9af720a7a 100644
--- a/examples/platform/efr32/ldscripts/efr32mg24.ld
+++ b/examples/platform/efr32/ldscripts/efr32mg24.ld
@@ -50,7 +50,7 @@
MEMORY
{
- FLASH (rx) : ORIGIN = 0x08006000, LENGTH = 0x178000
+ FLASH (rx) : ORIGIN = 0x08006000, LENGTH = 0x17A000
RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x40000
}
diff --git a/examples/platform/esp32/ota/OTAHelper.cpp b/examples/platform/esp32/ota/OTAHelper.cpp
index 83b65776928104..b2be750db337c9 100644
--- a/examples/platform/esp32/ota/OTAHelper.cpp
+++ b/examples/platform/esp32/ota/OTAHelper.cpp
@@ -118,6 +118,14 @@ CHIP_ERROR RequestorCanConsentHandler(int argc, char ** argv)
return CHIP_NO_ERROR;
}
+CHIP_ERROR SetPeriodicQueryTimeoutHandler(int argc, char ** argv)
+{
+ VerifyOrReturnError(argc == 1, CHIP_ERROR_INVALID_ARGUMENT);
+ gRequestorUser.SetPeriodicQueryTimeout(strtoul(argv[0], NULL, 0));
+ gRequestorUser.RekickPeriodicQueryTimer();
+ return CHIP_NO_ERROR;
+}
+
CHIP_ERROR OTARequestorHandler(int argc, char ** argv)
{
if (argc == 0)
@@ -147,6 +155,9 @@ void OTARequestorCommands::Register()
{ &RequestorCanConsentHandler, "requestorCanConsent",
"Set requestorCanConsent for QueryImageCommand\n"
"Usage: OTARequestor requestorCanConsent " },
+ { &SetPeriodicQueryTimeoutHandler, "PeriodicQueryTimeout",
+ "Set timeout for querying the OTA provider for an update\n"
+ "Usage: OTARequestor PeriodicQueryTimeout " },
};
diff --git a/examples/platform/cyw30739/BUILD.gn b/examples/platform/infineon/cyw30739/BUILD.gn
similarity index 100%
rename from examples/platform/cyw30739/BUILD.gn
rename to examples/platform/infineon/cyw30739/BUILD.gn
diff --git a/examples/platform/cyw30739/OTAConfig.cpp b/examples/platform/infineon/cyw30739/OTAConfig.cpp
similarity index 97%
rename from examples/platform/cyw30739/OTAConfig.cpp
rename to examples/platform/infineon/cyw30739/OTAConfig.cpp
index 05902c113aa451..206db24040f98c 100644
--- a/examples/platform/cyw30739/OTAConfig.cpp
+++ b/examples/platform/infineon/cyw30739/OTAConfig.cpp
@@ -23,7 +23,7 @@
#include
#include
#include
-#include
+#include
using namespace ::chip;
using namespace ::chip::DeviceLayer;
diff --git a/examples/platform/cyw30739/OTAConfig.h b/examples/platform/infineon/cyw30739/OTAConfig.h
similarity index 100%
rename from examples/platform/cyw30739/OTAConfig.h
rename to examples/platform/infineon/cyw30739/OTAConfig.h
diff --git a/examples/platform/cyw30739/args.gni b/examples/platform/infineon/cyw30739/args.gni
similarity index 100%
rename from examples/platform/cyw30739/args.gni
rename to examples/platform/infineon/cyw30739/args.gni
diff --git a/examples/platform/cyw30739/project_include/OpenThreadConfig.h b/examples/platform/infineon/cyw30739/project_include/OpenThreadConfig.h
similarity index 100%
rename from examples/platform/cyw30739/project_include/OpenThreadConfig.h
rename to examples/platform/infineon/cyw30739/project_include/OpenThreadConfig.h
diff --git a/examples/platform/p6/BUILD.gn b/examples/platform/infineon/psoc6/BUILD.gn
similarity index 89%
rename from examples/platform/p6/BUILD.gn
rename to examples/platform/infineon/psoc6/BUILD.gn
index 6d4842abf36dc1..d574f634a6e53e 100644
--- a/examples/platform/p6/BUILD.gn
+++ b/examples/platform/infineon/psoc6/BUILD.gn
@@ -13,9 +13,9 @@
# limitations under the License.
import("//build_overrides/chip.gni")
-import("//build_overrides/p6.gni")
+import("//build_overrides/psoc6.gni")
-import("${p6_sdk_build_root}/p6_sdk.gni")
+import("${psoc6_sdk_build_root}/psoc6_sdk.gni")
config("chip_examples_project_config") {
include_dirs = [ "project_include" ]
diff --git a/examples/platform/p6/LEDWidget.cpp b/examples/platform/infineon/psoc6/LEDWidget.cpp
similarity index 100%
rename from examples/platform/p6/LEDWidget.cpp
rename to examples/platform/infineon/psoc6/LEDWidget.cpp
diff --git a/examples/platform/p6/LEDWidget.h b/examples/platform/infineon/psoc6/LEDWidget.h
similarity index 100%
rename from examples/platform/p6/LEDWidget.h
rename to examples/platform/infineon/psoc6/LEDWidget.h
diff --git a/examples/platform/p6/args.gni b/examples/platform/infineon/psoc6/args.gni
similarity index 100%
rename from examples/platform/p6/args.gni
rename to examples/platform/infineon/psoc6/args.gni
diff --git a/examples/platform/p6/init_p6Platform.cpp b/examples/platform/infineon/psoc6/init_psoc6Platform.cpp
similarity index 100%
rename from examples/platform/p6/init_p6Platform.cpp
rename to examples/platform/infineon/psoc6/init_psoc6Platform.cpp
diff --git a/examples/platform/p6/init_p6Platform.h b/examples/platform/infineon/psoc6/init_psoc6Platform.h
similarity index 100%
rename from examples/platform/p6/init_p6Platform.h
rename to examples/platform/infineon/psoc6/init_psoc6Platform.h
diff --git a/examples/pump-app/pump-common/pump-app.matter b/examples/pump-app/pump-common/pump-app.matter
index 66bbc6e5e5a2ea..8ecaaf510d6cf2 100644
--- a/examples/pump-app/pump-common/pump-app.matter
+++ b/examples/pump-app/pump-common/pump-app.matter
@@ -873,12 +873,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute command_id generatedCommandList[] = 65528;
diff --git a/examples/pump-controller-app/pump-controller-common/pump-controller-app.matter b/examples/pump-controller-app/pump-controller-common/pump-controller-app.matter
index fea6937c1da995..a010075f3bbacc 100644
--- a/examples/pump-controller-app/pump-controller-common/pump-controller-app.matter
+++ b/examples/pump-controller-app/pump-controller-common/pump-controller-app.matter
@@ -777,12 +777,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute command_id generatedCommandList[] = 65528;
diff --git a/examples/shell/efr32/include/AppConfig.h b/examples/shell/efr32/include/AppConfig.h
index a14ec9f589f735..743c6eddbb18ad 100644
--- a/examples/shell/efr32/include/AppConfig.h
+++ b/examples/shell/efr32/include/AppConfig.h
@@ -54,7 +54,7 @@
extern "C" {
#endif
-void efr32LogInit(void);
+void efr32InitLog(void);
void efr32Log(const char * aFormat, ...);
#define EFR32_LOG(...) efr32Log(__VA_ARGS__);
diff --git a/examples/shell/shell_common/BUILD.gn b/examples/shell/shell_common/BUILD.gn
index d4b57df2f969ee..d601f0b54764b8 100644
--- a/examples/shell/shell_common/BUILD.gn
+++ b/examples/shell/shell_common/BUILD.gn
@@ -52,17 +52,10 @@ static_library("shell_common") {
if (chip_enable_openthread &&
(current_os == "freertos" || current_os == "zephyr")) {
- if (chip_openthread_ftd) {
- public_deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-ftd",
- "${chip_root}/third_party/openthread/repo:libopenthread-ftd",
- ]
- } else {
- public_deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-mtd",
- "${chip_root}/third_party/openthread/repo:libopenthread-mtd",
- ]
- }
+ public_deps += [
+ "${chip_root}/third_party/openthread:openthread",
+ "${chip_root}/third_party/openthread:openthread_cli",
+ ]
}
if (chip_shell_cmd_server) {
diff --git a/examples/temperature-measurement-app/esp32/main/Kconfig.projbuild b/examples/temperature-measurement-app/esp32/main/Kconfig.projbuild
index e2ec051d774fe1..4ec2e859c0b1f5 100644
--- a/examples/temperature-measurement-app/esp32/main/Kconfig.projbuild
+++ b/examples/temperature-measurement-app/esp32/main/Kconfig.projbuild
@@ -36,20 +36,6 @@ menu "Demo"
bool "Ethernet"
endchoice
- config USE_ECHO_CLIENT
- bool "Enable the built-in Echo Client"
- default "n"
- help
- This enables a local FreeRTOS Echo Client so that the end-to-end echo server can be
- tested easily
-
- config ECHO_HOST_IP
- string "IPV4 address"
- default "127.0.0.1"
- depends on USE_ECHO_CLIENT
- help
- The IPV4 Address of the ECHO Server.
-
config RENDEZVOUS_MODE
int
range 0 8
diff --git a/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter b/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter
index c370e0cc2b459e..9938f046a6be56 100644
--- a/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter
+++ b/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter
@@ -615,12 +615,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/temperature-measurement-app/esp32/sdkconfig.defaults b/examples/temperature-measurement-app/esp32/sdkconfig.defaults
index 4659af909a144f..dcd05c0734f36a 100644
--- a/examples/temperature-measurement-app/esp32/sdkconfig.defaults
+++ b/examples/temperature-measurement-app/esp32/sdkconfig.defaults
@@ -84,3 +84,6 @@ CONFIG_ESP_MAIN_TASK_STACK_SIZE=4096
#enable lwIP route hooks
CONFIG_LWIP_HOOK_IP6_ROUTE_DEFAULT=y
CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT=y
+
+# Disable softap support by default
+CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
diff --git a/examples/thermostat/efr32/BUILD.gn b/examples/thermostat/efr32/BUILD.gn
index 90f61b99ca1ad6..7e4e923992ff70 100644
--- a/examples/thermostat/efr32/BUILD.gn
+++ b/examples/thermostat/efr32/BUILD.gn
@@ -195,21 +195,10 @@ efr32_executable("thermostat_app") {
# OpenThread Settings
if (chip_enable_openthread) {
deps += [
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform",
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform-utils",
+ "${chip_root}/third_party/openthread:openthread",
+ "${chip_root}/third_party/openthread:openthread-platform",
"${examples_plat_dir}:efr-matter-shell",
]
- if (chip_openthread_ftd) {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-ftd",
- "${chip_root}/third_party/openthread/repo:libopenthread-ftd",
- ]
- } else {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-mtd",
- "${chip_root}/third_party/openthread/repo:libopenthread-mtd",
- ]
- }
}
# Attestation Credentials
diff --git a/examples/thermostat/thermostat-common/thermostat.matter b/examples/thermostat/thermostat-common/thermostat.matter
index 3fda6b1ea19027..a8effc7c102a39 100644
--- a/examples/thermostat/thermostat-common/thermostat.matter
+++ b/examples/thermostat/thermostat-common/thermostat.matter
@@ -1174,12 +1174,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/tv-app/tv-common/tv-app.matter b/examples/tv-app/tv-common/tv-app.matter
index f5bc82fd9a50f9..fe24dc76ed30e0 100644
--- a/examples/tv-app/tv-common/tv-app.matter
+++ b/examples/tv-app/tv-common/tv-app.matter
@@ -1216,12 +1216,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/tv-casting-app/tv-casting-common/tv-casting-app.matter b/examples/tv-casting-app/tv-casting-common/tv-casting-app.matter
index 1d16ba0fb16228..2d495a70d71cd8 100644
--- a/examples/tv-casting-app/tv-casting-common/tv-casting-app.matter
+++ b/examples/tv-casting-app/tv-casting-common/tv-casting-app.matter
@@ -1420,12 +1420,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute bitmap32 featureMap = 65532;
diff --git a/examples/window-app/common/window-app.matter b/examples/window-app/common/window-app.matter
index 66513f7ad2ab7b..f1fdcb1a06a793 100644
--- a/examples/window-app/common/window-app.matter
+++ b/examples/window-app/common/window-app.matter
@@ -1215,12 +1215,12 @@ server cluster AdministratorCommissioning = 60 {
}
enum StatusCode : ENUM8 {
- kBusy = 1;
- kPAKEParameterError = 2;
- kWindowNotOpen = 3;
+ kBusy = 2;
+ kPAKEParameterError = 3;
+ kWindowNotOpen = 4;
}
- readonly attribute int8u windowStatus = 0;
+ readonly attribute CommissioningWindowStatus windowStatus = 0;
readonly attribute nullable fabric_idx adminFabricIndex = 1;
readonly attribute nullable int16u adminVendorId = 2;
readonly attribute command_id generatedCommandList[] = 65528;
diff --git a/examples/window-app/efr32/BUILD.gn b/examples/window-app/efr32/BUILD.gn
index fad09d7f4d3ce7..a9aa7cf402911c 100644
--- a/examples/window-app/efr32/BUILD.gn
+++ b/examples/window-app/efr32/BUILD.gn
@@ -187,21 +187,10 @@ efr32_executable("window_app") {
# OpenThread Settings
if (chip_enable_openthread) {
deps += [
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform",
- "${chip_root}/third_party/openthread/platforms:libopenthread-platform-utils",
+ "${chip_root}/third_party/openthread:openthread",
+ "${chip_root}/third_party/openthread:openthread-platform",
"${examples_plat_dir}:efr-matter-shell",
]
- if (chip_openthread_ftd) {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-ftd",
- "${chip_root}/third_party/openthread/repo:libopenthread-ftd",
- ]
- } else {
- deps += [
- "${chip_root}/third_party/openthread/repo:libopenthread-cli-mtd",
- "${chip_root}/third_party/openthread/repo:libopenthread-mtd",
- ]
- }
}
if (chip_enable_ota_requestor) {
@@ -249,9 +238,11 @@ efr32_executable("window_app") {
if (!disable_lcd) {
sources += [
- "${examples_plat_dir}/display/lcd.c",
+ "${examples_plat_dir}/display/demo-ui.c",
+ "${examples_plat_dir}/display/lcd.cpp",
"src/LcdPainter.cpp",
]
+ include_dirs += [ "${examples_plat_dir}/display" ]
defines += [ "DISPLAY_ENABLED" ]
if (show_qr_code) {
diff --git a/examples/window-app/efr32/args.gni b/examples/window-app/efr32/args.gni
index 0b7ef403df72cd..26f97a8076d141 100644
--- a/examples/window-app/efr32/args.gni
+++ b/examples/window-app/efr32/args.gni
@@ -23,3 +23,5 @@ chip_enable_ota_requestor = true
pw_log_BACKEND = "${chip_root}/src/lib/support/pw_log_chip"
pw_assert_BACKEND = "$dir_pw_assert_log:check_backend"
chip_enable_openthread = true
+openthread_external_platform =
+ "${chip_root}/third_party/openthread/platforms/efr32:libopenthread-efr32"
diff --git a/examples/window-app/efr32/include/AppConfig.h b/examples/window-app/efr32/include/AppConfig.h
index d8a68d9982e4b8..a9957cf77b5bb9 100644
--- a/examples/window-app/efr32/include/AppConfig.h
+++ b/examples/window-app/efr32/include/AppConfig.h
@@ -57,7 +57,7 @@ extern "C" {
#define COVER_LIFT_TILT_TIMEOUT 500
#endif
-void efr32LogInit(void);
+void efr32InitLog(void);
void efr32Log(const char * aFormat, ...);
#define EFR32_LOG(...) efr32Log(__VA_ARGS__);
diff --git a/examples/window-app/efr32/include/LcdPainter.h b/examples/window-app/efr32/include/LcdPainter.h
index 448c750e166613..4a30bdede2c3ea 100644
--- a/examples/window-app/efr32/include/LcdPainter.h
+++ b/examples/window-app/efr32/include/LcdPainter.h
@@ -23,6 +23,8 @@
#include "app-common/app-common/zap-generated/cluster-enums.h"
// clang-format on
+#include
+
#include
enum class LcdIcon
@@ -104,7 +106,7 @@ class VerticalBlindPainter : public PixelPainter
class LcdPainter
{
public:
- static void Paint(chip::app::Clusters::WindowCovering::Type type, uint16_t lift, uint16_t tilt, LcdIcon icon);
+ static void Paint(SilabsLCD & lcd, chip::app::Clusters::WindowCovering::Type type, uint16_t lift, uint16_t tilt, LcdIcon icon);
private:
static PixelPainter * GetCoverPainter(chip::app::Clusters::WindowCovering::Type type, uint16_t lift, uint16_t tilt);
diff --git a/examples/window-app/efr32/src/LcdPainter.cpp b/examples/window-app/efr32/src/LcdPainter.cpp
index 6ff452cf197eee..e1a8041f075c79 100644
--- a/examples/window-app/efr32/src/LcdPainter.cpp
+++ b/examples/window-app/efr32/src/LcdPainter.cpp
@@ -18,7 +18,6 @@
*/
#include
-#include
using namespace chip::app::Clusters::WindowCovering;
@@ -202,15 +201,15 @@ PixelPainter * LcdPainter::GetCoverPainter(Type type, uint16_t lift, uint16_t ti
return nullptr;
}
-void LcdPainter::Paint(Type type, uint16_t lift, uint16_t tilt, LcdIcon icon)
+void LcdPainter::Paint(SilabsLCD & lcd, Type type, uint16_t lift, uint16_t tilt, LcdIcon icon)
{
FramePainter framePaint = FramePainter(lift, tilt);
IconPainter iconPaint = IconPainter(lift, tilt, icon);
PixelPainter * coverPaint = GetCoverPainter(type, lift, tilt);
CompositePainter compositePaint = CompositePainter(lift, tilt, &framePaint, &iconPaint, coverPaint);
- void * context = LCDContext();
+ void * context = lcd.Context();
- LCD_clear(context);
+ lcd.Clear();
for (int i = 0; i < LCD_SIZE; i++)
{
@@ -218,10 +217,10 @@ void LcdPainter::Paint(Type type, uint16_t lift, uint16_t tilt, LcdIcon icon)
{
if (compositePaint.Color(i, j))
{
- LCD_drawPixel(context, i, j);
+ lcd.DrawPixel(context, i, j);
}
}
}
- LCD_update();
+ lcd.Update();
delete coverPaint;
}
diff --git a/examples/window-app/efr32/src/WindowAppImpl.cpp b/examples/window-app/efr32/src/WindowAppImpl.cpp
index 2330bade5d2506..8ccfa97ea098a7 100644
--- a/examples/window-app/efr32/src/WindowAppImpl.cpp
+++ b/examples/window-app/efr32/src/WindowAppImpl.cpp
@@ -129,6 +129,10 @@ StaticQueue_t sAppEventQueueStruct;
WindowAppImpl WindowAppImpl::sInstance;
+#ifdef DISPLAY_ENABLED
+SilabsLCD slLCD;
+#endif
+
WindowApp & WindowApp::Instance()
{
return WindowAppImpl::sInstance;
@@ -184,6 +188,10 @@ CHIP_ERROR WindowAppImpl::Init()
mStatusLED.Init(APP_STATE_LED);
mActionLED.Init(APP_ACTION_LED);
+#ifdef DISPLAY_ENABLED
+ slLCD.Init();
+#endif
+
return CHIP_NO_ERROR;
}
@@ -427,7 +435,7 @@ void WindowAppImpl::UpdateLCD()
if (!tilt.IsNull() && !lift.IsNull())
{
- LcdPainter::Paint(type, lift.Value(), tilt.Value(), mIcon);
+ LcdPainter::Paint(slLCD, type, lift.Value(), tilt.Value(), mIcon);
}
}
#ifdef QR_CODE_ENABLED
@@ -436,7 +444,8 @@ void WindowAppImpl::UpdateLCD()
chip::MutableCharSpan qrCode(mQRCodeBuffer);
if (GetQRCode(qrCode, chip::RendezvousInformationFlags(chip::RendezvousInformationFlag::kBLE)) == CHIP_NO_ERROR)
{
- LCDWriteQRCode((uint8_t *) qrCode.data());
+ slLCD.SetQRCode((uint8_t *) qrCode.data(), qrCode.size());
+ slLCD.ShowQRCode(true, true);
}
}
#endif // QR_CODE_ENABLED
diff --git a/gn_build.sh b/gn_build.sh
index 0615a1833ef40d..18473f34f6d517 100755
--- a/gn_build.sh
+++ b/gn_build.sh
@@ -106,7 +106,7 @@ for arg; do
enable_p6_builds=true)
p6_builds_enabled=1
;;
- p6_board=*)
+ psoc6_board=*)
p6_board_selected=1
;;
esac
@@ -141,13 +141,13 @@ fi
echo
-# P6 Build setup
+# PSoC6 Build setup
if [[ -z "$p6_builds_enabled" ]]; then
echo "Hint: Pass enable_p6_builds=true to this script to enable building for PSoC6-43012"
else
- p6_sdk_args=""
+ psoc6_sdk_args=""
if [[ -z "$p6_board_selected" ]]; then
- p6_sdk_args="p6_board=\"CY8CKIT-062S2-43012\""
+ psoc6_sdk_args="psoc6_board=\"CY8CKIT-062S2-43012\""
fi
fi
diff --git a/integrations/cloudbuild/build-all.yaml b/integrations/cloudbuild/build-all.yaml
index 3326bb4ac1ce16..c8c09ad722319f 100644
--- a/integrations/cloudbuild/build-all.yaml
+++ b/integrations/cloudbuild/build-all.yaml
@@ -1,4 +1,11 @@
steps:
+ - name: gcr.io/cloud-builders/git
+ args:
+ - submodule
+ - update
+ - "--init"
+ - "--recursive"
+ id: Submodules
- name: "connectedhomeip/chip-build-vscode:0.5.91"
env:
- PW_ENVIRONMENT_ROOT=/pwenv
@@ -6,6 +13,8 @@ steps:
- "-c"
- source ./scripts/bootstrap.sh
id: Bootstrap
+ waitFor:
+ - Submodules
entrypoint: /usr/bin/bash
volumes:
- name: pwenv
diff --git a/integrations/cloudbuild/smoke-test.yaml b/integrations/cloudbuild/smoke-test.yaml
index 72dc9aa5678706..b0333fab36f327 100644
--- a/integrations/cloudbuild/smoke-test.yaml
+++ b/integrations/cloudbuild/smoke-test.yaml
@@ -1,4 +1,11 @@
steps:
+ - name: gcr.io/cloud-builders/git
+ args:
+ - submodule
+ - update
+ - "--init"
+ - "--recursive"
+ id: Submodules
- name: "connectedhomeip/chip-build-vscode:0.5.91"
env:
- PW_ENVIRONMENT_ROOT=/pwenv
@@ -6,6 +13,8 @@ steps:
- "-c"
- source ./scripts/bootstrap.sh
id: Bootstrap
+ waitFor:
+ - Submodules
entrypoint: /usr/bin/bash
volumes:
- name: pwenv
diff --git a/integrations/docker/images/chip-build-nrf-platform/Dockerfile b/integrations/docker/images/chip-build-nrf-platform/Dockerfile
index f27f0813c748b3..280534cac6c9fe 100644
--- a/integrations/docker/images/chip-build-nrf-platform/Dockerfile
+++ b/integrations/docker/images/chip-build-nrf-platform/Dockerfile
@@ -61,7 +61,7 @@ RUN set -x \
&& (apt-get remove -fy python3-yaml && apt-get autoremove || exit 0) \
&& python3 -m pip install -U --no-cache-dir cmake==3.22.5 \
&& python3 -m pip install --no-cache-dir -r /opt/NordicSemiconductor/nrfconnect/zephyr/scripts/requirements.txt \
- && python3 -m pip install --no-cache-dir -r /opt/NordicSemiconductor/nrfconnect/nrf/scripts/requirements.txt \
+ && python3 -m pip install --no-cache-dir -r /opt/NordicSemiconductor/nrfconnect/nrf/scripts/requirements-build.txt \
&& python3 -m pip install --no-cache-dir -r /opt/NordicSemiconductor/nrfconnect/bootloader/mcuboot/scripts/requirements.txt \
&& : # last line
diff --git a/integrations/docker/images/chip-build-vscode/Dockerfile b/integrations/docker/images/chip-build-vscode/Dockerfile
index 394adea2e19aa3..69cee1937a513c 100644
--- a/integrations/docker/images/chip-build-vscode/Dockerfile
+++ b/integrations/docker/images/chip-build-vscode/Dockerfile
@@ -66,6 +66,11 @@ RUN set -x \
&& rm -rf /var/lib/apt/lists/* \
&& : # last line
+# Required for the Bouffalolab platform
+RUN set -x \
+ && pip3 install bflb-iot-tool \
+ && : # last line
+
ENV AMEBA_PATH=/opt/ameba/ambd_sdk_with_chip_non_NDA
ENV ANDROID_HOME=/opt/android/sdk
ENV ANDROID_NDK_HOME=/opt/android/android-ndk-r21b
diff --git a/integrations/docker/images/chip-build/Dockerfile b/integrations/docker/images/chip-build/Dockerfile
index b09c9c9dd43fbd..861f5ecb2df4e7 100644
--- a/integrations/docker/images/chip-build/Dockerfile
+++ b/integrations/docker/images/chip-build/Dockerfile
@@ -11,6 +11,7 @@ RUN set -x \
automake \
bison \
bridge-utils \
+ ccache \
clang \
clang-format \
clang-tidy \
@@ -27,14 +28,16 @@ RUN set -x \
libcairo2-dev \
libdbus-1-dev \
libdbus-glib-1-dev \
+ libdmalloc-dev \
libgif-dev \
libglib2.0-dev \
libical-dev \
libjpeg-dev \
- libdmalloc-dev \
libmbedtls-dev \
libncurses5-dev \
libncursesw5-dev \
+ libnl-3-dev \
+ libnl-route-3-dev \
libnspr4-dev \
libpango1.0-dev \
libpixman-1-dev \
diff --git a/integrations/docker/images/chip-build/version b/integrations/docker/images/chip-build/version
index 6b92033b6525c6..b22b98316c9f22 100644
--- a/integrations/docker/images/chip-build/version
+++ b/integrations/docker/images/chip-build/version
@@ -1 +1 @@
-0.5.93 Version bump reason: [ESP32] Update ESP-IDF to release v4.4.2
+0.5.96 Version bump reason: add libnl-dev libs to chip-build image
diff --git a/integrations/docker/images/chip-cert-bins/Dockerfile b/integrations/docker/images/chip-cert-bins/Dockerfile
index 7cb52537acbcff..2aa6f10e767fb0 100644
--- a/integrations/docker/images/chip-cert-bins/Dockerfile
+++ b/integrations/docker/images/chip-cert-bins/Dockerfile
@@ -254,12 +254,14 @@ RUN case ${TARGETPLATFORM} in \
RUN npm --prefix third_party/zap/repo/ ci
RUN scripts/examples/gn_build_test_example.sh app1
+RUN source scripts/activate.sh && scripts/build_python.sh -m platform -d true -i no
+
# Stage 3: Copy relevant cert bins to a minimal image to reduce size.
FROM ubuntu:22.04
ENV TZ=Etc/UTC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN apt-get update -y
-RUN apt-get install -y libssl-dev libdbus-1-dev libglib2.0-dev libavahi-client-dev avahi-utils iproute2
+RUN apt-get install -y libssl-dev libdbus-1-dev libglib2.0-dev libavahi-client-dev avahi-utils iproute2 libcairo2-dev libgirepository1.0-dev python3-pip
WORKDIR /root/
COPY --from=chip-build-cert-bins /root/.sdk-sha-version .sdk-sha-version
COPY --from=chip-build-cert-bins /root/connectedhomeip/out/debug/chip-tool chip-tool
@@ -276,3 +278,8 @@ COPY --from=chip-build-cert-bins /root/connectedhomeip/out/chip-ota-provider-app
COPY --from=chip-build-cert-bins /root/connectedhomeip/out/chip-ota-requestor-app chip-ota-requestor-app
COPY --from=chip-build-cert-bins /root/connectedhomeip/out/chip-lock-app chip-lock-app
COPY --from=chip-build-cert-bins /root/connectedhomeip/out/app1/chip-app1 chip-app1
+
+# Stage 3.1 Setup the Matter Python environment
+COPY --from=chip-build-cert-bins /root/connectedhomeip/out/python_lib python_lib
+COPY --from=chip-build-cert-bins /root/connectedhomeip/src/python_testing python_testing
+RUN pip install --no-cache-dir python_lib/controller/python/chip*.whl
diff --git a/scripts/build/build/targets.py b/scripts/build/build/targets.py
index cb457e61a4b6a6..c9edb01794bca9 100755
--- a/scripts/build/build/targets.py
+++ b/scripts/build/build/targets.py
@@ -520,7 +520,7 @@ def InfineonTargets():
builder.AppendVariant(name="ota", enable_ota_requestor=True)
builder.AppendVariant(name="updateimage", update_image=True)
- target = Target('infineon-p6', InfineonBuilder, board=InfineonBoard.P6BOARD)
+ target = Target('infineon-psoc6', InfineonBuilder, board=InfineonBoard.PSOC6BOARD)
builder.targets.append(target.Extend('lock', app=InfineonApp.LOCK))
builder.targets.append(target.Extend('light', app=InfineonApp.LIGHT))
diff --git a/scripts/build/builders/cyw30739.py b/scripts/build/builders/cyw30739.py
index 5d4470fef17535..b0347750c6593a 100644
--- a/scripts/build/builders/cyw30739.py
+++ b/scripts/build/builders/cyw30739.py
@@ -44,7 +44,7 @@ def AppNamePrefix(self):
raise Exception("Unknown app type: %r" % self)
def BuildRoot(self, root):
- return os.path.join(root, "examples", self.ExampleName(), "cyw30739")
+ return os.path.join(root, "examples", self.ExampleName(), "infineon/cyw30739")
class Cyw30739Board(Enum):
diff --git a/scripts/build/builders/efr32.py b/scripts/build/builders/efr32.py
index 0f8abe07cb6865..d4a536a1e80ca2 100644
--- a/scripts/build/builders/efr32.py
+++ b/scripts/build/builders/efr32.py
@@ -120,7 +120,7 @@ def __init__(self,
self.extra_gn_options = ['efr32_board="%s"' % board.GnArgName()]
if enable_rpcs:
- self.extra_gn_options.append('import("//with_pw_rpc.gni")')
+ self.extra_gn_options.append('is_debug=false import("//with_pw_rpc.gni")')
if enable_ota_requestor:
self.extra_gn_options.append('chip_enable_ota_requestor=true')
diff --git a/scripts/build/builders/infineon.py b/scripts/build/builders/infineon.py
index d0b73611a318cc..1783faefa0ef75 100644
--- a/scripts/build/builders/infineon.py
+++ b/scripts/build/builders/infineon.py
@@ -38,13 +38,13 @@ def ExampleName(self):
def AppNamePrefix(self):
if self == InfineonApp.LOCK:
- return 'chip-p6-lock-example'
+ return 'chip-psoc6-lock-example'
elif self == InfineonApp.LIGHT:
- return 'chip-p6-lighting-example'
+ return 'chip-psoc6-lighting-example'
elif self == InfineonApp.ALL_CLUSTERS:
- return 'chip-p6-clusters-example'
+ return 'chip-psoc6-clusters-example'
elif self == InfineonApp.ALL_CLUSTERS_MINIMAL:
- return 'chip-p6-clusters-minimal-example'
+ return 'chip-psoc6-clusters-minimal-example'
else:
raise Exception('Unknown app type: %r' % self)
@@ -61,14 +61,14 @@ def FlashBundleName(self):
raise Exception('Unknown app type: %r' % self)
def BuildRoot(self, root):
- return os.path.join(root, 'examples', self.ExampleName(), 'p6')
+ return os.path.join(root, 'examples', self.ExampleName(), 'infineon/psoc6')
class InfineonBoard(Enum):
- P6BOARD = 1
+ PSOC6BOARD = 1
def GnArgName(self):
- if self == InfineonBoard.P6BOARD:
+ if self == InfineonBoard.PSOC6BOARD:
return 'CY8CKIT-062S2-43012'
@@ -78,7 +78,7 @@ def __init__(self,
root,
runner,
app: InfineonApp = InfineonApp.LOCK,
- board: InfineonBoard = InfineonBoard.P6BOARD,
+ board: InfineonBoard = InfineonBoard.PSOC6BOARD,
enable_ota_requestor: bool = False,
update_image: bool = False):
super(InfineonBuilder, self).__init__(
@@ -86,7 +86,7 @@ def __init__(self,
runner=runner)
self.app = app
- self.extra_gn_options = ['p6_board="%s"' % board.GnArgName()]
+ self.extra_gn_options = ['psoc6_board="%s"' % board.GnArgName()]
if enable_ota_requestor:
self.extra_gn_options.append('chip_enable_ota_requestor=true')
diff --git a/scripts/build/testdata/all_targets_except_host.txt b/scripts/build/testdata/all_targets_except_host.txt
index fe98801f8ee5ac..ffbe1be7a1a4f2 100644
--- a/scripts/build/testdata/all_targets_except_host.txt
+++ b/scripts/build/testdata/all_targets_except_host.txt
@@ -178,22 +178,22 @@ imx-ota-provider-app
imx-ota-provider-app-release
imx-thermostat
imx-thermostat-release
-infineon-p6-all-clusters
-infineon-p6-all-clusters-minimal
-infineon-p6-all-clusters-minimal-ota (NOGLOB: Reduce default build variants)
-infineon-p6-all-clusters-minimal-ota-updateimage (NOGLOB: Reduce default build variants)
-infineon-p6-all-clusters-minimal-updateimage (NOGLOB: Reduce default build variants)
-infineon-p6-all-clusters-ota (NOGLOB: Reduce default build variants)
-infineon-p6-all-clusters-ota-updateimage (NOGLOB: Reduce default build variants)
-infineon-p6-all-clusters-updateimage (NOGLOB: Reduce default build variants)
-infineon-p6-light
-infineon-p6-light-ota (NOGLOB: Reduce default build variants)
-infineon-p6-light-ota-updateimage (NOGLOB: Reduce default build variants)
-infineon-p6-light-updateimage (NOGLOB: Reduce default build variants)
-infineon-p6-lock
-infineon-p6-lock-ota (NOGLOB: Reduce default build variants)
-infineon-p6-lock-ota-updateimage (NOGLOB: Reduce default build variants)
-infineon-p6-lock-updateimage (NOGLOB: Reduce default build variants)
+infineon-psoc6-all-clusters
+infineon-psoc6-all-clusters-minimal
+infineon-psoc6-all-clusters-minimal-ota (NOGLOB: Reduce default build variants)
+infineon-psoc6-all-clusters-minimal-ota-updateimage (NOGLOB: Reduce default build variants)
+infineon-psoc6-all-clusters-minimal-updateimage (NOGLOB: Reduce default build variants)
+infineon-psoc6-all-clusters-ota (NOGLOB: Reduce default build variants)
+infineon-psoc6-all-clusters-ota-updateimage (NOGLOB: Reduce default build variants)
+infineon-psoc6-all-clusters-updateimage (NOGLOB: Reduce default build variants)
+infineon-psoc6-light
+infineon-psoc6-light-ota (NOGLOB: Reduce default build variants)
+infineon-psoc6-light-ota-updateimage (NOGLOB: Reduce default build variants)
+infineon-psoc6-light-updateimage (NOGLOB: Reduce default build variants)
+infineon-psoc6-lock
+infineon-psoc6-lock-ota (NOGLOB: Reduce default build variants)
+infineon-psoc6-lock-ota-updateimage (NOGLOB: Reduce default build variants)
+infineon-psoc6-lock-updateimage (NOGLOB: Reduce default build variants)
k32w-light-ota-se (NOGLOB: Only on demand build)
k32w-light-release-no-ota
k32w-lock-low-power-release (NOGLOB: Only on demand build)
diff --git a/scripts/build/testdata/build_all_except_host.txt b/scripts/build/testdata/build_all_except_host.txt
index 6cb3d25fcf67a2..ea86e68d1139fd 100644
--- a/scripts/build/testdata/build_all_except_host.txt
+++ b/scripts/build/testdata/build_all_except_host.txt
@@ -173,25 +173,25 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/shell/cc13x2x7_26x2x7 '--args=ti_sysconfig_root="TEST_TI_SYSCONFIG_ROOT"' {out}/cc13x2x7_26x2x7-shell
# Generating cyw30739-cyw930739m2evb_01-light
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/cyw30739 {out}/cyw30739-cyw930739m2evb_01-light
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/infineon/cyw30739 {out}/cyw30739-cyw930739m2evb_01-light
# Generating cyw30739-cyw930739m2evb_01-lock
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/cyw30739 {out}/cyw30739-cyw930739m2evb_01-lock
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/infineon/cyw30739 {out}/cyw30739-cyw930739m2evb_01-lock
# Generating cyw30739-cyw930739m2evb_01-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/ota-requestor-app/cyw30739 {out}/cyw30739-cyw930739m2evb_01-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/ota-requestor-app/infineon/cyw30739 {out}/cyw30739-cyw930739m2evb_01-ota-requestor
# Generating cyw30739-cyw930739m2evb_01-ota-requestor-no-progress-logging
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/ota-requestor-app/cyw30739 --args=chip_progress_logging=false {out}/cyw30739-cyw930739m2evb_01-ota-requestor-no-progress-logging
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/ota-requestor-app/infineon/cyw30739 --args=chip_progress_logging=false {out}/cyw30739-cyw930739m2evb_01-ota-requestor-no-progress-logging
# Generating efr32-brd4161a-light
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4161A"' {out}/efr32-brd4161a-light
# Generating efr32-brd4161a-light-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4161A" import("//with_pw_rpc.gni")' {out}/efr32-brd4161a-light-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4161A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4161a-light-rpc
# Generating efr32-brd4161a-light-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4161A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4161a-light-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4161A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4161a-light-rpc-with-ota-requestor
# Generating efr32-brd4161a-light-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4161A" chip_enable_ota_requestor=true' {out}/efr32-brd4161a-light-with-ota-requestor
@@ -200,10 +200,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4161A"' {out}/efr32-brd4161a-lock
# Generating efr32-brd4161a-lock-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4161A" import("//with_pw_rpc.gni")' {out}/efr32-brd4161a-lock-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4161A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4161a-lock-rpc
# Generating efr32-brd4161a-lock-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4161A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4161a-lock-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4161A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4161a-lock-rpc-with-ota-requestor
# Generating efr32-brd4161a-lock-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4161A" chip_enable_ota_requestor=true' {out}/efr32-brd4161a-lock-with-ota-requestor
@@ -230,10 +230,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4163A"' {out}/efr32-brd4163a-light
# Generating efr32-brd4163a-light-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4163A" import("//with_pw_rpc.gni")' {out}/efr32-brd4163a-light-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4163A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4163a-light-rpc
# Generating efr32-brd4163a-light-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4163A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4163a-light-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4163A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4163a-light-rpc-with-ota-requestor
# Generating efr32-brd4163a-light-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4163A" chip_enable_ota_requestor=true' {out}/efr32-brd4163a-light-with-ota-requestor
@@ -242,10 +242,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4163A"' {out}/efr32-brd4163a-lock
# Generating efr32-brd4163a-lock-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4163A" import("//with_pw_rpc.gni")' {out}/efr32-brd4163a-lock-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4163A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4163a-lock-rpc
# Generating efr32-brd4163a-lock-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4163A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4163a-lock-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4163A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4163a-lock-rpc-with-ota-requestor
# Generating efr32-brd4163a-lock-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4163A" chip_enable_ota_requestor=true' {out}/efr32-brd4163a-lock-with-ota-requestor
@@ -272,10 +272,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4164A"' {out}/efr32-brd4164a-light
# Generating efr32-brd4164a-light-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4164A" import("//with_pw_rpc.gni")' {out}/efr32-brd4164a-light-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4164A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4164a-light-rpc
# Generating efr32-brd4164a-light-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4164A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4164a-light-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4164A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4164a-light-rpc-with-ota-requestor
# Generating efr32-brd4164a-light-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4164A" chip_enable_ota_requestor=true' {out}/efr32-brd4164a-light-with-ota-requestor
@@ -284,10 +284,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4164A"' {out}/efr32-brd4164a-lock
# Generating efr32-brd4164a-lock-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4164A" import("//with_pw_rpc.gni")' {out}/efr32-brd4164a-lock-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4164A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4164a-lock-rpc
# Generating efr32-brd4164a-lock-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4164A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4164a-lock-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4164A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4164a-lock-rpc-with-ota-requestor
# Generating efr32-brd4164a-lock-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4164A" chip_enable_ota_requestor=true' {out}/efr32-brd4164a-lock-with-ota-requestor
@@ -314,10 +314,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4166A"' {out}/efr32-brd4166a-light
# Generating efr32-brd4166a-light-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4166A" import("//with_pw_rpc.gni")' {out}/efr32-brd4166a-light-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4166A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4166a-light-rpc
# Generating efr32-brd4166a-light-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4166A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4166a-light-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4166A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4166a-light-rpc-with-ota-requestor
# Generating efr32-brd4166a-light-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4166A" chip_enable_ota_requestor=true' {out}/efr32-brd4166a-light-with-ota-requestor
@@ -326,10 +326,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4166A"' {out}/efr32-brd4166a-lock
# Generating efr32-brd4166a-lock-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4166A" import("//with_pw_rpc.gni")' {out}/efr32-brd4166a-lock-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4166A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4166a-lock-rpc
# Generating efr32-brd4166a-lock-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4166A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4166a-lock-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4166A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4166a-lock-rpc-with-ota-requestor
# Generating efr32-brd4166a-lock-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4166A" chip_enable_ota_requestor=true' {out}/efr32-brd4166a-lock-with-ota-requestor
@@ -356,10 +356,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4170A"' {out}/efr32-brd4170a-light
# Generating efr32-brd4170a-light-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4170A" import("//with_pw_rpc.gni")' {out}/efr32-brd4170a-light-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4170A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4170a-light-rpc
# Generating efr32-brd4170a-light-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4170A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4170a-light-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4170A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4170a-light-rpc-with-ota-requestor
# Generating efr32-brd4170a-light-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4170A" chip_enable_ota_requestor=true' {out}/efr32-brd4170a-light-with-ota-requestor
@@ -368,10 +368,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4170A"' {out}/efr32-brd4170a-lock
# Generating efr32-brd4170a-lock-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4170A" import("//with_pw_rpc.gni")' {out}/efr32-brd4170a-lock-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4170A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4170a-lock-rpc
# Generating efr32-brd4170a-lock-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4170A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4170a-lock-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4170A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4170a-lock-rpc-with-ota-requestor
# Generating efr32-brd4170a-lock-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4170A" chip_enable_ota_requestor=true' {out}/efr32-brd4170a-lock-with-ota-requestor
@@ -398,10 +398,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4186A"' {out}/efr32-brd4186a-light
# Generating efr32-brd4186a-light-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4186A" import("//with_pw_rpc.gni")' {out}/efr32-brd4186a-light-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4186A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4186a-light-rpc
# Generating efr32-brd4186a-light-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4186A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4186a-light-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4186A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4186a-light-rpc-with-ota-requestor
# Generating efr32-brd4186a-light-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4186A" chip_enable_ota_requestor=true' {out}/efr32-brd4186a-light-with-ota-requestor
@@ -410,10 +410,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4186A"' {out}/efr32-brd4186a-lock
# Generating efr32-brd4186a-lock-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4186A" import("//with_pw_rpc.gni")' {out}/efr32-brd4186a-lock-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4186A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4186a-lock-rpc
# Generating efr32-brd4186a-lock-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4186A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4186a-lock-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4186A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4186a-lock-rpc-with-ota-requestor
# Generating efr32-brd4186a-lock-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4186A" chip_enable_ota_requestor=true' {out}/efr32-brd4186a-lock-with-ota-requestor
@@ -440,10 +440,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4187A"' {out}/efr32-brd4187a-light
# Generating efr32-brd4187a-light-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4187A" import("//with_pw_rpc.gni")' {out}/efr32-brd4187a-light-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4187A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4187a-light-rpc
# Generating efr32-brd4187a-light-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4187A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4187a-light-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4187A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4187a-light-rpc-with-ota-requestor
# Generating efr32-brd4187a-light-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4187A" chip_enable_ota_requestor=true' {out}/efr32-brd4187a-light-with-ota-requestor
@@ -452,10 +452,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4187A"' {out}/efr32-brd4187a-lock
# Generating efr32-brd4187a-lock-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4187A" import("//with_pw_rpc.gni")' {out}/efr32-brd4187a-lock-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4187A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4187a-lock-rpc
# Generating efr32-brd4187a-lock-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4187A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4187a-lock-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4187A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4187a-lock-rpc-with-ota-requestor
# Generating efr32-brd4187a-lock-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4187A" chip_enable_ota_requestor=true' {out}/efr32-brd4187a-lock-with-ota-requestor
@@ -482,10 +482,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4304A"' {out}/efr32-brd4304a-light
# Generating efr32-brd4304a-light-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4304A" import("//with_pw_rpc.gni")' {out}/efr32-brd4304a-light-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4304A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4304a-light-rpc
# Generating efr32-brd4304a-light-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4304A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4304a-light-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4304A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4304a-light-rpc-with-ota-requestor
# Generating efr32-brd4304a-light-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4304A" chip_enable_ota_requestor=true' {out}/efr32-brd4304a-light-with-ota-requestor
@@ -494,10 +494,10 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4304A"' {out}/efr32-brd4304a-lock
# Generating efr32-brd4304a-lock-rpc
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4304A" import("//with_pw_rpc.gni")' {out}/efr32-brd4304a-lock-rpc
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4304A" is_debug=false import("//with_pw_rpc.gni")' {out}/efr32-brd4304a-lock-rpc
# Generating efr32-brd4304a-lock-rpc-with-ota-requestor
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4304A" import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4304a-lock-rpc-with-ota-requestor
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4304A" is_debug=false import("//with_pw_rpc.gni") chip_enable_ota_requestor=true' {out}/efr32-brd4304a-lock-rpc-with-ota-requestor
# Generating efr32-brd4304a-lock-with-ota-requestor
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4304A" chip_enable_ota_requestor=true' {out}/efr32-brd4304a-lock-with-ota-requestor
@@ -843,53 +843,53 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/exa
# Generating imx-thermostat-release
gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/thermostat/linux '--args=treat_warnings_as_errors=false target_os="linux" target_cpu="arm64" arm_arch="armv8-a" import("//build_overrides/build.gni") custom_toolchain="${build_root}/toolchain/custom" sysroot="IMX_SDK_ROOT/sysroots/cortexa53-crypto-poky-linux" target_cflags=[ "-DCHIP_DEVICE_CONFIG_WIFI_STATION_IF_NAME=\"mlan0\"", "-DCHIP_DEVICE_CONFIG_LINUX_DHCPC_CMD=\"udhcpc -b -i %s \"" ] target_cc="IMX_SDK_ROOT/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gcc" target_cxx="IMX_SDK_ROOT/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-g++" target_ar="IMX_SDK_ROOT/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-ar" is_debug=false' {out}/imx-thermostat-release
-# Generating infineon-p6-all-clusters
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-app/p6 '--args=p6_board="CY8CKIT-062S2-43012"' {out}/infineon-p6-all-clusters
+# Generating infineon-psoc6-all-clusters
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012"' {out}/infineon-psoc6-all-clusters
-# Generating infineon-p6-all-clusters-minimal
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-minimal-app/p6 '--args=p6_board="CY8CKIT-062S2-43012"' {out}/infineon-p6-all-clusters-minimal
+# Generating infineon-psoc6-all-clusters-minimal
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-minimal-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012"' {out}/infineon-psoc6-all-clusters-minimal
-# Generating infineon-p6-all-clusters-minimal-ota
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-minimal-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true' {out}/infineon-p6-all-clusters-minimal-ota
+# Generating infineon-psoc6-all-clusters-minimal-ota
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-minimal-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true' {out}/infineon-psoc6-all-clusters-minimal-ota
-# Generating infineon-p6-all-clusters-minimal-ota-updateimage
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-minimal-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true build_update_image=true' {out}/infineon-p6-all-clusters-minimal-ota-updateimage
+# Generating infineon-psoc6-all-clusters-minimal-ota-updateimage
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-minimal-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true build_update_image=true' {out}/infineon-psoc6-all-clusters-minimal-ota-updateimage
-# Generating infineon-p6-all-clusters-minimal-updateimage
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-minimal-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" build_update_image=true' {out}/infineon-p6-all-clusters-minimal-updateimage
+# Generating infineon-psoc6-all-clusters-minimal-updateimage
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-minimal-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" build_update_image=true' {out}/infineon-psoc6-all-clusters-minimal-updateimage
-# Generating infineon-p6-all-clusters-ota
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true' {out}/infineon-p6-all-clusters-ota
+# Generating infineon-psoc6-all-clusters-ota
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true' {out}/infineon-psoc6-all-clusters-ota
-# Generating infineon-p6-all-clusters-ota-updateimage
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true build_update_image=true' {out}/infineon-p6-all-clusters-ota-updateimage
+# Generating infineon-psoc6-all-clusters-ota-updateimage
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true build_update_image=true' {out}/infineon-psoc6-all-clusters-ota-updateimage
-# Generating infineon-p6-all-clusters-updateimage
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" build_update_image=true' {out}/infineon-p6-all-clusters-updateimage
+# Generating infineon-psoc6-all-clusters-updateimage
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/all-clusters-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" build_update_image=true' {out}/infineon-psoc6-all-clusters-updateimage
-# Generating infineon-p6-light
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/p6 '--args=p6_board="CY8CKIT-062S2-43012"' {out}/infineon-p6-light
+# Generating infineon-psoc6-light
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012"' {out}/infineon-psoc6-light
-# Generating infineon-p6-light-ota
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true' {out}/infineon-p6-light-ota
+# Generating infineon-psoc6-light-ota
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true' {out}/infineon-psoc6-light-ota
-# Generating infineon-p6-light-ota-updateimage
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true build_update_image=true' {out}/infineon-p6-light-ota-updateimage
+# Generating infineon-psoc6-light-ota-updateimage
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true build_update_image=true' {out}/infineon-psoc6-light-ota-updateimage
-# Generating infineon-p6-light-updateimage
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" build_update_image=true' {out}/infineon-p6-light-updateimage
+# Generating infineon-psoc6-light-updateimage
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" build_update_image=true' {out}/infineon-psoc6-light-updateimage
-# Generating infineon-p6-lock
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/p6 '--args=p6_board="CY8CKIT-062S2-43012"' {out}/infineon-p6-lock
+# Generating infineon-psoc6-lock
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012"' {out}/infineon-psoc6-lock
-# Generating infineon-p6-lock-ota
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true' {out}/infineon-p6-lock-ota
+# Generating infineon-psoc6-lock-ota
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true' {out}/infineon-psoc6-lock-ota
-# Generating infineon-p6-lock-ota-updateimage
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true build_update_image=true' {out}/infineon-p6-lock-ota-updateimage
+# Generating infineon-psoc6-lock-ota-updateimage
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" chip_enable_ota_requestor=true build_update_image=true' {out}/infineon-psoc6-lock-ota-updateimage
-# Generating infineon-p6-lock-updateimage
-gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/p6 '--args=p6_board="CY8CKIT-062S2-43012" build_update_image=true' {out}/infineon-p6-lock-updateimage
+# Generating infineon-psoc6-lock-updateimage
+gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/infineon/psoc6 '--args=psoc6_board="CY8CKIT-062S2-43012" build_update_image=true' {out}/infineon-psoc6-lock-updateimage
{root}/third_party/nxp/k32w0_sdk/sdk_fixes/patch_k32w_sdk.sh
@@ -2103,53 +2103,53 @@ ninja -C {out}/imx-thermostat
# Building imx-thermostat-release
ninja -C {out}/imx-thermostat-release
-# Building infineon-p6-all-clusters
-ninja -C {out}/infineon-p6-all-clusters
+# Building infineon-psoc6-all-clusters
+ninja -C {out}/infineon-psoc6-all-clusters
-# Building infineon-p6-all-clusters-minimal
-ninja -C {out}/infineon-p6-all-clusters-minimal
+# Building infineon-psoc6-all-clusters-minimal
+ninja -C {out}/infineon-psoc6-all-clusters-minimal
-# Building infineon-p6-all-clusters-minimal-ota
-ninja -C {out}/infineon-p6-all-clusters-minimal-ota
+# Building infineon-psoc6-all-clusters-minimal-ota
+ninja -C {out}/infineon-psoc6-all-clusters-minimal-ota
-# Building infineon-p6-all-clusters-minimal-ota-updateimage
-ninja -C {out}/infineon-p6-all-clusters-minimal-ota-updateimage
+# Building infineon-psoc6-all-clusters-minimal-ota-updateimage
+ninja -C {out}/infineon-psoc6-all-clusters-minimal-ota-updateimage
-# Building infineon-p6-all-clusters-minimal-updateimage
-ninja -C {out}/infineon-p6-all-clusters-minimal-updateimage
+# Building infineon-psoc6-all-clusters-minimal-updateimage
+ninja -C {out}/infineon-psoc6-all-clusters-minimal-updateimage
-# Building infineon-p6-all-clusters-ota
-ninja -C {out}/infineon-p6-all-clusters-ota
+# Building infineon-psoc6-all-clusters-ota
+ninja -C {out}/infineon-psoc6-all-clusters-ota
-# Building infineon-p6-all-clusters-ota-updateimage
-ninja -C {out}/infineon-p6-all-clusters-ota-updateimage
+# Building infineon-psoc6-all-clusters-ota-updateimage
+ninja -C {out}/infineon-psoc6-all-clusters-ota-updateimage
-# Building infineon-p6-all-clusters-updateimage
-ninja -C {out}/infineon-p6-all-clusters-updateimage
+# Building infineon-psoc6-all-clusters-updateimage
+ninja -C {out}/infineon-psoc6-all-clusters-updateimage
-# Building infineon-p6-light
-ninja -C {out}/infineon-p6-light
+# Building infineon-psoc6-light
+ninja -C {out}/infineon-psoc6-light
-# Building infineon-p6-light-ota
-ninja -C {out}/infineon-p6-light-ota
+# Building infineon-psoc6-light-ota
+ninja -C {out}/infineon-psoc6-light-ota
-# Building infineon-p6-light-ota-updateimage
-ninja -C {out}/infineon-p6-light-ota-updateimage
+# Building infineon-psoc6-light-ota-updateimage
+ninja -C {out}/infineon-psoc6-light-ota-updateimage
-# Building infineon-p6-light-updateimage
-ninja -C {out}/infineon-p6-light-updateimage
+# Building infineon-psoc6-light-updateimage
+ninja -C {out}/infineon-psoc6-light-updateimage
-# Building infineon-p6-lock
-ninja -C {out}/infineon-p6-lock
+# Building infineon-psoc6-lock
+ninja -C {out}/infineon-psoc6-lock
-# Building infineon-p6-lock-ota
-ninja -C {out}/infineon-p6-lock-ota
+# Building infineon-psoc6-lock-ota
+ninja -C {out}/infineon-psoc6-lock-ota
-# Building infineon-p6-lock-ota-updateimage
-ninja -C {out}/infineon-p6-lock-ota-updateimage
+# Building infineon-psoc6-lock-ota-updateimage
+ninja -C {out}/infineon-psoc6-lock-ota-updateimage
-# Building infineon-p6-lock-updateimage
-ninja -C {out}/infineon-p6-lock-updateimage
+# Building infineon-psoc6-lock-updateimage
+ninja -C {out}/infineon-psoc6-lock-updateimage
# Building k32w-light-ota-se
ninja -C {out}/k32w-light-ota-se
diff --git a/scripts/build/testdata/glob_star_targets_except_host.txt b/scripts/build/testdata/glob_star_targets_except_host.txt
index d7090c2c52ccfd..9d7a22bfc4c937 100644
--- a/scripts/build/testdata/glob_star_targets_except_host.txt
+++ b/scripts/build/testdata/glob_star_targets_except_host.txt
@@ -72,10 +72,10 @@ imx-ota-provider-app
imx-ota-provider-app-release
imx-thermostat
imx-thermostat-release
-infineon-p6-all-clusters
-infineon-p6-all-clusters-minimal
-infineon-p6-light
-infineon-p6-lock
+infineon-psoc6-all-clusters
+infineon-psoc6-all-clusters-minimal
+infineon-psoc6-light
+infineon-psoc6-lock
k32w-light-release-no-ota
k32w-lock-release
k32w-shell-release
diff --git a/scripts/checkout_submodules.py b/scripts/checkout_submodules.py
index 486a3e7b3b355d..c98f54c249e418 100755
--- a/scripts/checkout_submodules.py
+++ b/scripts/checkout_submodules.py
@@ -30,15 +30,14 @@
'bl602',
'cc13x2_26x2',
'cc32xx',
- 'cyw30739',
'darwin',
'efr32',
'esp32',
+ 'infineon',
'k32w0',
'linux',
'mbed',
'nrfconnect',
- 'p6',
'qpg',
'telink',
'tizen',
@@ -74,7 +73,7 @@ def make_chip_root_safe_directory() -> None:
subprocess.check_call(['git', 'config', '--global', '--add', 'safe.directory', CHIP_ROOT])
-def checkout_modules(modules: list, shallow: bool, force: bool) -> None:
+def checkout_modules(modules: list, shallow: bool, force: bool, recursive: bool) -> None:
names = [module.name.replace('submodule "', '').replace('"', '') for module in modules]
names = ', '.join(names)
logging.info(f'Checking out: {names}')
@@ -82,6 +81,7 @@ def checkout_modules(modules: list, shallow: bool, force: bool) -> None:
cmd = ['git', '-C', CHIP_ROOT, 'submodule', 'update', '--init']
cmd += ['--depth', '1'] if shallow else []
cmd += ['--force'] if force else []
+ cmd += ['--recursive'] if recursive else []
cmd += [module.path for module in modules]
subprocess.check_call(cmd)
@@ -109,6 +109,7 @@ def main():
parser.add_argument('--force', action='store_true', help='Perform action despite of warnings')
parser.add_argument('--deinit-unmatched', action='store_true',
help='Deinitialize submodules for non-matching platforms')
+ parser.add_argument('--recursive', action='store_true', help='Recursive init of the listed submodules')
args = parser.parse_args()
modules = list(load_module_info())
@@ -117,7 +118,7 @@ def main():
unmatched_modules = [m for m in modules if not module_matches_platforms(m, selected_platforms)]
make_chip_root_safe_directory()
- checkout_modules(selected_modules, args.shallow, args.force)
+ checkout_modules(selected_modules, args.shallow, args.force, args.recursive)
if args.deinit_unmatched:
deinit_modules(unmatched_modules, args.force)
diff --git a/scripts/examples/gn_efr32_example.sh b/scripts/examples/gn_efr32_example.sh
index 6882bba7d44d00..5b47c945c771a8 100755
--- a/scripts/examples/gn_efr32_example.sh
+++ b/scripts/examples/gn_efr32_example.sh
@@ -34,6 +34,7 @@ set -x
env
USE_WIFI=false
+SILABS_THREAD_TARGET=\""../silabs:ot-efr32-cert"\"
USAGE="./scripts/examples/gn_efr32_example.sh []"
if [ "$#" == "0" ]; then
@@ -102,6 +103,8 @@ if [ "$#" == "0" ]; then
build wifi example variant for given exansion board
--additional_data_advertising
enable Addition data advertissing and rotating device ID
+ --use_ot_lib
+ use the silabs openthread library
"
elif [ "$#" -lt "2" ]; then
echo "Invalid number of arguments
@@ -149,6 +152,10 @@ else
optArgs+="chip_enable_additional_data_advertising=true chip_enable_rotating_device_id=true "
shift
;;
+ --use_ot_lib)
+ optArgs+="use_silabs_thread_lib=true chip_openthread_target=$SILABS_THREAD_TARGET openthread_external_platform=\"""\" "
+ shift
+ ;;
*)
if [ "$1" =~ *"use_rs911x=true"* ] || [ "$1" =~ *"use_wf200=true"* ]; then
USE_WIFI=true
diff --git a/scripts/examples/gn_p6_example.sh b/scripts/examples/gn_psoc6_example.sh
similarity index 95%
rename from scripts/examples/gn_p6_example.sh
rename to scripts/examples/gn_psoc6_example.sh
index 746c2d743779e4..403063ff575f0d 100755
--- a/scripts/examples/gn_p6_example.sh
+++ b/scripts/examples/gn_psoc6_example.sh
@@ -43,7 +43,7 @@ env
EXAMPLE_DIR=$1
shift
OUTPUT_DIR=out/example_app
-P6_BOARD=CY8CKIT-062S2-43012
+PSOC6_BOARD=CY8CKIT-062S2-43012
if [[ ! -z "$1" ]]; then
OUTPUT_DIR=$1
@@ -70,7 +70,7 @@ for arg; do
esac
done
-gn gen --check --fail-on-unused-args "$OUTPUT_DIR" --root="$EXAMPLE_DIR" --args="p6_board=\"$P6_BOARD\" ${GN_ARGS[*]}"
+gn gen --check --fail-on-unused-args "$OUTPUT_DIR" --root="$EXAMPLE_DIR" --args="psoc6_board=\"$PSOC6_BOARD\" ${GN_ARGS[*]}"
ninja -C "$OUTPUT_DIR" "${NINJA_ARGS[@]}"
#print stats
arm-none-eabi-size -A "$OUTPUT_DIR"/*.out
diff --git a/scripts/flashing/p6_firmware_utils.py b/scripts/flashing/psoc6_firmware_utils.py
similarity index 90%
rename from scripts/flashing/p6_firmware_utils.py
rename to scripts/flashing/psoc6_firmware_utils.py
index 0fe247247b4070..aeef78030a1d74 100755
--- a/scripts/flashing/p6_firmware_utils.py
+++ b/scripts/flashing/psoc6_firmware_utils.py
@@ -12,18 +12,18 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-"""Flash an P6 device.
+"""Flash an Infineon PSoC6 device.
This is layered so that a caller can perform individual operations
through an `Flasher` instance, or operations according to a command line.
For `Flasher`, see the class documentation. For the parse_command()
interface or standalone execution:
-usage: p6_firmware_utils.py [-h] [--verbose] [--erase] [--application FILE]
+usage: psoc6_firmware_utils.py [-h] [--verbose] [--erase] [--application FILE]
[--verify_application] [--reset] [--skip_reset]
[--device DEVICE]
-Flash P6 device
+Flash PSoC6 device
optional arguments:
-h, --help show this help message and exit
@@ -64,7 +64,7 @@
"-C",
{'option': 'sdk_path'},
['TARGET={device}'],
- ['CY_OPENOCD_PROGRAM_IMG=../../../{application}'],
+ ['CY_OPENOCD_PROGRAM_IMG=../../../../{application}'],
{'option': 'mtb_target'}
],
'verify': ['{make}', '--version'],
@@ -77,15 +77,15 @@
},
'device': {
'help': 'Device family or platform to target',
- 'default': 'P6',
+ 'default': 'PSoC6',
'alias': ['-d'],
'argparse': {
'metavar': 'DEVICE'
},
},
'sdk_path': {
- 'help': 'Path to p6 sdk',
- 'default': 'third_party/p6/p6_sdk',
+ 'help': 'Path to psoc6 sdk',
+ 'default': 'third_party/infineon/psoc6/psoc6_sdk',
'alias': ['-p'],
'argparse': {
'metavar': 'SDK_PATH'
@@ -96,10 +96,10 @@
class Flasher(firmware_utils.Flasher):
- """Manage P6 flashing."""
+ """Manage PSoC6 flashing."""
def __init__(self, **options):
- super().__init__(platform='P6', module=__name__, **options)
+ super().__init__(platform='PSOC6', module=__name__, **options)
self.define_options(P6_OPTIONS)
def erase(self):
diff --git a/scripts/requirements.esp32.txt b/scripts/requirements.esp32.txt
index c870b03a23cd56..4bf5479986c5a2 100644
--- a/scripts/requirements.esp32.txt
+++ b/scripts/requirements.esp32.txt
@@ -1,12 +1,12 @@
-click>=7.0
-future>=0.15.2
-pyparsing>=2.0.3,<2.4.0
-idf-component-manager>=0.2.99-beta
-gdbgui==0.13.2.0
-pygdbmi<=0.9.0.2
-reedsolo>=1.5.3,<=1.5.4
-bitstring>=3.1.6
-ecdsa>=0.16.0
-kconfiglib==13.7.1
-construct==2.10.54
-python-socketio<5
+click>=7.0 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+future>=0.15.2 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+pyparsing>=2.0.3,<2.4.0 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+idf-component-manager>=0.2.99-beta ; platform_machine != 'aarch64' and sys_platform == 'linux'
+gdbgui==0.13.2.0 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+pygdbmi<=0.9.0.2 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+reedsolo>=1.5.3,<=1.5.4 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+bitstring>=3.1.6 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+ecdsa>=0.16.0 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+kconfiglib==13.7.1 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+construct==2.10.54 ; platform_machine != 'aarch64' and sys_platform == 'linux'
+python-socketio<5 ; platform_machine != 'aarch64' and sys_platform == 'linux'
diff --git a/scripts/tests/chiptest/lsan-mac-suppressions.txt b/scripts/tests/chiptest/lsan-mac-suppressions.txt
new file mode 100644
index 00000000000000..68ac691dec325d
--- /dev/null
+++ b/scripts/tests/chiptest/lsan-mac-suppressions.txt
@@ -0,0 +1,35 @@
+# Looks like some Objective C class bits are leaked, which is probably OK since
+# those are singletons.
+leak:realizeClassWithoutSwift
+leak:objc_initializeClassPair_internal
+
+# TODO: Under [NSManagedObjectContext executeFetchRequest] there are managed object bits that seem to be leaky.
+leak:class_addMethod
+leak:class_addIvar
+
+# TODO: Leaks of blocks from dispatch source handlers that need to be investigated.
+leak:_Block_copy
+
+# TODO: OpenSSL random byte generation creates some sort of pools that we seem to never clean up. This seems to be happening a _lot_.
+leak:drbg_ctr_init
+leak:rand_pool_new
+leak:RAND_priv_bytes
+leak:drbg_bytes
+
+# TODO: OpenSSL ERR_get_state seems to leak.
+leak:ERR_get_state
+
+# TODO: BLE initialization allocates some UUIDs and strings that seem to leak.
+leak:[BleConnection initWithDiscriminator:]
+leak:[CBXpcConnection initWithDelegate:queue:options:sessionType:]
+
+# TODO: ClusterBase::SubscribeAttribute creates a subscription that cannot
+# actually be shut down in any way.
+leak:ClusterBase::SubscribeAttribute
+
+# TODO: Figure out how we are managing to leak NSData while using ARC!
+leak:[CHIPToolKeypair signMessageECDSA_RAW:]
+
+# TODO: Figure out how we are managing to leak NSData while using ARC, though
+# this may just be a leak deep inside the CFPreferences stuff somewhere.
+leak:[CHIPToolPersistentStorageDelegate storageDataForKey:]
diff --git a/scripts/tools/check_includes_config.py b/scripts/tools/check_includes_config.py
index 30b66bcd01fddd..3ab64a2f9250be 100644
--- a/scripts/tools/check_includes_config.py
+++ b/scripts/tools/check_includes_config.py
@@ -40,7 +40,7 @@
'/platform/Ameba/',
'/platform/android/',
'/platform/Beken/',
- '/platform/CYW30739/',
+ '/platform/Infineon/CYW30739/',
'/platform/Darwin/',
'/platform/EFR32/',
'/platform/ESP32/',
@@ -48,7 +48,7 @@
'/platform/Linux/',
'/platform/nxp/',
'/platform/Tizen/',
- '/platform/P6/',
+ '/platform/Infineon/PSOC6/',
'/platform/bouffalolab/BL602',
'/platform/webos/',
r'POSIX\.h$',
diff --git a/scripts/tools/convert_ini.py b/scripts/tools/convert_ini.py
index a8c17157ffd802..d1abd22c4498df 100755
--- a/scripts/tools/convert_ini.py
+++ b/scripts/tools/convert_ini.py
@@ -21,6 +21,8 @@
import click
import typing
import re
+from os.path import exists
+import logging
def convert_ini_to_json(ini_dir: str, json_path: str):
@@ -32,39 +34,55 @@ def convert_ini_to_json(ini_dir: str, json_path: str):
"""
python_json_store = {}
- python_json_store['repl-config'] = {
- 'fabricAdmins': {
- '1': {
- 'fabricId': 1,
- 'vendorId': 65521
- },
- '2': {
- 'fabricId': 2,
- 'vendorId': 65521
- },
- '3': {
- 'fabricId': 3,
- 'vendorId': 65521
- }
- }
- }
-
- python_json_store['sdk-config'] = {}
-
- load_ini_into_dict(ini_file=ini_dir + '/chip_tool_config.alpha.ini',
- json_dict=python_json_store['sdk-config'], replace_suffix='1')
- load_ini_into_dict(ini_file=ini_dir + '/chip_tool_config.beta.ini',
- json_dict=python_json_store['sdk-config'], replace_suffix='2')
- load_ini_into_dict(ini_file=ini_dir + '/chip_tool_config.gamma.ini',
- json_dict=python_json_store['sdk-config'], replace_suffix='3')
+ ini_file_paths = ['/chip_tool_config.alpha.ini', '/chip_tool_config.beta.ini', '/chip_tool_config.gamma.ini']
+ counter = 1
+
+ for path in ini_file_paths:
+ full_path = ini_dir + path
+ if (exists(full_path)):
+ logging.critical(f"Found chip tool INI file at: {full_path} - Converting...")
+ create_repl_config_from_init(ini_file=full_path,
+ json_dict=python_json_store, replace_suffix=str(counter))
+ counter = counter + 1
json_file = open(json_path, 'w')
json.dump(python_json_store, json_file, ensure_ascii=True, indent=4)
+def create_repl_config_from_init(ini_file: str, json_dict: typing.Dict, replace_suffix: str):
+ ''' This updates a provided JSON dictionary to create a REPL compliant configuration store that
+ contains the correct 'repl-config' and 'sdk-config' keys built from the provided chip-tool
+ INI file that contains the root public keys. The INI file will typically be named
+ with the word 'alpha', 'beta' or 'gamma' in the name.
+
+ ini_file: Path to source INI file
+ json_dict: JSON dictionary to be updated. Multiple passes through this function using
+ the same dictionary is possible.
+ replace_suffix: The credentials in the INI file typically have keys that end with 0. This suffix
+ can be replaced with a different number.
+ '''
+ if ('repl-config' not in json_dict):
+ json_dict['repl-config'] = {}
+
+ if ('caList' not in json_dict['repl-config']):
+ json_dict['repl-config']['caList'] = {}
+
+ json_dict['repl-config']['caList'][replace_suffix] = [
+ {'fabricId': int(replace_suffix), 'vendorId': 0XFFF1}
+ ]
+
+ if ('sdk-config' not in json_dict):
+ json_dict['sdk-config'] = {}
+
+ load_ini_into_dict(ini_file=ini_file, json_dict=json_dict['sdk-config'], replace_suffix=replace_suffix)
+
+
def load_ini_into_dict(ini_file: str, json_dict: typing.Dict, replace_suffix: str):
- """ Loads the specific INI file into the provided dictionary. A 'replace_suffix' string
+ """ Loads the specific INI file containing CA credential information into the provided dictionary. A 'replace_suffix' string
has to be provided to convert the existing numerical suffix to a different value.
+
+ NOTE: This does not do any conversion of the keys into a format acceptable by the Python REPL environment. Please see
+ create_repl_config_from_init above if that is desired.
"""
config = ConfigParser()
diff --git a/scripts/tools/generate_esp32_chip_factory_bin.py b/scripts/tools/generate_esp32_chip_factory_bin.py
index d5f6ed380a91c6..64b6c293fd6510 100755
--- a/scripts/tools/generate_esp32_chip_factory_bin.py
+++ b/scripts/tools/generate_esp32_chip_factory_bin.py
@@ -140,7 +140,7 @@
'encoding': 'string',
'value': None,
},
- 'unique-id': {
+ 'rd-id-uid': {
'type': 'data',
'encoding': 'hex2bin',
'value': None,
@@ -260,7 +260,7 @@ def validate_args(args):
check_str_range(args.product_name, 1, 32, 'Product name')
check_str_range(args.hw_ver_str, 1, 64, 'Hardware version string')
check_str_range(args.mfg_date, 8, 16, 'Manufacturing date')
- check_str_range(args.unique_id, 32, 32, 'Unique id')
+ check_str_range(args.rd_id_uid, 32, 32, 'Rotating device Unique id')
logging.info('Discriminator:{} Passcode:{}'.format(args.discriminator, args.passcode))
@@ -295,8 +295,8 @@ def populate_factory_data(args, spake2p_params):
if args.serial_num is not None:
FACTORY_DATA['serial-num']['value'] = args.serial_num
- if args.unique_id is not None:
- FACTORY_DATA['unique-id']['value'] = args.unique_id
+ if args.rd_id_uid is not None:
+ FACTORY_DATA['rd-id-uid']['value'] = args.rd_id_uid
if args.mfg_date is not None:
FACTORY_DATA['mfg-date']['value'] = args.mfg_date
if args.vendor_id is not None:
@@ -460,8 +460,8 @@ def any_base_int(s): return int(s, 0)
parser.add_argument('--hw-ver-str', type=str, required=False, help='Hardware version string')
parser.add_argument('--mfg-date', type=str, required=False, help='Manufacturing date in format YYYY-MM-DD')
parser.add_argument('--serial-num', type=str, required=False, help='Serial number')
- parser.add_argument('--unique-id', type=str, required=False,
- help='128-bit unique identifier, provide 32-byte hex string, e.g. "1234567890abcdef1234567890abcdef"')
+ parser.add_argument('--rd-id-uid', type=str, required=False,
+ help='128-bit unique identifier for generating rotating device identifier, provide 32-byte hex string, e.g. "1234567890abcdef1234567890abcdef"')
# These will be used by DeviceInfoProvider
parser.add_argument('--calendar-types', type=str, nargs='+', required=False,
diff --git a/scripts/tools/sdk.json b/scripts/tools/sdk.json
new file mode 100644
index 00000000000000..a464c0bf8c495e
--- /dev/null
+++ b/scripts/tools/sdk.json
@@ -0,0 +1,290 @@
+{
+ "meta": {
+ "sdkRoot": "../..",
+ "description": "Matter SDK",
+ "requiredFeatureLevel": 77
+ },
+ "zcl": {
+ "main": "src/app/zap-templates/zcl/zcl.json",
+ "main_ext": "src/app/zap-templates/zcl/zcl-with-test-extensions.json"
+ },
+ "templates": {
+ "app-zap": "src/app/zap-templates/app-templates.json",
+ "placeholder": "examples/placeholder/templates/templates.json",
+ "chip-tool-test": "examples/chip-tool/templates/tests/templates.json",
+ "darwin-test": "examples/darwin-framework-tool/templates/tests/templates.json",
+ "app-common": "src/app/common/templates/templates.json",
+ "app-test": "src/app/tests/suites/templates/templates.json",
+ "chip-tool": "examples/chip-tool/templates/templates.json",
+ "darwin": "examples/darwin-framework-tool/templates/templates.json",
+ "python": "src/controller/python/templates/templates.json",
+ "darwin-chip": "src/darwin/Framework/CHIP/templates/templates.json",
+ "java": "src/controller/java/templates/templates.json"
+ },
+ "zapFiles": {
+ "thermostat": "examples/thermostat/thermostat-common/thermostat.zap",
+ "bridge-app": "examples/bridge-app/bridge-common/bridge-app.zap",
+ "log-source-app": "examples/log-source-app/log-source-common/log-source-app.zap",
+ "lock-app": "examples/lock-app/lock-common/lock-app.zap",
+ "lighting-app": "examples/lighting-app/lighting-common/lighting-app.zap",
+ "all-clusters-minimal-app": "examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.zap",
+ "temperature-measurement": "examples/temperature-measurement-app/esp32/main/temperature-measurement.zap",
+ "all-clusters-app": "examples/all-clusters-app/all-clusters-common/all-clusters-app.zap",
+ "pump-controller-app": "examples/pump-controller-app/pump-controller-common/pump-controller-app.zap",
+ "tv-app": "examples/tv-app/tv-common/tv-app.zap",
+ "light-switch-app": "examples/light-switch-app/light-switch-common/light-switch-app.zap",
+ "ota-provider-app": "examples/ota-provider-app/ota-provider-common/ota-provider-app.zap",
+ "pump-app": "examples/pump-app/pump-common/pump-app.zap",
+ "ota-requestor-app": "examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.zap",
+ "tv-casting-app": "examples/tv-casting-app/tv-casting-common/tv-casting-app.zap",
+ "window-app": "examples/window-app/common/window-app.zap",
+ "app2": "examples/placeholder/linux/apps/app2/config.zap",
+ "app1": "examples/placeholder/linux/apps/app1/config.zap",
+ "chef_dimmablelight": "examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.zap",
+ "chef_contactsensor": "examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.zap",
+ "chef_humiditysensor": "examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.zap",
+ "chef_speaker": "examples/chef/devices/rootnode_speaker_RpzeXdimqA.zap",
+ "chef_temperaturesensor": "examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.zap",
+ "chef_flowsensor": "examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.zap",
+ "chef_thermostat": "examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.zap",
+ "chef_onofflightswitch": "examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.zap",
+ "chef_heatingcoolingunit": "examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.zap",
+ "chef_occupancysensor": "examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.zap",
+ "chef_onofflight": "examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.zap",
+ "chef_pressuresensor": "examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.zap",
+ "chef_windowcovering": "examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.zap",
+ "chef_onoffpluginunit": "examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.zap",
+ "chef_lightsensor": "examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.zap",
+ "controller": "src/controller/data_model/controller-clusters.zap"
+ },
+ "generation": [
+ {
+ "zapFile": "all-clusters-app",
+ "output": "zzz_generated/all-clusters-app/zap-generated",
+ "zcl": "main_ext",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "all-clusters-minimal-app",
+ "output": "zzz_generated/all-clusters-minimal-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "app1",
+ "output": "zzz_generated/placeholder/app1/zap-generated",
+ "zcl": "main",
+ "template": ["app-zap", "placeholder"]
+ },
+ {
+ "zapFile": "app2",
+ "output": "zzz_generated/placeholder/app2/zap-generated",
+ "zcl": "main",
+ "template": ["app-zap", "placeholder"]
+ },
+ {
+ "zapFile": "bridge-app",
+ "output": "zzz_generated/bridge-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_contactsensor",
+ "output": "zzz_generated/chef-rootnode_contactsensor_lFAGG1bfRO/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_dimmablelight",
+ "output": "zzz_generated/chef-rootnode_dimmablelight_bCwGYSDpoe/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_flowsensor",
+ "output": "zzz_generated/chef-rootnode_flowsensor_1zVxHedlaV/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_heatingcoolingunit",
+ "output": "zzz_generated/chef-rootnode_heatingcoolingunit_ncdGai1E5a/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_humiditysensor",
+ "output": "zzz_generated/chef-rootnode_humiditysensor_Xyj4gda6Hb/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_lightsensor",
+ "output": "zzz_generated/chef-rootnode_lightsensor_lZQycTFcJK/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_occupancysensor",
+ "output": "zzz_generated/chef-rootnode_occupancysensor_iHyVgifZuo/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_onofflight",
+ "output": "zzz_generated/chef-rootnode_onofflight_bbs1b7IaOV/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_onofflightswitch",
+ "output": "zzz_generated/chef-rootnode_onofflightswitch_FsPlMr090Q/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_onoffpluginunit",
+ "output": "zzz_generated/chef-rootnode_onoffpluginunit_Wtf8ss5EBY/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_pressuresensor",
+ "output": "zzz_generated/chef-rootnode_pressuresensor_s0qC9wLH4k/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_speaker",
+ "output": "zzz_generated/chef-rootnode_speaker_RpzeXdimqA/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_temperaturesensor",
+ "output": "zzz_generated/chef-rootnode_temperaturesensor_Qy1zkNW7c3/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_thermostat",
+ "output": "zzz_generated/chef-rootnode_thermostat_bm3fb8dhYi/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "chef_windowcovering",
+ "output": "zzz_generated/chef-rootnode_windowcovering_RLCxaGi9Yx/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "controller",
+ "output": "",
+ "zcl": "main",
+ "template": ["python", "darwin-chip", "java"]
+ },
+ {
+ "zapFile": "controller",
+ "output": "zzz_generated/app-common/app-common/zap-generated",
+ "zcl": "main",
+ "template": ["app-common", "app-test"]
+ },
+ {
+ "zapFile": "controller",
+ "output": "zzz_generated/chip-tool/zap-generated",
+ "zcl": "main",
+ "template": ["chip-tool-test", "chip-tool"]
+ },
+ {
+ "zapFile": "controller",
+ "output": "zzz_generated/controller-clusters/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "controller",
+ "output": "zzz_generated/darwin-framework-tool/zap-generated",
+ "zcl": "main",
+ "template": ["darwin-test", "darwin"]
+ },
+ {
+ "zapFile": "light-switch-app",
+ "output": "zzz_generated/light-switch-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "lighting-app",
+ "output": "zzz_generated/lighting-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "lock-app",
+ "output": "zzz_generated/lock-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "log-source-app",
+ "output": "zzz_generated/log-source-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "ota-provider-app",
+ "output": "zzz_generated/ota-provider-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "ota-requestor-app",
+ "output": "zzz_generated/ota-requestor-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "pump-app",
+ "output": "zzz_generated/pump-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "pump-controller-app",
+ "output": "zzz_generated/pump-controller-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "temperature-measurement",
+ "output": "zzz_generated/temperature-measurement-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "thermostat",
+ "output": "zzz_generated/thermostat/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "tv-app",
+ "output": "zzz_generated/tv-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "tv-casting-app",
+ "output": "zzz_generated/tv-casting-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ },
+ {
+ "zapFile": "window-app",
+ "output": "zzz_generated/window-app/zap-generated",
+ "zcl": "main",
+ "template": "app-zap"
+ }
+ ]
+}
diff --git a/scripts/tools/zap/generate.py b/scripts/tools/zap/generate.py
index 72b63a1c7fbb6c..5034390e373cd7 100755
--- a/scripts/tools/zap/generate.py
+++ b/scripts/tools/zap/generate.py
@@ -136,7 +136,7 @@ def extractGeneratedIdl(output_dir, zap_config_path):
def runGeneration(zap_file, zcl_file, templates_file, output_dir):
- generator_dir = getDirPath('third_party/zap/repo')
+ generator_dir = os.getenv('ZAP_PATH', getDirPath('third_party/zap/repo'))
os.chdir(generator_dir)
subprocess.check_call(['node', './src-script/zap-generate.js', '-z',
zcl_file, '-g', templates_file, '-i', zap_file, '-o', output_dir])
diff --git a/src/android/CHIPTool/app/src/main/java/com/google/chip/chiptool/ChipClient.kt b/src/android/CHIPTool/app/src/main/java/com/google/chip/chiptool/ChipClient.kt
index 10d7c32e994a9e..6e3833820716a3 100644
--- a/src/android/CHIPTool/app/src/main/java/com/google/chip/chiptool/ChipClient.kt
+++ b/src/android/CHIPTool/app/src/main/java/com/google/chip/chiptool/ChipClient.kt
@@ -20,6 +20,7 @@ package com.google.chip.chiptool
import android.content.Context
import android.util.Log
import chip.devicecontroller.ChipDeviceController
+import chip.devicecontroller.ControllerParams
import chip.devicecontroller.GetConnectedDeviceCallbackJni.GetConnectedDeviceCallback
import chip.platform.AndroidBleManager
import chip.platform.AndroidChipPlatform
@@ -38,12 +39,14 @@ object ChipClient {
private const val TAG = "ChipClient"
private lateinit var chipDeviceController: ChipDeviceController
private lateinit var androidPlatform: AndroidChipPlatform
+ /* 0xFFF4 is a test vendor ID, replace with your assigned company ID */
+ private const val VENDOR_ID = 0xFFF4
fun getDeviceController(context: Context): ChipDeviceController {
getAndroidChipPlatform(context)
if (!this::chipDeviceController.isInitialized) {
- chipDeviceController = ChipDeviceController()
+ chipDeviceController = ChipDeviceController(ControllerParams.newBuilder().setControllerVendorId(VENDOR_ID).build())
}
return chipDeviceController
}
diff --git a/src/app/CASESessionManager.cpp b/src/app/CASESessionManager.cpp
index 7e38ccd583e974..93787a9040bdf5 100644
--- a/src/app/CASESessionManager.cpp
+++ b/src/app/CASESessionManager.cpp
@@ -56,11 +56,6 @@ void CASESessionManager::FindOrEstablishSession(const ScopedNodeId & peerId, Cal
session->Connect(onConnection, onFailure);
}
-void CASESessionManager::ReleaseSession(const ScopedNodeId & peerId)
-{
- ReleaseSession(FindExistingSessionSetup(peerId));
-}
-
void CASESessionManager::ReleaseSessionsForFabric(FabricIndex fabricIndex)
{
mConfig.sessionSetupPool->ReleaseAllSessionSetupsForFabric(fabricIndex);
diff --git a/src/app/CASESessionManager.h b/src/app/CASESessionManager.h
index d5243a930d2bbe..ddc971a1e7de86 100644
--- a/src/app/CASESessionManager.h
+++ b/src/app/CASESessionManager.h
@@ -32,6 +32,8 @@
namespace chip {
+class OperationalSessionSetupPoolDelegate;
+
struct CASESessionManagerConfig
{
DeviceProxyInitParams sessionInitParams;
@@ -78,10 +80,6 @@ class CASESessionManager : public OperationalSessionReleaseDelegate, public Sess
void FindOrEstablishSession(const ScopedNodeId & peerId, Callback::Callback * onConnection,
Callback::Callback * onFailure);
- OperationalSessionSetup * FindExistingSessionSetup(const ScopedNodeId & peerId, bool forAddressUpdate = false) const;
-
- void ReleaseSession(const ScopedNodeId & peerId);
-
void ReleaseSessionsForFabric(FabricIndex fabricIndex);
void ReleaseAllSessions();
@@ -103,6 +101,8 @@ class CASESessionManager : public OperationalSessionReleaseDelegate, public Sess
void UpdatePeerAddress(ScopedNodeId peerId) override;
private:
+ OperationalSessionSetup * FindExistingSessionSetup(const ScopedNodeId & peerId, bool forAddressUpdate = false) const;
+
Optional FindExistingSession(const ScopedNodeId & peerId) const;
CASESessionManagerConfig mConfig;
diff --git a/src/app/CommandHandler.cpp b/src/app/CommandHandler.cpp
index 12c61a643debb1..7e742b54cf8aff 100644
--- a/src/app/CommandHandler.cpp
+++ b/src/app/CommandHandler.cpp
@@ -127,14 +127,18 @@ Status CommandHandler::ProcessInvokeRequest(System::PacketBufferHandle && payloa
VerifyOrReturnError(TLV::AnonymousTag() == invokeRequestsReader.GetTag(), Status::InvalidAction);
CommandDataIB::Parser commandData;
VerifyOrReturnError(commandData.Init(invokeRequestsReader) == CHIP_NO_ERROR, Status::InvalidAction);
-
+ Status status = Status::Success;
if (mExchangeCtx->IsGroupExchangeContext())
{
- VerifyOrReturnError(ProcessGroupCommandDataIB(commandData) == CHIP_NO_ERROR, Status::Failure);
+ status = ProcessGroupCommandDataIB(commandData);
}
else
{
- VerifyOrReturnError(ProcessCommandDataIB(commandData) == CHIP_NO_ERROR, Status::Failure);
+ status = ProcessCommandDataIB(commandData);
+ }
+ if (status != Status::Success)
+ {
+ return status;
}
}
@@ -238,7 +242,7 @@ constexpr uint8_t sNoFields[] = {
};
} // anonymous namespace
-CHIP_ERROR CommandHandler::ProcessCommandDataIB(CommandDataIB::Parser & aCommandElement)
+Status CommandHandler::ProcessCommandDataIB(CommandDataIB::Parser & aCommandElement)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandPathIB::Parser commandPath;
@@ -248,16 +252,16 @@ CHIP_ERROR CommandHandler::ProcessCommandDataIB(CommandDataIB::Parser & aCommand
// NOTE: errors may occur before the concrete command path is even fully decoded.
err = aCommandElement.GetPath(&commandPath);
- SuccessOrExit(err);
+ VerifyOrReturnError(err == CHIP_NO_ERROR, Status::InvalidAction);
err = commandPath.GetClusterId(&concretePath.mClusterId);
- SuccessOrExit(err);
+ VerifyOrReturnError(err == CHIP_NO_ERROR, Status::InvalidAction);
err = commandPath.GetCommandId(&concretePath.mCommandId);
- SuccessOrExit(err);
+ VerifyOrReturnError(err == CHIP_NO_ERROR, Status::InvalidAction);
err = commandPath.GetEndpointId(&concretePath.mEndpointId);
- SuccessOrExit(err);
+ VerifyOrReturnError(err == CHIP_NO_ERROR, Status::InvalidAction);
{
Status commandExists = mpCallback->CommandExists(concretePath);
@@ -266,7 +270,7 @@ CHIP_ERROR CommandHandler::ProcessCommandDataIB(CommandDataIB::Parser & aCommand
ChipLogDetail(DataManagement, "No command " ChipLogFormatMEI " in Cluster " ChipLogFormatMEI " on Endpoint 0x%x",
ChipLogValueMEI(concretePath.mCommandId), ChipLogValueMEI(concretePath.mClusterId),
concretePath.mEndpointId);
- return AddStatus(concretePath, commandExists);
+ return AddStatus(concretePath, commandExists) != CHIP_NO_ERROR ? Status::Failure : Status::Success;
}
}
@@ -281,10 +285,10 @@ CHIP_ERROR CommandHandler::ProcessCommandDataIB(CommandDataIB::Parser & aCommand
{
if (err != CHIP_ERROR_ACCESS_DENIED)
{
- return AddStatus(concretePath, Status::Failure);
+ return AddStatus(concretePath, Status::Failure) != CHIP_NO_ERROR ? Status::Failure : Status::Success;
}
// TODO: when wildcard invokes are supported, handle them to discard rather than fail with status
- return AddStatus(concretePath, Status::UnsupportedAccess);
+ return AddStatus(concretePath, Status::UnsupportedAccess) != CHIP_NO_ERROR ? Status::Failure : Status::Success;
}
}
@@ -292,7 +296,7 @@ CHIP_ERROR CommandHandler::ProcessCommandDataIB(CommandDataIB::Parser & aCommand
{
// TODO: when wildcard invokes are supported, discard a
// wildcard-expanded path instead of returning a status.
- return AddStatus(concretePath, Status::NeedsTimedInteraction);
+ return AddStatus(concretePath, Status::NeedsTimedInteraction) != CHIP_NO_ERROR ? Status::Failure : Status::Success;
}
if (CommandIsFabricScoped(concretePath.mClusterId, concretePath.mCommandId))
@@ -303,7 +307,7 @@ CHIP_ERROR CommandHandler::ProcessCommandDataIB(CommandDataIB::Parser & aCommand
{
// TODO: when wildcard invokes are supported, discard a
// wildcard-expanded path instead of returning a status.
- return AddStatus(concretePath, Protocols::InteractionModel::Status::UnsupportedAccess);
+ return AddStatus(concretePath, Status::UnsupportedAccess) != CHIP_NO_ERROR ? Status::Failure : Status::Success;
}
}
@@ -328,15 +332,15 @@ CHIP_ERROR CommandHandler::ProcessCommandDataIB(CommandDataIB::Parser & aCommand
exit:
if (err != CHIP_NO_ERROR)
{
- return AddStatus(concretePath, Status::InvalidCommand);
+ return AddStatus(concretePath, Status::InvalidCommand) != CHIP_NO_ERROR ? Status::Failure : Status::Success;
}
// We have handled the error status above and put the error status in response, now return success status so we can process
// other commands in the invoke request.
- return CHIP_NO_ERROR;
+ return Status::Success;
}
-CHIP_ERROR CommandHandler::ProcessGroupCommandDataIB(CommandDataIB::Parser & aCommandElement)
+Status CommandHandler::ProcessGroupCommandDataIB(CommandDataIB::Parser & aCommandElement)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandPathIB::Parser commandPath;
@@ -351,13 +355,13 @@ CHIP_ERROR CommandHandler::ProcessGroupCommandDataIB(CommandDataIB::Parser & aCo
Credentials::GroupDataProvider::EndpointIterator * iterator;
err = aCommandElement.GetPath(&commandPath);
- SuccessOrExit(err);
+ VerifyOrReturnError(err == CHIP_NO_ERROR, Status::InvalidAction);
err = commandPath.GetClusterId(&clusterId);
- SuccessOrExit(err);
+ VerifyOrReturnError(err == CHIP_NO_ERROR, Status::InvalidAction);
err = commandPath.GetCommandId(&commandId);
- SuccessOrExit(err);
+ VerifyOrReturnError(err == CHIP_NO_ERROR, Status::InvalidAction);
groupId = mExchangeCtx->GetSessionHandle()->AsIncomingGroupSession()->GetGroupId();
fabric = GetAccessingFabricIndex();
@@ -373,8 +377,9 @@ CHIP_ERROR CommandHandler::ProcessGroupCommandDataIB(CommandDataIB::Parser & aCo
ChipLogValueMEI(clusterId), ChipLogValueMEI(commandId));
commandDataReader.Init(sNoFields);
err = commandDataReader.Next();
+ VerifyOrReturnError(err == CHIP_NO_ERROR, Status::InvalidAction);
}
- SuccessOrExit(err);
+ VerifyOrReturnError(err == CHIP_NO_ERROR, Status::Failure);
// Per spec, we do the "is this a timed command?" check for every path, but
// since all paths that fail it just get silently discarded we can do it
@@ -384,7 +389,7 @@ CHIP_ERROR CommandHandler::ProcessGroupCommandDataIB(CommandDataIB::Parser & aCo
if (CommandNeedsTimedInvoke(clusterId, commandId))
{
// Group commands are never timed.
- ExitNow();
+ return Status::Success;
}
// No check for `CommandIsFabricScoped` unlike in `ProcessCommandDataIB()` since group commands
@@ -392,7 +397,7 @@ CHIP_ERROR CommandHandler::ProcessGroupCommandDataIB(CommandDataIB::Parser & aCo
// Find which endpoints can process the command, and dispatch to them.
iterator = groupDataProvider->IterateEndpoints(fabric);
- VerifyOrExit(iterator != nullptr, err = CHIP_ERROR_NO_MEMORY);
+ VerifyOrReturnError(iterator != nullptr, Status::Failure);
while (iterator->Next(mapping))
{
@@ -444,9 +449,7 @@ CHIP_ERROR CommandHandler::ProcessGroupCommandDataIB(CommandDataIB::Parser & aCo
}
}
iterator->Release();
-
-exit:
- return CHIP_NO_ERROR;
+ return Status::Success;
}
CHIP_ERROR CommandHandler::AddStatusInternal(const ConcreteCommandPath & aCommandPath, const StatusIB & aStatus)
diff --git a/src/app/CommandHandler.h b/src/app/CommandHandler.h
index 18ffed48e9ec1a..bb96fe486f9f44 100644
--- a/src/app/CommandHandler.h
+++ b/src/app/CommandHandler.h
@@ -350,13 +350,13 @@ class CommandHandler : public Messaging::ExchangeDelegate
* ProcessCommandDataIB is only called when a unicast invoke command request is received
* It requires the endpointId in its command path to be able to dispatch the command
*/
- CHIP_ERROR ProcessCommandDataIB(CommandDataIB::Parser & aCommandElement);
+ Protocols::InteractionModel::Status ProcessCommandDataIB(CommandDataIB::Parser & aCommandElement);
/**
* ProcessGroupCommandDataIB is only called when a group invoke command request is received
* It doesn't need the endpointId in it's command path since it uses the GroupId in message metadata to find it
*/
- CHIP_ERROR ProcessGroupCommandDataIB(CommandDataIB::Parser & aCommandElement);
+ Protocols::InteractionModel::Status ProcessGroupCommandDataIB(CommandDataIB::Parser & aCommandElement);
CHIP_ERROR SendCommandResponse();
CHIP_ERROR AddStatusInternal(const ConcreteCommandPath & aCommandPath, const StatusIB & aStatus);
diff --git a/src/app/DefaultAttributePersistenceProvider.cpp b/src/app/DefaultAttributePersistenceProvider.cpp
index 9b7c3a4538912b..502b28e914d638 100644
--- a/src/app/DefaultAttributePersistenceProvider.cpp
+++ b/src/app/DefaultAttributePersistenceProvider.cpp
@@ -35,7 +35,8 @@ CHIP_ERROR DefaultAttributePersistenceProvider::WriteValue(const ConcreteAttribu
{
return CHIP_ERROR_BUFFER_TOO_SMALL;
}
- return mStorage->SyncSetKeyValue(key.AttributeValue(aPath), aValue.data(), static_cast(aValue.size()));
+ return mStorage->SyncSetKeyValue(key.AttributeValue(aPath.mEndpointId, aPath.mClusterId, aPath.mAttributeId), aValue.data(),
+ static_cast(aValue.size()));
}
CHIP_ERROR DefaultAttributePersistenceProvider::ReadValue(const ConcreteAttributePath & aPath,
@@ -45,7 +46,8 @@ CHIP_ERROR DefaultAttributePersistenceProvider::ReadValue(const ConcreteAttribut
DefaultStorageKeyAllocator key;
uint16_t size = static_cast(min(aValue.size(), static_cast(UINT16_MAX)));
- ReturnErrorOnFailure(mStorage->SyncGetKeyValue(key.AttributeValue(aPath), aValue.data(), size));
+ ReturnErrorOnFailure(mStorage->SyncGetKeyValue(key.AttributeValue(aPath.mEndpointId, aPath.mClusterId, aPath.mAttributeId),
+ aValue.data(), size));
EmberAfAttributeType type = aMetadata->attributeType;
if (emberAfIsStringAttributeType(type))
{
diff --git a/src/app/EventLogging.h b/src/app/EventLogging.h
index 9d5d56d362d2d2..f9fa56837f07e9 100644
--- a/src/app/EventLogging.h
+++ b/src/app/EventLogging.h
@@ -72,6 +72,8 @@ CHIP_ERROR LogEvent(const T & aEventData, EndpointId aEndpoint, EventNumber & aE
eventOptions.mPath = path;
eventOptions.mPriority = aEventData.GetPriorityLevel();
eventOptions.mFabricIndex = aEventData.GetFabricIndex();
+ // this skips logging the event if it's fabric-scoped but no fabric association exists yet.
+ VerifyOrReturnError(eventOptions.mFabricIndex != kUndefinedFabricIndex, CHIP_ERROR_INVALID_FABRIC_INDEX);
//
// Unlike attributes which have a different 'EncodeForRead' for fabric-scoped structs,
diff --git a/src/app/InteractionModelEngine.cpp b/src/app/InteractionModelEngine.cpp
index 5196e5f76586bb..58520b147292b9 100644
--- a/src/app/InteractionModelEngine.cpp
+++ b/src/app/InteractionModelEngine.cpp
@@ -236,11 +236,12 @@ uint32_t InteractionModelEngine::GetNumActiveWriteHandlers() const
return numActive;
}
-CHIP_ERROR InteractionModelEngine::ShutdownSubscription(SubscriptionId aSubscriptionId)
+CHIP_ERROR InteractionModelEngine::ShutdownSubscription(const ScopedNodeId & aPeerNodeId, SubscriptionId aSubscriptionId)
{
for (auto * readClient = mpActiveReadClientList; readClient != nullptr; readClient = readClient->GetNextClient())
{
- if (readClient->IsSubscriptionType() && readClient->IsMatchingSubscriptionId(aSubscriptionId))
+ if (readClient->IsSubscriptionType() && readClient->IsMatchingSubscriptionId(aSubscriptionId) &&
+ readClient->GetFabricIndex() == aPeerNodeId.GetFabricIndex() && readClient->GetPeerNodeId() == aPeerNodeId.GetNodeId())
{
readClient->Close(CHIP_NO_ERROR);
return CHIP_NO_ERROR;
diff --git a/src/app/InteractionModelEngine.h b/src/app/InteractionModelEngine.h
index 0c2efa0dbf2b09..650e5c88246290 100644
--- a/src/app/InteractionModelEngine.h
+++ b/src/app/InteractionModelEngine.h
@@ -132,7 +132,7 @@ class InteractionModelEngine : public Messaging::UnsolicitedMessageHandler,
* @retval #CHIP_ERROR_KEY_NOT_FOUND If the subscription is not found.
* @retval #CHIP_NO_ERROR On success.
*/
- CHIP_ERROR ShutdownSubscription(SubscriptionId aSubscriptionId);
+ CHIP_ERROR ShutdownSubscription(const ScopedNodeId & aPeerNodeId, SubscriptionId aSubscriptionId);
/**
* Tears down active subscriptions for a given peer node ID.
diff --git a/src/app/ObjectList.h b/src/app/ObjectList.h
index d35323b6d2caff..416db0bb70a6b5 100644
--- a/src/app/ObjectList.h
+++ b/src/app/ObjectList.h
@@ -18,6 +18,9 @@
#pragma once
+#include
+#include
+
namespace chip {
namespace app {
diff --git a/src/app/OperationalSessionSetup.cpp b/src/app/OperationalSessionSetup.cpp
index 8cafbe9697e59d..3a0d124297a091 100644
--- a/src/app/OperationalSessionSetup.cpp
+++ b/src/app/OperationalSessionSetup.cpp
@@ -125,7 +125,12 @@ void OperationalSessionSetup::Connect(Callback::Callback * on
isConnected = AttachToExistingSecureSession();
if (!isConnected)
{
- err = EstablishConnection();
+ // We should not actually every be in be in State::HasAddress. This
+ // is because in the same call that we moved to State::HasAddress
+ // we either move to State::Connecting or call
+ // DequeueConnectionCallbacks with an error thus releasing
+ // ourselves before any call would reach this section of code.
+ err = CHIP_ERROR_INCORRECT_STATE;
}
break;
@@ -179,13 +184,11 @@ void OperationalSessionSetup::UpdateDeviceData(const Transport::PeerAddress & ad
CHIP_ERROR err = CHIP_NO_ERROR;
mDeviceAddress = addr;
- mRemoteMRPConfig = config;
-
// Initialize CASE session state with any MRP parameters that DNS-SD has provided.
// It can be overridden by CASE session protocol messages that include MRP parameters.
if (mCASEClient)
{
- mCASEClient->SetRemoteMRPIntervals(mRemoteMRPConfig);
+ mCASEClient->SetRemoteMRPIntervals(config);
}
if (mState == State::ResolvingAddress)
@@ -194,7 +197,7 @@ void OperationalSessionSetup::UpdateDeviceData(const Transport::PeerAddress & ad
mInitParams.sessionManager->UpdateAllSessionsPeerAddress(mPeerId, addr);
if (!mPerformingAddressUpdate)
{
- err = EstablishConnection();
+ err = EstablishConnection(config);
if (err != CHIP_NO_ERROR)
{
DequeueConnectionCallbacks(err);
@@ -216,14 +219,14 @@ void OperationalSessionSetup::UpdateDeviceData(const Transport::PeerAddress & ad
// Do not touch `this` instance anymore; it has been destroyed in DequeueConnectionCallbacks.
}
-CHIP_ERROR OperationalSessionSetup::EstablishConnection()
+CHIP_ERROR OperationalSessionSetup::EstablishConnection(const ReliableMessageProtocolConfig & config)
{
mCASEClient = mInitParams.clientPool->Allocate(CASEClientInitParams{
mInitParams.sessionManager, mInitParams.sessionResumptionStorage, mInitParams.certificateValidityPolicy,
mInitParams.exchangeMgr, mFabricTable, mInitParams.groupDataProvider, mInitParams.mrpLocalConfig });
ReturnErrorCodeIf(mCASEClient == nullptr, CHIP_ERROR_NO_MEMORY);
- CHIP_ERROR err = mCASEClient->EstablishSession(mPeerId, mDeviceAddress, mRemoteMRPConfig, this);
+ CHIP_ERROR err = mCASEClient->EstablishSession(mPeerId, mDeviceAddress, config, this);
if (err != CHIP_NO_ERROR)
{
CleanupCASEClient();
@@ -261,20 +264,14 @@ void OperationalSessionSetup::DequeueConnectionCallbacks(CHIP_ERROR error)
mConnectionFailure.DequeueAll(failureReady);
mConnectionSuccess.DequeueAll(successReady);
- // TODO Issue #20452: For now we need to make a copy of member fields inside `this` before calling any of the
- // callbacks since the callbacks themselves can potentially release `this` OperationalSessionSetup.
- auto * exchangeMgr = mInitParams.exchangeMgr;
- auto sessionHandle = mSecureSession.Get();
- auto peerId = mPeerId;
- VerifyOrDie(mReleaseDelegate != nullptr);
- auto * releaseDelegate = mReleaseDelegate;
-
//
// If we encountered no error, go ahead and call all success callbacks. Otherwise,
// call the failure callbacks.
//
while (failureReady.mNext != &failureReady)
{
+ // We expect that we only have callbacks if we are not performing just address update.
+ VerifyOrDie(!mPerformingAddressUpdate);
Callback::Callback * cb =
Callback::Callback::FromCancelable(failureReady.mNext);
@@ -282,24 +279,28 @@ void OperationalSessionSetup::DequeueConnectionCallbacks(CHIP_ERROR error)
if (error != CHIP_NO_ERROR)
{
- cb->mCall(cb->mContext, peerId, error);
+ cb->mCall(cb->mContext, mPeerId, error);
}
}
while (successReady.mNext != &successReady)
{
+ // We expect that we only have callbacks if we are not performing just address update.
+ VerifyOrDie(!mPerformingAddressUpdate);
Callback::Callback * cb = Callback::Callback::FromCancelable(successReady.mNext);
cb->Cancel();
if (error == CHIP_NO_ERROR)
{
- // We know that we for sure have the SessionHandle in the successful case.
+ auto * exchangeMgr = mInitParams.exchangeMgr;
VerifyOrDie(exchangeMgr);
- cb->mCall(cb->mContext, *exchangeMgr, sessionHandle.Value());
+ // We know that we for sure have the SessionHandle in the successful case.
+ auto optionalSessionHandle = mSecureSession.Get();
+ cb->mCall(cb->mContext, *exchangeMgr, optionalSessionHandle.Value());
}
}
-
- releaseDelegate->ReleaseSession(this);
+ VerifyOrDie(mReleaseDelegate != nullptr);
+ mReleaseDelegate->ReleaseSession(this);
}
void OperationalSessionSetup::OnSessionEstablishmentError(CHIP_ERROR error)
@@ -307,13 +308,6 @@ void OperationalSessionSetup::OnSessionEstablishmentError(CHIP_ERROR error)
VerifyOrReturn(mState != State::Uninitialized && mState != State::NeedsAddress,
ChipLogError(Controller, "HandleCASEConnectionFailure was called while the device was not initialized"));
- //
- // We don't need to reset the state all the way back to NeedsAddress since all that transpired
- // was just CASE connection failure. So let's re-use the cached address to re-do CASE again
- // if need-be.
- //
- MoveToState(State::HasAddress);
-
DequeueConnectionCallbacks(error);
// Do not touch `this` instance anymore; it has been destroyed in DequeueConnectionCallbacks.
}
@@ -332,26 +326,6 @@ void OperationalSessionSetup::OnSessionEstablished(const SessionHandle & session
// Do not touch `this` instance anymore; it has been destroyed in DequeueConnectionCallbacks.
}
-void OperationalSessionSetup::Disconnect()
-{
- VerifyOrReturn(mState == State::SecureConnected);
-
- if (mSecureSession)
- {
- //
- // Mark the session as defunct to signal that we no longer want to use this
- // session anymore for further interactions to this peer. However, if we receive
- // messages back from that peer on the defunct session, it will bring it back into an active
- // state again.
- //
- mSecureSession.Get().Value()->AsSecureSession()->MarkAsDefunct();
- }
-
- mSecureSession.Release();
-
- MoveToState(State::HasAddress);
-}
-
void OperationalSessionSetup::CleanupCASEClient()
{
if (mCASEClient)
@@ -363,12 +337,10 @@ void OperationalSessionSetup::CleanupCASEClient()
void OperationalSessionSetup::OnSessionReleased()
{
- MoveToState(State::HasAddress);
-}
-
-void OperationalSessionSetup::OnSessionHang()
-{
- Disconnect();
+ // This is unlikely to be called since within the same call that we get SessionHandle we
+ // then call DequeueConnectionCallbacks which releases `this`. If this is called, and we
+ // we have any callbacks we will just send an error.
+ DequeueConnectionCallbacks(CHIP_ERROR_INCORRECT_STATE);
}
OperationalSessionSetup::~OperationalSessionSetup()
@@ -456,12 +428,7 @@ void OperationalSessionSetup::OnNodeAddressResolutionFailed(const PeerId & peerI
ChipLogError(Discovery, "OperationalSessionSetup[%u:" ChipLogFormatX64 "]: operational discovery failed: %" CHIP_ERROR_FORMAT,
mPeerId.GetFabricIndex(), ChipLogValueX64(mPeerId.GetNodeId()), reason.Format());
- if (IsResolvingAddress())
- {
- MoveToState(State::NeedsAddress);
- }
-
- // No need to set mPerformingAddressUpdate to false since call below releases `this`.
+ // No need to modify any variables in `this` since call below releases `this`.
DequeueConnectionCallbacks(reason);
// Do not touch `this` instance anymore; it has been destroyed in DequeueConnectionCallbacks.
}
diff --git a/src/app/OperationalSessionSetup.h b/src/app/OperationalSessionSetup.h
index ccea4843457b0d..cde2fddc6dac0b 100644
--- a/src/app/OperationalSessionSetup.h
+++ b/src/app/OperationalSessionSetup.h
@@ -140,19 +140,29 @@ class OperationalDeviceProxy : public DeviceProxy
* application code does incorrectly hold onto this information so do not follow those incorrect
* implementations as an example.
*/
-// TODO: OnDeviceConnected should not return ExchangeManager. Application should have this already. This
-// was provided initially to keep code churn down during a large refactor of OnDeviceConnected.
typedef void (*OnDeviceConnected)(void * context, Messaging::ExchangeManager & exchangeMgr, SessionHandle & sessionHandle);
typedef void (*OnDeviceConnectionFailure)(void * context, const ScopedNodeId & peerId, CHIP_ERROR error);
/**
- * Represents a connection path to a device that is in an operational state.
+ * Object used to either establish a connection to peer or performing address lookup to a peer.
*
- * Handles the lifetime of communicating with such a device:
- * - Discover the device using DNSSD (find out what IP address to use and what
- * communication parameters are appropriate for it)
- * - Establish a secure channel to it via CASE
- * - Expose to consumers the secure session for talking to the device.
+ * OperationalSessionSetup is capable of either:
+ * 1. Establishing a CASE session connection to a peer. Upon success or failure, the OnDeviceConnected or
+ * OnDeviceConnectionFailure callback will be called to notify the caller the results of trying to
+ * estblish a CASE session. Some additional details about the steps to establish a connection are:
+ * - Discover the device using DNSSD (find out what IP address to use and what
+ * communication parameters are appropriate for it)
+ * - Establish a secure channel to it via CASE
+ * - Expose to consumers the secure session for talking to the device via OnDeviceConnected
+ * callback.
+ * 2. Performing an address lookup for given a scoped nodeid. On success, it will call into
+ * SessionManager to update the addresses for all matching sessions in the session table.
+ *
+ * OperationalSessionSetup has a very limited lifetime. Once it has completed its purpose outlined above,
+ * it will use `releaseDelegate` to release itself.
+ *
+ * It is possible to determine which of the two purposes the OperationalSessionSetup is for by calling
+ * IsForAddressUpdate().
*/
class DLL_EXPORT OperationalSessionSetup : public SessionDelegate,
public SessionEstablishmentDelegate,
@@ -198,21 +208,8 @@ class DLL_EXPORT OperationalSessionSetup : public SessionDelegate,
*/
void Connect(Callback::Callback * onConnection, Callback::Callback * onFailure);
- bool IsConnected() const { return mState == State::SecureConnected; }
-
- bool IsConnecting() const { return mState == State::Connecting; }
-
bool IsForAddressUpdate() const { return mPerformingAddressUpdate; }
- /**
- * IsResolvingAddress returns true if we are doing an address resolution
- * that needs to happen before we can establish CASE. We can be in the
- * middle of doing address updates at other times too (e.g. when we are
- * IsConnected()), but those will not cause a true return from
- * IsResolvingAddress().
- */
- bool IsResolvingAddress() const { return mState == State::ResolvingAddress; }
-
//////////// SessionEstablishmentDelegate Implementation ///////////////
void OnSessionEstablished(const SessionHandle & session) override;
void OnSessionEstablishmentError(CHIP_ERROR error) override;
@@ -221,19 +218,9 @@ class DLL_EXPORT OperationalSessionSetup : public SessionDelegate,
// Called when a connection is closing. The object releases all resources associated with the connection.
void OnSessionReleased() override;
- // Called when a connection is hanging. Try to re-establish another session, and shift to the new session when done, the
- // original session won't be touched during the period.
- void OnSessionHang() override;
-
- /**
- * Mark any open session with the device as expired.
- */
- void Disconnect();
ScopedNodeId GetPeerId() const { return mPeerId; }
- Transport::PeerAddress GetPeerAddress() const { return mDeviceAddress; }
-
static Transport::PeerAddress ToPeerAddress(const Dnssd::ResolvedNodeData & nodeData)
{
Inet::InterfaceId interfaceId = Inet::InterfaceId::Null();
@@ -256,11 +243,6 @@ class DLL_EXPORT OperationalSessionSetup : public SessionDelegate,
*/
FabricIndex GetFabricIndex() const { return mPeerId.GetFabricIndex(); }
- /**
- * Triggers a DNSSD lookup to find a usable peer address for this operational device.
- */
- CHIP_ERROR LookupPeerAddress();
-
void PerformAddressUpdate();
// AddressResolve::NodeListener - notifications when dnssd finds a node IP address
@@ -304,11 +286,9 @@ class DLL_EXPORT OperationalSessionSetup : public SessionDelegate,
/// This is used when a node address is required.
chip::AddressResolve::NodeLookupHandle mAddressLookupHandle;
- ReliableMessageProtocolConfig mRemoteMRPConfig = GetDefaultMRPConfig();
-
bool mPerformingAddressUpdate = false;
- CHIP_ERROR EstablishConnection();
+ CHIP_ERROR EstablishConnection(const ReliableMessageProtocolConfig & config);
/*
* This checks to see if an existing CASE session exists to the peer within the SessionManager
@@ -331,9 +311,17 @@ class DLL_EXPORT OperationalSessionSetup : public SessionDelegate,
* If error == CHIP_NO_ERROR, only success callbacks are invoked.
* Otherwise, only failure callbacks are invoked.
*
+ * This uses mReleaseDelegate to release ourselves (aka `this`). As a
+ * result any caller should return right away without touching `this`.
+ *
*/
void DequeueConnectionCallbacks(CHIP_ERROR error);
+ /**
+ * Triggers a DNSSD lookup to find a usable peer address.
+ */
+ CHIP_ERROR LookupPeerAddress();
+
/**
* This function will set new IP address, port and MRP retransmission intervals of the device.
*/
diff --git a/src/app/ReadClient.cpp b/src/app/ReadClient.cpp
index 340b0d441554dc..3c3bc5b19e2e76 100644
--- a/src/app/ReadClient.cpp
+++ b/src/app/ReadClient.cpp
@@ -68,20 +68,29 @@ void ReadClient::ClearActiveSubscriptionState()
void ReadClient::StopResubscription()
{
-
CancelLivenessCheckTimer();
CancelResubscribeTimer();
- mpCallback.OnDeallocatePaths(std::move(mReadPrepareParams));
+
+ // Only deallocate the paths if they are not already deallocated.
+ if (mReadPrepareParams.mpAttributePathParamsList != nullptr || mReadPrepareParams.mpEventPathParamsList != nullptr ||
+ mReadPrepareParams.mpDataVersionFilterList != nullptr)
+ {
+ mpCallback.OnDeallocatePaths(std::move(mReadPrepareParams));
+ // Make sure we will never try to free those pointers again.
+ mReadPrepareParams.mpAttributePathParamsList = nullptr;
+ mReadPrepareParams.mAttributePathParamsListSize = 0;
+ mReadPrepareParams.mpEventPathParamsList = nullptr;
+ mReadPrepareParams.mEventPathParamsListSize = 0;
+ mReadPrepareParams.mpDataVersionFilterList = nullptr;
+ mReadPrepareParams.mDataVersionFilterListSize = 0;
+ }
}
ReadClient::~ReadClient()
{
+ Close(CHIP_NO_ERROR, /* allowResubscription = */ false, /* allowOnDone = */ false);
if (IsSubscriptionType())
{
- CancelLivenessCheckTimer();
- CancelResubscribeTimer();
-
- //
// Only remove ourselves from the engine's tracker list if we still continue to have a valid pointer to it.
// This won't be the case if the engine shut down before this destructor was called (in which case, mpImEngine
// will point to null)
@@ -141,7 +150,7 @@ CHIP_ERROR ReadClient::ScheduleResubscription(uint32_t aTimeTillNextResubscripti
return CHIP_NO_ERROR;
}
-void ReadClient::Close(CHIP_ERROR aError, bool allowResubscription)
+void ReadClient::Close(CHIP_ERROR aError, bool allowResubscription, bool allowOnDone)
{
if (IsReadType())
{
@@ -152,10 +161,9 @@ void ReadClient::Close(CHIP_ERROR aError, bool allowResubscription)
}
else
{
+ ClearActiveSubscriptionState();
if (aError != CHIP_NO_ERROR)
{
- ClearActiveSubscriptionState();
-
//
// We infer that re-subscription was requested by virtue of having a non-zero list of event OR attribute paths present
// in mReadPrepareParams. This would only be the case if an application called SendAutoResubscribeRequest which
@@ -182,7 +190,10 @@ void ReadClient::Close(CHIP_ERROR aError, bool allowResubscription)
StopResubscription();
}
- mpCallback.OnDone(this);
+ if (allowOnDone)
+ {
+ mpCallback.OnDone(this);
+ }
}
const char * ReadClient::GetStateStr() const
diff --git a/src/app/ReadClient.h b/src/app/ReadClient.h
index 89ea133fad5b1b..66c1428c0fa3e3 100644
--- a/src/app/ReadClient.h
+++ b/src/app/ReadClient.h
@@ -200,8 +200,9 @@ class ReadClient : public Messaging::ExchangeDelegate
* This function is invoked when using SendAutoResubscribeRequest, where the ReadClient was configured to auto re-subscribe
* and the ReadPrepareParams was moved into this client for management. This will have to be free'ed appropriately by the
* application. If SendAutoResubscribeRequest fails, this function will be called before it returns the failure. If
- * SendAutoResubscribeRequest succeeds, this function will be called immediately before calling OnDone. If
- * SendAutoResubscribeRequest is not called, this function will not be called.
+ * SendAutoResubscribeRequest succeeds, this function will be called immediately before calling OnDone, or
+ * when the ReadClient is destroyed, if that happens before OnDone. If SendAutoResubscribeRequest is not called,
+ * this function will not be called.
*/
virtual void OnDeallocatePaths(ReadPrepareParams && aReadPrepareParams) {}
@@ -474,8 +475,9 @@ class ReadClient : public Messaging::ExchangeDelegate
* AND if this ReadClient instance is tracking a subscription AND the applications decides to do so
* in their implementation of Callback::OnResubscriptionNeeded().
*
+ * If allowOnDone is false, will not call OnDone.
*/
- void Close(CHIP_ERROR aError, bool allowResubscription = true);
+ void Close(CHIP_ERROR aError, bool allowResubscription = true, bool allowOnDone = true);
void StopResubscription();
void ClearActiveSubscriptionState();
diff --git a/src/app/clusters/bindings/BindingManager.cpp b/src/app/clusters/bindings/BindingManager.cpp
index d373e8c15a3f13..db07abe3ed9f34 100644
--- a/src/app/clusters/bindings/BindingManager.cpp
+++ b/src/app/clusters/bindings/BindingManager.cpp
@@ -111,7 +111,6 @@ CHIP_ERROR BindingManager::EstablishConnection(const ScopedNodeId & nodeId)
if (mPendingNotificationMap.FindLRUConnectPeer(peerToRemove) == CHIP_NO_ERROR)
{
mPendingNotificationMap.RemoveAllEntriesForNode(peerToRemove);
- mInitParams.mCASESessionManager->ReleaseSession(peerToRemove);
// Now retry
mLastSessionEstablishmentError = CHIP_NO_ERROR;
@@ -160,7 +159,6 @@ void BindingManager::HandleDeviceConnectionFailure(const ScopedNodeId & peerId,
{
// Simply release the entry, the connection will be re-established as needed.
ChipLogError(AppServer, "Failed to establish connection to node 0x" ChipLogFormatX64, ChipLogValueX64(peerId.GetNodeId()));
- mInitParams.mCASESessionManager->ReleaseSession(peerId);
mLastSessionEstablishmentError = error;
}
diff --git a/src/app/clusters/door-lock-server/door-lock-server.cpp b/src/app/clusters/door-lock-server/door-lock-server.cpp
index 8aae6a8baf9fa1..1465f22809cb5d 100644
--- a/src/app/clusters/door-lock-server/door-lock-server.cpp
+++ b/src/app/clusters/door-lock-server/door-lock-server.cpp
@@ -2085,7 +2085,6 @@ DlStatus DoorLockServer::addCredentialToUser(chip::EndpointId endpointId, chip::
return DlStatus::kFailure;
}
- // TODO: Do we need to check the modifier fabric here? Discuss with Spec team and add it if necessary.
for (size_t i = 0; i < user.credentials.size(); ++i)
{
// appclusters, 5.2.4.40: user should not be already associated with given credentialIndex
@@ -2163,8 +2162,6 @@ DlStatus DoorLockServer::modifyCredentialForUser(chip::EndpointId endpointId, ch
return DlStatus::kFailure;
}
- // TODO: Do we need to check the modifier fabric here? Discuss with Spec team and add it if necessary.
-
for (size_t i = 0; i < user.credentials.size(); ++i)
{
// appclusters, 5.2.4.40: user should already be associated with given credentialIndex
diff --git a/src/app/clusters/fault-injection-server/fault-injection-server.cpp b/src/app/clusters/fault-injection-server/fault-injection-server.cpp
new file mode 100644
index 00000000000000..925640c8ce8d00
--- /dev/null
+++ b/src/app/clusters/fault-injection-server/fault-injection-server.cpp
@@ -0,0 +1,152 @@
+/**
+ *
+ * Copyright (c) 2022 Project CHIP Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "app/server/Server.h"
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#if CHIP_WITH_NLFAULTINJECTION
+#include
+#include
+#include
+#endif
+
+using namespace chip;
+using namespace chip::app;
+using namespace chip::app::Clusters::FaultInjection;
+using chip::Protocols::InteractionModel::Status;
+
+namespace {
+
+#if CHIP_WITH_NLFAULTINJECTION
+nl::FaultInjection::Manager * GetFaultInjectionManager(FaultType type)
+{
+ nl::FaultInjection::Manager * faultInjectionMgr = nullptr;
+
+ switch (type)
+ {
+ case FaultType::kSystemFault:
+ faultInjectionMgr = &chip::System::FaultInjection::GetManager();
+ break;
+ case FaultType::kInetFault:
+ faultInjectionMgr = &chip::Inet::FaultInjection::GetManager();
+ break;
+ case FaultType::kChipFault:
+ faultInjectionMgr = &chip::FaultInjection::GetManager();
+ break;
+ default:
+ break;
+ }
+
+ return faultInjectionMgr;
+}
+#endif
+
+} // anonymous namespace
+
+bool emberAfFaultInjectionClusterFailAtFaultCallback(CommandHandler * commandObj, const ConcreteCommandPath & commandPath,
+ const Commands::FailAtFault::DecodableType & commandData)
+{
+ if (commandPath.mClusterId != Clusters::FaultInjection::Id)
+ {
+ // We shouldn't have been called at all.
+ commandObj->AddStatus(commandPath, Status::UnsupportedCluster);
+ return true;
+ }
+
+#if CHIP_WITH_NLFAULTINJECTION
+ Status returnStatus = Status::Success;
+ nl::FaultInjection::Manager * faultInjectionMgr = GetFaultInjectionManager(commandData.type);
+
+ if (faultInjectionMgr != nullptr)
+ {
+ ChipLogProgress(Zcl, "FaultInjection: Configure a fault of type: %d and Id: %d to be triggered deterministically",
+ static_cast(commandData.type), commandData.id);
+ int32_t err = faultInjectionMgr->FailAtFault(commandData.id, commandData.numCallsToSkip, commandData.numCallsToFail,
+ commandData.takeMutex);
+
+ if (err != 0)
+ {
+ ChipLogError(Zcl, "FaultInjection: Pass invalid inputs to FailAtFault");
+ returnStatus = Status::InvalidCommand;
+ }
+ }
+ else
+ {
+ ChipLogError(Zcl, "FaultInjection: Failed to get Fault Injection manager");
+ returnStatus = Status::Failure;
+ }
+#else
+ Status returnStatus = Status::UnsupportedCommand;
+#endif // CHIP_WITH_NLFAULTINJECTION
+
+ commandObj->AddStatus(commandPath, returnStatus);
+ return true;
+}
+
+bool emberAfFaultInjectionClusterFailRandomlyAtFaultCallback(CommandHandler * commandObj, const ConcreteCommandPath & commandPath,
+ const Commands::FailRandomlyAtFault::DecodableType & commandData)
+{
+ if (commandPath.mClusterId != Clusters::FaultInjection::Id)
+ {
+ // We shouldn't have been called at all.
+ commandObj->AddStatus(commandPath, Status::UnsupportedCluster);
+ return true;
+ }
+
+ if (commandData.percentage > 100)
+ {
+ commandObj->AddStatus(commandPath, Status::InvalidCommand);
+ return true;
+ }
+
+#if CHIP_WITH_NLFAULTINJECTION
+ Status returnStatus = Status::Success;
+ nl::FaultInjection::Manager * faultInjectionMgr = GetFaultInjectionManager(commandData.type);
+
+ if (faultInjectionMgr != nullptr)
+ {
+ ChipLogProgress(Zcl, "FaultInjection: Configure a fault of type: %d and Id: %d to be triggered randomly",
+ static_cast(commandData.type), commandData.id);
+ int32_t err = faultInjectionMgr->FailRandomlyAtFault(commandData.id, commandData.percentage);
+
+ if (err != 0)
+ {
+ ChipLogError(Zcl, "FaultInjection: Pass invalid inputs to FailAtFault");
+ returnStatus = Status::InvalidCommand;
+ }
+ }
+ else
+ {
+ ChipLogError(Zcl, "FaultInjection: Failed to get Fault Injection manager");
+ returnStatus = Status::Failure;
+ }
+#else
+ Status returnStatus = Status::UnsupportedCommand;
+#endif // CHIP_WITH_NLFAULTINJECTION
+
+ commandObj->AddStatus(commandPath, returnStatus);
+ return true;
+}
+
+void MatterFaultInjectionPluginServerInitCallback() {}
diff --git a/src/app/clusters/level-control/level-control.cpp b/src/app/clusters/level-control/level-control.cpp
index c6c236b08c47d1..bcf52cd169a2ab 100644
--- a/src/app/clusters/level-control/level-control.cpp
+++ b/src/app/clusters/level-control/level-control.cpp
@@ -993,6 +993,7 @@ void emberAfOnOffClusterLevelControlEffectCallback(EndpointId endpoint, bool new
{
app::DataModel::Nullable resolvedLevel;
app::DataModel::Nullable temporaryCurrentLevelCache;
+ app::DataModel::Nullable transitionTime;
uint16_t currentOnOffTransitionTime;
EmberAfStatus status;
@@ -1059,18 +1060,16 @@ void emberAfOnOffClusterLevelControlEffectCallback(EndpointId endpoint, bool new
emberAfLevelControlClusterPrintln("ERR: reading current level %x", status);
return;
}
+ transitionTime.SetNonNull(currentOnOffTransitionTime);
}
else
{
- currentOnOffTransitionTime = 0xFFFF;
+ transitionTime.SetNull();
}
#else
- currentOnOffTransitionTime = 0xFFFF;
+ transitionTime.SetNull();
#endif // IGNORE_LEVEL_CONTROL_CLUSTER_ON_OFF_TRANSITION_TIME
- app::DataModel::Nullable transitionTime;
- transitionTime.SetNonNull(currentOnOffTransitionTime);
-
if (newValue)
{
// If newValue is OnOff::Commands::On::Id...
diff --git a/src/app/clusters/operational-credentials-server/operational-credentials-server.cpp b/src/app/clusters/operational-credentials-server/operational-credentials-server.cpp
index ae60c18f70fe4f..baf6a97877df81 100644
--- a/src/app/clusters/operational-credentials-server/operational-credentials-server.cpp
+++ b/src/app/clusters/operational-credentials-server/operational-credentials-server.cpp
@@ -296,18 +296,6 @@ void FailSafeCleanup(const chip::DeviceLayer::ChipDeviceEvent * event)
// Session Context at the Server.
if (event->FailSafeTimerExpired.addNocCommandHasBeenInvoked || event->FailSafeTimerExpired.updateNocCommandHasBeenInvoked)
{
- // TODO(#19259): The following scope will no longer need to exist after #19259 is fixed
- {
- CASESessionManager * caseSessionManager = Server::GetInstance().GetCASESessionManager();
- if (caseSessionManager)
- {
- const FabricInfo * fabricInfo = Server::GetInstance().GetFabricTable().FindFabricWithIndex(fabricIndex);
- VerifyOrReturn(fabricInfo != nullptr);
-
- caseSessionManager->ReleaseSessionsForFabric(fabricInfo->GetFabricIndex());
- }
- }
-
SessionManager & sessionMgr = Server::GetInstance().GetSecureSessionManager();
CleanupSessionsForFabric(sessionMgr, fabricIndex);
}
diff --git a/src/app/clusters/ota-requestor/DefaultOTARequestor.cpp b/src/app/clusters/ota-requestor/DefaultOTARequestor.cpp
index 98f11b3fee0811..f96b85ed9b4963 100644
--- a/src/app/clusters/ota-requestor/DefaultOTARequestor.cpp
+++ b/src/app/clusters/ota-requestor/DefaultOTARequestor.cpp
@@ -386,8 +386,15 @@ void DefaultOTARequestor::DisconnectFromProvider()
return;
}
- auto providerNodeId = GetProviderScopedId();
- mServer->GetSecureSessionManager().MarkSessionsAsDefunct(providerNodeId, MakeOptional(Transport::SecureSession::Type::kCASE));
+ auto optionalSessionHandle = mSessionHolder.Get();
+ if (optionalSessionHandle.HasValue())
+ {
+ if (optionalSessionHandle.Value()->IsActiveSession())
+ {
+ optionalSessionHandle.Value()->AsSecureSession()->MarkAsDefunct();
+ }
+ }
+ mSessionHolder.Release();
}
// Requestor is directed to cancel image update in progress. All the Requestor state is
@@ -419,6 +426,7 @@ void DefaultOTARequestor::OnConnected(void * context, Messaging::ExchangeManager
{
DefaultOTARequestor * requestorCore = static_cast(context);
VerifyOrDie(requestorCore != nullptr);
+ requestorCore->mSessionHolder.Grab(sessionHandle);
switch (requestorCore->mOnConnectedAction)
{
@@ -476,6 +484,7 @@ void DefaultOTARequestor::OnConnectionFailure(void * context, const ScopedNodeId
{
DefaultOTARequestor * requestorCore = static_cast(context);
VerifyOrDie(requestorCore != nullptr);
+ requestorCore->mSessionHolder.Release();
ChipLogError(SoftwareUpdate, "Failed to connect to node 0x" ChipLogFormatX64 ": %" CHIP_ERROR_FORMAT,
ChipLogValueX64(peerId.GetNodeId()), error.Format());
@@ -758,6 +767,7 @@ CHIP_ERROR DefaultOTARequestor::SendQueryImageRequest(Messaging::ExchangeManager
args.location.SetValue(CharSpan("XX", strlen("XX")));
}
+ args.metadataForProvider = mMetadataForProvider;
Controller::OtaSoftwareUpdateProviderCluster cluster(exchangeMgr, sessionHandle, mProviderLocation.Value().endpoint);
return cluster.InvokeCommand(args, this, OnQueryImageResponse, OnQueryImageFailure);
diff --git a/src/app/clusters/ota-requestor/DefaultOTARequestor.h b/src/app/clusters/ota-requestor/DefaultOTARequestor.h
index 0dc04efae08f8e..938f2be59f671a 100644
--- a/src/app/clusters/ota-requestor/DefaultOTARequestor.h
+++ b/src/app/clusters/ota-requestor/DefaultOTARequestor.h
@@ -92,6 +92,10 @@ class DefaultOTARequestor : public OTARequestorInterface, public BDXDownloader::
void GetProviderLocation(Optional & providerLocation) override { providerLocation = mProviderLocation; }
+ // Set the metadata value for the provider to be used in the next query and OTA update process
+ // NOTE: Does not persist across reboot.
+ void SetMetadataForProvider(ByteSpan metadataForProvider) override { mMetadataForProvider.SetValue(metadataForProvider); }
+
// Add a default OTA provider to the cached list
CHIP_ERROR AddDefaultOtaProvider(const ProviderLocationType & providerLocation) override;
@@ -319,6 +323,7 @@ class DefaultOTARequestor : public OTARequestorInterface, public BDXDownloader::
BDXDownloader * mBdxDownloader = nullptr; // TODO: this should be OTADownloader
BDXMessenger mBdxMessenger; // TODO: ideally this is held by the application
uint8_t mUpdateTokenBuffer[kMaxUpdateTokenLen];
+ Optional mMetadataForProvider;
ByteSpan mUpdateToken;
uint32_t mCurrentVersion = 0;
uint32_t mTargetVersion = 0;
@@ -331,6 +336,7 @@ class DefaultOTARequestor : public OTARequestorInterface, public BDXDownloader::
// persistent storage (if available), used for sending the NotifyApplied message, and then cleared. This will ensure determinism
// in the OTARequestorDriver on reboot.
Optional mProviderLocation;
+ SessionHolder mSessionHolder;
};
} // namespace chip
diff --git a/src/app/clusters/ota-requestor/DefaultOTARequestorDriver.cpp b/src/app/clusters/ota-requestor/DefaultOTARequestorDriver.cpp
index 5183026932c927..f2e4f6870c4db4 100644
--- a/src/app/clusters/ota-requestor/DefaultOTARequestorDriver.cpp
+++ b/src/app/clusters/ota-requestor/DefaultOTARequestorDriver.cpp
@@ -388,6 +388,13 @@ void DefaultOTARequestorDriver::StopPeriodicQueryTimer()
CancelDelayedAction(PeriodicQueryTimerHandler, this);
}
+void DefaultOTARequestorDriver::RekickPeriodicQueryTimer(void)
+{
+ ChipLogProgress(SoftwareUpdate, "Rekicking the Periodic Query timer");
+ StopPeriodicQueryTimer();
+ StartPeriodicQueryTimer();
+}
+
void DefaultOTARequestorDriver::WatchdogTimerHandler(System::Layer * systemLayer, void * appState)
{
DefaultOTARequestorDriver * driver = ToDriver(appState);
diff --git a/src/app/clusters/ota-requestor/DefaultOTARequestorDriver.h b/src/app/clusters/ota-requestor/DefaultOTARequestorDriver.h
index 0d76af626d6dc6..4a643da36e1251 100644
--- a/src/app/clusters/ota-requestor/DefaultOTARequestorDriver.h
+++ b/src/app/clusters/ota-requestor/DefaultOTARequestorDriver.h
@@ -52,6 +52,9 @@ class DefaultOTARequestorDriver : public OTARequestorDriver
}
}
+ // Restart the periodic query timer
+ void RekickPeriodicQueryTimer(void);
+
// Set the timeout (in seconds) for the watchdog timer; must be non-zero
void SetWatchdogTimeout(uint32_t timeout)
{
diff --git a/src/app/clusters/ota-requestor/OTARequestorInterface.h b/src/app/clusters/ota-requestor/OTARequestorInterface.h
index f24563d36c3c79..bd09f833971cc0 100644
--- a/src/app/clusters/ota-requestor/OTARequestorInterface.h
+++ b/src/app/clusters/ota-requestor/OTARequestorInterface.h
@@ -203,6 +203,9 @@ class OTARequestorInterface
// Set the provider location to be used in the next query and OTA update process
virtual void SetCurrentProviderLocation(ProviderLocationType providerLocation) = 0;
+ // Set the metadata value for the provider to be used in the next query and OTA update process
+ virtual void SetMetadataForProvider(chip::ByteSpan metadataForProvider) = 0;
+
// If there is an OTA update in progress, returns the provider location for the current OTA update, otherwise, returns the
// provider location that was last used
virtual void GetProviderLocation(Optional & providerLocation) = 0;
diff --git a/src/app/clusters/test-cluster-server/test-cluster-server.cpp b/src/app/clusters/test-cluster-server/test-cluster-server.cpp
index 320bce3f34ad24..0da23b39b189e1 100644
--- a/src/app/clusters/test-cluster-server/test-cluster-server.cpp
+++ b/src/app/clusters/test-cluster-server/test-cluster-server.cpp
@@ -797,7 +797,7 @@ bool emberAfTestClusterClusterTestEmitTestFabricScopedEventRequestCallback(
{
Commands::TestEmitTestFabricScopedEventResponse::Type responseData;
Events::TestFabricScopedEvent::Type event{ commandData.arg1 };
-
+ event.fabricIndex = commandData.arg1;
if (CHIP_NO_ERROR != LogEvent(event, commandPath.mEndpointId, responseData.value))
{
emberAfSendImmediateDefaultResponse(EMBER_ZCL_STATUS_FAILURE);
diff --git a/src/app/common/templates/templates.json b/src/app/common/templates/templates.json
index 2e1ba3043bc24b..23838583aea61b 100644
--- a/src/app/common/templates/templates.json
+++ b/src/app/common/templates/templates.json
@@ -2,11 +2,11 @@
"name": "CHIP Application Common templates",
"version": "chip-v1",
"helpers": [
- "../../zap-templates/partials/helper.js",
- "../../zap-templates/common/StringHelper.js",
- "../../zap-templates/common/attributes/Accessors.js",
- "../../zap-templates/templates/app/helper.js",
- "../../zap-templates/templates/chip/helper.js"
+ "partials/helper.js",
+ "common/StringHelper.js",
+ "common/attributes/Accessors.js",
+ "templates/app/helper.js",
+ "templates/chip/helper.js"
],
"override": "../../zap-templates/common/override.js",
"partials": [
diff --git a/src/app/tests/TestCommandInteraction.cpp b/src/app/tests/TestCommandInteraction.cpp
index c36221395375ad..265d982acbaae4 100644
--- a/src/app/tests/TestCommandInteraction.cpp
+++ b/src/app/tests/TestCommandInteraction.cpp
@@ -1064,8 +1064,16 @@ void TestCommandInteraction::TestCommandHandlerWithProcessReceivedEmptyDataMsg(n
chip::isCommandDispatched = false;
GenerateInvokeRequest(apSuite, apContext, commandDatabuf, messageIsTimed, kTestCommandIdNoData);
- commandHandler.ProcessInvokeRequest(std::move(commandDatabuf), transactionIsTimed);
-
+ Protocols::InteractionModel::Status status =
+ commandHandler.ProcessInvokeRequest(std::move(commandDatabuf), transactionIsTimed);
+ if (messageIsTimed != transactionIsTimed)
+ {
+ NL_TEST_ASSERT(apSuite, status == Protocols::InteractionModel::Status::UnsupportedAccess);
+ }
+ else
+ {
+ NL_TEST_ASSERT(apSuite, status == Protocols::InteractionModel::Status::Success);
+ }
NL_TEST_ASSERT(apSuite, chip::isCommandDispatched == (messageIsTimed == transactionIsTimed));
}
}
diff --git a/src/app/tests/TestReadInteraction.cpp b/src/app/tests/TestReadInteraction.cpp
index 54f19a7207c57b..d97b11f3213a8d 100644
--- a/src/app/tests/TestReadInteraction.cpp
+++ b/src/app/tests/TestReadInteraction.cpp
@@ -336,6 +336,7 @@ class TestReadInteraction
static void TestSubscribeSendInvalidStatusReport(nlTestSuite * apSuite, void * apContext);
static void TestReadHandlerInvalidSubscribeRequest(nlTestSuite * apSuite, void * apContext);
static void TestSubscribeInvalidateFabric(nlTestSuite * apSuite, void * apContext);
+ static void TestShutdownSubscription(nlTestSuite * apSuite, void * apContext);
private:
static void GenerateReportData(nlTestSuite * apSuite, void * apContext, System::PacketBufferHandle & aPayload,
@@ -1762,6 +1763,7 @@ void TestReadInteraction::TestSubscribeWildcard(nlTestSuite * apSuite, void * ap
delegate.mGotReport = false;
+ attributePathParams.release();
err = readClient.SendAutoResubscribeRequest(std::move(readPrepareParams));
NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
@@ -1867,6 +1869,7 @@ void TestReadInteraction::TestSubscribePartialOverlap(nlTestSuite * apSuite, voi
delegate.mGotReport = false;
+ attributePathParams.release();
err = readClient.SendAutoResubscribeRequest(std::move(readPrepareParams));
NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
@@ -1943,6 +1946,7 @@ void TestReadInteraction::TestSubscribeSetDirtyFullyOverlap(nlTestSuite * apSuit
delegate.mGotReport = false;
+ attributePathParams.release();
err = readClient.SendAutoResubscribeRequest(std::move(readPrepareParams));
NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
@@ -3730,6 +3734,56 @@ void TestReadInteraction::TestSubscribeInvalidateFabric(nlTestSuite * apSuite, v
NL_TEST_ASSERT(apSuite, ctx.GetExchangeManager().GetNumActiveExchanges() == 0);
}
+void TestReadInteraction::TestShutdownSubscription(nlTestSuite * apSuite, void * apContext)
+{
+ TestContext & ctx = *static_cast(apContext);
+ CHIP_ERROR err = CHIP_NO_ERROR;
+
+ Messaging::ReliableMessageMgr * rm = ctx.GetExchangeManager().GetReliableMessageMgr();
+ // Shouldn't have anything in the retransmit table when starting the test.
+ NL_TEST_ASSERT(apSuite, rm->TestGetCountRetransTable() == 0);
+
+ GenerateEvents(apSuite, apContext);
+
+ MockInteractionModelApp delegate;
+ auto * engine = chip::app::InteractionModelEngine::GetInstance();
+ err = engine->Init(&ctx.GetExchangeManager(), &ctx.GetFabricTable());
+ NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+
+ ReadPrepareParams readPrepareParams(ctx.GetSessionBobToAlice());
+ readPrepareParams.mpAttributePathParamsList = new chip::app::AttributePathParams[1];
+ readPrepareParams.mAttributePathParamsListSize = 1;
+
+ readPrepareParams.mpAttributePathParamsList[0].mEndpointId = Test::kMockEndpoint3;
+ readPrepareParams.mpAttributePathParamsList[0].mClusterId = Test::MockClusterId(2);
+ readPrepareParams.mpAttributePathParamsList[0].mAttributeId = Test::MockAttributeId(4);
+
+ readPrepareParams.mMinIntervalFloorSeconds = 0;
+ readPrepareParams.mMaxIntervalCeilingSeconds = 0;
+
+ {
+ app::ReadClient readClient(chip::app::InteractionModelEngine::GetInstance(), &ctx.GetExchangeManager(), delegate,
+ chip::app::ReadClient::InteractionType::Subscribe);
+
+ delegate.mGotReport = false;
+
+ err = readClient.SendAutoResubscribeRequest(std::move(readPrepareParams));
+ NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+
+ ctx.DrainAndServiceIO();
+
+ NL_TEST_ASSERT(apSuite, delegate.mGotReport);
+ NL_TEST_ASSERT(apSuite, engine->GetNumActiveReadHandlers(ReadHandler::InteractionType::Subscribe) == 1);
+
+ engine->ShutdownSubscription(chip::ScopedNodeId(readClient.GetPeerNodeId(), readClient.GetFabricIndex()),
+ readClient.GetSubscriptionId().Value());
+ NL_TEST_ASSERT(apSuite, readClient.IsIdle());
+ }
+ engine->Shutdown();
+ NL_TEST_ASSERT(apSuite, engine->GetNumActiveReadClients() == 0);
+ NL_TEST_ASSERT(apSuite, ctx.GetExchangeManager().GetNumActiveExchanges() == 0);
+}
+
} // namespace app
} // namespace chip
@@ -3775,6 +3829,7 @@ const nlTest sTests[] =
NL_TEST_DEF("TestSubscribeSendInvalidStatusReport", chip::app::TestReadInteraction::TestSubscribeSendInvalidStatusReport),
NL_TEST_DEF("TestReadHandlerInvalidSubscribeRequest", chip::app::TestReadInteraction::TestReadHandlerInvalidSubscribeRequest),
NL_TEST_DEF("TestSubscribeInvalidateFabric", chip::app::TestReadInteraction::TestSubscribeInvalidateFabric),
+ NL_TEST_DEF("TestShutdownSubscription", chip::app::TestReadInteraction::TestShutdownSubscription),
NL_TEST_DEF("TestSubscribeUrgentWildcardEvent", chip::app::TestReadInteraction::TestSubscribeUrgentWildcardEvent),
NL_TEST_DEF("TestSubscribeWildcard", chip::app::TestReadInteraction::TestSubscribeWildcard),
NL_TEST_DEF("TestSubscribePartialOverlap", chip::app::TestReadInteraction::TestSubscribePartialOverlap),
diff --git a/src/app/tests/suites/TestDescriptorCluster.yaml b/src/app/tests/suites/TestDescriptorCluster.yaml
index c8bf01e3ab3d00..543010309e8372 100644
--- a/src/app/tests/suites/TestDescriptorCluster.yaml
+++ b/src/app/tests/suites/TestDescriptorCluster.yaml
@@ -65,6 +65,7 @@ tests:
0x0040, # Fixed Label
0x0041, # User Label
0x0405, # Relative Humidity Measurement (why on EP0?)
+ 0xFFF1FC06, # Fault Injection
]
- label: "Read attribute Client list"
diff --git a/src/app/tests/suites/TestMultiAdmin.yaml b/src/app/tests/suites/TestMultiAdmin.yaml
index ff45d1bbe1d985..fb05ce34893cee 100644
--- a/src/app/tests/suites/TestMultiAdmin.yaml
+++ b/src/app/tests/suites/TestMultiAdmin.yaml
@@ -90,7 +90,6 @@ tests:
value: payload
response:
error: FAILURE
- clusterError: 0x09 #OperationalCertStatus::kFabricConflict
- label: "Check that we just have the one fabric and did not add a new one"
identity: "alpha"
diff --git a/src/app/tests/suites/certification/PICS.yaml b/src/app/tests/suites/certification/PICS.yaml
index f8c913f271fea4..a953e5b9568b2a 100644
--- a/src/app/tests/suites/certification/PICS.yaml
+++ b/src/app/tests/suites/certification/PICS.yaml
@@ -1783,6 +1783,9 @@ PICS:
id: LTIME.C.A0000.24HR
#Unit Localization Cluster
+ - label: "Does the device implement different units of temperature ?"
+ id: LUNIT.S.F00
+
- label: "Does the DUT (Server) support TemperatureUnit attribute?"
id: LUNIT.S.A0000
@@ -5487,3 +5490,68 @@ PICS:
"Is the device a Server and capable of generating large data which is
greater than 1 MTU(1280 bytes)"
id: MCORE.IDM.S.LargeData
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ Bool"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_Bool
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ String"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_String
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ Unsigned Integer"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_UnsignedInteger
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ Signed Integer"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_SignedInteger
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ Struct"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_Struct
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ Floating Point"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_FloatingPoint
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ List"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_List
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ Octet String"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_OctetString
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ Enum"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_Enum
+
+ - label:
+ "Is the device a Client and supports writing an attribute of DataType
+ Bitmap"
+ id: MCORE.IDM.C.WriteRequest.Attribute.DataType_Bitmap
+
+ - label:
+ "Is the device a Client and supports subscribing to an attribute of
+ DataType Bool"
+ id: MCORE.IDM.C.SubscribeRequest.Attribute.DataType_Bool
+
+ - label:
+ "Is the device a Client and supports subscribing to an attribute of
+ DataType String"
+ id: MCORE.IDM.C.SubscribeRequest.Attribute.DataType_String
+
+ - label:
+ "Is the device a Client and supports subscribing for multiple
+ attribute"
+ id: MCORE.IDM.C.SubscribeRequest.MultipleAttributes
diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_10.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_10.yaml
index f90dbde49ac69c..6f1fdcd88a860a 100644
--- a/src/app/tests/suites/certification/Test_TC_ACL_2_10.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACL_2_10.yaml
@@ -24,12 +24,26 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ 1.N1 is the node ID of TH1
+
+ 2.N2 is the node ID of TH2
+
+ 2.D_OK_EMPTY:"1718" which is an octstr of length 2 containing valid TLV:
+
+ - top-level anonymous list (empty)
+ 3.D_OK_SINGLE:"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018" which is an octstr of length 50-100 containing valid TLV:
+
+ - top-level anonymous list, containing - one element with profile-specific tag in fully-qualified form
+ disabled: true
+
- label: "TH1 commissions DUT using admin node ID N1"
verification: |
DUT
sudo ./chip-all-clusters-app
- TH
+ TH1
./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3841
disabled: true
@@ -38,7 +52,7 @@ tests:
CurrentFabricIndex attribute"
verification: |
./chip-tool operationalcredentials read current-fabric-index 1 0
-
+ On TH1(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 1
[1658329512.220471][3036:3041] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0005 DataVersion: 1369963572
[1658329512.220529][3036:3041] CHIP:TOO: CurrentFabricIndex: 1
[1658329512.220601][3036:3041] CHIP:EM: Sending Standalone Ack for MessageCounter:23447431 on exchange 2287i
@@ -51,7 +65,7 @@ tests:
Open a commissioning window On TH(Chiptool)1 using below command
./chip-tool administratorcommissioning open-basic-commissioning-window 180 1 0 --timedInteractionTimeoutMs 1000
- On TH(Chiptool)2, verify DUT is commissioned On TH(Chiptool)2 fabric
+ On TH1(Chiptool), verify DUT is commissioned On TH2(Chiptool) fabric
[1657286379.420840][4724:4729] CHIP:DMG: InvokeResponseMessage =
[1657286379.420894][4724:4729] CHIP:DMG: {
@@ -100,7 +114,7 @@ tests:
CurrentFabricIndex attribute"
verification: |
./chip-tool operationalcredentials read current-fabric-index 2 0 --commissioner-nodeid 223344 --commissioner-name beta
- On TH(Chiptool), verify to CurrentFabricIndex attribute of operationalCredential cluster as 2
+ On TH2(Chiptool), verify to CurrentFabricIndex attribute of operationalCredential cluster as 2
1658329570.828165][4563:4568] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0005 DataVersion: 1369963572
[1658329570.831838][4563:4568] CHIP:TOO: CurrentFabricIndex: 2
@@ -116,9 +130,9 @@ tests:
field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233,1111], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 3, "subjects":[3333] , "targets": null}]" 1 0
- On TH(Chiptool)1 , Verify Successfully AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 2 elements
+ ./chip-tool accesscontrol write acl "[{ "privilege": 5, "authMode": 2, "subjects": [112233,1111], "targets": null},
+ { "privilege": 3, "authMode": 3, "subjects":[3333] , "targets": null}]" 1 0
+ On TH1(Chiptool) , Verify Successfully AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 2 elements
[1658329787.635523][3056:3061] CHIP:DMG: WriteClient moving to [ResponseRe]
[1658329787.635615][3056:3061] CHIP:DMG: WriteResponseMessage =
@@ -192,11 +206,11 @@ tests:
field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [223344,2222], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 3, "subjects":[4444] , "targets": null}]" 2 0 --commissioner-nodeid 223344 --commissioner-name beta
+ ./chip-tool accesscontrol write acl "[{ "privilege": 5, "authMode": 2, "subjects": [223344,2222], "targets": null},
+ { "privilege": 3, "authMode": 3, "subjects":[4444] , "targets": null}]" 2 0 --commissioner-nodeid 223344 --commissioner-name beta
- On TH(Chiptool)2 , Verify AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 2 elements
+ On TH2(Chiptool), Verify AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 2 elements
[1658329868.113411][4587:4592] CHIP:DMG: WriteClient moving to [ResponseRe]
@@ -269,7 +283,7 @@ tests:
PICS: ACL.S.A0001
verification: |
./chip-tool accesscontrol write extension "[{"data":"1718"}]" 1 0
- On TH(Chiptool)1 , Verify Successfully to extension attribute list containg one element
+ On TH1(Chiptool) , Verify Successfully to extension attribute list containg one element
[1658330105.863185][3079:3084] CHIP:DMG: WriteClient moving to [ResponseRe]
[1658330105.863237][3079:3084] CHIP:DMG: WriteResponseMessage =
[1658330105.863262][3079:3084] CHIP:DMG: {
@@ -324,7 +338,7 @@ tests:
verification: |
./chip-tool accesscontrol write extension "[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]" 2 0 --commissioner-nodeid 223344 --commissioner-name beta
- On TH(Chiptool)2 , Verify Successfully extension attribute list containg one element .
+ On TH1(Chiptool), Verify Successfully extension attribute list containg one element .
[1658819083.842765][8349:8354] CHIP:EM: Removed CHIP MessageCounter:249057275 from RetransTable on exchange 59888i
[1658819083.842800][8349:8354] CHIP:DMG: WriteClient moving to [ResponseRe]
@@ -390,7 +404,7 @@ tests:
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) 1, Verify AccessControlEntryStruct containing 2 elements, and MUST NOT contain an element with FabricIndex F2
+ On TH1(Chiptool) , Verify AccessControlEntryStruct containing 2 elements, and MUST NOT contain an element with FabricIndex F2
[1657289627.393651][5251:5256] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0000 DataVersion: 1884338152
[1657289627.393731][5251:5256] CHIP:TOO: ACL: 2 entries
@@ -418,7 +432,7 @@ tests:
PICS: ACL.S.A0001
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool)1 , Verify Successfully AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F2
+ On TH1(Chiptool) , Verify Successfully AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F2
[1657289676.947323][5260:5265] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0001 DataVersion: 1884338152
@@ -434,7 +448,7 @@ tests:
verification: |
./chip-tool accesscontrol read acl 2 0 --commissioner-name beta --commissioner-nodeid 223344
- On TH(Chiptool) 2, Verify AccessControlEntryStruct containing 2 elements, and MUST NOT contain an element with FabricIndex F1
+ On TH2(Chiptool) , Verify AccessControlEntryStruct containing 2 elements, and MUST NOT contain an element with FabricIndex F1
[1657289713.626327][19279:19284] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0000 DataVersion: 1884338152
@@ -464,7 +478,7 @@ tests:
verification: |
./chip-tool accesscontrol read extension 2 0 --commissioner-name beta --commissioner-nodeid 223344
- On TH(Chiptool)2 , Verify AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F1
+ On TH2(Chiptool) , Verify AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F1
[1657289746.737641][19293:19298] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0001 DataVersion: 1884338152
[1657289746.737713][19293:19298] CHIP:TOO: Extension: 1 entries
@@ -485,7 +499,7 @@ tests:
verification: |
./chip-tool operationalcredentials remove-fabric 2 2 0 --commissioner-name beta --commissioner-nodeid 223344
- On TH(Chiptool)1 , Verify successfully removed fabric F2
+ On TH1(Chiptool), Verify successfully removed fabric F2
[1657289809.358455][19309:19314] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
[1657289809.358500][19309:19314] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0008
@@ -499,7 +513,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool)1 , Verify AccessControlEntryStruct containing 2 elements, and MUST NOT contain an element with FabricIndex F2
+ On TH1(Chiptool) , Verify AccessControlEntryStruct containing 2 elements, and MUST NOT contain an element with FabricIndex F2
@@ -529,7 +543,7 @@ tests:
PICS: ACL.S.A0001
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool)1 , Verify Successfully to AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F2
+ On TH1(Chiptool), Verify Successfully to AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F2
[1657289881.142883][5283:5288] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0001 DataVersion: 1884338152
diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_3.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_3.yaml
index 7716b52cdfab1b..a0ecce5d17f816 100644
--- a/src/app/tests/suites/certification/Test_TC_ACL_2_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACL_2_3.yaml
@@ -24,9 +24,58 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ Notes
+
+ 1.N1 is the node ID of TH1
+
+ 2.D_OK_EMPTY:"1718" which is an octstr of length 2 containing valid TLV:
+
+ - top-level anonymous list (empty)
+
+ 3.D_OK_SINGLE:"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018" which is an octstr of length 50-100 containing valid TLV:
+
+ - top-level anonymous list, containing - one element with profile-specific tag in fully-qualified form
+
+ 4.D_OK_FULL:"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003148656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E0018" which is an octstr of length 128 containing valid TLV:
+
+ - top-level anonymous list, containing - two elements with profile-specific tag in fully-qualified form
+
+ 5.D_BAD_LENGTH:"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003248656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E2E0018" which is an octstr of length 129 containing valid TLV:
+
+ - top-level anonymous list, containing - one element with profile-specific tag in fully-qualified form
+
+ 6 .D_BAD_STRUCT: "1518" which is an octstr of length 2 containing valid TLV:
+
+ - top-level anonymous struct, empty
+
+ 7.D_BAD_LIST:"3701D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018" which is an octstr of length 50-100 containing valid TLV:
+
+ - top-level list with context-specific tag, containing - one element with profile-specific tag in fully-qualified form
+
+ 8.D_BAD_ELEM:"17103D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018" which is an octstr of length 50-100 containing valid TLV:
+
+ - top-level anonymous list, containing - one element with anonymous tag
+
+ 9 .D_BAD_OVERFLOW: "17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018FF" which is an octstr of length 50-100 containing valid TLV:
+
+ - top-level anonymous list, containing - one element with profile-specific tag in fully-qualified form - but having extra bytes after the top level list end-of-container
+
+ 10.D_BAD_UNDERFLOW:"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700" which is an octstr of length 50-100 containing invalid TLV:
+
+ - top-level anonymous list, containing - one element with profile-specific tag in fully-qualified form - but lacking the top-level list end-of-container
+
+ 11.D_BAD_NONE: "" which is an octstr of length 0
+ disabled: true
+
- label: "TH1 commissions DUT using admin node ID N1"
verification: |
- verification step to be updated.
+ DUT
+ sudo ./chip-all-clusters-app
+
+ TH1
+ ./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3841
disabled: true
- label:
@@ -35,7 +84,7 @@ tests:
verification: |
./chip-tool operationalcredentials read current-fabric-index 1 0
- On TH(Chiptool), verify the CurrentFabricIndex attribute of operationalCredential cluster as 1
+ On TH1(Chiptool), verify the CurrentFabricIndex attribute of operationalCredential cluster as 1
[1658323393.451141][2316:2321] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0005 DataVersion: 3882577299
[1658323393.465921][2316:2321] CHIP:TOO: CurrentFabricIndex: 1
@@ -47,7 +96,7 @@ tests:
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool) , Verify the extension attribute contains an empty list
+ On TH1(Chiptool) , Verify the extension attribute contains an empty list
[1657116435.352869][2667:2672] CHIP:DMG: SuppressResponse = true,
[1657116435.352904][2667:2672] CHIP:DMG: InteractionModelRevision = 1
@@ -63,9 +112,9 @@ tests:
struct: Data field: D_OK_EMPTY : 1718"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"1718"}]" 1 0
+ ./chip-tool accesscontrol write extension '[{"data":"1718"}]' 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element
[1656416335.284463][3747:3752] CHIP:DMG: WriteResponseMessage =
[1656416335.284498][3747:3752] CHIP:DMG: {
@@ -111,7 +160,7 @@ tests:
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool) , Verify value is list of AccessControlExtensionStructcontaining 1 element . Data field: D_OK_EMPTY : "1718"
+ On TH1(Chiptool) , Verify value is list of AccessControlExtensionStructcontaining 1 element . Data field: D_OK_EMPTY : "1718"
FabricIndex field: F1
@@ -160,9 +209,9 @@ tests:
:17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]" 1 0
+ ./chip-tool accesscontrol write extension '[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]' 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element .
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element .
[1656416899.781899][3814:3819] CHIP:DMG: WriteResponseMessage =
@@ -217,7 +266,7 @@ tests:
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool) , Verify the AccessControlExtensionStruct containing 1 element 1.struct
+ On TH1(Chiptool) , Verify the AccessControlExtensionStruct containing 1 element 1.struct
Data field: D_OK_SINGLE :"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"
[1657278788.400832][9048:9053] CHIP:DMG: ReportDataMessage =
@@ -289,9 +338,9 @@ tests:
which is an octstr of length 128 containing valid TLV:"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003148656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E0018"}]" 1 0
+ ./chip-tool accesscontrol write extension '[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003148656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E0018"}]' 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element
[1656417544.279572][3888:3893] CHIP:DMG: WriteResponseMessage =
[1656417544.279598][3888:3893] CHIP:DMG: {
[1656417544.279620][3888:3893] CHIP:DMG: AttributeStatusIBs =
@@ -334,7 +383,7 @@ tests:
PICS: ACL.S.A0001
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool) , Verify AccessControlExtensionStructcontaining 1 element 1.struct
+ On TH1(Chiptool) , Verify AccessControlExtensionStructcontaining 1 element 1.struct
Data field:
D_OK_FULL :"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003148656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E0018"
@@ -407,38 +456,10 @@ tests:
:17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003248656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E2E0018"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003248656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E2E0018"}]" 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element which Returns CONSTRAINT_ERROR (0x87)
- 1657279033.590101][9081:9086] CHIP:DMG: WriteResponseMessage =
- [1657279033.590134][9081:9086] CHIP:DMG: {
- [1657279033.590167][9081:9086] CHIP:DMG: AttributeStatusIBs =
- [1657279033.590214][9081:9086] CHIP:DMG: [
- [1657279033.590255][9081:9086] CHIP:DMG: AttributeStatusIB =
- [1657279033.590301][9081:9086] CHIP:DMG: {
- [1657279033.590364][9081:9086] CHIP:DMG: AttributePathIB =
- [1657279033.590415][9081:9086] CHIP:DMG: {
- [1657279033.590601][9081:9086] CHIP:DMG: Endpoint = 0x0,
- [1657279033.590656][9081:9086] CHIP:DMG: Cluster = 0x1f,
- [1657279033.590705][9081:9086] CHIP:DMG: Attribute = 0x0000_0001,
- [1657279033.590791][9081:9086] CHIP:DMG: }
- [1657279033.590851][9081:9086] CHIP:DMG:
- [1657279033.590901][9081:9086] CHIP:DMG: StatusIB =
- [1657279033.590948][9081:9086] CHIP:DMG: {
- [1657279033.590994][9081:9086] CHIP:DMG: status = 0x00 (SUCCESS),
- [1657279033.591040][9081:9086] CHIP:DMG: },
- [1657279033.591090][9081:9086] CHIP:DMG:
- [1657279033.591130][9081:9086] CHIP:DMG: },
- [1657279033.591184][9081:9086] CHIP:DMG:
- [1657279033.591223][9081:9086] CHIP:DMG: AttributeStatusIB =
- [1657279033.591266][9081:9086] CHIP:DMG: {
- [1657279033.591306][9081:9086] CHIP:DMG: AttributePathIB =
- [1657279033.591353][9081:9086] CHIP:DMG: {
- [1657279033.591399][9081:9086] CHIP:DMG: Endpoint = 0x0,
- [1657279033.591453][9081:9086] CHIP:DMG: Cluster = 0x1f,
- [1657279033.591502][9081:9086] CHIP:DMG: Attribute = 0x0000_0001,
- [1657279033.591551][9081:9086] CHIP:DMG: ListIndex = Null,
- [1657279033.591600][9081:9086] CHIP:DMG: }
- [1657279033.591651][9081:9086] CHIP:DMG:
+ ./chip-tool accesscontrol write extension '[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003248656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E2E0018"}]' 1 0
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element which Returns CONSTRAINT_ERROR (0x87)
+
+
[1657279033.591694][9081:9086] CHIP:DMG: StatusIB =
[1657279033.591739][9081:9086] CHIP:DMG: {
[1657279033.591784][9081:9086] CHIP:DMG: status = 0x87 (CONSTRAINT_ERROR),
@@ -464,40 +485,11 @@ tests:
struct Data field: D_BAD_STRUCT : 1518"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"1518"}]" 1 0
-
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element which Returns CONSTRAINT_ERROR (0x87)
-
- [1657609094.514337][8195:8200] CHIP:DMG: WriteResponseMessage =
- [1657609094.514410][8195:8200] CHIP:DMG: {
- [1657609094.514447][8195:8200] CHIP:DMG: AttributeStatusIBs =
- [1657609094.514495][8195:8200] CHIP:DMG: [
- [1657609094.514534][8195:8200] CHIP:DMG: AttributeStatusIB =
- [1657609094.514580][8195:8200] CHIP:DMG: {
- [1657609094.514623][8195:8200] CHIP:DMG: AttributePathIB =
- [1657609094.514676][8195:8200] CHIP:DMG: {
- [1657609094.514725][8195:8200] CHIP:DMG: Endpoint = 0x0,
- [1657609094.514775][8195:8200] CHIP:DMG: Cluster = 0x1f,
- [1657609094.514825][8195:8200] CHIP:DMG: Attribute = 0x0000_0001,
- [1657609094.514870][8195:8200] CHIP:DMG: }
- [1657609094.514920][8195:8200] CHIP:DMG:
- [1657609094.514963][8195:8200] CHIP:DMG: StatusIB =
- [1657609094.515008][8195:8200] CHIP:DMG: {
- [1657609094.515055][8195:8200] CHIP:DMG: status = 0x00 (SUCCESS),
- [1657609094.515100][8195:8200] CHIP:DMG: },
- [1657609094.515145][8195:8200] CHIP:DMG:
- [1657609094.515184][8195:8200] CHIP:DMG: },
- [1657609094.515236][8195:8200] CHIP:DMG:
- [1657609094.515271][8195:8200] CHIP:DMG: AttributeStatusIB =
- [1657609094.515310][8195:8200] CHIP:DMG: {
- [1657609094.515347][8195:8200] CHIP:DMG: AttributePathIB =
- [1657609094.515390][8195:8200] CHIP:DMG: {
- [1657609094.515437][8195:8200] CHIP:DMG: Endpoint = 0x0,
- [1657609094.515485][8195:8200] CHIP:DMG: Cluster = 0x1f,
- [1657609094.515533][8195:8200] CHIP:DMG: Attribute = 0x0000_0001,
- [1657609094.515582][8195:8200] CHIP:DMG: ListIndex = Null,
- [1657609094.515625][8195:8200] CHIP:DMG: }
- [1657609094.515672][8195:8200] CHIP:DMG:
+ ./chip-tool accesscontrol write extension '[{"data":"1518"}]' 1 0
+
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, contains the list of AccessControlExtensionStruct containing 1 element which Returns CONSTRAINT_ERROR (0x87)
+
+
[1657609094.515713][8195:8200] CHIP:DMG: StatusIB =
[1657609094.515754][8195:8200] CHIP:DMG: {
[1657609094.515797][8195:8200] CHIP:DMG: status = 0x87 (CONSTRAINT_ERROR),
@@ -520,40 +512,11 @@ tests:
:3701D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"3701D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]" 1 0
-
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element which Returns CONSTRAINT_ERROR (0x87)
-
- [1657609434.913859][8206:8211] CHIP:DMG: WriteResponseMessage =
- [1657609434.913892][8206:8211] CHIP:DMG: {
- [1657609434.913920][8206:8211] CHIP:DMG: AttributeStatusIBs =
- [1657609434.913959][8206:8211] CHIP:DMG: [
- [1657609434.913991][8206:8211] CHIP:DMG: AttributeStatusIB =
- [1657609434.914030][8206:8211] CHIP:DMG: {
- [1657609434.914066][8206:8211] CHIP:DMG: AttributePathIB =
- [1657609434.914111][8206:8211] CHIP:DMG: {
- [1657609434.914151][8206:8211] CHIP:DMG: Endpoint = 0x0,
- [1657609434.914192][8206:8211] CHIP:DMG: Cluster = 0x1f,
- [1657609434.914233][8206:8211] CHIP:DMG: Attribute = 0x0000_0001,
- [1657609434.914271][8206:8211] CHIP:DMG: }
- [1657609434.914314][8206:8211] CHIP:DMG:
- [1657609434.914351][8206:8211] CHIP:DMG: StatusIB =
- [1657609434.914427][8206:8211] CHIP:DMG: {
- [1657609434.914466][8206:8211] CHIP:DMG: status = 0x00 (SUCCESS),
- [1657609434.914503][8206:8211] CHIP:DMG: },
- [1657609434.914540][8206:8211] CHIP:DMG:
- [1657609434.914575][8206:8211] CHIP:DMG: },
- [1657609434.914618][8206:8211] CHIP:DMG:
- [1657609434.914648][8206:8211] CHIP:DMG: AttributeStatusIB =
- [1657609434.914680][8206:8211] CHIP:DMG: {
- [1657609434.914711][8206:8211] CHIP:DMG: AttributePathIB =
- [1657609434.914747][8206:8211] CHIP:DMG: {
- [1657609434.914784][8206:8211] CHIP:DMG: Endpoint = 0x0,
- [1657609434.914828][8206:8211] CHIP:DMG: Cluster = 0x1f,
- [1657609434.914872][8206:8211] CHIP:DMG: Attribute = 0x0000_0001,
- [1657609434.914911][8206:8211] CHIP:DMG: ListIndex = Null,
- [1657609434.914952][8206:8211] CHIP:DMG: }
- [1657609434.914994][8206:8211] CHIP:DMG:
+ ./chip-tool accesscontrol write extension '[{"data":"3701D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]' 1 0
+
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element which Returns CONSTRAINT_ERROR (0x87)
+
+
[1657609434.915033][8206:8211] CHIP:DMG: StatusIB =
[1657609434.915073][8206:8211] CHIP:DMG: {
[1657609434.915115][8206:8211] CHIP:DMG: status = 0x87 (CONSTRAINT_ERROR),
@@ -576,9 +539,9 @@ tests:
:17103D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"17103D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]" 1 0
+ ./chip-tool accesscontrol write extension '[{"data":"17103D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]' 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element Returns CONSTRAINT_ERROR (0x87)
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element Returns CONSTRAINT_ERROR (0x87)
[1657609579.494576][8215:8220] CHIP:DMG:
@@ -604,9 +567,9 @@ tests:
17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018FF"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018FF"}]" 1 0
+ ./chip-tool accesscontrol write extension '[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018FF"}]' 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element Returns CONSTRAINT_ERROR (0x87)
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element Returns CONSTRAINT_ERROR (0x87)
[1657609625.259137][8223:8228] CHIP:DMG:
[1657609625.259168][8223:8228] CHIP:DMG: StatusIB =
@@ -631,21 +594,10 @@ tests:
:17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700"}]" 1 0
-
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element, Returns CONSTRAINT_ERROR (0x87)
-
- [1657609654.299183][8229:8234] CHIP:DMG:
- [1657609654.299220][8229:8234] CHIP:DMG: AttributeStatusIB =
- [1657609654.299259][8229:8234] CHIP:DMG: {
- [1657609654.299296][8229:8234] CHIP:DMG: AttributePathIB =
- [1657609654.299340][8229:8234] CHIP:DMG: {
- [1657609654.299385][8229:8234] CHIP:DMG: Endpoint = 0x0,
- [1657609654.299434][8229:8234] CHIP:DMG: Cluster = 0x1f,
- [1657609654.299483][8229:8234] CHIP:DMG: Attribute = 0x0000_0001,
- [1657609654.299531][8229:8234] CHIP:DMG: ListIndex = Null,
- [1657609654.299576][8229:8234] CHIP:DMG: }
- [1657609654.299625][8229:8234] CHIP:DMG:
+ ./chip-tool accesscontrol write extension '[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700"}]' 1 0
+
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element, Returns CONSTRAINT_ERROR (0x87)
+
[1657609654.299668][8229:8234] CHIP:DMG: StatusIB =
[1657609654.299712][8229:8234] CHIP:DMG: {
[1657609654.299758][8229:8234] CHIP:DMG: status = 0x87 (CONSTRAINT_ERROR),
@@ -667,9 +619,9 @@ tests:
1.struct Data field: D_BAD_NOnE"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":""}]" 1 0
+ ./chip-tool accesscontrol write extension '[{"data":""}]' 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element, Returns CONSTRAINT_ERROR (0x87)
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element, Returns CONSTRAINT_ERROR (0x87)
[1657609694.046042][8236:8241] CHIP:DMG:
@@ -697,9 +649,9 @@ tests:
17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[{"data":"1718"},{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]" 1 0
+ ./chip-tool accesscontrol write extension '[{"data":"1718"},{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]' 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 2 elements and CONSTRAINT_ERROR (0x87) for second element path
+ On TH1(Chiptool) , Verify Successfully AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 2 elements and CONSTRAINT_ERROR (0x87) for second element path
[1657279798.809590][9208:9213] CHIP:DMG:
[1657279798.809629][9208:9213] CHIP:DMG: StatusIB =
@@ -724,7 +676,7 @@ tests:
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool) , Verify Successfully the list of AccessControlExtensionStruct containing 1 element.
+ On TH1(Chiptool) , Verify Successfully the list of AccessControlExtensionStruct containing 1 element.
1657279968.695899][9221:9226] CHIP:DMG: ReportDataMessage =
@@ -793,9 +745,9 @@ tests:
value is an empty list"
PICS: ACL.S.A0001
verification: |
- ./chip-tool accesscontrol write extension "[]" 1 0
+ ./chip-tool accesscontrol write extension '[]' 1 0
- On TH(Chiptool) , Verify Successfully,AccessControl cluster Extension attribute, value is an empty list
+ On TH1(Chiptool) , Verify Successfully,AccessControl cluster Extension attribute, value is an empty list
7625][1521:1526] CHIP:DMG: AttributeStatusIB =
[1657692723.227673][1521:1526] CHIP:DMG: {
@@ -829,7 +781,7 @@ tests:
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, value is an empty list
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, value is an empty list
[1660223145.427219][80697:80702] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0001 DataVersion: 2385810240
[1660223145.427227][80697:80702] CHIP:TOO: Extension: 0 entries
diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_4.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_4.yaml
index bcb20c10ac2f43..03dba82825bc9b 100644
--- a/src/app/tests/suites/certification/Test_TC_ACL_2_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACL_2_4.yaml
@@ -26,7 +26,11 @@ config:
tests:
- label: "TH1 commissions DUT using admin node ID N1"
verification: |
- verification step to be updated.
+ DUT
+ sudo ./chip-all-clusters-app
+
+ TH1
+ ./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3841
disabled: true
- label:
@@ -36,7 +40,7 @@ tests:
./chip-tool operationalcredentials read current-fabric-index 1 0
- On TH(Chiptool), verify to CurrentFabricIndex attribute of operationalCredential cluster as 1
+ On TH1(Chiptool), verify to CurrentFabricIndex attribute of operationalCredential cluster as 1
[1656652012.060584][2763:2768] CHIP:DMG:
[1656652012.060609][2763:2768] CHIP:DMG: SuppressResponse = true,
@@ -54,7 +58,7 @@ tests:
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 1 element
+ On TH1(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 1 element
[1656652338.381499][2784:2789] CHIP:DMG: },
[1656652338.381552][2784:2789] CHIP:DMG:
@@ -88,10 +92,10 @@ tests:
888] Targets field: [{Cluster: 55}, {Endpoint: 66}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 1, "authMode": 3, "subjects": [111,222,333,444], "targets": [{"cluster":11 , "endpoint":22, "deviceType": null}]},
- {"fabricIndex": 1, "privilege": 3, "authMode": 3, "subjects": [555,666,777,888], "targets": [{"cluster": 55, "endpoint": 66, "deviceType":null }]}]" 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 1, "authMode": 3, "subjects": [111,222,333,444], "targets": [{"cluster":11 , "endpoint":22, "deviceType": null}]},
+ { "privilege": 3, "authMode": 3, "subjects": [555,666,777,888], "targets": [{"cluster": 55, "endpoint": 66, "deviceType":null }]}]' 1 0
+ On TH1(Chiptool), Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
[1658323877.660699][2502:2507] CHIP:DMG: WriteClient moving to [ResponseRe]
[1658323877.660829][2502:2507] CHIP:DMG: WriteResponseMessage =
[1658323877.660890][2502:2507] CHIP:DMG: {
@@ -176,7 +180,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
+ On TH1(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
InteractionModelRevision = 1
[1658229676.712083][4872:4878] CHIP:DMG: }
[1658229676.712624][4872:4878] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0000 DataVersion: 1307037423
@@ -235,9 +239,9 @@ tests:
666, 555] Targets field: [{Cluster: 88}, {Endpoint: 77}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 4, "authMode": 2, "subjects": [444,333,222,111], "targets": [{"cluster":44 , "endpoint":33, "deviceType":null}]},{"fabricIndex": 1, "privilege":4 , "authMode":3, "subjects": [888,777,666,555], "targets": [{"cluster": 88, "endpoint": 77, "deviceType":null}]}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 4, "authMode": 2, "subjects": [444,333,222,111], "targets": [{"cluster":44 , "endpoint":33, "deviceType":null}]},{ "privilege":4 , "authMode":3, "subjects": [888,777,666,555], "targets": [{"cluster": 88, "endpoint": 77, "deviceType":null}]}]' 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
+ On TH1(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
1658226959.554674][4736:4741] CHIP:DMG: AttributeStatusIBs =
[1658226959.554706][4736:4741] CHIP:DMG: [
[1658226959.554732][4736:4741] CHIP:DMG: AttributeStatusIB =
@@ -313,7 +317,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
+ On TH1(Chiptool), Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
9800.959293][4892:4897] CHIP:DMG:
[1658229800.959325][4892:4897] CHIP:DMG: ],
[1658229800.959399][4892:4897] CHIP:DMG:
@@ -377,8 +381,8 @@ tests:
Endpoint: 66}, {Cluster: 77, DeviceType: 88}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 1, "authMode": 2, "subjects": [111,222,333,444], "targets":[{ "cluster": 11, "endpoint": 22, "deviceType": null },{ "cluster": 33, "endpoint": null, "deviceType": 44 }]}, {"fabricIndex": 1, "privilege": 3, "authMode": 3, "subjects": [555,666,777,888], "targets":[{ "cluster": 55, "endpoint": 66, "deviceType": null },{ "cluster": 77, "endpoint": null, "deviceType": 88 }]}]" 1 0
- On TH(Chiptool) , Verify the Successfully to acl attribute with a value is list of AccessControlEntryStruct containing 3 elements
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 1, "authMode": 2, "subjects": [111,222,333,444], "targets":[{ "cluster": 11, "endpoint": 22, "deviceType": null },{ "cluster": 33, "endpoint": null, "deviceType": 44 }]}, { "privilege": 3, "authMode": 3, "subjects": [555,666,777,888], "targets":[{ "cluster": 55, "endpoint": 66, "deviceType": null },{ "cluster": 77, "endpoint": null, "deviceType": 88 }]}]' 1 0
+ On TH1(Chiptool), Verify the Successfully to acl attribute with a value is list of AccessControlEntryStruct containing 3 elements
1657276276.708941][2297:2302] CHIP:DMG: WriteClient moving to [ResponseRe]
[1657276276.709021][2297:2302] CHIP:DMG: WriteResponseMessage =
[1657276276.709058][2297:2302] CHIP:DMG: {
@@ -461,7 +465,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
+ On TH1(Chiptool), Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
[1657278053.764924][2231:2236] CHIP:DMG: SuppressResponse = true,
[1657278053.764958][2231:2236] CHIP:DMG: InteractionModelRevision = 1
@@ -535,8 +539,8 @@ tests:
DeviceType: 88}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 1, "authMode": 2, "subjects": [], "targets":[{ "cluster": 11, "endpoint": 22, "deviceType": null },{ "cluster": 33, "endpoint": null, "deviceType": 44 }]}, {"fabricIndex": 1, "privilege": 3, "authMode": 3, "subjects": [], "targets":[{ "cluster": 55, "endpoint": 66, "deviceType": null },{ "cluster": 77, "endpoint": null, "deviceType": 88 }]}]" 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 1, "authMode": 2, "subjects": [], "targets":[{ "cluster": 11, "endpoint": 22, "deviceType": null },{ "cluster": 33, "endpoint": null, "deviceType": 44 }]}, { "privilege": 3, "authMode": 3, "subjects": [], "targets":[{ "cluster": 55, "endpoint": 66, "deviceType": null },{ "cluster": 77, "endpoint": null, "deviceType": 88 }]}]' 1 0
+ On TH1(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
[1657541707.114348][3004:3009] CHIP:DMG: {
[1657541707.114393][3004:3009] CHIP:DMG: AttributeStatusIBs =
@@ -618,7 +622,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
+ On TH1(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements
[1657278352.938811][2258:2263] CHIP:DMG:
[1657278352.938840][2258:2263] CHIP:DMG: },
@@ -686,10 +690,10 @@ tests:
Group (3) Subjects field: [555, 666, 777, 888] Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 1, "authMode": 2, "subjects": [111, 222, 333, 444], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 3, "subjects": [555, 666, 777, 888], "targets": null}]" 1 0
- On TH(Chiptool) , Verify Successfully to acl attribute value is list of AccessControlEntryStruct containing 3 elements as Target Null.
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 1, "authMode": 2, "subjects": [111, 222, 333, 444], "targets": null},
+ { "privilege": 3, "authMode": 3, "subjects": [555, 666, 777, 888], "targets": null}]' 1 0
+ On TH1(Chiptool) , Verify Successfully to acl attribute value is list of AccessControlEntryStruct containing 3 elements as Target Null.
[1657542060.230268][3398:3403] CHIP:DMG: {
[1657542060.230322][3398:3403] CHIP:DMG: AttributeStatusIBs =
@@ -771,7 +775,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements as Target Null
+ On TH1(Chiptool) , Verify Successfully AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 3 elements as Target Null
[1656656511.643560][2994:2999] CHIP:DMG:
[1656656511.643593][2994:2999] CHIP:DMG: SuppressResponse = true,
[1656656511.643626][2994:2999] CHIP:DMG: InteractionModelRevision = 1
@@ -819,10 +823,10 @@ tests:
AuthMode field: Group (3) Subjects field: null Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 3, "subjects": null, "targets": null}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 3, "authMode": 3, "subjects": null, "targets": null}]' 1 0
- On TH(Chiptool) , Verify Successfully to acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as Target Null
+ On TH1(Chiptool) , Verify Successfully to acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as Target Null
[1656507141.628453][3224:3229] CHIP:DMG: WriteResponseMessage =
[1656507141.628515][3224:3229] CHIP:DMG: {
@@ -866,7 +870,7 @@ tests:
[1656507141.631353][3224:3229] CHIP:DMG: AttributePathIB =
[1656507141.631426][3224:3229] CHIP:DMG: {
[1656507141.631501][3224:3229] CHIP:DMG: Endpoint = 0x0,
- [1656507141.631584][3224:3229] CHIP:DMG: Cluster = 0x1f,
+ [1656507141.631584][3224:3229] CHIP:DMG: Cluster = 0x1f,
[1656507141.631664][3224:3229] CHIP:DMG: Attribute = 0x0000_0000,
[1656507141.631742][3224:3229] CHIP:DMG: ListIndex = Null,
[1656507141.631824][3224:3229] CHIP:DMG: }
@@ -890,7 +894,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully that acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as Target Null
+ On TH1(Chiptool) , Verify Successfully that acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as Target Null
[1656507318.740283][3241:3246] CHIP:DMG: ],
[1656507318.740346][3241:3246] CHIP:DMG:
@@ -925,9 +929,9 @@ tests:
(2) AuthMode field: CASE (2) Subjects field: null Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 2, "authMode": 2, "subjects": null, "targets": null}]" 1 0
- On TH(Chiptool) , Verify Successfully that acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as Subject and Target as null
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 2, "authMode": 2, "subjects": null, "targets": null}]' 1 0
+ On TH1(Chiptool), Verify Successfully that acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as Subject and Target as null
[1656507439.868495][3249:3254] CHIP:DMG: WriteClient moving to [ResponseRe]
[1656507439.868612][3249:3254] CHIP:DMG: WriteResponseMessage =
[1656507439.868671][3249:3254] CHIP:DMG: {
@@ -994,7 +998,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully acl attribute value is list of AccessControlEntryStruct containing 2 elements as Subject and Target as null
+ On TH1(Chiptool) , Verify Successfully acl attribute value is list of AccessControlEntryStruct containing 2 elements as Subject and Target as null
[1656507517.730614][3261:3266] CHIP:DMG:
[1656507517.730654][3261:3266] CHIP:DMG: SuppressResponse = true,
@@ -1027,7 +1031,7 @@ tests:
verification: |
./chip-tool accesscontrol read subjects-per-access-control-entry 1 0
- On TH(Chiptool), verify with value 4 or greater as subjects-per-access-control-entry , value is stored as MAXSUBJECTS
+ On TH1(Chiptool), verify with value 4 or greater as subjects-per-access-control-entry , value is stored as MAXSUBJECTS
[1656657490.002372][3078:3083] CHIP:DMG:
[1656657490.002408][3078:3083] CHIP:DMG: ],
@@ -1050,8 +1054,8 @@ tests:
node IDs (stored as SUBJECTS) Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects":[33,44,55,66] , "targets": null}]" 1 0
- On TH(Chiptool) , Verify Successfully acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as Subject as SUBJECTS and Target as null
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects":[33,44,55,66] , "targets": null}]' 1 0
+ On TH1(Chiptool), Verify Successfully acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as Subject as SUBJECTS and Target as null
@@ -1120,7 +1124,7 @@ tests:
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as SUBJECTS and Target as null
+ On TH1(Chiptool) , Verify Successfully acl attribute with a value is list of AccessControlEntryStruct containing 2 elements as SUBJECTS and Target as null
[1656928460.992030][4255:4260] CHIP:DMG: ],
[1656928460.992075][4255:4260] CHIP:DMG:
[1656928460.992101][4255:4260] CHIP:DMG: SuppressResponse = true,
@@ -1160,10 +1164,10 @@ tests:
Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects":[65520,65521,65522,65523] , "targets": null}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 3, "authMode": 2, "subjects":[65520,65521,65522,65523] , "targets": null}]' 1 0
- On TH(Chiptool) , Verify Successfully acl attribute value is list of AccessControlEntryStruct containing 2 elements , Subjects as CAT Values and Target as null
+ On TH1(Chiptool) , Verify Successfully acl attribute value is list of AccessControlEntryStruct containing 2 elements , Subjects as CAT Values and Target as null
[1656509348.174135][3403:3408] CHIP:DMG: WriteClient moving to [ResponseRe]
[1656509348.174227][3403:3408] CHIP:DMG: WriteResponseMessage =
[1656509348.174272][3403:3408] CHIP:DMG: {
@@ -1232,7 +1236,7 @@ tests:
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully that acl attribute with a value is list of AccessControlEntryStruct containing 2 elements , Subjects as CAT Values and Target as null
+ On TH1(Chiptool) , Verify Successfully that acl attribute with a value is list of AccessControlEntryStruct containing 2 elements , Subjects as CAT Values and Target as null
[1656509471.738046][3416:3421] CHIP:DMG:
[1656509471.738082][3416:3421] CHIP:DMG: SuppressResponse = true,
[1656509471.738120][3416:3421] CHIP:DMG: InteractionModelRevision = 1
@@ -1267,7 +1271,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read targets-per-access-control-entry 1 0
- On TH(Chiptool), verify with value 3 or greater as Targets-per-access-control-entry ,value is stored as MAXTARGETS
+ On TH1(Chiptool), verify with value 3 or greater as Targets-per-access-control-entry ,value is stored as MAXTARGETS
[1656509737.166763][3434:3439] CHIP:DMG:
[1656509737.166786][3434:3439] CHIP:DMG: ],
[1656509737.166816][3434:3439] CHIP:DMG:
@@ -1289,9 +1293,9 @@ tests:
MAXTARGETS targets {Cluster: random} (stored as TARGETS)"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": 40, "endpoint": null, "deviceType": null },{ "cluster": 28, "endpoint": null, "deviceType": null }]}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": 40, "endpoint": null, "deviceType": null },{ "cluster": 28, "endpoint": null, "deviceType": null }]}]' 1 0
- On TH(Chiptool) , Verify Successfully acl attribute with value is list of AccessControlEntryStruct containing 2 elements , Subjects as null and and Target as null
+ On TH1(Chiptool) , Verify Successfully acl attribute with value is list of AccessControlEntryStruct containing 2 elements , Subjects as null and and Target as null
[1657542520.140869][3499:3504] CHIP:DMG: {
[1657542520.140922][3499:3504] CHIP:DMG: AttributeStatusIBs =
@@ -1357,7 +1361,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully that acl attribute with value is list of AccessControlEntryStruct containing 2 elements , Subjects as null and and Target as TARGETS
+ On TH1(Chiptool) , Verify Successfully that acl attribute with value is list of AccessControlEntryStruct containing 2 elements , Subjects as null and and Target as TARGETS
[1657542633.704684][3522:3527] CHIP:DMG: }
[1657542633.705098][3522:3527] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0000 DataVersion: 3549245792
@@ -1395,7 +1399,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read access-control-entries-per-fabric 1 0
- On TH(Chiptool), verify with value 3 or greater as AccessControlEntriesPerFabric.
+ On TH1(Chiptool), verify with value 3 or greater as AccessControlEntriesPerFabric.
[1656594850.964909][4043:4048] CHIP:DMG: AttributeReportIBs =
[1656594850.964954][4043:4048] CHIP:DMG: [
@@ -1436,11 +1440,11 @@ tests:
field: null subsequent elements same as second element"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": null, "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [], "targets":null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [], "targets":null}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": null, "targets": null},
+ { "privilege": 3, "authMode": 2, "subjects": [], "targets":null},
+ { "privilege": 3, "authMode": 2, "subjects": [], "targets":null}]' 1 0
- On TH(Chiptool) , Verify Successfully that acl attribute value is list of AccessControlEntryStruct containing MAXENTRIES elements
+ On TH1(Chiptool) , Verify Successfully that acl attribute value is list of AccessControlEntryStruct containing MAXENTRIES elements
[1657617362.022161][8840:8845] CHIP:DMG: WriteResponseMessage =
[1657617362.022190][8840:8845] CHIP:DMG: {
@@ -1524,7 +1528,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully that acl attribute with value is list of AccessControlEntryStruct containing MAXENTRIES elements
+ On TH1(Chiptool) , Verify Successfully that acl attribute with value is list of AccessControlEntryStruct containing MAXENTRIES elements
[1657543165.385093][3592:3597] CHIP:DMG: }
[1657543165.385508][3592:3597] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0000 DataVersion: 3549245812
[1657543165.385586][3592:3597] CHIP:TOO: ACL: 3 entries
@@ -1559,10 +1563,10 @@ tests:
AuthMode field: PASE (1) Subjects field: null Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 1, "subjects": [], "targets":null}]" 1 0
+ ./chip-tool accesscontrol write acl '[{"privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 3, "authMode": 1, "subjects": [], "targets":null}]' 1 0
- On TH(Chiptool) , Verify Successfully acl attribute value is list of AccessControlEntryStruct containing 2 elements and Returns CONSTRAINT_ERROR (0x87) for second element path
+ On TH1(Chiptool) , Verify Successfully acl attribute value is list of AccessControlEntryStruct containing 2 elements and Returns CONSTRAINT_ERROR (0x87) for second element path
[1658475475.310438][3113:3119] CHIP:DMG: {
[1658475475.310466][3113:3119] CHIP:DMG: AttributeStatusIBs =
[1658475475.310500][3113:3119] CHIP:DMG: [
@@ -1676,7 +1680,7 @@ tests:
PICS: ACL.S.A0000
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool) , Verify Successfully that acl attribute with value is list of AccessControlEntryStruct containing 1 element
+ On TH1(Chiptool) , Verify Successfully that acl attribute with value is list of AccessControlEntryStruct containing 1 element
[1656914601.250655][3267:3272] CHIP:DMG: ],
[1656914601.250709][3267:3272] CHIP:DMG:
[1656914601.250746][3267:3272] CHIP:DMG: SuppressResponse = true,
@@ -1704,10 +1708,10 @@ tests:
(5) AuthMode field: Group (3) Subjects field: null Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 5, "authMode": 3, "subjects": [], "targets":null}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 5, "authMode": 3, "subjects": [], "targets":null}]' 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements as Subject null and Target null for second element path Returns CONSTRAINT_ERROR (0x87)
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements as Subject null and Target null for second element path Returns CONSTRAINT_ERROR (0x87)
[1658475916.602576][3151:3156] CHIP:DMG: WriteResponseMessage =
[1658475916.602649][3151:3156] CHIP:DMG: {
[1658475916.602684][3151:3156] CHIP:DMG: AttributeStatusIBs =
@@ -1780,12 +1784,12 @@ tests:
field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 6, "authMode": 2, "subjects": null, "targets":null}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 6, "authMode": 2, "subjects": null, "targets":null}]' 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Privilege for second element path Returns CONSTRAINT_ERROR (0x87)
[1658476127.774933][3171:3176] CHIP:EM: Removed CHIP MessageCounter:240294498 from RetransTable on exchange 6954i
@@ -1861,10 +1865,10 @@ tests:
field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 4, "subjects": [], "targets":null}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 3, "authMode": 4, "subjects": [], "targets":null}]' 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Authmode for second element path Returns CONSTRAINT_ERROR (0x87)
[1658476412.664216][3192:3197] CHIP:DMG: WriteResponseMessage =
[1658476412.664247][3192:3197] CHIP:DMG: {
@@ -1937,9 +1941,9 @@ tests:
AuthMode field: CASE (2) Subjects field: [0] Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [0], "targets":null}]" 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 3, "authMode": 2, "subjects": [0], "targets":null}]' 1 0
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Subject Field for second element path Returns CONSTRAINT_ERROR (0x87)
[1658476622.665126][3229:3234] CHIP:DMG: WriteClient moving to [ResponseRe]
[1658476622.665195][3229:3234] CHIP:DMG: WriteResponseMessage =
@@ -2012,11 +2016,11 @@ tests:
field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [18446744073709551615], "targets":null}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 3, "authMode": 2, "subjects": [18446744073709551615], "targets":null}]' 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Subject Field for second element path Returns CONSTRAINT_ERROR (0x87)
1658476861.356730][3250:3255] CHIP:DMG: {
[1658476861.356767][3250:3255] CHIP:DMG: AttributeStatusIBs =
@@ -2088,8 +2092,8 @@ tests:
Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [18446744060824649728], "targets": null}]" 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects": [18446744060824649728], "targets": null}]' 1 0
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Subject Field for second element path Returns CONSTRAINT_ERROR (0x87)
8477037.056167][3264:3269] CHIP:DMG: {
[1658477037.056200][3264:3269] CHIP:DMG: AttributePathIB =
@@ -2158,10 +2162,10 @@ tests:
field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [18446744073709486080], "targets":null}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 3, "authMode": 2, "subjects": [18446744073709486080], "targets":null}]' 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Subject Field for second element path Returns CONSTRAINT_ERROR (0x87)
658477229.869987][3634:3640] CHIP:EM: Removed CHIP MessageCounter:189477251 from RetransTable on exchange 22058i
[1658477229.870031][3634:3640] CHIP:DMG: WriteClient moving to [ResponseRe]
@@ -2232,9 +2236,9 @@ tests:
AuthMode field: CASE (2) Subjects field: null Targets field: [{}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": null, "endpoint": null, "deviceType": null }]}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": null, "endpoint": null, "deviceType": null }]}]' 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Target Field for second element path Returns CONSTRAINT_ERROR (0x87)
1658477371.966712][3679:3684] CHIP:EM: Removed CHIP MessageCounter:138419251 from RetransTable on exchange 40076i
[1658477371.966756][3679:3684] CHIP:DMG: WriteClient moving to [ResponseRe]
@@ -2308,9 +2312,9 @@ tests:
[{Cluster: 0xFFFFFFFF}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": 4294967295, "endpoint": null, "deviceType": null }]}]" 1 0
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": 4294967295, "endpoint": null, "deviceType": null }]}]' 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Target Field for second element path Returns CONSTRAINT_ERROR (0x87)
[1657617852.177018][8933:8938] CHIP:DMG: WriteResponseMessage =
[1657617852.177055][8933:8938] CHIP:DMG: {
@@ -2383,8 +2387,8 @@ tests:
null Targets field: [{Endpoint: 65535}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": null, "endpoint": 65535, "deviceType": null }]}]" 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": null, "endpoint": 65535, "deviceType": null }]}]' 1 0
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Target field for second element path Returns CONSTRAINT_ERROR (0x87)
[1657617920.044059][8948:8953] CHIP:DMG: {
[1657617920.044085][8948:8953] CHIP:DMG: AttributeStatusIBs =
@@ -2456,8 +2460,8 @@ tests:
[{DeviceType: 0xFFFFFFFF}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": null, "endpoint": null, "deviceType": 4294967295 }]}]" 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": null, "endpoint": null, "deviceType": 4294967295 }]}]' 1 0
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Target field for second element path Returns CONSTRAINT_ERROR (0x87)
@@ -2532,8 +2536,8 @@ tests:
[{Endpoint: 22, DeviceType: 33}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": null, "endpoint": 22, "deviceType": 33 }]}]" 1 0
- On TH(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": null, "endpoint": 22, "deviceType": 33 }]}]' 1 0
+ On TH1(Chiptool) , Verify Successfully to AccessControlEntryStruct containing 2 elements using
Invalid Target field for second element path Returns CONSTRAINT_ERROR (0x87)
[1658477583.616961][3701:3706] CHIP:DMG: WriteClient moving to [ResponseRe]
[1658477583.617072][3701:3706] CHIP:DMG: WriteResponseMessage =
@@ -2608,8 +2612,8 @@ tests:
[{Cluster: 11, Endpoint: 22, DeviceType: 33}]"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": 11, "endpoint": 22, "deviceType": 33 }]}]" 1 0
- On TH(Chiptool) , Verify Successfully AccessControlEntryStruct containing 2 elements using
+ ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": 11, "endpoint": 22, "deviceType": 33 }]}]' 1 0
+ On TH1(Chiptool) , Verify Successfully AccessControlEntryStruct containing 2 elements using
Invalid Target field for second element path Returns CONSTRAINT_ERROR (0x87)
[1658477662.415412][3710:3715] CHIP:EM: Removed CHIP MessageCounter:35384027 from RetransTable on exchange 6953i
[1658477662.415452][3710:3715] CHIP:DMG: WriteClient moving to [ResponseRe]
@@ -2682,47 +2686,35 @@ tests:
is an empty list"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [], "targets": null}]" 1 0
- On TH(Chiptool) , Verify Successfully to AccessControl cluster ACL attribute value is an empty list since all ACL entries removed.
- [1657618011.091198][8968:8973] CHIP:DMG: {
- [1657618011.091228][8968:8973] CHIP:DMG: AttributeStatusIBs =
- [1657618011.091272][8968:8973] CHIP:DMG: [
- [1657618011.091306][8968:8973] CHIP:DMG: AttributeStatusIB =
- [1657618011.091348][8968:8973] CHIP:DMG: {
- [1657618011.091383][8968:8973] CHIP:DMG: AttributePathIB =
- [1657618011.091424][8968:8973] CHIP:DMG: {
- [1657618011.091473][8968:8973] CHIP:DMG: Endpoint = 0x0,
- [1657618011.091519][8968:8973] CHIP:DMG: Cluster = 0x1f,
- [1657618011.091567][8968:8973] CHIP:DMG: Attribute = 0x0000_0000,
- [1657618011.091612][8968:8973] CHIP:DMG: }
- [1657618011.091663][8968:8973] CHIP:DMG:
- [1657618011.091705][8968:8973] CHIP:DMG: StatusIB =
- [1657618011.091748][8968:8973] CHIP:DMG: {
- [1657618011.091790][8968:8973] CHIP:DMG: status = 0x00 (SUCCESS),
- [1657618011.091832][8968:8973] CHIP:DMG: },
- [1657618011.091878][8968:8973] CHIP:DMG:
- [1657618011.091915][8968:8973] CHIP:DMG: },
- [1657618011.091961][8968:8973] CHIP:DMG:
- [1657618011.091994][8968:8973] CHIP:DMG: AttributeStatusIB =
- [1657618011.092029][8968:8973] CHIP:DMG: {
- [1657618011.092063][8968:8973] CHIP:DMG: AttributePathIB =
- [1657618011.092103][8968:8973] CHIP:DMG: {
- [1657618011.092149][8968:8973] CHIP:DMG: Endpoint = 0x0,
- [1657618011.092194][8968:8973] CHIP:DMG: Cluster = 0x1f,
- [1657618011.092239][8968:8973] CHIP:DMG: Attribute = 0x0000_0000,
- [1657618011.092282][8968:8973] CHIP:DMG: ListIndex = Null,
- [1657618011.092328][8968:8973] CHIP:DMG: }
- [1657618011.092372][8968:8973] CHIP:DMG:
- [1657618011.092416][8968:8973] CHIP:DMG: StatusIB =
- [1657618011.092460][8968:8973] CHIP:DMG: {
- [1657618011.092503][8968:8973] CHIP:DMG: status = 0x00 (SUCCESS),
- [1657618011.092547][8968:8973] CHIP:DMG: },
- [1657618011.092586][8968:8973] CHIP:DMG:
- [1657618011.092623][8968:8973] CHIP:DMG: },
- [1657618011.092661][8968:8973] CHIP:DMG:
- [1657618011.092693][8968:8973] CHIP:DMG: ],
- [1657618011.092736][8968:8973] CHIP:DMG:
- [1657618011.092768][8968:8973] CHIP:DMG: InteractionModelRevision = 1
- [1657618011.092798][8968:8973] CHIP:DMG: }
- [1657618011.092928][8968:8973] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ ./chip-tool accesscontrol write acl '[]' 1 0
+
+ On TH1(Chiptool) , Verify Successfully to AccessControl cluster ACL attribute value is an empty list since all ACL entries removed.
+ RetransTable on exchange 43997i
+ [1660632377.411062][3241:3246] CHIP:DMG: WriteClient moving to [ResponseRe]
+ [1660632377.411111][3241:3246] CHIP:DMG: WriteResponseMessage =
+ [1660632377.411137][3241:3246] CHIP:DMG: {
+ [1660632377.411159][3241:3246] CHIP:DMG: AttributeStatusIBs =
+ [1660632377.411190][3241:3246] CHIP:DMG: [
+ [1660632377.411215][3241:3246] CHIP:DMG: AttributeStatusIB =
+ [1660632377.411248][3241:3246] CHIP:DMG: {
+ [1660632377.411277][3241:3246] CHIP:DMG: AttributePathIB =
+ [1660632377.411313][3241:3246] CHIP:DMG: {
+ [1660632377.411350][3241:3246] CHIP:DMG: Endpoint = 0x0,
+ [1660632377.411388][3241:3246] CHIP:DMG: Cluster = 0x1f,
+ [1660632377.411423][3241:3246] CHIP:DMG: Attribute = 0x0000_0000,
+ [1660632377.411456][3241:3246] CHIP:DMG: }
+ [1660632377.411496][3241:3246] CHIP:DMG:
+ [1660632377.411528][3241:3246] CHIP:DMG: StatusIB =
+ [1660632377.411563][3241:3246] CHIP:DMG: {
+ [1660632377.411596][3241:3246] CHIP:DMG: status = 0x00 (SUCCESS),
+ [1660632377.411628][3241:3246] CHIP:DMG: },
+ [1660632377.411687][3241:3246] CHIP:DMG:
+ [1660632377.411717][3241:3246] CHIP:DMG: },
+ [1660632377.411748][3241:3246] CHIP:DMG:
+ [1660632377.411775][3241:3246] CHIP:DMG: ],
+ [1660632377.411804][3241:3246] CHIP:DMG:
+ [1660632377.411828][3241:3246] CHIP:DMG: InteractionModelRevision = 1
+ [1660632377.411851][3241:3246] CHIP:DMG: }
+ [1660632377.411922][3241:3246] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ [1660632377.411986][3241:3246] CHIP:EM: Sending Standalone Ack for MessageCounter:259751171 on exchange 43997i
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_5.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_5.yaml
index 91a400018d4ce2..5bef11cd027112 100644
--- a/src/app/tests/suites/certification/Test_TC_ACL_2_5.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACL_2_5.yaml
@@ -24,9 +24,30 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ 1.N1 is the node ID of TH1
+
+ 2.D_OK_EMPTY:"1718" which is an octstr of length 2 containing valid TLV:
+
+ - top-level anonymous list (empty)
+
+ 3.D_OK_SINGLE:"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018" which is an octstr of length 50-100 containing valid TLV:
+
+ - top-level anonymous list, containing - one element with profile-specific tag in fully-qualified form
+
+ 4 .D_BAD_LENGTH: "17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003248656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E2E0018" which is an octstr of length 129 containing valid TLV:
+
+ - top-level anonymous list, containing - one element with profile-specific tag in fully-qualified form
+ disabled: true
+
- label: "TH1 commissions DUT using admin node ID N1"
verification: |
- verification step to be updated.
+ DUT
+ sudo ./chip-all-clusters-app
+
+ TH1
+ ./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3841
disabled: true
- label:
@@ -35,29 +56,15 @@ tests:
verification: |
./chip-tool operationalcredentials read current-fabric-index 1 0
- On TH(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 1
-
- [1657283596.149202][2284:2289] CHIP:DMG: {
- [1657283596.149247][2284:2289] CHIP:DMG: Endpoint = 0x0,
- [1657283596.149293][2284:2289] CHIP:DMG: Cluster = 0x3e,
- [1657283596.149340][2284:2289] CHIP:DMG: Attribute = 0x0000_0005,
- [1657283596.149384][2284:2289] CHIP:DMG: }
- [1657283596.149430][2284:2289] CHIP:DMG:
- [1657283596.149479][2284:2289] CHIP:DMG: Data = 1,
- [1657283596.149520][2284:2289] CHIP:DMG: },
- [1657283596.149565][2284:2289] CHIP:DMG:
- [1657283596.149602][2284:2289] CHIP:DMG: },
- [1657283596.149643][2284:2289] CHIP:DMG:
- [1657283596.149674][2284:2289] CHIP:DMG: ],
- [1657283596.149714][2284:2289] CHIP:DMG:
+ On TH1(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 1
+
+
[1657283596.149747][2284:2289] CHIP:DMG: SuppressResponse = true,
[1657283596.149781][2284:2289] CHIP:DMG: InteractionModelRevision = 1
[1657283596.149813][2284:2289] CHIP:DMG: }
[1657283596.150010][2284:2289] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0005 DataVersion: 485742003
[1657283596.152307][2284:2289] CHIP:TOO: CurrentFabricIndex: 1
[1657283596.152411][2284:2289] CHIP:EM: Sending Standalone Ack for MessageCounter:50620552 on exchange 25474i
- [1657283596.152498][2284:2289] CHIP:IN: Prepared secure message 0xffffab7ed958 to 0x0000000000000001 (1) of type 0x10 and protocolId (0, 0) on exchange 25474i with MessageCounter:219007987.
- [1657283596.152548][2284
disabled: true
- label:
@@ -67,7 +74,7 @@ tests:
verification: |
./chip-tool accesscontrol read-event access-control-extension-changed 1 0
- On TH(Chiptool), Verify AccessControl cluster AccessControlExtensionChanged event value is an empty list
+ On TH1(Chiptool), Verify AccessControl cluster AccessControlExtensionChanged event value is an empty list
848.856174][2311:2316] CHIP:EM: Removed CHIP MessageCounter:265690133 from RetransTable on exchange 23190i
[1657283848.856239][2311:2316] CHIP:DMG: ReportDataMessage =
@@ -87,7 +94,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol write extension "[{"data":"1718"}]" 1 0
- On TH(Chiptool), Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element
+ On TH1(Chiptool), Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 1 element
217.510779][2371:2376] CHIP:DMG: AttributePathIB =
[1657284217.510818][2371:2376] CHIP:DMG: {
@@ -135,7 +142,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol read-event access-control-extension-changed 1 0
- On TH(Chiptool), Verify AccessControlExtensionChanged containing 1 element
+ On TH1(Chiptool), Verify AccessControlExtensionChanged containing 1 element
[1657618132.685459][8992:8998] CHIP:DMG:
[1657618132.685495][8992:8998] CHIP:DMG: SuppressResponse = true,
@@ -165,7 +172,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol write extension "[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]" 1 0
- On TH(Chiptool) , Verify Successfully extension attribute list containg one element
+ On TH1(Chiptool) , Verify Successfully extension attribute list containg one element
7284747.131523][2411:2416] CHIP:DMG: StatusIB =
[1657284747.131568][2411:2416] CHIP:DMG: {
[1657284747.131618][2411:2416] CHIP:DMG: status = 0x00 (SUCCESS),
@@ -205,7 +212,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol read-event access-control-extension-changed 1 0
- On TH(Chiptool) , Verify AccessControlExtensionChanged containing at least 2 new elements.
+ On TH1(Chiptool) , Verify AccessControlExtensionChanged containing at least 2 new elements.
[1657618237.140162][9007:9012] CHIP:DMG: }
@@ -262,37 +269,10 @@ tests:
verification: |
./chip-tool accesscontrol write extension "[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E6700D00000F1FF02003248656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E7420616761696E2E2E2E2E2E2E0018"}]" 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute value is list of AccessControlExtensionStruct containing 1 element Data, exceeds maximum length.
-
- 1657287642.551842][9699:9704] CHIP:DMG: WriteResponseMessage =
- [1657287642.551872][9699:9704] CHIP:DMG: {
- [1657287642.551901][9699:9704] CHIP:DMG: AttributeStatusIBs =
- [1657287642.551940][9699:9704] CHIP:DMG: [
- [1657287642.551973][9699:9704] CHIP:DMG: AttributeStatusIB =
- [1657287642.552012][9699:9704] CHIP:DMG: {
- [1657287642.552061][9699:9704] CHIP:DMG: AttributePathIB =
- [1657287642.552116][9699:9704] CHIP:DMG: {
- [1657287642.552156][9699:9704] CHIP:DMG: Endpoint = 0x0,
- [1657287642.552197][9699:9704] CHIP:DMG: Cluster = 0x1f,
- [1657287642.552290][9699:9704] CHIP:DMG: Attribute = 0x0000_0001,
- [1657287642.552331][9699:9704] CHIP:DMG: }
- [1657287642.552375][9699:9704] CHIP:DMG:
- [1657287642.552409][9699:9704] CHIP:DMG: StatusIB =
- [1657287642.552447][9699:9704] CHIP:DMG: {
- [1657287642.552488][9699:9704] CHIP:DMG: status = 0x00 (SUCCESS),
- [1657287642.552526][9699:9704] CHIP:DMG: },
- [1657287642.552564][9699:9704] CHIP:DMG:
- [1657287642.552598][9699:9704] CHIP:DMG: },
- [1657287642.552641][9699:9704] CHIP:DMG:
- [1657287642.552671][9699:9704] CHIP:DMG: AttributeStatusIB =
- [1657287642.552704][9699:9704] CHIP:DMG: {
- [1657287642.552741][9699:9704] CHIP:DMG: AttributePathIB =
- [1657287642.552797][9699:9704] CHIP:DMG: {
- [1657287642.552836][9699:9704] CHIP:DMG: Endpoint = 0x0,
- [1657287642.552882][9699:9704] CHIP:DMG: Cluster = 0x1f,
- [1657287642.552922][9699:9704] CHIP:DMG: Attribute = 0x0000_0001,
- [1657287642.552962][9699:9704] CHIP:DMG: ListIndex = Null,
- [1657287642.552999][9699:9704] CHIP:DMG: }
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute value is list of AccessControlExtensionStruct containing 1 element Data, exceeds maximum length.
+
+
+
[1657287642.553045][9699:9704] CHIP:DMG:
[1657287642.553083][9699:9704] CHIP:DMG: StatusIB =
[1657287642.553121][9699:9704] CHIP:DMG: {
@@ -317,7 +297,7 @@ tests:
verification: |
./chip-tool accesscontrol read-event access-control-extension-changed 1 0
- On TH(Chiptool) , Verify AccessControl cluster AccessControlExtensionChanged containing at least 1 new element, and MUST NOT contain an added event for the extension with data that is too large
+ On TH1(Chiptool) , Verify AccessControl cluster AccessControlExtensionChanged containing at least 1 new element, and MUST NOT contain an added event for the extension with data that is too large
[1657618374.299423][9024:9029] CHIP:DMG: }
[1657618374.299739][9024:9029] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Event 0x0000_0001
@@ -388,55 +368,10 @@ tests:
verification: |
./chip-tool accesscontrol write extension "[{"data":"1718"},{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]" 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 2 elements Returns 0x87 (CONSTRAINT_ERROR)-as there are more than 1 entry
-
-
- 1657289068.797364][9823:9828] CHIP:DMG: WriteResponseMessage =
- [1657289068.797394][9823:9828] CHIP:DMG: {
- [1657289068.797419][9823:9828] CHIP:DMG: AttributeStatusIBs =
- [1657289068.797455][9823:9828] CHIP:DMG: [
- [1657289068.797482][9823:9828] CHIP:DMG: AttributeStatusIB =
- [1657289068.797515][9823:9828] CHIP:DMG: {
- [1657289068.797550][9823:9828] CHIP:DMG: AttributePathIB =
- [1657289068.797590][9823:9828] CHIP:DMG: {
- [1657289068.797632][9823:9828] CHIP:DMG: Endpoint = 0x0,
- [1657289068.797673][9823:9828] CHIP:DMG: Cluster = 0x1f,
- [1657289068.797716][9823:9828] CHIP:DMG: Attribute = 0x0000_0001,
- [1657289068.797754][9823:9828] CHIP:DMG: }
- [1657289068.797798][9823:9828] CHIP:DMG:
- [1657289068.797835][9823:9828] CHIP:DMG: StatusIB =
- [1657289068.797875][9823:9828] CHIP:DMG: {
- [1657289068.797914][9823:9828] CHIP:DMG: status = 0x00 (SUCCESS),
- [1657289068.797952][9823:9828] CHIP:DMG: },
- [1657289068.797991][9823:9828] CHIP:DMG:
- [1657289068.798025][9823:9828] CHIP:DMG: },
- [1657289068.798071][9823:9828] CHIP:DMG:
- [1657289068.798104][9823:9828] CHIP:DMG: AttributeStatusIB =
- [1657289068.798139][9823:9828] CHIP:DMG: {
- [1657289068.798173][9823:9828] CHIP:DMG: AttributePathIB =
- [1657289068.798211][9823:9828] CHIP:DMG: {
- [1657289068.798250][9823:9828] CHIP:DMG: Endpoint = 0x0,
- [1657289068.798291][9823:9828] CHIP:DMG: Cluster = 0x1f,
- [1657289068.798332][9823:9828] CHIP:DMG: Attribute = 0x0000_0001,
- [1657289068.798372][9823:9828] CHIP:DMG: ListIndex = Null,
- [1657289068.798410][9823:9828] CHIP:DMG: }
- [1657289068.798453][9823:9828] CHIP:DMG:
- [1657289068.798489][9823:9828] CHIP:DMG: StatusIB =
- [1657289068.798527][9823:9828] CHIP:DMG: {
- [1657289068.798565][9823:9828] CHIP:DMG: status = 0x00 (SUCCESS),
- [1657289068.798603][9823:9828] CHIP:DMG: },
- [1657289068.798640][9823:9828] CHIP:DMG:
- [1657289068.798671][9823:9828] CHIP:DMG: },
- [1657289068.798709][9823:9828] CHIP:DMG:
- [1657289068.798734][9823:9828] CHIP:DMG: AttributeStatusIB =
- [1657289068.798762][9823:9828] CHIP:DMG: {
- [1657289068.798791][9823:9828] CHIP:DMG: AttributePathIB =
- [1657289068.798819][9823:9828] CHIP:DMG: {
- [1657289068.798857][9823:9828] CHIP:DMG: Endpoint = 0x0,
- [1657289068.798895][9823:9828] CHIP:DMG: Cluster = 0x1f,
- [1657289068.798930][9823:9828] CHIP:DMG: Attribute = 0x0000_0001,
- [1657289068.798964][9823:9828] CHIP:DMG: ListIndex = Null,
- [1657289068.798997][9823:9828] CHIP:DMG: }
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, value is list of AccessControlExtensionStruct containing 2 elements Returns 0x87 (CONSTRAINT_ERROR)-as there are more than 1 entry
+
+
+
[1657289068.799030][9823:9828] CHIP:DMG:
[1657289068.799061][9823:9828] CHIP:DMG: StatusIB =
[1657289068.799093][9823:9828] CHIP:DMG: {
@@ -460,7 +395,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol read-event access-control-extension-changed 1 0
- On TH(Chiptool) , Verify AccessControl cluster AccessControlExtensionChanged event
+ On TH1(Chiptool) , Verify AccessControl cluster AccessControlExtensionChanged event
containing at least 1 new element, and MUST NOT contain an added event for the second extension
[1657618501.560311][9050:9055] CHIP:DMG: }
[1657618501.560653][9050:9055] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Event 0x0000_0001
@@ -570,7 +505,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol write extension "[]" 1 0
- On TH(Chiptool) , Verify AccessControl cluster Extension attribute, value is an empty list
+ On TH1(Chiptool) , Verify AccessControl cluster Extension attribute, value is an empty list
7625][1521:1526] CHIP:DMG: AttributeStatusIB =
[1657692723.227673][1521:1526] CHIP:DMG: {
@@ -604,7 +539,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol read-event access-control-extension-changed 1 0
- On TH(Chiptool) , Verify AccessControl cluster AccessControlExtensionChanged event containing at least 1 new element
+ On TH1(Chiptool) , Verify AccessControl cluster AccessControlExtensionChanged event containing at least 1 new element
[1657618604.091599][9063:9068] CHIP:DMG: }
[1657618604.091929][9063:9068] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Event 0x0000_0001
diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_6.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_6.yaml
index 94015650f2b6ea..0723273609cab5 100644
--- a/src/app/tests/suites/certification/Test_TC_ACL_2_6.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACL_2_6.yaml
@@ -24,9 +24,18 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ N1 is the node ID of TH1
+ disabled: true
+
- label: "TH1 commissions DUT using admin node ID N1"
verification: |
- verification step to be updated.
+ DUT
+ sudo ./chip-all-clusters-app
+
+ TH1
+ ./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3841
disabled: true
- label:
@@ -35,7 +44,7 @@ tests:
verification: |
./chip-tool operationalcredentials read current-fabric-index 1 0
- On TH(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 1
+ On TH1(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 1
[1656581567.459433][2846:2851] CHIP:EM: Removed CHIP MessageCounter:147498618 from RetransTable on exchange 16019i
@@ -77,7 +86,7 @@ tests:
verification: |
./chip-tool accesscontrol read-event access-control-entry-changed 1 0
- On TH(Chiptool) , Verify AccessControl cluster AccessControlEntryChanged event containing 1 element
+ On TH1(Chiptool) , Verify AccessControl cluster AccessControlEntryChanged event containing 1 element
[[1657618697.392815][9079:9084] CHIP:DMG:
@@ -148,9 +157,9 @@ tests:
AuthMode field: Group (3) Subjects field: null Targets field: null"
PICS: ACL.S.E00
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
- {"fabricIndex": 1, "privilege": 3, "authMode": 3, "subjects": [], "targets":null}]" 1 0
- On TH(Chiptool) , Verify AccessControl cluster AccessControlEntryChanged event containing 2 elements
+ ./chip-tool accesscontrol write acl "[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null},
+ { "privilege": 3, "authMode": 3, "subjects": [], "targets":null}]" 1 0
+ On TH1(Chiptool) , Verify AccessControl cluster AccessControlEntryChanged event containing 2 elements
[[1657545728.526415][3928:3933] CHIP:DMG: WriteResponseMessage =
[1657545728.526460][3928:3933] CHIP:DMG: {
@@ -219,7 +228,7 @@ tests:
verification: |
./chip-tool accesscontrol read-event access-control-entry-changed 1 0
- On TH(Chiptool) , Verify AccessControl cluster AccessControlEntryChanged event containing at least 3 new elements
+ On TH1(Chiptool) , Verify AccessControl cluster AccessControlEntryChanged event containing at least 3 new elements
[1657618772.535125][9091:9096] CHIP:DMG:
[1657618772.535162][9091:9096] CHIP:DMG: SuppressResponse = true,
@@ -305,8 +314,8 @@ tests:
(3) AuthMode field: Group (3) Subjects field: null Targets field: null"
PICS: ACL.S.E00
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 3, "subjects": null, "targets":null}]" 1 0
- On TH(Chiptool) ,verify AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 2 elements
+ ./chip-tool accesscontrol write acl "[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 3, "subjects": null, "targets":null}]" 1 0
+ On TH1(Chiptool) ,verify AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 2 elements
58813102.344539][2489:2494] CHIP:EM: Removed CHIP MessageCounter:131488146 from RetransTable on exchange 37188i
[1658813102.344581][2489:2494] CHIP:DMG: WriteClient moving to [ResponseRe]
@@ -379,7 +388,7 @@ tests:
verification: |
./chip-tool accesscontrol read-event access-control-entry-changed 1 0
- On TH(Chiptool) , Verify AccessControl cluster AccessControlEntryChanged event containing
+ On TH1(Chiptool) , Verify AccessControl cluster AccessControlEntryChanged event containing
at least 3 new elements and MUST NOT contain an added event for the third entry
1658813186.871698][2504:2509] CHIP:DMG: ],
diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_7.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_7.yaml
index 71d1b62d16449d..1bf38fb69a4ff0 100644
--- a/src/app/tests/suites/certification/Test_TC_ACL_2_7.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACL_2_7.yaml
@@ -24,12 +24,27 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ 1.N1 is the node ID of TH1
+
+ 2.N2 is the node ID of TH2
+
+ 2.D_OK_EMPTY: "1718" which is an octstr of length 2 containing valid TLV:
+
+ - top-level anonymous list (empty)
+
+ 3.D_OK_SINGLE:"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018" which is an octstr of length 50-100 containing valid TLV:
+
+ - top-level anonymous list, containing - one element with profile-specific tag in fully-qualified form
+ disabled: true
+
- label: "TH1 commissions DUT using admin node ID N1"
verification: |
DUT
sudo ./chip-all-clusters-app
- TH
+ TH1
./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3841
disabled: true
@@ -39,7 +54,7 @@ tests:
verification: |
./chip-tool operationalcredentials read current-fabric-index 1 0
- On TH(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 1
+ On TH1(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 1
[1657186774.908634][10846:10851] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0005 DataVersion: 3161849734
[1657186774.911149][10846:10851] CHIP:TOO: CurrentFabricIndex: 1
@@ -49,7 +64,7 @@ tests:
"TH1 puts DUT into commissioning mode, TH2 commissions DUT using admin
node ID N2"
verification: |
- Open a commissioning window On TH(Chiptool)1 using below command
+ Open a commissioning window On TH1(Chiptool)using below command
./chip-tool pairing open-commissioning-window 1 1 400 2000 3841
[1657186324.710951][10820:10825] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0000 Status=0x0
@@ -71,7 +86,7 @@ tests:
verification: |
./chip-tool operationalcredentials read current-fabric-index 2 0
- On TH(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 2
+ On TH2(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 2
[1657186956.724761][3910:3915] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0005 DataVersion: 3161849734
[1657186956.731658][3910:3915] CHIP:TOO: CurrentFabricIndex: 2
disabled: true
@@ -84,7 +99,7 @@ tests:
verification: |
./chip-tool accesscontrol write extension "[{"data":"1718"}]" 1 0
- On TH(Chiptool)1,Verify Successfully to extension attribute list containg one element .
+ On TH1(Chiptool),Verify Successfully to extension attribute list containg one element .
657893593.975649][4116:4121] CHIP:DMG: {
@@ -133,7 +148,7 @@ tests:
verification: |
./chip-tool accesscontrol write extension "[{"data":"17D00000F1FF01003D48656C6C6F20576F726C642E205468697320697320612073696E676C6520656C656D656E74206C6976696E6720617320612063686172737472696E670018"}]" 2 0
- On TH(Chiptool)2,Verify Successfully to extension attribute list containg one element .
+ On TH2(Chiptool),Verify Successfully to extension attribute list containg one element .
1657894672.479983][2433:2438] CHIP:DMG: WriteClient moving to [ResponseRe]
[1657894672.480057][2433:2438] CHIP:DMG: WriteResponseMessage =
[1657894672.480092][2433:2438] CHIP:DMG: {
@@ -183,7 +198,7 @@ tests:
PICS: ACL.S.A0001
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool)1 ,verify AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F2
+ On TH1(Chiptool) ,verify AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F2
[1657187433.621369][10890:10895] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0001 DataVersion: 3415499944
[1657187433.621422][10890:10895] CHIP:TOO: Extension: 1 entries
@@ -199,7 +214,7 @@ tests:
verification: |
./chip-tool accesscontrol read extension 2 0
- On TH(Chiptool)2 , Verify AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F1
+ On TH2(Chiptool), Verify AccessControlExtensionStruct containing 1 element, and MUST NOT contain an element with FabricIndex F1
[1658327214.683199][2749:2754] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0001 DataVersion: 2953114587
[1658327214.683283][2749:2754] CHIP:TOO: Extension: 1 entries
[1658327214.683348][2749:2754] CHIP:TOO: [1]: {
@@ -214,7 +229,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol read-event access-control-extension-changed 1 0
- On TH(Chiptool)1 , Verify AccessControlExtensionChanged containing 1 element, and MUST NOT contain an element with FabricIndex F2
+ On TH1(Chiptool) , Verify AccessControlExtensionChanged containing 1 element, and MUST NOT contain an element with FabricIndex F2
[1658327494.282263][2810:2815] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Event 0x0000_0001
[1658327494.282295][2810:2815] CHIP:TOO: Event number: 5
@@ -238,7 +253,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol read-event access-control-extension-changed 2
- On TH(Chiptool)2 , Verify AccessControlExtensionChanged containing 1 element, and MUST NOT contain an element with FabricIndex F1
+ On TH2(Chiptool) , Verify AccessControlExtensionChanged containing 1 element, and MUST NOT contain an element with FabricIndex F1
[1658327551.622018][4295:4300] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Event 0x0000_0001
[1658327551.622043][4295:4300] CHIP:TOO: Event number: 6
[1658327551.622065][4295:4300] CHIP:TOO: Priority: Info
diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_8.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_8.yaml
index 192a959c805ee8..d2aa037f31964e 100644
--- a/src/app/tests/suites/certification/Test_TC_ACL_2_8.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACL_2_8.yaml
@@ -24,12 +24,19 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ 1.N1 is the node ID of TH1
+
+ 2 .N2 is the node ID of TH2
+ disabled: true
+
- label: "TH1 commissions DUT using admin node ID N1"
verification: |
DUT
sudo ./chip-all-clusters-app
- TH
+ TH1
./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3841
disabled: true
@@ -39,7 +46,7 @@ tests:
verification: |
./chip-tool operationalcredentials read current-fabric-index 1 0
- On TH(Chiptool)1, verify CurrentFabricIndex attribute of operationalCredential cluster as 1
+ On TH1(Chiptool), verify CurrentFabricIndex attribute of operationalCredential cluster as 1
[1656588171.078880][3260:3265] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0005 DataVersion: 1776815488
[1656588171.078952][3260:3265] CHIP:TOO: CurrentFabricIndex: 1
@@ -50,7 +57,7 @@ tests:
"TH1 puts DUT into commissioning mode, TH2 commissions DUT using admin
node ID N2"
verification: |
- Open a commissioning window On TH(Chiptool)1 using below command
+ Open a commissioning window On TH1(Chiptool)1using below command
./chip-tool administratorcommissioning open-basic-commissioning-window 180 1 0 --timedInteractionTimeoutMs 1000
@@ -101,7 +108,7 @@ tests:
CurrentFabricIndex attribute"
verification: |
./chip-tool operationalcredentials read current-fabric-index 2 0 --commissioner-nodeid 223344 --commissioner-name beta
- On TH(Chiptool)2, verify CurrentFabricIndex attribute of operationalCredential cluster as 2
+ On TH2(Chiptool),verify CurrentFabricIndex attribute of operationalCredential cluster as 2
1658747098.843523][3024:3029] CHIP:DMG: },
[1658747098.843552][3024:3029] CHIP:DMG:
@@ -124,8 +131,8 @@ tests:
field: [N1, 1111] Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233,1111], "targets":null}]" 1 0
- On TH(Chiptool)1, verify AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 1 element
+ ./chip-tool accesscontrol write acl "[{ "privilege": 5, "authMode": 2, "subjects": [112233,1111], "targets":null}]" 1 0
+ On TH1(Chiptool), verify AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 1 element
[1657286416.461279][4737:4742] CHIP:DMG: {
[1657286416.461307][4737:4742] CHIP:DMG: AttributeStatusIBs =
@@ -178,8 +185,8 @@ tests:
field: [N2, 2222] Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [223344,2222], "targets":null}]" 2 0 --commissioner-nodeid 223344 --commissioner-name beta
- On TH(Chiptool)2, verify AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 1 element
+ ./chip-tool accesscontrol write acl "[{ "privilege": 5, "authMode": 2, "subjects": [223344,2222], "targets":null}]" 2 0 --commissioner-nodeid 223344 --commissioner-name beta
+ On TH2(Chiptool), verify AccessControl cluster ACL attribute value is list of AccessControlEntryStruct containing 1 element
[1658747124.117113][3031:3036] CHIP:DMG: {
@@ -233,7 +240,7 @@ tests:
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool)1, verify AccessControlEntryStruct containing 1 element, and MUST NOT contain an element with FabricIndex F2
+ On TH1(Chiptool), verify AccessControlEntryStruct containing 1 element, and MUST NOT contain an element with FabricIndex F2
[1657286432.997319][4745:4751] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0000 DataVersion: 3308562949
[1657286432.997655][4745:4751] CHIP:TOO: ACL: 1 entries
[1657286432.997727][4745:4751] CHIP:TOO: [1]: {
@@ -252,7 +259,7 @@ tests:
verification: |
./chip-tool accesscontrol read acl 2 0 --commissioner-name beta --commissioner-nodeid 223344
- On TH(Chiptool)2, verify AccessControlEntryStruct containing 1 element, and MUST NOT contain an element with FabricIndex F1
+ On TH2(Chiptool), verify AccessControlEntryStruct containing 1 element, and MUST NOT contain an element with FabricIndex F1
[1657286742.977222][18111:18116] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0000 DataVersion: 3308562953
[1657286742.977287][18111:18116] CHIP:TOO: ACL: 1 entries
[1657286742.977344][18111:18116] CHIP:TOO: [1]: {
@@ -272,7 +279,7 @@ tests:
PICS: ACL.S.E00
verification: |
./chip-tool accesscontrol read-event access-control-entry-changed 1 0
- On TH(Chiptool)1, verify AccessControl cluster AccessControlEntryChanged containing 3 elements, and MUST NOT contain any element with FabricIndex F2
+ On TH1(Chiptool), verify AccessControl cluster AccessControlEntryChanged containing 3 elements, and MUST NOT contain any element with FabricIndex F2
[1657286873.948408][4767:4772] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Event 0x0000_0000
@@ -338,29 +345,10 @@ tests:
PICS: ACL.S.E00
verification: |
./chip-tool accesscontrol read-event access-control-entry-changed 2 0 --commissioner-name beta --commissioner-nodeid 223344
- On TH(Chiptool)2, verify AccessControl cluster AccessControlEntryChanged containing 3 elements, and MUST NOT contain any element with FabricIndex F1
-
-
-
- [1657287207.040351][18332:18337] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Event 0x0000_0000
- [1657287207.040361][18332:18337] CHIP:TOO: Event number: 4
- [1657287207.040369][18332:18337] CHIP:TOO: Priority: Info
- [1657287207.040376][18332:18337] CHIP:TOO: Timestamp: 31805127
- [1657287207.040425][18332:18337] CHIP:TOO: AccessControlEntryChanged: {
- [1657287207.040440][18332:18337] CHIP:TOO: AdminNodeID: null
- [1657287207.040451][18332:18337] CHIP:TOO: AdminPasscodeID: 0
- [1657287207.040460][18332:18337] CHIP:TOO: ChangeType: 1
- [1657287207.040467][18332:18337] CHIP:TOO: LatestValue: {
- [1657287207.040474][18332:18337] CHIP:TOO: Privilege: 5
- [1657287207.040482][18332:18337] CHIP:TOO: AuthMode: 2
- [1657287207.040492][18332:18337] CHIP:TOO: Subjects: 1 entries
- [1657287207.040502][18332:18337] CHIP:TOO: [1]: 223344
- [1657287207.040510][18332:18337] CHIP:TOO: Targets: null
- [1657287207.040518][18332:18337] CHIP:TOO: FabricIndex: 2
- [1657287207.040526][18332:18337] CHIP:TOO: }
- [1657287207.040533][18332:18337] CHIP:TOO: AdminFabricIndex: 2
- [1657287207.040540][18332:18337] CHIP:TOO: }
- [1657287207.040612][18332:18337] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Event 0x0000_0000
+ On TH2(Chiptool), verify AccessControl cluster AccessControlEntryChanged containing 3 elements, and MUST NOT contain any element with FabricIndex F1
+
+
+
[1657287207.040619][18332:18337] CHIP:TOO: Event number: 7
[1657287207.040624][18332:18337] CHIP:TOO: Priority: Info
[1657287207.040630][18332:18337] CHIP:TOO: Timestamp: 31903266
diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_9.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_9.yaml
index fa68ec0bf8c39a..ee834c11f4752f 100644
--- a/src/app/tests/suites/certification/Test_TC_ACL_2_9.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACL_2_9.yaml
@@ -24,9 +24,18 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ N1 is the node ID of TH1
+ disabled: true
+
- label: "TH1 commissions DUT using admin node ID N1"
verification: |
- verification step to be updated.
+ DUT
+ sudo ./chip-all-clusters-app
+
+ TH1
+ ./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3841
disabled: true
- label:
@@ -36,8 +45,8 @@ tests:
[N1] Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 4, "authMode": 2, "subjects": [112233], "targets": null}]" 1 0
- On TH(Chiptool), verify AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 1 element
+ ./chip-tool accesscontrol write acl "[{ "privilege": 4, "authMode": 2, "subjects": [112233], "targets": null}]" 1 0
+ On TH1(Chiptool), verify AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 1 element
[1656589077.991761][3452:3457] CHIP:DMG: WriteClient moving to [ResponseRe]
[1656589077.991838][3452:3457] CHIP:DMG: WriteResponseMessage =
@@ -90,7 +99,7 @@ tests:
verification: |
./chip-tool accesscontrol read acl 1 0
- On TH(Chiptool), verify AccessControl cluster ACL attribute Returns UNSUPPORTED_ACCESS (0x7e)
+ On TH1(Chiptool), verify AccessControl cluster ACL attribute Returns UNSUPPORTED_ACCESS (0x7e)
[1656589294.730359][3469:3474] CHIP:DMG: ReportDataMessage =
[1656589294.730409][3469:3474] CHIP:DMG: {
[1656589294.730449][3469:3474] CHIP:DMG: AttributeReportIBs =
@@ -132,8 +141,8 @@ tests:
field: [N1] Targets field: null"
PICS: ACL.S.A0000
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}]" 1 0
- On TH(Chiptool), verify AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 1 element Returns Unsupported Access
+ ./chip-tool accesscontrol write acl "[{"privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}]" 1 0
+ On TH1(Chiptool), verify AccessControl cluster ACL attribute, value is list of AccessControlEntryStruct containing 1 element Returns Unsupported Access
[1656589843.696435][3518:3523] CHIP:DMG: WriteResponseMessage =
[1656589843.696471][3518:3523] CHIP:DMG: {
@@ -186,7 +195,7 @@ tests:
PICS: ACL.S.A0001
verification: |
./chip-tool accesscontrol read extension 1 0
- On TH(Chiptool), verify AccessControl cluster Extension attribute Returns UNSUPPORTED_ACCESS (0x7e)
+ On TH1(Chiptool), verify AccessControl cluster Extension attribute Returns UNSUPPORTED_ACCESS (0x7e)
[1656590048.181895][3536:3541] CHIP:DMG: ReportDataMessage =
[1656590048.181938][3536:3541] CHIP:DMG: {
[1656590048.181973][3536:3541] CHIP:DMG: AttributeReportIBs =
@@ -226,7 +235,7 @@ tests:
PICS: ACL.S.A0001
verification: |
./chip-tool accesscontrol write extension [] 1 0
- On TH(Chiptool) , Verify the Successfully with extension attribute value is an empty list Returns
+ On TH1(Chiptool) , Verify the Successfully with extension attribute value is an empty list which Returns
UNSUPPORTED_ACCESS (0x7e)
[1656592607.144276][3897:3903] CHIP:DMG: WriteClient moving to [ResponseRe]
[1656592607.144341][3897:3903] CHIP:DMG: WriteResponseMessage =
@@ -254,7 +263,7 @@ tests:
PICS: ACL.S.A0002
verification: |
./chip-tool accesscontrol read subjects-per-access-control-entry 1 0
- On TH(Chiptool), verify with value 4 or greater as subjects-per-access-control-entry.
+ On TH1(Chiptool), verify with value 4 or greater as subjects-per-access-control-entry.
[1656592739.107798][3916:3921] CHIP:DMG: ReportDataMessage =
[1656592739.107828][3916:3921] CHIP:DMG: {
@@ -293,7 +302,7 @@ tests:
PICS: ACL.S.A0003
verification: |
./chip-tool accesscontrol read targets-per-access-control-entry 1 0
- On TH(Chiptool), verify with value 3 or greater as TargetsPerAccessControlEntry
+ On TH1(Chiptool), verify with value 3 or greater as TargetsPerAccessControlEntry
[1656593266.074720][3943:3948] CHIP:DMG: ReportDataMessage =
[1656593266.074748][3943:3948] CHIP:DMG: {
[1656593266.074769][3943:3948] CHIP:DMG: AttributeReportIBs =
@@ -332,7 +341,7 @@ tests:
verification: |
./chip-tool accesscontrol read access-control-entries-per-fabric 1 0
- On TH(Chiptool), verify with value 3 or greater as AccessControlEntriesPerFabric.
+ On TH1(Chiptool), verify with value 3 or greater as AccessControlEntriesPerFabric.
[1656593406.902865][3956:3961] CHIP:DMG: ReportDataMessage =
[1656593406.902902][3956:3961] CHIP:DMG: {
[1656593406.902931][3956:3961] CHIP:DMG: AttributeReportIBs =
@@ -371,7 +380,7 @@ tests:
PICS: ACL.S.E00
verification: |
./chip-tool accesscontrol read-event access-control-entry-changed 1
- On TH(Chiptool), Verify AccessControl cluster AccessControlEntryChanged event Returns UNSUPPORTED_ACCESS (0x7e)
+ On TH1(Chiptool), Verify AccessControl cluster AccessControlEntryChanged event Returns UNSUPPORTED_ACCESS (0x7e)
[1656593588.305232][3979:3984] CHIP:DMG: },
[1656593588.305269][3979:3984] CHIP:DMG:
[1656593588.305299][3979:3984] CHIP:DMG: StatusIB =
@@ -400,7 +409,7 @@ tests:
PICS: ACL.S.E01
verification: |
./chip-tool accesscontrol read-event access-control-extension-changed 1 0
- On TH(Chiptool), verify AccessControl cluster AccessControlExtensionChanged event Returns UNSUPPORTED_ACCESS (0x7e)
+ On TH1(Chiptool), verify AccessControl cluster AccessControlExtensionChanged event Returns UNSUPPORTED_ACCESS (0x7e)
[1656593726.387025][3990:3995] CHIP:DMG:
[1656593726.387048][3990:3995] CHIP:DMG: EventReportIB =
[1656593726.387078][3990:3995] CHIP:DMG: {
diff --git a/src/app/tests/suites/certification/Test_TC_ACT_1_1.yaml b/src/app/tests/suites/certification/Test_TC_ACT_1_1.yaml
index ef12fae26a6a2a..8c6429ee483a14 100644
--- a/src/app/tests/suites/certification/Test_TC_ACT_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACT_1_1.yaml
@@ -53,7 +53,7 @@ tests:
response:
constraints:
type: list
- contains: [0, 1]
+ contains: [0, 1, 65528, 65529, 65531, 65532, 65533]
- label: "Read the optional attribute(SetupURL) in AttributeList"
PICS: ACT.S.A0002
@@ -62,7 +62,7 @@ tests:
response:
constraints:
type: list
- contains: [0, 1, 2]
+ contains: [2]
# Checking only type check all attributes are optional
- label: "Read the global attribute: AcceptedCommandList"
diff --git a/src/app/tests/suites/certification/Test_TC_ACT_2_1.yaml b/src/app/tests/suites/certification/Test_TC_ACT_2_1.yaml
index d1f38dd809f311..068cde853d3751 100644
--- a/src/app/tests/suites/certification/Test_TC_ACT_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACT_2_1.yaml
@@ -81,7 +81,7 @@ tests:
- label: "Read EndpointLists attribute of Actions server"
PICS: ACT.S.A0001
verification: |
- ./chip-tool bridgedactions read endpoint-list 1 1
+ ./chip-tool actions read endpoint-lists 1 1
On TH(chip-tool), verify the EndpointListStructs in TH Log:
@@ -153,7 +153,7 @@ tests:
- label: "Read ActionList attribute of Actions server"
PICS: ACT.S.A0000
verification: |
- ./chip-tool bridgedactions read action-list 1 1
+ ./chip-tool actions read action-list 1 1
Verify ActionStructs in TH(chip-tool) Log:
@@ -340,7 +340,7 @@ tests:
- label: "Read SetupURL attribute"
PICS: ACT.S.A0002
verification: |
- ./chip-tool bridgedactions read setup-url 1 1
+ ./chip-tool actions read setup-url 1 1
Verify in TH(chip-tool) log
diff --git a/src/app/tests/suites/certification/Test_TC_ACT_2_2.yaml b/src/app/tests/suites/certification/Test_TC_ACT_2_2.yaml
index cfdb21d3bd883b..659c95c871835d 100644
--- a/src/app/tests/suites/certification/Test_TC_ACT_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACT_2_2.yaml
@@ -43,9 +43,8 @@ tests:
disabled: true
- label: "Read EndpointLists attribute"
- PICS: ACT.S.A0001 && ACT.S.M.FillEndpointLists
verification: |
- ./chip-tool bridgedactions read endpoint-list 1 1
+ ./chip-tool actions read endpoint-lists 1 1
On TH(chip-tool), verify the EndpointListStructs in TH Log:
[1658426570.716289][16527:16532] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0001 DataVersion: 3768747568
@@ -79,7 +78,7 @@ tests:
- label: "Read EndpointLists attribute again"
PICS: ACT.S.A0001 && ACT.S.M.FillEndpointLists
verification: |
- ./chip-tool bridgedactions read endpoint-list 1 1
+ ./chip-tool actions read endpoint-lists 1 1
On TH(chip-tool), verify the EndpointListStructs in below Log:
[1658408033.786811][14495:14500] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0001 DataVersion: 3742844648
@@ -160,7 +159,7 @@ tests:
- label: "Read EndpointLists attribute again"
PICS: ACT.S.A0001 && ACT.S.M.FillEndpointLists
verification: |
- ./chip-tool bridgedactions read endpoint-list 1 1
+ ./chip-tool actions read endpoint-lists 1 1
On TH(chip-tool), verify the EndpointListStructs
[1658408033.786811][14495:14500] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0001 DataVersion: 3742844648
@@ -182,7 +181,7 @@ tests:
[1658408033.788278][14495:14500] CHIP:TOO: }
disabled: true
- - label: "compare result of step 2g to what was read in step 2e"
+ - label: "compare result of step 2g to what was read in step 2d"
PICS: ACT.S.A0001 && ACT.S.M.FillEndpointLists
verification: |
compare result of step 2g to what was read in step 2d, Verify one EP (EP 3 in this case) has been moved from one EndpointListStruct to another EndpointListStruct
@@ -199,7 +198,7 @@ tests:
- label: "Read EndpointLists attribute again"
PICS: ACT.S.A0001 && ACT.S.M.FillEndpointLists
verification: |
- ./chip-tool bridgedactions read endpoint-list 1 1
+ ./chip-tool actions read endpoint-lists 1 1
On TH(chip-tool), verify the EndpointListStructs
[1658426959.409374][16560:16565] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0001 DataVersion: 3768747568
@@ -213,7 +212,7 @@ tests:
[1658426959.409755][16560:16565] CHIP:TOO: }
disabled: true
- - label: "compare result of step 2j to what was read in step 2h"
+ - label: "compare result of step 2j to what was read in step 2g"
PICS: ACT.S.A0001 && ACT.S.M.FillEndpointLists
verification: |
compare result of step 2j to what was read in step 2g, Verify one EndpointListStruct (the 2nd one in this example) got removed while the other one(s) did not change
@@ -231,7 +230,7 @@ tests:
- label: "Read EndpointLists attribute again"
PICS: ACT.S.A0001 && ACT.S.M.OverlappingEndpointLists
verification: |
- ./chip-tool bridgedactions read endpoint-list 1 1
+ ./chip-tool actions read endpoint-lists 1 1
On TH(chip-tool), verify the EndpointListStructs
1658427088.316681][16578:16583] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0001 DataVersion: 3768747568
@@ -268,7 +267,7 @@ tests:
- label: "Read ActionList attribute"
PICS: ACT.S.A0000 && ACT.S.M.FillActionList
verification: |
- ./chip-tool bridgedactions read action-list 1 1
+ ./chip-tool actions read action-list 1 1
Verify ActionStructs in TH(chip-tool) Log:
[1658479958.699434][26130:26135] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0000 DataVersion: 198994220
@@ -302,7 +301,7 @@ tests:
- label: "Read ActionList attribute again"
PICS: ACT.S.A0000 && ACT.S.M.FillActionList
verification: |
- ./chip-tool bridgedactions read action-list 1 1
+ ./chip-tool actions read action-list 1 1
Verify ActionStructs in TH(chip-tool) Log:
[1658480004.064867][26153:26158] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0000 DataVersion: 198994220
@@ -384,7 +383,7 @@ tests:
- label: "Read ActionList attribute again"
PICS: ACT.S.A0000 && ACT.S.M.FillActionList
verification: |
- ./chip-tool bridgedactions read action-list 1 1
+ ./chip-tool actions read action-list 1 1
Verify ActionStructs in TH(chip-tool) Log:
[1658480039.164683][26172:26177] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0000 DataVersion: 198994220
@@ -415,7 +414,7 @@ tests:
- label: "Read ActionList attribute again"
PICS: ACT.S.A0000 && ACT.S.M.FillActionList
verification: |
- ./chip-tool bridgedactions read action-list 1 1
+ ./chip-tool actions read action-list 1 1
Verify ActionStructs in TH(chip-tool) Log:
[1658480059.199268][26178:26183] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0000 DataVersion: 198994220
@@ -454,7 +453,7 @@ tests:
- label: "Read ActionList attribute"
PICS: ACT.S.A0000
verification: |
- ./chip-tool bridgedactions read action-list 1 1
+ ./chip-tool actions read action-list 1 1
Verify ActionStructs in TH(chip-tool) Log:
[1658480080.135069][26185:26190] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_0000 DataVersion: 198994220
@@ -481,7 +480,7 @@ tests:
verification: |
To subscribe StateChanged event follow below steps
1) ./chip-tool interactive start
- 2) bridgedactions subscribe-event action-failed 2 30 1 0
+ 2) actions subscribe-event action-failed 2 30 1 0
Verify in TH Log:
[1659962630.453221][25381:25386] CHIP:EM: Removed CHIP MessageCounter:65903257 from RetransTable on exchange 50035i
[1659962630.453246][25381:25386] CHIP:DMG: ReportDataMessage =
@@ -506,7 +505,7 @@ tests:
[1659962630.456551][25381:25386] CHIP:DMG: }
[1659962630.456563][25381:25386] CHIP:DMG: Subscription established with SubscriptionID = 0x78f0a04c MinInterval = 0s MaxInterval = 100s Peer = 01:0000000000000001
- 3) bridgedactions instant-action 0x1001 1 1
+ 3) actions instant-action 0x1001 1 1
Verify in TH Log
@@ -524,7 +523,7 @@ tests:
verification: |
Only InstantActions command is supported
- ./chip-tool bridgedactions instant-action 0x1001 1 1
+ ./chip-tool actions instant-action 0x1001 1 1
Verify in TH Log
diff --git a/src/app/tests/suites/certification/Test_TC_ACT_3_1.yaml b/src/app/tests/suites/certification/Test_TC_ACT_3_1.yaml
index 3c8b4a75a40ad1..89258aeb54ec2b 100644
--- a/src/app/tests/suites/certification/Test_TC_ACT_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACT_3_1.yaml
@@ -28,11 +28,16 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT reads all supported mandatory attributes from TH one at a time in
a manufacturer specific order"
verification: |
- ./chip-tool bridgedactions read action-list 1 1
+ ./chip-tool actions read action-list 1 1
Verify read command is received on TH(all-clusters-app)
@@ -59,7 +64,7 @@ tests:
- ./chip-tool bridgedactions read endpoint-list 1 1
+ ./chip-tool actions read endpoint-list 1 1
Verify read command is received on TH(all-clusters-app
)
@@ -91,7 +96,7 @@ tests:
verification: |
Optional attibute
- ./chip-tool bridgedactions read setup-url 1 1
+ ./chip-tool actions read setup-url 1 1
Verify read command is received on TH(all-clusters-app)
@@ -137,7 +142,7 @@ tests:
also reflects this in global attributes such as FeatureMap and
AttributeList. Commission DUT to TH again"
verification: |
- ./chip-tool bridgedactions read attribute-list 1 1
+ ./chip-tool actions read attribute-list 1 1
Verify attribute-list attribute contains 7 entries on TH(all-clusters-minimal-app)
[1658393025.602745][13481:13486] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_FFFB DataVersion: 2868144574
@@ -211,7 +216,7 @@ tests:
verification: |
Optional attibute
- ./chip-tool bridgedactions read setup-url 1 1
+ ./chip-tool actions read setup-url 1 1
General error: 0x86 (UNSUPPORTED_ATTRIBUTE)
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_ACT_3_2.yaml b/src/app/tests/suites/certification/Test_TC_ACT_3_2.yaml
index 14fe1033e00e10..49353e5ffc64c1 100644
--- a/src/app/tests/suites/certification/Test_TC_ACT_3_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACT_3_2.yaml
@@ -24,6 +24,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"Preparation: TH as server exposes an Actions server cluster on EP 1,
with one action (supporting all possible commands) and corresponding
@@ -41,7 +46,7 @@ tests:
- label: "DUT issues an InstantAction command to TH"
PICS: ACT.C.C00.Tx
verification: |
- ./chip-tool bridgedactions instant-action 0x1001 1 1
+ ./chip-tool actions instant-action 0x1001 1 1
Verify command is successfully sent on TH(all-clusters-app)
@@ -84,7 +89,7 @@ tests:
- label: "DUT issues an StartAction command to TH"
PICS: ACT.C.C02.Tx
verification: |
- ./chip-tool bridgedactions start-action 0x1001 1 1
+ ./chip-tool actions start-action 0 1 1
Note: Message log similar as in step 1
disabled: true
@@ -92,7 +97,7 @@ tests:
- label: "DUT issues an StopAction command to TH"
PICS: ACT.C.C04.Tx
verification: |
- ./chip-tool bridgedactions stop-action 0x1001 1 1
+ ./chip-tool actions stop-action 0 1 1
Note: Message log similar as in step 1
disabled: true
@@ -100,7 +105,7 @@ tests:
- label: "DUT issues an PauseAction command to TH"
PICS: ACT.C.C05.Tx
verification: |
- ./chip-tool bridgedactions pause-action 0x1001 1 1
+ ./chip-tool actions pause-action 0 1 1
Note: Message log similar as in step 1
disabled: true
@@ -108,7 +113,7 @@ tests:
- label: "DUT issues an ResumeAction command to TH"
PICS: ACT.C.C07.Tx
verification: |
- ./chip-tool bridgedactions resume-action 0x1001 1 1
+ ./chip-tool actions resume-action 0 1 1
Note: Message log similar as in step 1
disabled: true
@@ -116,7 +121,7 @@ tests:
- label: "DUT issues an EnableAction command to TH"
PICS: ACT.C.C08.Tx
verification: |
- ./chip-tool bridgedactions enable-action 0x1001 1 1
+ ./chip-tool actions enable-action 0 1 1
Note: Message log similar as in step 1
disabled: true
@@ -124,7 +129,7 @@ tests:
- label: "DUT issues an DisableAction command to TH"
PICS: ACT.C.C0a.Tx
verification: |
- ./chip-tool bridgedactions disable-action 0x1001 1 1
+ ./chip-tool actions disable-action 0 1 1
Note: Message log similar as in step 1
disabled: true
@@ -132,7 +137,7 @@ tests:
- label: "DUT issues an StartActionWithDuration command to TH"
PICS: ACT.C.C03.Tx
verification: |
- ./chip-tool bridgedactions start-action-with-duration 0x1001 1 1
+ ./chip-tool actions start-action-with-duration 0x1001 100 1 1
Note: Message log similar as in step 1
disabled: true
@@ -140,7 +145,7 @@ tests:
- label: "DUT issues an PauseActionWithDuration command to TH"
PICS: ACT.C.C06.Tx
verification: |
- ./chip-tool bridgedactions pause-action-with-duration 0x1001 1 1
+ ./chip-tool actions pause-action-with-duration 0x1001 200 1 1
Note: Message log similar as in step 1
disabled: true
@@ -148,7 +153,7 @@ tests:
- label: "DUT issues an EnableActionWithDuration command to TH"
PICS: ACT.C.C09.Tx
verification: |
- ./chip-tool bridgedactions enable-action-with-duration 0x1001 1 1
+ ./chip-tool actions enable-action-with-duration 0x1001 300 1 1
Note: Message log similar as in step 1
disabled: true
@@ -156,7 +161,7 @@ tests:
- label: "DUT issues an DisableActionWithDuration command to TH"
PICS: ACT.C.C0b.Tx
verification: |
- ./chip-tool bridgedactions disable-action-with-duration 0x1001 1 1
+ ./chip-tool actions disable-action-with-duration 0 100 1 1
Note: Message log similar as in step 1
disabled: true
@@ -164,7 +169,7 @@ tests:
- label: "DUT issues an InstantActionWithTransition command to TH"
PICS: ACT.C.C01.Tx
verification: |
- ./chip-tool bridgedactions instant-action-with-transition 0x1001 1 1
+ ./chip-tool actions instant-action-with-transition 0x1001 400 1 1
Note: Message log similar as in step 1
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_1_3.yaml b/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_1_3.yaml
index 620afffd4ea55f..f0d4f63cd9fc45 100644
--- a/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_1_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_1_3.yaml
@@ -16,6 +16,9 @@ name:
19.1.3. [TC-APPLAUNCHER-1.3] Global attributes - Application Launcher
Cluster (DUT as Server)
+PICS:
+ - APPLAUNCHER.S
+
config:
nodeId: 0x12344321
cluster: "Application Launcher"
diff --git a/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_8_1.yaml b/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_8_1.yaml
index e47b10028fba67..2e8d999ea1b3f2 100644
--- a/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_8_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_8_1.yaml
@@ -25,9 +25,12 @@ config:
endpoint: 0
tests:
- - label: "Preconditions:"
+ - label:
+ "Preconditions: Commission TH to DUT, if not done so already. In some
+ cases, such as with a Casting Video Player, the TH commissions the
+ DUT."
verification: |
- Commission TH to DUT, if not done so already. In some cases, such as with a Casting Video Player, the TH commissions the DUT.
+
disabled: true
- label: "DUT sends StopApp command to TH"
diff --git a/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_9_1.yaml b/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_9_1.yaml
index 24136fc704c78f..ab3748ba234aca 100644
--- a/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_9_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_9_1.yaml
@@ -25,9 +25,12 @@ config:
endpoint: 0
tests:
- - label: "Preconditions:"
+ - label:
+ "Preconditions: Commission TH to DUT, if not done so already. In some
+ cases, such as with a Casting Video Player, the TH commissions the
+ DUT."
verification: |
- Commission TH to DUT, if not done so already. In some cases, such as with a Casting Video Player, the TH commissions the DUT.
+
disabled: true
- label: "DUT sends HideApp command to TH"
diff --git a/src/app/tests/suites/certification/Test_TC_BDX_1_2.yaml b/src/app/tests/suites/certification/Test_TC_BDX_1_2.yaml
index 7f0f8f54599661..3c755cd927f1b2 100644
--- a/src/app/tests/suites/certification/Test_TC_BDX_1_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BDX_1_2.yaml
@@ -25,6 +25,11 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ This test can be verified using TC-SU-2.3 from the OTA Software Update section. Pls refer to OTA section for steps.
+ disabled: true
+
- label: "DUT sends a ReceiveInit message to TH"
verification: |
1. Verify that the OTA Reference Provider App logs show ReceiveInit message from DUT
diff --git a/src/app/tests/suites/certification/Test_TC_BDX_1_4.yaml b/src/app/tests/suites/certification/Test_TC_BDX_1_4.yaml
index 164b89b58c0c6f..992be636e12a7c 100644
--- a/src/app/tests/suites/certification/Test_TC_BDX_1_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BDX_1_4.yaml
@@ -25,6 +25,11 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ This test can be verified using TC-SU-3.3 from the OTA Software Update section. Pls refer to OTA section for steps.
+ disabled: true
+
- label:
"TH sends a ReceiveInit message to DUT + DUT sends a ReceiveAccept
message back to TH"
diff --git a/src/app/tests/suites/certification/Test_TC_BDX_2_1.yaml b/src/app/tests/suites/certification/Test_TC_BDX_2_1.yaml
index eb8cd3dede6d48..449215850abb40 100644
--- a/src/app/tests/suites/certification/Test_TC_BDX_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BDX_2_1.yaml
@@ -24,6 +24,12 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ This test can be verified using TC-SU-3.3 from the OTA Software Update section. Pls refer to OTA section for steps.
+ This test can also be verified with TH sending a ReceiveInit message to the DUT.
+ disabled: true
+
- label:
"DUT sends a SendInit message to TH + TH sends a SendAccept message
back to DUT + DUT sends a Block message to TH + TH sends a BlockAck
diff --git a/src/app/tests/suites/certification/Test_TC_BDX_2_2.yaml b/src/app/tests/suites/certification/Test_TC_BDX_2_2.yaml
index d8ea0b6645e8d5..21a032bf91f87f 100644
--- a/src/app/tests/suites/certification/Test_TC_BDX_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BDX_2_2.yaml
@@ -24,6 +24,12 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ This test can be verified using TC-SU-2.3 from the OTA Software Update section. Pls refer to OTA section for steps.
+ This test can also be verified with DUT sending a ReceiveInit message to the TH.
+ disabled: true
+
- label:
"TH sends the first Block message to DUT + DUT sends a BlockAck
message back to TH."
diff --git a/src/app/tests/suites/certification/Test_TC_BIND_2_1.yaml b/src/app/tests/suites/certification/Test_TC_BIND_2_1.yaml
index 6f5ddedb6cbbef..0be1511b414bf6 100644
--- a/src/app/tests/suites/certification/Test_TC_BIND_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BIND_2_1.yaml
@@ -24,6 +24,28 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ TH2 supports On/Off server on Endpoint 1.
+
+ TH3 supports On/Off server on Endpoint 2.
+
+ DUT supports On/Off client.
+ disabled: true
+
+ - label: "Note"
+ verification: |
+ 1.This test case requires 4 raspi to execute. 1 raspi as Commissioner. and 1 raspi as dut[Controller] 2 raspi as controllee
+
+ 2. In this example, RASP is used as DUT & it requires additional shell access to execute the controller commands. To support the shell, use the following command to build the all-clusters-app . On the DUT device Use - [scripts/examples/gn_build_example.sh examples/all-clusters-app/linux/ out/all-clusters-app chip_inet_config_enable_ipv4=false chip_build_libshell=true ] - (Vendor DUT must have this provision to execute the controller commands. )
+
+ 3.Pair TH2 , TH3 with ble-wifi with different discriminator as mentioned below test steps , using the chip-tool running as commissioner in one RPI.
+
+ 4.using the commissioner write the ACL entries on both TH2 and TH3 for allowing to receive commands for onoff cluster from DUT(Controller)
+
+ 5.Hit the Enter button on raspi , you will see a shell prompt (>) , enter help, this would list the command for switch . At the prompt enter switch on ,the "on" command is sent to both TH2 and TH3. and the command and corresponding response can be verified in the log. to test if the TH2/TH3 are turned on or not, you can read the on-off attribute status. Read the status before sending the switch on command and read after sending the command. you should see the value changing.
+ disabled: true
+
- label: "Factory Reset DUT"
verification: |
Vendor specific action, for chip-tool run
@@ -53,7 +75,7 @@ tests:
verification: |
./chip-tool binding write binding "[{"node" : 2 , "cluster" : "0x0006" , "endpoint" : 1 }, { "node" : 3 , "cluster" : "0x0006" , "endpoint" : 2 }]" 1 1
-
+ On TH1(Chip-tool), Verify the success response for binding entries
[1657797710.456056][3796:3801] CHIP:DMG: status = 0x00 (SUCCESS),
@@ -81,19 +103,26 @@ tests:
verification: |
./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [1], "targets": [{"cluster": 6, "endpoint": 1, "deviceType": null}]}]" 2 0
+ on TH1 (Chip-tool), Verify the on command receives success response
+
[1652330385.328196][3240:3245] CHIP:DMG: StatusIB =
[1652330385.328229][3240:3245] CHIP:DMG: {
[1652330385.328264][3240:3245] CHIP:DMG: status = 0x00 (SUCCESS),
[1652330385.328298][3240:3245] CHIP:DMG: },
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [1], "targets": [{"cluster": 6, "endpoint": 1, "deviceType": null}]}]" 3 0
+ ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [1], "targets": [{"cluster": 6, "endpoint": 2, "deviceType": null}]}]" 3 0
+
+ on TH1(Chip-tool), Verify the on command receives success response
[1650610345.847274][2626:2631] CHIP:DMG: StatusIB =
[1650610345.847317][2626:2631] CHIP:DMG: {
[1650610345.847383][2626:2631] CHIP:DMG: status = 0x00 (SUCCESS),
[1650610345.847429][2626:2631] CHIP:DMG: },
+ NOTE:
+ Every DUT should have their own mechanism to trigger on/off mechanism ,this for raspi platform
+
DUT sends on command in the shell
> switch on
@@ -197,11 +226,15 @@ tests:
verification: |
./chip-tool onoff read on-off 2 1
+ Verify on TH2 (Chip-tool),the onoff value is set to ON
+
[1657798291.396477][3835:3841] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 4260513117
[1657798291.396514][3835:3841] CHIP:TOO: OnOff: TRUE
./chip-tool onoff read on-off 3 2
+ Verify on TH3 (Chip-tool) ,the onoff value is set to ON
+
[1657798691.194894][3869:3874] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 470320746
[1657798691.194948][3869:3874] CHIP:TOO: OnOff: TRUE
disabled: true
@@ -210,6 +243,8 @@ tests:
verification: |
./chip-tool binding write binding "[{"node" : 2 , "cluster" : "0x0006" , "endpoint" : 1 }]" 1 1
+ Verify on TH1(Chip-tool) ,binding entry receives success response
+
[1657800844.739833][4000:4006] CHIP:EM: Removed CHIP MessageCounter:244702117 from RetransTable on exchange 12653i
[1657800844.739867][4000:4006] CHIP:DMG: WriteClient moving to [ResponseRe]
[1657800844.739922][4000:4006] CHIP:DMG: WriteResponseMessage =
@@ -312,6 +347,7 @@ tests:
verification: |
./chip-tool onoff read on-off 2 1
+ Verify on TH2 (Chip-tool),the onoff value is set to OFF
[1657803168.769564][4272:4277] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 1968648540
@@ -323,6 +359,8 @@ tests:
verification: |
./chip-tool onoff read on-off 3 2
+ Verify on TH3 (Chip-tool) ,the onoff value is set to ON
+
[1657803609.731464][4333:4339] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 3914456390
[1657803609.731521][4333:4339] CHIP:TOO: OnOff: TRUE
diff --git a/src/app/tests/suites/certification/Test_TC_BIND_2_2.yaml b/src/app/tests/suites/certification/Test_TC_BIND_2_2.yaml
index 370adaa9174646..e55907df9aaf6f 100644
--- a/src/app/tests/suites/certification/Test_TC_BIND_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BIND_2_2.yaml
@@ -26,6 +26,25 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as controller test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Pre-Conditions"
+ verification: |
+ TH2 supports On/Off server on Endpoint 1.
+ TH2 supports Groups server on Endpoint 1.
+ DUT behaves as Group Admin
+ TH2 should have an ACL entry with the AuthMode as Group by DUT
+ DUT supports On/Off client
+ disabled: true
+
+ - label: "Note"
+ verification: |
+ Take 2 raspi, 1 as Lighting app and another one as chip-tool. and use [ nRF52840-DK ]Thread device as light-switch-app.
+ disabled: true
+
- label: "Factory Reset DUT"
verification: |
Vendor specific action, for chip-tool run
@@ -34,9 +53,9 @@ tests:
- label: "Commission DUT to TH1s fabric"
verification: |
- Run this cmmd in Thread device terminal:
+ Advertise the [ light-switch-app ] on [ nRF52840-DK ]Thread device and pair the TH using below cmmd.
- ./chip-tool pairing ble-thread 73 hex:0e080000000000010000000300000f35060004001fffe0020810101191022022920708fd6587bfe9821353051000112237945966880899aabbccddeeff030f7070656e5468726561644465696f6c010212340410f23d85dd55d9748cc6a1fd5fccbb1da20c0402a0fff8 20202021 3840
+ ./chip-tool pairing ble-thread 74 hex:0e080000000000010000000300000f35060004001fffe0020810101191022022920708fd6587bfe9821353051000112237945966880899aabbccddeeff030f7070656e5468726561644465696f6c010212340410f23d85dd55d9748cc6a1fd5fccbb1da20c0402a0fff8 20202021 3840
disabled: true
- label: "TH1 enables DUT as Controller"
@@ -46,7 +65,9 @@ tests:
- label: "Commission TH2 to TH1s fabric (Node ID = 2)"
verification: |
- ./chip-tool pairing onnetwork 1 20202021
+ Advertise the [Lighting-app] on Raspi and pair the TH using below cmmd.
+
+ ./chip-tool pairing onnetwork 2 20202021
On TH(Chip-tool), Verify the success response
@@ -68,6 +89,8 @@ tests:
Endpoint 0."
PICS: GRPKEY.C.C00.Tx
verification: |
+ Run this cmmd for lighting app in chip-tool:
+
./chip-tool groupkeymanagement key-set-write "{"groupKeySetID": 42,
"groupKeySecurityPolicy": 0, "epochKey0":
"d0d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime0": 2220000,"epochKey1":
@@ -115,6 +138,8 @@ tests:
list on GroupKeyManagement cluster to TH2 on Endpoint 0"
PICS: GRPKEY.C.A0000
verification: |
+ Run this cmmd for lighting app in chip-tool:
+
./chip-tool groupkeymanagement write group-key-map "[{"groupId": 1, "groupKeySetID": 42, "fabricIndex": 1}]" 2 0
On DUT, Verify the success response for GroupKeySetID
@@ -130,6 +155,8 @@ tests:
Endpoint 1."
PICS: G.C.C00.Tx
verification: |
+ Run this cmmd for lighting app in chip-tool:
+
./chip-tool groups add-group 0x0001 grp1 2 1
On DUT, Verify the success response for AddGroup
@@ -163,7 +190,9 @@ tests:
"TH1 writes Binding entry into DUT with Entry 1: Group = The Group ID
in the AddGroup command sent from DUT to TH2"
verification: |
- ./chip-tool binding write binding "[{"group" : "0x0001"}]" 73 1
+ Run this cmmd for [ nRF52840-DK ]Thread device in chip-tool:
+
+ ./chip-tool binding write binding "[{"group" : "0x0001"}]" 74 1
On TH, Verify the success response for binding entry
@@ -179,31 +208,37 @@ tests:
entries"
PICS: OO.C.C01.Tx
verification: |
+ Run this cmmd for [ nRF52840-DK ]Thread device in chip-tool:
+
./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null },{"fabricIndex": 1, "privilege": 4, "authMode": 3, "subjects": [1], "targets": null }]" 74 0
- On TH(Chip-tool), Verify the success response for Acl:
+ On TH1(Chip-tool), Verify the success response for Acl:
[1659075680.943991][2687:2692] CHIP:DMG: StatusIB =
[1659075680.944052][2687:2692] CHIP:DMG: {
[1659075680.944116][2687:2692] CHIP:DMG: status = 0x00 (SUCCESS),
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null },{"fabricIndex": 1, "privilege": 4, "authMode": 3, "subjects": [1], "targets": null }]" 1 0
+ Run this cmmd for lighting app in chip-tool:
- On TH(Chip-tool), Verify the success response for Acl:
+ ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null },{"fabricIndex": 1, "privilege": 4, "authMode": 3, "subjects": [1], "targets": null }]" 2 0
+
+ On TH1(Chip-tool), Verify the success response for Acl:
[1659075680.943991][2687:2692] CHIP:DMG: StatusIB =
[1659075680.944052][2687:2692] CHIP:DMG: {
[1659075680.944116][2687:2692] CHIP:DMG: status = 0x00 (SUCCESS),
- Press button no.2 on thread board
+ Press button no.2 on [ nRF52840-DK ]thread board
disabled: true
- label: "TH1 reads OnOff attribute from TH2 (Endpoint 1)"
PICS: OO.C.C01.Tx
verification: |
- ./chip-tool onoff read on-off 1 1
+ Run this cmmd for lighting app in chip-tool:
+
+ ./chip-tool onoff read on-off 2 1
- On TH (Chip-tool), Verify the value is set to ON
+ On TH1 (Chip-tool), Verify the value is set to ON
[1657717900.832851][4381:4386] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 1558029216
[1657717900.832890][4381:4386] CHIP:TOO: OnOff: TRUE
@@ -211,9 +246,11 @@ tests:
- label: "TH1 removes all the binding entries from DUT"
verification: |
- ./chip-tool binding write binding "[]" 73 1
+ Run this cmmd for [ nRF52840-DK ]Thread device in chip-tool:
- On TH(Chip-tool), Verify the success response for removing binding entry
+ ./chip-tool binding write binding "[]" 74 1
+
+ On TH1(Chip-tool), Verify the success response for removing binding entry
[1659362827.431927][2469:2475] CHIP:DMG: StatusIB =
[1659362827.431996][2469:2475] CHIP:DMG: {
@@ -226,15 +263,17 @@ tests:
entries"
PICS: OO.C.C00.Tx
verification: |
- Press button no.2 on thread board
+ Press button no.2 on [ nRF52840-DK ] thread board
disabled: true
- label: "TH1 reads OnOff attribute from TH2 (Endpoint 1)"
PICS: OO.C.C01.Tx
verification: |
- ./chip-tool onoff read on-off 1 1
+ Run this cmmd for lighting app in chip-tool:
+
+ ./chip-tool onoff read on-off 2 1
- On TH(Chip-tool), Verify the value is set to ON
+ On TH1(Chip-tool), Verify the value is set to ON
[1657718251.169765][4425:4431] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 1558029223
[1657718251.169817][4425:4431] CHIP:TOO: OnOff: TRUE
diff --git a/src/app/tests/suites/certification/Test_TC_BIND_2_3.yaml b/src/app/tests/suites/certification/Test_TC_BIND_2_3.yaml
index 5422042e31e77c..3457cdc91e536e 100644
--- a/src/app/tests/suites/certification/Test_TC_BIND_2_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BIND_2_3.yaml
@@ -26,6 +26,25 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as controller test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Pre-Conditions"
+ verification: |
+ TH1 enables DUT to handle group communication
+ TH2 supports On/Off server on Endpoint 1
+ TH2 supports Groups server on Endpoint 1
+ TH2 should have an ACL entry with the AuthMode as Group by TH1
+ DUT supports On/Off client
+ disabled: true
+
+ - label: "Note"
+ verification: |
+ Take 2 raspi, 1 as Lighting app and another one as chip-tool. and use [ nRF52840-DK ]Thread device as light-switch-app.
+ disabled: true
+
- label: "Factory Reset DUT"
verification: |
Vendor specific action, for chip-tool run
@@ -34,7 +53,7 @@ tests:
- label: "Commission DUT to TH1s fabric"
verification: |
- Run this cmmd in Thread device terminal:
+ Advertise the [ light-switch-app ] on [ nRF52840-DK ]Thread device and pair the TH using below cmmd.
./chip-tool pairing ble-thread 74 hex:0e080000000000010000000300000f35060004001fffe0020810101191022022920708fd6587bfe9821353051000112237945966880899aabbccddeeff030f7070656e5468726561644465696f6c010212340410f23d85dd55d9748cc6a1fd5fccbb1da20c0402a0fff8 20202021 3840
disabled: true
@@ -46,9 +65,11 @@ tests:
- label: "Commission TH2 to TH1s fabric (Node ID = 2)"
verification: |
- ./chip-tool pairing onnetwork 1 20202021
+ Advertise the [Lighting-app] on Raspi and pair the TH using below cmmd.
- On TH(Chip-tool), Verify the success response
+ ./chip-tool pairing onnetwork 2 20202021
+
+ On TH1(Chip-tool), Verify the success response
[1659104612.592373][62366:62371] CHIP:DMG: SuppressResponse = true,
[1659104612.592399][62366:62371] CHIP:DMG: InteractionModelRevision = 1
@@ -67,13 +88,16 @@ tests:
"TH1 sends KeySetWrite command to GroupKeyManagement cluster to TH2 on
Endpoint 0."
verification: |
+ Run this cmmd for [ nRF52840-DK ]Thread device in chip-tool:
+
+
./chip-tool groupkeymanagement key-set-write "{"groupKeySetID": 42,
"groupKeySecurityPolicy": 0, "epochKey0":
"d0d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime0": 2220000,"epochKey1":
"d1d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime1": 2220001,"epochKey2":
"d2d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime2": 2220002 }" 74 0
- On TH(Chip-tool), Verify the success response for KeySetWrite
+ On TH1(Chip-tool), Verify the success response for KeySetWrite
[1657719041.075123][4541:4546] CHIP:DMG: ICR moving to [ResponseRe]
[1657719041.075174][4541:4546] CHIP:DMG: InvokeResponseMessage =
@@ -105,16 +129,16 @@ tests:
[1657719041.075988][4541:4546] CHIP:DMG:
[1657719041.076012][4541:4546] CHIP:DMG: InteractionModelRevision = 1
-
+ Run this cmmd for lighting app in chip-tool:
./chip-tool groupkeymanagement key-set-write "{"groupKeySetID": 42,
"groupKeySecurityPolicy": 0, "epochKey0":
"d0d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime0": 2220000,"epochKey1":
"d1d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime1": 2220001,"epochKey2":
- "d2d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime2": 2220002 }" 1 0
+ "d2d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime2": 2220002 }" 2 0
[1657719041.076036][4541:4546] CHIP:DMG: }
- On TH, Verify the success response for KeySetWrite
+ On TH1, Verify the success response for KeySetWrite
[1657719041.075743][4541:4546] CHIP:DMG: status = 0x00 (SUCCESS),
disabled: true
@@ -123,9 +147,11 @@ tests:
"TH1 binds GroupId with GroupKeySetID in the GroupKeyMap attribute
list on GroupKeyManagement cluster to TH2 on Endpoint 0"
verification: |
+ Run this cmmd for [ nRF52840-DK ]Thread device in chip-tool:
+
./chip-tool groupkeymanagement write group-key-map "[{"groupId": 1, "groupKeySetID": 42, "fabricIndex": 1}]" 74 0
- On TH(Chip-tool), Verify the success response for GroupKeySetID
+ On TH1(Chip-tool), Verify the success response for GroupKeySetID
[1657719130.464175][4557:4562] CHIP:DMG: StatusIB =
[1657719130.464214][4557:4562] CHIP:DMG: {
@@ -133,11 +159,11 @@ tests:
[1657719130.464298][4557:4562] CHIP:DMG: },
[1657719130.464342][4557:4562] CHIP:DMG:
-
- ./chip-tool groupkeymanagement write group-key-map "[{"groupId": 1, "groupKeySetID": 42, "fabricIndex": 1}]" 1 0
+ Run this cmmd for lighting app in chip-tool:
+ ./chip-tool groupkeymanagement write group-key-map "[{"groupId": 1, "groupKeySetID": 42, "fabricIndex": 1}]" 2 0
- On TH(Chip-tool), Verify the success response for GroupKeySetID
+ On TH1(Chip-tool), Verify the success response for GroupKeySetID
[1657719130.464175][4557:4562] CHIP:DMG: StatusIB =
[1657719130.464214][4557:4562] CHIP:DMG: {
@@ -150,9 +176,11 @@ tests:
"TH1 sends AddGroup( Group Name and Group-ID) Command to TH2 on
Endpoint 1."
verification: |
+ Run this cmmd for [ nRF52840-DK ]Thread device in chip-tool:
+
./chip-tool groups add-group 0x0001 grp1 74 1
- On TH(Chip-tool), Verify the success response for AddGroup
+ On TH1(Chip-tool), Verify the success response for AddGroup
[1657719097.788236][4548:4554] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0004 Command 0x0000_0000
[1657719097.788325][4548:4554] CHIP:TOO: AddGroupResponse: {
@@ -161,10 +189,11 @@ tests:
[1657719097.788418][4548:4554] CHIP:TOO: }
+ Run this cmmd for lighting app in chip-tool:
- ./chip-tool groups add-group 0x0001 grp1 1 1
+ ./chip-tool groups add-group 0x0001 grp1 2 1
- On TH(Chip-tool), Verify the success response for AddGroup
+ On TH1(Chip-tool), Verify the success response for AddGroup
[1657719097.788236][4548:4554] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0004 Command 0x0000_0000
[1657719097.788325][4548:4554] CHIP:TOO: AddGroupResponse: {
@@ -195,9 +224,11 @@ tests:
"TH1 writes Binding entry into DUT with Entry 1: Group = The Group ID
in the AddGroup command sent from TH1 to TH2"
verification: |
+ Run this cmmd for [ nRF52840-DK ]Thread device in chip-tool:
+
./chip-tool binding write binding "[{"group" : "0x0001"}]" 74 1
- On TH(Chip-tool), Verify the success response for binding entry
+ On TH1(Chip-tool), Verify the success response for binding entry
[1657719251.763323][4597:4602] CHIP:DMG: StatusIB =
[1657719251.763360][4597:4602] CHIP:DMG: {
@@ -215,29 +246,35 @@ tests:
entries"
PICS: OO.C.C01.Tx
verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null },{"fabricIndex": 1, "privilege": 4, "authMode": 3, "subjects": [1], "targets": null }]" 74 0
+ Run this cmmd for [ nRF52840-DK ]Thread device in chip-tool:
+
+ ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null },{"fabricIndex": 1, "privilege": 4, "authMode": 3, "subjects": [1], "targets": null }]" 74 0
- On TH(Chip-tool), Verify the success response for Acl:
+ On TH1(Chip-tool), Verify the success response for Acl:
[1659075680.943991][2687:2692] CHIP:DMG: StatusIB =
[1659075680.944052][2687:2692] CHIP:DMG: {
[1659075680.944116][2687:2692] CHIP:DMG: status = 0x00 (SUCCESS),
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null },{"fabricIndex": 1, "privilege": 4, "authMode": 3, "subjects": [1], "targets": null }]" 1 0
+ Run this cmmd for lighting app in chip-tool:
- On TH(Chip-tool), Verify the success response for Acl:
+ ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null },{"fabricIndex": 1, "privilege": 4, "authMode": 3, "subjects": [1], "targets": null }]" 2 0
+
+ On TH1(Chip-tool), Verify the success response for Acl:
[1659075680.943991][2687:2692] CHIP:DMG: StatusIB =
[1659075680.944052][2687:2692] CHIP:DMG: {
[1659075680.944116][2687:2692] CHIP:DMG: status = 0x00 (SUCCESS),
- Press button no.2 on thread board
+ Press button no.2 on nrf52840 DK thread board
disabled: true
- label: "TH1 reads OnOff attribute from TH2 (Endpoint 1)"
PICS: OO.C.C01.Tx
verification: |
- ./chip-tool onoff read on-off 1 1
+ Run this cmmd for lighting app in chip-tool:
+
+ ./chip-tool onoff read on-off 2 1
On TH(Chip-tool), Verify the onoff value is set to ON
@@ -247,9 +284,11 @@ tests:
- label: "TH1 removes all the binding entries from DUT"
verification: |
+ Run this cmmd for [ nRF52840-DK ]Thread device in chip-tool:
+
./chip-tool binding write binding "[]" 74 1
- On TH(Chip-tool), Verify the success response for removing binding entry
+ On TH1(Chip-tool), Verify the success response for removing binding entry
[1659362827.431927][2469:2475] CHIP:DMG: StatusIB =
[1659362827.431996][2469:2475] CHIP:DMG: {
@@ -262,15 +301,17 @@ tests:
entries"
PICS: OO.C.C00.Tx
verification: |
- Press button no.2 on thread board
+ Press button no.2 on nrf52840 DK thread board
disabled: true
- label: "TH1 reads OnOff attribute from TH2 (Endpoint 1)"
PICS: OO.C.C01.Tx
verification: |
- ./chip-tool onoff read on-off 1 1
+ Run this cmmd for lighting app in chip-tool:
- On TH(Chip-tool), Verify the onoff value is set to ON
+ ./chip-tool onoff read on-off 2 1
+
+ On TH1(Chip-tool), Verify the onoff value is set to ON
[1657719448.858149][4636:4641] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 3526720174
[1657719448.858183][4636:4641] CHIP:TOO: OnOff: TRUE
diff --git a/src/app/tests/suites/certification/Test_TC_BINFO_2_2.yaml b/src/app/tests/suites/certification/Test_TC_BINFO_2_2.yaml
index 0ad5188ed749a4..e41fe1c356098f 100644
--- a/src/app/tests/suites/certification/Test_TC_BINFO_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BINFO_2_2.yaml
@@ -24,6 +24,19 @@ config:
endpoint: 0
tests:
+ - label: "Precondition"
+ verification: |
+ 1. DUT and TH can interact with each other. DUT is commissioned.
+
+ 2. BINFO.S.A0009(SoftwareVersion) - TH reads SoftwareVersion attribute from DUT and saves for future use
+
+ 3. BINFO.S.A0011(Reachable) - TH reads Reachable attribute from DUT and saves for future use(should be true)
+
+ 4. BINFO.S.E00(StartUp) && BINFO.S.E01(ShutDown) && BINFO.S.E02(Leave) - TH subscribes to StartUp, ShutDown, Leave and ReachableChanged events on the Basic Information cluster of the DUT
+
+ 5. TH saves the FabricIndex during commissioning
+ disabled: true
+
- label: "Reboot the DUT TH reads the StartUp event from DUT"
PICS: BINFO.S.E00
verification: |
@@ -63,7 +76,7 @@ tests:
2. run below command in interactive mode shell and Turn down the DUT
- verify that ShutDown event as priority set has CRITICAL on TH(chip-tool)
+ verify that ShutDown event as priority set has CRITICAL on TH(Chip-tool)
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Event 0x0000_0001
[1653050528.900202][119367:119372] CHIP:TOO: Event number: 5
diff --git a/src/app/tests/suites/certification/Test_TC_BOOL_2_2.yaml b/src/app/tests/suites/certification/Test_TC_BOOL_2_2.yaml
index 988b4cc058b01f..27166db07e5fbe 100644
--- a/src/app/tests/suites/certification/Test_TC_BOOL_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BOOL_2_2.yaml
@@ -24,9 +24,14 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ This test case is verified after the device is provisioned. Pls provision device first, Pass appropriate nodeID in the below command
+ disabled: true
+
- label: "Commission DUT to TH"
verification: |
- verification step to be updated.
+
disabled: true
- label: "Bring the DUT into a state so StateValue is FALSE"
@@ -66,50 +71,40 @@ tests:
- label: "Set up subscription to StateChange event"
PICS: BOOL.M.ManuallyControlled && BOOL.S.E00 && BOOL.S.A0000
verification: |
+ Need an SDK implementation required
+
Run the below command to start interactive mode
./chip-tool interactive start
Subscribe the event using below command in Interactive mode. Once the event occurs, TH(chip-tool) get the subscription message.
- booleanstate subscribe-by-id 0x0 1 100 2 1
+ booleanstate subscribe-event state-change 1 100 1 1 --is-urgent true
disabled: true
- label: "Bring the DUT into a state so StateValue is FALSE"
PICS: BOOL.M.ManuallyControlled && BOOL.S.E00 && BOOL.S.A0000
verification: |
On TH(chip-tool), verify the StateValue value as FALSE
-
- [1646119162.628169][3311:3316] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0045 Attribute 0x0000_0000DataVersion: 2127727071
- [1646119162.628207][3311:3316] CHIP:TOO: StateValue: FALSE
disabled: true
- label: "TH reads the StateValue attribute from the DUT"
PICS: BOOL.M.ManuallyControlled && BOOL.S.E00 && BOOL.S.A0000
verification: |
- ./chip-tool booleanstate read state-value 1 1
+ booleanstate read state-value 1 1
On TH(chip-tool), verify the StateValue value as FALSE
-
- [1646118838.087500][3279:3284] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0045 Attribute 0x0000_0000DataVersion: 2127727071
- [1646118838.087536][3279:3284] CHIP:TOO: StateValue: FALSE
disabled: true
- label: "Bring the DUT into a state so StateValue is TRUE"
PICS: BOOL.M.ManuallyControlled && BOOL.S.E00 && BOOL.S.A0000
verification: |
On TH(chip-tool), verify the StateValue value as TRUE
-
- [1646119162.628169][3311:3316] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0045 Attribute 0x0000_0000DataVersion: 2127727071
- [1646119162.628207][3311:3316] CHIP:TOO: StateValue: TRUE
disabled: true
- label: "TH reads the StateValue attribute from the DUT"
PICS: BOOL.M.ManuallyControlled && BOOL.S.E00 && BOOL.S.A0000
verification: |
- ./chip-tool booleanstate read state-value 1 1
+ booleanstate read state-value 1 1
On TH(chip-tool), verify the StateValue value as TRUE
-
- [1646118838.087500][3279:3284] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0045 Attribute 0x0000_0000DataVersion: 2127727071
- [1646118838.087536][3279:3284] CHIP:TOO: StateValue: TRUE
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_BRBINFO_1_1.yaml b/src/app/tests/suites/certification/Test_TC_BRBINFO_1_1.yaml
index 3e19e783a71e9b..f4eebc4d1089df 100644
--- a/src/app/tests/suites/certification/Test_TC_BRBINFO_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BRBINFO_1_1.yaml
@@ -23,9 +23,24 @@ config:
endpoint: 0
tests:
+ - label: ""
+ verification: |
+ Validate these PICS items of attributes which are not allowed in this server cluster implementation - these PICS items should all be FALSE, if any of them is TRUE then FAIL the test
+
+ BRBINFO.S.A0000(DataModelRevision)
+
+ BRBINFO.S.A0004(ProductID)
+
+ BRBINFO.S.A0006(Location)
+
+ BRBINFO.S.A0010(LocalConfigDisabled)
+
+ BRBINFO.S.A0013(CapabilityMinima)
+ disabled: true
+
- label: "Commission DUT to TH (if not already done)"
verification: |
- verification step to be updated.
+
disabled: true
- label: "TH reads the ClusterRevision from DUT"
diff --git a/src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml b/src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml
index 8ec428966a1037..af032127cea265 100644
--- a/src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml
@@ -26,8 +26,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read vendor-name 1 3
- Verify VendorName is of type string and is less than or equal to 32 bytes on TH(chip-tool) Log:
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656495199.434300][2158:2163] CHIP:TOO: VendorName: TEST_VENDOR
disabled: true
@@ -46,8 +47,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read vendor-name 1 3
- Verify VendorName is not chnged when compared to step 1 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656495199.434300][2158:2163] CHIP:TOO: VendorName: TEST_VENDOR
disabled: true
@@ -56,8 +58,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read vendor-id 1 3
- Veify VendorID value is in range of 0x0001 to 0xFFF0 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656495322.252171][2177:2182] CHIP:TOO: VendorID: 65521
disabled: true
@@ -76,8 +79,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read vendor-id 1 3
- Verify VendorID is not chnged when compared to step 8 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656495322.252171][2177:2182] CHIP:TOO: VendorID: 65521
disabled: true
@@ -86,8 +90,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read product-name 1 3
- Verify ProductName has human readable string and is less or equal to 32 bytes on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656495708.412745][2200:2205] CHIP:TOO: ProductName: TEST_PRODUCT
disabled: true
@@ -107,8 +112,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read product-name 1 3
- Verify ProductName is not chnged when compared to step 11 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656495708.412745][2200:2205] CHIP:TOO: ProductName: TEST_PRODUCT
disabled: true
@@ -117,8 +123,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read node-label 1 3
- Verify the value of node-label is type of string and contains length between 0 and 32 in TH(chip-tool) Log:
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1657696463.081741][15476:15481] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_0039 Attribute 0x0000_0005 DataVersion: 2577979325
[1657696463.081791][15476:15481] CHIP:TOO: NodeLabel: Light 1
disabled: true
@@ -132,15 +139,15 @@ tests:
NOTE the quotes: single-quote/double-quote/string/double-quote/single-quote
- On TH(chip-tool) verify that DUT sends a success response
- [1656495932.122094][2236:2241] CHIP:DMG: }
- [1656495932.122264][2236:2241] CHIP:DMG:
- [1656495932.122332][2236:2241] CHIP:DMG: StatusIB =
- [1656495932.122398][2236:2241] CHIP:DMG: {
- [1656495932.122466][2236:2241] CHIP:DMG: status = 0x00 (SUCCESS),
- [1656495932.122538][2236:2241] CHIP:DMG: },
- [1656495932.122602][2236:2241] CHIP:DMG:
- [1656495932.122660][2236:2241] CHIP:DMG: },
+
+ [1660839701.840432][2444:2449] CHIP:DMG: }
+ [1660839701.840505][2444:2449] CHIP:DMG:
+ [1660839701.840578][2444:2449] CHIP:DMG: StatusIB =
+ [1660839701.840661][2444:2449] CHIP:DMG: {
+ [1660839701.840742][2444:2449] CHIP:DMG: status = 0x88 (UNSUPPORTED_WRITE),
+ [1660839701.840827][2444:2449] CHIP:DMG: },
+ [1660839701.840905][2444:2449] CHIP:DMG:
+ [1660839701.840973][2444:2449] CHIP:DMG: },
disabled: true
- label: "TH reads NodeLabel"
@@ -159,8 +166,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read hardware-version 1 3
- Verify HardwareVersion is in range of 0 to 65534 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496175.564718][2302:2307] CHIP:TOO: HardwareVersion: 0
disabled: true
@@ -179,8 +187,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read hardware-version 1 3
- Verify HardwareVersion is not chnged when compared to step 21 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496175.564718][2302:2307] CHIP:TOO: HardwareVersion: 0
disabled: true
@@ -189,8 +198,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read hardware-version-string 1 3
- Verify HardwareVersionString value is type of string and in range of 1 to 64 bytes
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496257.298675][2315:2320] CHIP:TOO: HardwareVersionString: TEST_VERSION
disabled: true
@@ -209,8 +219,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read hardware-version-string 1 3
- Verify HardwareVersionString is not chnged when compared to step 24 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496257.298675][2315:2320] CHIP:TOO: HardwareVersionString: TEST_VERSION
disabled: true
@@ -219,8 +230,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read software-version 1 3
- Verify SoftwareVersion value is in range of 0 to 4294967294 on TH(chip-tol) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496411.609866][2348:2353] CHIP:TOO: SoftwareVersion: 1
disabled: true
@@ -239,8 +251,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read software-version 1 3
- Verify SoftwareVersion is not chnged when compared to step 27 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496411.609866][2348:2353] CHIP:TOO: SoftwareVersion: 1
disabled: true
@@ -249,8 +262,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read software-version-string 1 3
- Verify the SoftwareVersionString is of type string and has length of 1 to 64 bytes
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496498.568951][2362:2367] CHIP:TOO: SoftwareVersionString: 1.0
disabled: true
@@ -270,8 +284,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read software-version-string 1 3
- Verify SoftwareVersionString is not chnged when compared to step 1 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496498.568951][2362:2367] CHIP:TOO: SoftwareVersionString: 1.0
disabled: true
@@ -280,8 +295,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read manufacturing-date 1 3
- Verify manufacturing date is of type string and has length of range 8 to 16 bytes on TH()
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496661.777852][2388:2393] CHIP:TOO: ManufacturingDate: 20200101
disabled: true
@@ -300,8 +316,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read manufacturing-date 1 3
- Verify VendorName is not chnged when compared to step 1 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496661.777852][2388:2393] CHIP:TOO: ManufacturingDate: 20200101
disabled: true
@@ -310,6 +327,10 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read part-number 1 3
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+
+ Example Log:
+
[1656496800.941788][2405:2410] CHIP:TOO: PartNumber: 1234
disabled: true
@@ -328,8 +349,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read part-number 1 3
- Verify VendorName is not chnged when compared to step 1 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656496800.941788][2405:2410] CHIP:TOO: PartNumber: 1234
disabled: true
@@ -338,6 +360,10 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read product-url 1 3
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+
+ Example Log:
+
[1656497181.118653][2436:2441] CHIP:TOO: ProductURL: https://example.com/myproduct
disabled: true
@@ -356,8 +382,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read product-url 1 3
- Verify VendorName is not chnged when compared to step 1 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656497181.118653][2436:2441] CHIP:TOO: ProductURL: https://example.com/myproduct
disabled: true
@@ -366,6 +393,10 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read product-label 1 3
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+
+ Example Log:
+
[1656501313.811305][2602:2607] CHIP:TOO: ProductLabel: ABCD
disabled: true
@@ -374,8 +405,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic write product-label newproductlabel 1 3
- Verify response has unsupported write on TH(chip-tool) Log:
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656495259.991989][2164:2169] CHIP:TOO: Response Failure: IM Error 0x00000588: General error: 0x88 (UNSUPPORTED_WRITE)
disabled: true
@@ -384,8 +416,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read product-label 1 3
- Verify VendorName is not chnged when compared to step 1 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656501313.811305][2602:2607] CHIP:TOO: ProductLabel: ABCD
disabled: true
@@ -394,6 +427,10 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read serial-number 1 3
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+
+ Example Log:
+
[1656501452.183890][2624:2630] CHIP:TOO: SerialNumber: 5678
disabled: true
@@ -412,8 +449,9 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read serial-number 1 3
- Verify VendorName is not chnged when compared to step 1 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656501452.183890][2624:2630] CHIP:TOO: SerialNumber: 5678
disabled: true
@@ -434,9 +472,9 @@ tests:
false."
PICS: BRBINFO.S.A0011
verification: |
- ./chip-tool bridgeddevicebasic write-by-id 0x0005 ‘“false”’ 1 0
+ ./chip-tool bridgeddevicebasic write-by-id 0x0005 false 1 0
+
- Verify response has unsupported write on TH(chip-tool) Log:
On TH verify that, TH receives UNSUPPORTED_WRITE response as status
[1656496372.884955][2340:2345] CHIP:DMG: }
@@ -461,6 +499,10 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read unique-id 1 3
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+
+ Example Log:
+
[1656501734.253827][2673:2679] CHIP:TOO: UniqueID: 30789FE4FCF832C9
disabled: true
@@ -479,7 +521,8 @@ tests:
verification: |
./chip-tool bridgeddevicebasic read unique-id 1 3
- Verify VendorName is not chnged when compared to step 1 on TH(chip-tool) Log
+ Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+ Example Log:
[1656501734.253827][2673:2679] CHIP:TOO: UniqueID: 30789FE4FCF832C9
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_BRBINFO_2_2.yaml b/src/app/tests/suites/certification/Test_TC_BRBINFO_2_2.yaml
index ed625f1badc7e6..8f9c01ccd13edb 100644
--- a/src/app/tests/suites/certification/Test_TC_BRBINFO_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BRBINFO_2_2.yaml
@@ -21,6 +21,19 @@ config:
endpoint: 0
tests:
+ - label: "Precondition"
+ verification: |
+ 1. DUT and TH can interact with each other. DUT is commissioned.
+
+ 2. TH reads SoftwareVersion attribute from DUT and saves for future use
+
+ 3. TH reads Reachable attribute from DUT and saves for future use
+
+ 4. TH subscribes to StartUp, ShutDown, ReachableChanged and Leave events on the Basic cluster of the DUT
+
+ 5. TH saves the FabricIndex during commissioning
+ disabled: true
+
- label:
"Reboot the DUT (i.e. restart by power cycle, not by making it factory
new) TH receives the StartUp event from DUT"
diff --git a/src/app/tests/suites/certification/Test_TC_BRBINFO_2_3.yaml b/src/app/tests/suites/certification/Test_TC_BRBINFO_2_3.yaml
index ac004b610d315b..343d47dbd49355 100644
--- a/src/app/tests/suites/certification/Test_TC_BRBINFO_2_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BRBINFO_2_3.yaml
@@ -23,18 +23,18 @@ config:
tests:
- label: "Note"
verification: |
- Note: : For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
- - label: "Note"
+ - label: "Precondition"
verification: |
- For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ 1. Commission TH to DUT
disabled: true
- label: "DUT reads VendorName from the TH"
PICS: BRBINFO.C.A0001
verification: |
- ./chip-tool bridgeddevicebasic read vendor-name 1 0
+ ./chip-tool bridgeddevicebasic read vendor-name 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -66,7 +66,7 @@ tests:
- label: "DUT reads VendorID from the TH"
PICS: BRBINFO.C.A0002
verification: |
- ./chip-tool bridgeddevicebasic read vendor-id 1 0
+ ./chip-tool bridgeddevicebasic read vendor-id 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -120,7 +120,7 @@ tests:
- label: "DUT reads ProductName from the TH"
PICS: BRBINFO.C.A0003
verification: |
- ./chip-tool bridgeddevicebasic read product-name 1 0
+ ./chip-tool bridgeddevicebasic read product-name 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -150,7 +150,7 @@ tests:
- label: "DUT reads NodeLabel from the TH"
PICS: BRBINFO.C.A0005
verification: |
- ./chip-tool bridgeddevicebasic read node-label 1 0
+ ./chip-tool bridgeddevicebasic read node-label 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -183,7 +183,7 @@ tests:
- label: "DUT reads Location from the TH"
PICS: BRBINFO.C.A0006
verification: |
- ./chip-tool bridgeddevicebasic read location 1 0
+ ./chip-tool bridgeddevicebasic read location 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -216,7 +216,7 @@ tests:
- label: "DUT reads HardwareVersion from the TH"
PICS: BRBINFO.C.A0007
verification: |
- ./chip-tool bridgeddevicebasic read hardware-version-string 1 0
+ ./chip-tool bridgeddevicebasic read hardware-version 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -249,7 +249,7 @@ tests:
- label: "DUT reads HardwareVersionString from the TH"
PICS: BRBINFO.C.A0008
verification: |
- ./chip-tool bridgeddevicebasic read hardware-version-string 1 0
+ ./chip-tool bridgeddevicebasic read hardware-version-string 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -283,7 +283,7 @@ tests:
- label: "DUT reads SoftwareVersion from the TH"
PICS: BRBINFO.C.A0009
verification: |
- ./chip-tool bridgeddevicebasic read software-version 1 0
+ ./chip-tool bridgeddevicebasic read software-version 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -317,7 +317,7 @@ tests:
- label: "DUT reads SoftwareVersionString from the TH"
PICS: BRBINFO.C.A000a
verification: |
- ./chip-tool bridgeddevicebasic read software-version-string 1 0
+ ./chip-tool bridgeddevicebasic read software-version-string 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -351,7 +351,7 @@ tests:
- label: "DUT reads ManufacturingDate from the TH"
PICS: BRBINFO.C.A000b
verification: |
- ./chip-tool bridgeddevicebasic read manufacturing-date 1 0
+ ./chip-tool bridgeddevicebasic read manufacturing-date 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -385,7 +385,7 @@ tests:
- label: "DUT reads PartNumber from the TH"
PICS: BRBINFO.C.A000c
verification: |
- ./chip-tool bridgeddevicebasic read part-number 1 0
+ ./chip-tool bridgeddevicebasic read part-number 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -419,7 +419,7 @@ tests:
- label: "DUT reads ProductURL from the TH"
PICS: BRBINFO.C.A000d
verification: |
- ./chip-tool bridgeddevicebasic read product-url 1 0
+ ./chip-tool bridgeddevicebasic read product-url 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -453,7 +453,7 @@ tests:
- label: "DUT reads ProductLabel from the TH"
PICS: BRBINFO.C.A000e
verification: |
- ./chip-tool bridgeddevicebasic read product-label 1 0
+ ./chip-tool bridgeddevicebasic read product-label 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -487,7 +487,7 @@ tests:
- label: "DUT reads SerialNumber from the TH"
PICS: BRBINFO.C.A000f
verification: |
- ./chip-tool bridgeddevicebasic read serial-number 1 0
+ ./chip-tool bridgeddevicebasic read serial-number 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
@@ -521,7 +521,7 @@ tests:
- label: "DUT reads Reachable from the TH"
PICS: BRBINFO.C.A0011
verification: |
- ./chip-tool bridgeddevicebasic read reachable 1 0
+ ./chip-tool bridgeddevicebasic read reachable 1 3
Verify ReadRequestMessage is displayed on TH(all-clusters-app) Log
[1659966974.431316][3334:3334] CHIP:IM: Received Read request
@@ -552,7 +552,7 @@ tests:
- label: "DUT reads UniqueID from the TH"
PICS: BRBINFO.C.A0012
verification: |
- ./chip-tool bridgeddevicebasic read unique-id 1 0
+ ./chip-tool bridgeddevicebasic read unique-id 1 3
Optional Attribute - If it is supported, then in TH(all-clusters-app) log it will results in displaying the ReportDataMessage , else it will display UNSUPPORTED_ATTRIBUTE
diff --git a/src/app/tests/suites/certification/Test_TC_BR_4.yaml b/src/app/tests/suites/certification/Test_TC_BR_4.yaml
index e836b98ba2ffdf..0effe409a9420b 100644
--- a/src/app/tests/suites/certification/Test_TC_BR_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_BR_4.yaml
@@ -29,6 +29,14 @@ tests:
For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
+ - label: "Precondition"
+ verification: |
+ 1. Test Harness simulating a bridge with some bridged devices; can use the bridge-app for this purpose
+
+ 2.DUT (client and commissioner)
+
+ disabled: true
+
- label:
"Start bridge-app on TH. Commission TH to DUT. Monitor traffic between
DUT and TH."
@@ -37,173 +45,352 @@ tests:
./chip-tool pairing ethernet 1 20202021 3840 fe80::e65f:1ff:fe0f:2753 5540
- Verify DeviceTypeList for available EP
-
./chip-tool descriptor read device-list 1 1
Verify in TH(all-clusters-app) Log:
- [1657002313.871608][3977:3982] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3021853414
- [1657002313.871680][3977:3982] CHIP:TOO: device list: 1 entries
- [1657002313.871740][3977:3982] CHIP:TOO: [1]: {
- [1657002313.871788][3977:3982] CHIP:TOO: Type: 14
- [1657002313.871821][3977:3982] CHIP:TOO: Revision: 1
- [1657002313.871852][3977:3982] :TOOCHIP: }
+ [1659972694.732632][3652:3652] CHIP:IM: Received Read request
+ [1659972694.732712][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972694.732739][3652:3652] CHIP:DMG: {
+ [1659972694.732761][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972694.732800][3652:3652] CHIP:DMG: [
+ [1659972694.732824][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972694.732866][3652:3652] CHIP:DMG: {
+ [1659972694.732905][3652:3652] CHIP:DMG: Endpoint = 0x1,
+ [1659972694.732940][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972694.732980][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972694.733009][3652:3652] CHIP:DMG: }
+ [1659972694.733066][3652:3652] CHIP:DMG:
+ [1659972694.733092][3652:3652] CHIP:DMG: ],
+ [1659972694.733128][3652:3652] CHIP:DMG:
+ [1659972694.733154][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972694.733188][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972694.733211][3652:3652] CHIP:DMG: },
+ [1659972694.733292][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972694.733401][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972694.733429][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+ [1659972694.733460][3652:3652] CHIP:DMG: Reading attribute: Cluster=0x0000_001D Endpoint=1 AttributeId=0x0000_0000 (expanded=0)
+ [1659972694.733487][3652:3652] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_001D e=1 p=v
+ [1659972694.733520][3652:3652] CHIP:DMG: AccessControl: allowed
+
+
+ ./chip-tool descriptor read device-list 1 2
+
+ Verify in TH(all-clusters-app) Log:
+ [1659972694.732632][3652:3652] CHIP:IM: Received Read request
+ [1659972694.732712][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972694.732739][3652:3652] CHIP:DMG: {
+ [1659972694.732761][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972694.732800][3652:3652] CHIP:DMG: [
+ [1659972694.732824][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972694.732866][3652:3652] CHIP:DMG: {
+ [1659972694.732905][3652:3652] CHIP:DMG: Endpoint = 0x2,
+ [1659972694.732940][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972694.732980][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972694.733009][3652:3652] CHIP:DMG: }
+ [1659972694.733066][3652:3652] CHIP:DMG:
+ [1659972694.733092][3652:3652] CHIP:DMG: ],
+ [1659972694.733128][3652:3652] CHIP:DMG:
+ [1659972694.733154][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972694.733188][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972694.733211][3652:3652] CHIP:DMG: },
+ [1659972694.733292][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972694.733401][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972694.733429][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+ [1659972694.733460][3652:3652] CHIP:DMG: Reading attribute: Cluster=0x0000_001D Endpoint=1 AttributeId=0x0000_0000 (expanded=0)
+ [1659972694.733487][3652:3652] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_001D e=1 p=v
+ [1659972694.733520][3652:3652] CHIP:DMG: AccessControl: allowed
./chip-tool descriptor read device-list 1 3
Verify in TH(all-clusters-app) Log:
- [1657002329.438065][3983:3988] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2452512872
- [1657002329.438135][3983:3988] CHIP:TOO: device list: 2 entries
- [1657002329.438193][3983:3988] CHIP:TOO: [1]: {
- [1657002329.438238][3983:3988] CHIP:TOO: Type: 256
- [1657002329.438269][3983:3988] CHIP:TOO: Revision: 1
- [1657002329.438298][3983:3988] CHIP:TOO: }
- [1657002329.438332][3983:3988] CHIP:TOO: [2]: {
- [1657002329.438360][3983:3988] CHIP:TOO: Type: 19
- [1657002329.438389][3983:3988] CHIP:TOO: Revision: 1
- [1657002329.438416][3983:3988] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 4
Verify in TH(all-clusters-app) Log:
- [1657002348.693948][3989:3994] CHIP:TOO: Endpoint: 4 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 1398882309
- [1657002348.694013][3989:3994] CHIP:TOO: device list: 2 entries
- [1657002348.694063][3989:3994] CHIP:TOO: [1]: {
- [1657002348.694100][3989:3994] CHIP:TOO: Type: 259
- [1657002348.694125][3989:3994] CHIP:TOO: Revision: 1
- [1657002348.694149][3989:3994] CHIP:TOO: }
- [1657002348.694176][3989:3994] CHIP:TOO: [2]: {
- [1657002348.694199][3989:3994] CHIP:TOO: Type: 19
- [1657002348.694221][3989:3994] CHIP:TOO: Revision: 1
- [1657002348.694242][3989:3994] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x4,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 5
Verify in TH(all-clusters-app) Log:
- [1657002369.589492][3996:4001] CHIP:TOO: Endpoint: 5 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 130458766
- [1657002369.589556][3996:4001] CHIP:TOO: device list: 2 entries
- [1657002369.589610][3996:4001] CHIP:TOO: [1]: {
- [1657002369.589653][3996:4001] CHIP:TOO: Type: 259
- [1657002369.589682][3996:4001] CHIP:TOO: Revision: 1
- [1657002369.589710][3996:4001] CHIP:TOO: }
- [1657002369.589742][3996:4001] CHIP:TOO: [2]: {
- [1657002369.589768][3996:4001] CHIP:TOO: Type: 19
- [1657002369.589794][3996:4001] CHIP:TOO: Revision: 1
- [1657002369.589819][3996:4001] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x5,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 6
Verify in TH(all-clusters-app) Log:
- [1657002386.484093][4002:4007] CHIP:TOO: Endpoint: 6 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 295450100
- [1657002386.484155][4002:4007] CHIP:TOO: device list: 1 entries
- [1657002386.484255][4002:4007] CHIP:TOO: [1]: {
- [1657002386.484302][4002:4007] CHIP:TOO: Type: 19
- [1657002386.484332][4002:4007] CHIP:TOO: Revision: 1
- [1657002386.484361][4002:4007] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x6,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 7
Verify in TH(all-clusters-app) Log:
- [1657002413.721927][4015:4020] CHIP:TOO: Endpoint: 7 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2117104859
- [1657002413.721981][4015:4020] CHIP:TOO: device list: 1 entries
- [1657002413.722028][4015:4020] CHIP:TOO: [1]: {
- [1657002413.722065][4015:4020] CHIP:TOO: Type: 259
- [1657002413.722090][4015:4020] CHIP:TOO: Revision: 1
- [1657002413.722113][4015:4020] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x7,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 8
Verify in TH(all-clusters-app) Log:
- [1657002436.415904][4034:4039] CHIP:TOO: Endpoint: 8 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2026786918
- [1657002436.415972][4034:4039] CHIP:TOO: device list: 1 entries
- [1657002436.416033][4034:4039] CHIP:TOO: [1]: {
- [1657002436.416081][4034:4039] CHIP:TOO: Type: 259
- [1657002436.416115][4034:4039] CHIP:TOO: Revision: 1
- [1657002436.416146][4034:4039] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x8,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 9
Verify in TH(all-clusters-app) Log:
- [1657002455.445818][4040:4045] CHIP:TOO: Endpoint: 9 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 913116116
- [1657002455.445883][4040:4045] CHIP:TOO: device list: 1 entries
- [1657002455.445944][4040:4045] CHIP:TOO: [1]: {
- [1657002455.445991][4040:4045] CHIP:TOO: Type: 17
- [1657002455.446025][4040:4045] CHIP:TOO: Revision: 1
- [1657002455.446056][4040:4045] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x9,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 10
Verify in TH(all-clusters-app) Log:
- [1657002473.100910][4047:4052] CHIP:TOO: Endpoint: 10 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 259205426
- [1657002473.100967][4047:4052] CHIP:TOO: device list: 2 entries
- [1657002473.101013][4047:4052] CHIP:TOO: [1]: {
- [1657002473.101051][4047:4052] CHIP:TOO: Type: 256
- [1657002473.101076][4047:4052] CHIP:TOO: Revision: 1
- [1657002473.101098][4047:4052] CHIP:TOO: }
- [1657002473.101126][4047:4052] CHIP:TOO: [2]: {
- [1657002473.101148][4047:4052] CHIP:TOO: Type: 19
- [1657002473.101170][4047:4052] CHIP:TOO: Revision: 1
- [1657002473.101192][4047:4052] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x10,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 11
Verify in TH(all-clusters-app) Log:
- [1657002495.856770][4061:4066] CHIP:TOO: Endpoint: 11 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 4248421677
- [1657002495.856836][4061:4066] CHIP:TOO: device list: 2 entries
- [1657002495.856893][4061:4066] CHIP:TOO: [1]: {
- [1657002495.856938][4061:4066] CHIP:TOO: Type: 256
- [1657002495.856968][4061:4066] CHIP:TOO: Revision: 1
- [1657002495.856996][4061:4066] CHIP:TOO: }
- [1657002495.857030][4061:4066] CHIP:TOO: [2]: {
- [1657002495.857058][4061:4066] CHIP:TOO: Type: 19
- [1657002495.857085][4061:4066] CHIP:TOO: Revision: 1
- [1657002495.857112][4061:4066] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x11,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 12
Verify in TH(all-clusters-app) Log:
- [1657002515.862187][4073:4078] CHIP:TOO: Endpoint: 12 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2731599835
- [1657002515.862249][4073:4078] CHIP:TOO: device list: 2 entries
- [1657002515.862302][4073:4078] CHIP:TOO: [1]: {
- [1657002515.862343][4073:4078] CHIP:TOO: Type: 256
- [1657002515.862372][4073:4078] CHIP:TOO: Revision: 1
- [1657002515.862398][4073:4078] CHIP:TOO: }
- [1657002515.862429][4073:4078] CHIP:TOO: [2]: {
- [1657002515.862455][4073:4078] CHIP:TOO: Type: 19
- [1657002515.862480][4073:4078] CHIP:TOO: Revision: 1
- [1657002515.862504][4073:4078] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x12,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
./chip-tool descriptor read device-list 1 13
Verify in TH(all-clusters-app) Log:
- [1657002538.134605][4097:4102] CHIP:TOO: Endpoint: 13 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3449178249
- [1657002538.134700][4097:4102] CHIP:TOO: device list: 2 entries
- [1657002538.134784][4097:4102] CHIP:TOO: [1]: {
- [1657002538.134869][4097:4102] CHIP:TOO: Type: 256
- [1657002538.134916][4097:4102] CHIP:TOO: Revision: 1
- [1657002538.134973][4097:4102] CHIP:TOO: }
- [1657002538.135025][4097:4102] CHIP:TOO: [2]: {
- [1657002538.135083][4097:4102] CHIP:TOO: Type: 19
- [1657002538.135126][4097:4102] CHIP:TOO: Revision: 1
- [1657002538.135166][4097:4102] CHIP:TOO: }
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x13,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
@@ -212,160 +399,1343 @@ tests:
./chip-tool descriptor read parts-list 1 0
Verify in TH(all-clusters-app) Log:
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x0,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+ ./chip-tool descriptor read parts-list 1 1
+
+ Verify in TH(all-clusters-app) Log:
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x1,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+ ./chip-tool descriptor read parts-list 1 2
+
+ Verify in TH(all-clusters-app) Log:
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x2,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+ ./chip-tool descriptor read parts-list 1 3
+
+ Verify in TH(all-clusters-app) Log:
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 4
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x4,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 5
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x5,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 6
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x6,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 7
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x7,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 8
- [1657002201.045720][3893:3899] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 3573910940
- [1657002201.045841][3893:3899] CHIP:TOO: parts list: 12 entries
- [1657002201.045887][3893:3899] CHIP:TOO: [1]: 1
- [1657002201.045925][3893:3899] CHIP:TOO: [2]: 3
- [1657002201.045963][3893:3899] CHIP:TOO: [3]: 4
- [1657002201.046000][3893:3899] CHIP:TOO: [4]: 5
- [1657002201.046037][3893:3899] CHIP:TOO: [5]: 6
- [1657002201.046073][3893:3899] CHIP:TOO: [6]: 7
- [1657002201.046110][3893:3899] CHIP:TOO: [7]: 8
- [1657002201.046147][3893:3899] CHIP:TOO: [8]: 9
- [1657002201.046184][3893:3899] CHIP:TOO: [9]: 10
- [1657002201.046221][3893:3899] CHIP:TOO: [10]: 11
- [1657002201.046259][3893:3899] CHIP:TOO: [11]: 12
- [1657002201.046296][3893:3899] CHIP:TOO: [12]: 13
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x8,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 9
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x9,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 10
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x10,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+ ./chip-tool descriptor read parts-list 1 11
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x11,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 12
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x12,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 13
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x13,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+ disabled: true
+
+ - label: ""
+ PICS: MCORE.DEVLIST.UseDevices
+ verification: |
+ Verify DUT contains the (supported) devices from the above list
+
+ ./chip-tool descriptor read device-list 1 1
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972694.732632][3652:3652] CHIP:IM: Received Read request
+ [1659972694.732712][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972694.732739][3652:3652] CHIP:DMG: {
+ [1659972694.732761][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972694.732800][3652:3652] CHIP:DMG: [
+ [1659972694.732824][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972694.732866][3652:3652] CHIP:DMG: {
+ [1659972694.732905][3652:3652] CHIP:DMG: Endpoint = 0x1,
+ [1659972694.732940][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972694.732980][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972694.733009][3652:3652] CHIP:DMG: }
+ [1659972694.733066][3652:3652] CHIP:DMG:
+ [1659972694.733092][3652:3652] CHIP:DMG: ],
+ [1659972694.733128][3652:3652] CHIP:DMG:
+ [1659972694.733154][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972694.733188][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972694.733211][3652:3652] CHIP:DMG: },
+ [1659972694.733292][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972694.733401][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972694.733429][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+ [1659972694.733460][3652:3652] CHIP:DMG: Reading attribute: Cluster=0x0000_001D Endpoint=1 AttributeId=0x0000_0000 (expanded=0)
+ [1659972694.733487][3652:3652] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_001D e=1 p=v
+ [1659972694.733520][3652:3652] CHIP:DMG: AccessControl: allowed
./chip-tool descriptor read device-list 1 3
Verify in TH(all-clusters-app) Log:
- [1657002843.395988][4135:4140] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2452512872
- [1657002843.396058][4135:4140] CHIP:TOO: device list: 2 entries
- [1657002843.396112][4135:4140] CHIP:TOO: [1]: {
- [1657002843.396154][4135:4140] CHIP:TOO: Type: 256
- [1657002843.396204][4135:4140] CHIP:TOO: Revision: 1
- [1657002843.396232][4135:4140] CHIP:TOO: }
- [1657002843.396265][4135:4140] CHIP:TOO: [2]: {
- [1657002843.396291][4135:4140] CHIP:TOO: Type: 19
- [1657002843.396317][4135:4140] CHIP:TOO: Revision: 1
- [1657002843.396342][4135:4140] CHIP:TOO: }
+
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
./chip-tool descriptor read device-list 1 4
Verify in TH(all-clusters-app) Log:
- [1657002927.992247][4143:4148] CHIP:TOO: Endpoint: 4 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 1398882309
- [1657002927.992309][4143:4148] CHIP:TOO: device list: 2 entries
- [1657002927.992362][4143:4148] CHIP:TOO: [1]: {
- [1657002927.992405][4143:4148] CHIP:TOO: Type: 259
- [1657002927.992434][4143:4148] CHIP:TOO: Revision: 1
- [1657002927.992459][4143:4148] CHIP:TOO: }
- [1657002927.992490][4143:4148] CHIP:TOO: [2]: {
- [1657002927.992516][4143:4148] CHIP:TOO: Type: 19
- [1657002927.992542][4143:4148] CHIP:TOO: Revision: 1
- [1657002927.992567][4143:4148] CHIP:TOO: }
- ./chip-tool descriptor read device-list 1 5
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x4,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
+
+ ./chip-tool descriptor read device-list 1 5
Verify in TH(all-clusters-app) Log:
- [1657002949.332151][4156:4161] CHIP:TOO: Endpoint: 5 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 130458766
- [1657002949.332245][4156:4161] CHIP:TOO: device list: 2 entries
- [1657002949.332294][4156:4161] CHIP:TOO: [1]: {
- [1657002949.332332][4156:4161] CHIP:TOO: Type: 259
- [1657002949.332356][4156:4161] CHIP:TOO: Revision: 1
- [1657002949.332379][4156:4161] CHIP:TOO: }
- [1657002949.332405][4156:4161] CHIP:TOO: [2]: {
- [1657002949.332427][4156:4161] CHIP:TOO: Type: 19
- [1657002949.332449][4156:4161] CHIP:TOO: Revision: 1
- [1657002949.332470][4156:4161] CHIP:TOO: }
- ./chip-tool descriptor read device-list 1 6
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x5,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
+
+ ./chip-tool descriptor read device-list 1 6
Verify in TH(all-clusters-app) Log:
- [1657002965.947096][4163:4168] CHIP:TOO: Endpoint: 6 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 295450100
- [1657002965.947150][4163:4168] CHIP:TOO: device list: 1 entries
- [1657002965.947196][4163:4168] CHIP:TOO: [1]: {
- [1657002965.947231][4163:4168] CHIP:TOO: Type: 19
- [1657002965.947256][4163:4168] CHIP:TOO: Revision: 1
- [1657002965.947278][4163:4168] CHIP:TOO: }
- ./chip-tool descriptor read device-list 1 7
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x6,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
+
+ ./chip-tool descriptor read device-list 1 7
Verify in TH(all-clusters-app) Log:
- [1657002981.963307][4176:4181] CHIP:TOO: Endpoint: 7 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2117104859
- [1657002981.963371][4176:4181] CHIP:TOO: device list: 1 entries
- [1657002981.963429][4176:4181] CHIP:TOO: [1]: {
- [1657002981.963474][4176:4181] CHIP:TOO: Type: 259
- [1657002981.963505][4176:4181] CHIP:TOO: Revision: 1
- [1657002981.963533][4176:4181] CHIP:TOO: }
- ./chip-tool descriptor read device-list 1 8
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x7,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
+
+ ./chip-tool descriptor read device-list 1 8
Verify in TH(all-clusters-app) Log:
- [1657003007.476575][4183:4188] CHIP:TOO: Endpoint: 8 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2026786918
- [1657003007.476635][4183:4188] CHIP:TOO: device list: 1 entries
- [1657003007.476689][4183:4188] CHIP:TOO: [1]: {
- [1657003007.476731][4183:4188] CHIP:TOO: Type: 259
- [1657003007.476760][4183:4188] CHIP:TOO: Revision: 1
- [1657003007.476786][4183:4188] CHIP:TOO: }
- ./chip-tool descriptor read device-list 1 9
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x8,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
+
+ ./chip-tool descriptor read device-list 1 9
Verify in TH(all-clusters-app) Log:
- [1657003023.263333][4191:4196] CHIP:TOO: Endpoint: 9 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 913116116
- [1657003023.263391][4191:4196] CHIP:TOO: device list: 1 entries
- [1657003023.263443][4191:4196] CHIP:TOO: [1]: {
- [1657003023.263484][4191:4196] CHIP:TOO: Type: 17
- [1657003023.263512][4191:4196] CHIP:TOO: Revision: 1
- [1657003023.263538][4191:4196] CHIP:TOO: }
- ./chip-tool descriptor read device-list 1 10
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x9,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
+
+ ./chip-tool descriptor read device-list 1 10
Verify in TH(all-clusters-app) Log:
- [1657003044.071972][4204:4209] CHIP:TOO: Endpoint: 10 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 259205426
- [1657003044.072037][4204:4209] CHIP:TOO: device list: 2 entries
- [1657003044.072085][4204:4209] CHIP:TOO: [1]: {
- [1657003044.072123][4204:4209] CHIP:TOO: Type: 256
- [1657003044.072149][4204:4209] CHIP:TOO: Revision: 1
- [1657003044.072195][4204:4209] CHIP:TOO: }
- [1657003044.072227][4204:4209] CHIP:TOO: [2]: {
- [1657003044.072250][4204:4209] CHIP:TOO: Type: 19
- [1657003044.072272][4204:4209] CHIP:TOO: Revision: 1
- [1657003044.072295][4204:4209] CHIP:TOO: }
- ./chip-tool descriptor read device-list 1 11
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x10,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
+ ./chip-tool descriptor read device-list 1 11
Verify in TH(all-clusters-app) Log:
- [1657003082.358311][4217:4222] CHIP:TOO: Endpoint: 11 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 4248421677
- [1657003082.358379][4217:4222] CHIP:TOO: device list: 2 entries
- [1657003082.358432][4217:4222] CHIP:TOO: [1]: {
- [1657003082.358471][4217:4222] CHIP:TOO: Type: 256
- [1657003082.358501][4217:4222] CHIP:TOO: Revision: 1
- [1657003082.358529][4217:4222] CHIP:TOO: }
- [1657003082.358563][4217:4222] CHIP:TOO: [2]: {
- [1657003082.358591][4217:4222] CHIP:TOO: Type: 19
- [1657003082.358619][4217:4222] CHIP:TOO: Revision: 1
- [1657003082.358646][4217:4222] CHIP:TOO: }
- ./chip-tool descriptor read device-list 1 12
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x11,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
+
+ ./chip-tool descriptor read device-list 1 12
Verify in TH(all-clusters-app) Log:
- [1657003103.954911][4248:4253] CHIP:TOO: Endpoint: 12 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2731599835
- [1657003103.954986][4248:4253] CHIP:TOO: device list: 2 entries
- [1657003103.955050][4248:4253] CHIP:TOO: [1]: {
- [1657003103.955095][4248:4253] CHIP:TOO: Type: 256
- [1657003103.955125][4248:4253] CHIP:TOO: Revision: 1
- [1657003103.955153][4248:4253] CHIP:TOO: }
- [1657003103.955186][4248:4253] CHIP:TOO: [2]: {
- [1657003103.955214][4248:4253] CHIP:TOO: Type: 19
- [1657003103.955242][4248:4253] CHIP:TOO: Revision: 1
- [1657003103.955269][4248:4253] CHIP:TOO: }
+
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x12,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
./chip-tool descriptor read device-list 1 13
Verify in TH(all-clusters-app) Log:
- [1657003125.905572][4261:4266] CHIP:TOO: Endpoint: 13 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3449178249
- [1657003125.905638][4261:4266] CHIP:TOO: device list: 2 entries
- [1657003125.905687][4261:4266] CHIP:TOO: [1]: {
- [1657003125.905723][4261:4266] CHIP:TOO: Type: 256
- [1657003125.905750][4261:4266] CHIP:TOO: Revision: 1
- [1657003125.905773][4261:4266] CHIP:TOO: }
- [1657003125.905800][4261:4266] CHIP:TOO: [2]: {
- [1657003125.905823][4261:4266] CHIP:TOO: Type: 19
- [1657003125.905845][4261:4266] CHIP:TOO: Revision: 1
- [1657003125.905867][4261:4266] CHIP:TOO: }
+
+ [1659972745.371532][3652:3652] CHIP:IM: Received Read request
+ [1659972745.371611][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972745.371654][3652:3652] CHIP:DMG: {
+ [1659972745.371678][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972745.371716][3652:3652] CHIP:DMG: [
+ [1659972745.371742][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972745.371781][3652:3652] CHIP:DMG: {
+ [1659972745.371818][3652:3652] CHIP:DMG: Endpoint = 0x13,
+ [1659972745.371860][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972745.371902][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972745.371933][3652:3652] CHIP:DMG: }
+ [1659972745.371971][3652:3652] CHIP:DMG:
+ [1659972745.371997][3652:3652] CHIP:DMG: ],
+ [1659972745.372036][3652:3652] CHIP:DMG:
+ [1659972745.372063][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972745.372099][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972745.372124][3652:3652] CHIP:DMG: },
+ [1659972745.372217][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972745.372312][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972745.372343][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+
+
+
+ Verify PartsList for available EP
+
+ ./chip-tool descriptor read parts-list 1 0
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x0,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 3
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 4
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x4,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 5
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x5,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 6
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x6,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 7
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x7,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 8
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x8,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 9
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x9,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 10
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x10,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+ ./chip-tool descriptor read parts-list 1 11
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x11,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 12
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x12,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+
+
+ ./chip-tool descriptor read parts-list 1 13
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x13,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+ disabled: true
+
+ - label: ""
+ PICS: MCORE.DEVLIST.UseDeviceNames
+ verification: |
+ NodeLabel is supported for endpoints 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
+
+ ./chip-tool bridgeddevicebasic read node-label 1 3
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 4
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x4,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 5
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x5,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 6
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x6,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 7
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x7,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 8
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x8,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 9
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x9,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 10
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x10,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 11
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x11,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 12
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x12,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+
+
+
+ ./chip-tool bridgeddevicebasic read node-label 1 13
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x13,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
+ disabled: true
+
+ - label: ""
+ PICS: MCORE.DEVLIST.UseDeviceState
+ verification: |
+ Read onoff attribute from OnOff cluster with applicable EP (refer step 1a )
+
+ ./chip-tool onoff read on-off 1 3
+
+ Verify in TH(all-clusters-app) Log:
+
+ [1659973152.263905][3652:3652] CHIP:IM: Received Read request
+ [1659973152.264002][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973152.264053][3652:3652] CHIP:DMG: {
+ [1659973152.264083][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973152.264130][3652:3652] CHIP:DMG: [
+ [1659973152.264163][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973152.264214][3652:3652] CHIP:DMG: {
+ [1659973152.264255][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659973152.264308][3652:3652] CHIP:DMG: Cluster = 0x6,
+ [1659973152.264350][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659973152.264404][3652:3652] CHIP:DMG: }
+ [1659973152.264457][3652:3652] CHIP:DMG:
+ [1659973152.264494][3652:3652] CHIP:DMG: ],
+ [1659973152.264541][3652:3652] CHIP:DMG:
+ [1659973152.264577][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973152.264622][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973152.264654][3652:3652] CHIP:DMG: },
+ [1659973152.264756][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973152.264871][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973152.264922][3652:3652] CHIP:DMG: Cluster 6, Attribute 0 is dirty
disabled: true
- label:
@@ -373,17 +1743,58 @@ tests:
bridged On/Off lights (use key c in the console to bridge-app)"
PICS: MCORE.DEVLIST.UseDeviceState
verification: |
- Verify on DUT(chip-tool) Log
- c
- [1659089560.774328][12236:12241] CHIP:DL: Device[Light 1b]: ON
- [1659089560.774681][12236:12236] CHIP:DMG: Endpoint 3, Cluster 0x0000_0006 update version to 83dcb371
+ Verify on TH(all-clusters-app) Log:
+ ./chip-tool onoff read on-off 1 3
+ [1659973152.263905][3652:3652] CHIP:IM: Received Read request
+ [1659973152.264002][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973152.264053][3652:3652] CHIP:DMG: {
+ [1659973152.264083][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973152.264130][3652:3652] CHIP:DMG: [
+ [1659973152.264163][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973152.264214][3652:3652] CHIP:DMG: {
+ [1659973152.264255][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659973152.264308][3652:3652] CHIP:DMG: Cluster = 0x6,
+ [1659973152.264350][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659973152.264404][3652:3652] CHIP:DMG: }
+ [1659973152.264457][3652:3652] CHIP:DMG:
+ [1659973152.264494][3652:3652] CHIP:DMG: ],
+ [1659973152.264541][3652:3652] CHIP:DMG:
+ [1659973152.264577][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973152.264622][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973152.264654][3652:3652] CHIP:DMG: },
+ [1659973152.264756][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973152.264871][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973152.264922][3652:3652] CHIP:DMG: Cluster 6, Attribute 0 is dirty
+ disabled: true
+
+ - label: ""
+ PICS: MCORE.DEVLIST.UseDeviceState
+ verification: |
+ ./chip-tool temperaturemeasurement read measured-value 1 4
Verify on TH(all-clusters-app) Log:
- ./chip-tool onoff read on-off 1 3
- [1659089585.162599][8769:8774] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 2212279153
- [1659089585.162714][8769:8774] CHIP:TOO: OnOff: TRUE
+ [1659973227.630446][3652:3652] CHIP:IM: Received Read request
+ [1659973227.630527][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973227.630570][3652:3652] CHIP:DMG: {
+ [1659973227.630594][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973227.630633][3652:3652] CHIP:DMG: [
+ [1659973227.630658][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973227.630699][3652:3652] CHIP:DMG: {
+ [1659973227.630728][3652:3652] CHIP:DMG: Endpoint = 0x4,
+ [1659973227.630779][3652:3652] CHIP:DMG: Cluster = 0x402,
+ [1659973227.630821][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659973227.630853][3652:3652] CHIP:DMG: }
+ [1659973227.630892][3652:3652] CHIP:DMG:
+ [1659973227.630919][3652:3652] CHIP:DMG: ],
+ [1659973227.630957][3652:3652] CHIP:DMG:
+ [1659973227.630984][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973227.631020][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973227.631044][3652:3652] CHIP:DMG: },
+ [1659973227.631126][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973227.631231][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973227.631262][3652:3652] CHIP:DMG: Cluster 402, Attribute 0 is dirty
disabled: true
- label:
@@ -394,17 +1805,8 @@ tests:
verification: |
Press a key "tbd" on bridge-app to change the simulated temperature
- Verify on DUT(chip-tool) Log
- [1659351537.115828][14237:14242] CHIP:DL: TempSensorDevice[TempSensor 1]: New measurement=""200""
- [1659351537.115987][14237:14242] CHIP:DL: TempSensorDevice[TempSensor 2]: New measurement=""200""
- [1659351537.116097][14237:14242] CHIP:DL: TempSensorDevice[Composed TempSensor 1]: New measurement=""200""
- [1659351537.116158][14237:14237] CHIP:DMG: Endpoint 4, Cluster 0x0000_0402 update version to 8f732d69
- [1659351537.116300][14237:14237] CHIP:DMG: Endpoint 5, Cluster 0x0000_0402 update version to 36be37c5
- [1659351537.116393][14237:14237] CHIP:DMG: Endpoint 7, Cluster 0x0000_0402 update version to 2cf2064d
- [1659351537.116179][14237:14242] CHIP:DL: TempSensorDevice[Composed TempSensor 2]: New measurement=""200""
- "
- "./chip-tool temperaturemeasurement read measured-value 1 4
+ ./chip-tool temperaturemeasurement read measured-value 1 4
Verify on TH(all-clusters-app) Log:
@@ -414,28 +1816,73 @@ tests:
[1659351542.393552][12212:12217] CHIP:EM: Sending Standalone Ack for MessageCounter:120981971 on exchange 25924i
disabled: true
- - label:
- "Use the DUT to change the on/off state of one or more of the bridged
- On/Off lights"
+ - label: ""
+ PICS: MCORE.DEVLIST.UseBatInfo
verification: |
- ./chip-tool onoff on 1 3
+ ./chip-tool powersource read bat-charge-level 1 9
- Verify on DUT(chip-tool) Log
+ Verify on TH(all-clusters-app) Log:
- [1658501274.507714][14425:14425] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0006 e=3 p=o
- [1658501274.507760][14425:14425] CHIP:DMG: AccessControl: allowed
- [1658501274.507789][14425:14425] CHIP:DMG: Received command for Endpoint=3 Cluster=0x0000_0006 Command=0x0000_0001
- [1658501274.507829][14425:14425] CHIP:ZCL: On/Off set value: 3 1
- [1658501274.507854][14425:14425] CHIP:DL: HandleReadOnOffAttribute: attrId=0, maxReadLength=1
- [1658501274.507886][14425:14425] CHIP:ZCL: On/off already set to new value
+ [1659973227.630446][3652:3652] CHIP:IM: Received Read request
+ [1659973227.630527][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973227.630570][3652:3652] CHIP:DMG: {
+ [1659973227.630594][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973227.630633][3652:3652] CHIP:DMG: [
+ [1659973227.630658][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973227.630699][3652:3652] CHIP:DMG: {
+ [1659973227.630728][3652:3652] CHIP:DMG: Endpoint = 0x4,
+ [1659973227.630779][3652:3652] CHIP:DMG: Cluster = 0x402,
+ [1659973227.630821][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659973227.630853][3652:3652] CHIP:DMG: }
+ [1659973227.630892][3652:3652] CHIP:DMG:
+ [1659973227.630919][3652:3652] CHIP:DMG: ],
+ [1659973227.630957][3652:3652] CHIP:DMG:
+ [1659973227.630984][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973227.631020][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973227.631044][3652:3652] CHIP:DMG: },
+ [1659973227.631126][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973227.631231][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973227.631262][3652:3652] CHIP:DMG: Cluster 402, Attribute 0 is dirty
+ disabled: true
+ - label: ""
+ verification: |
+ verification step to be updated.
+ disabled: true
+ - label:
+ "Use the DUT to change the on/off state of one or more of the bridged
+ On/Off lights"
+ verification: |
./chip-tool onoff read on-off 1 3
Verify on TH(all-clusters-app) Log:
- [1658501339.773125][35583:35588] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 3868039507
- [1658501339.773139][35583:35588] CHIP:TOO: OnOff: TRUE
+ [1659973152.263905][3652:3652] CHIP:IM: Received Read request
+ [1659973152.264002][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973152.264053][3652:3652] CHIP:DMG: {
+ [1659973152.264083][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973152.264130][3652:3652] CHIP:DMG: [
+ [1659973152.264163][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973152.264214][3652:3652] CHIP:DMG: {
+ [1659973152.264255][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659973152.264308][3652:3652] CHIP:DMG: Cluster = 0x6,
+ [1659973152.264350][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659973152.264404][3652:3652] CHIP:DMG: }
+ [1659973152.264457][3652:3652] CHIP:DMG:
+ [1659973152.264494][3652:3652] CHIP:DMG: ],
+ [1659973152.264541][3652:3652] CHIP:DMG:
+ [1659973152.264577][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973152.264622][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973152.264654][3652:3652] CHIP:DMG: },
+ [1659973152.264756][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973152.264871][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973152.264922][3652:3652] CHIP:DMG: Cluster 6, Attribute 0 is dirty
+ disabled: true
+
+ - label: ""
+ verification: |
+ verification step to be updated.
disabled: true
- label:
@@ -447,8 +1894,26 @@ tests:
Verify on TH(all-clusters-app) Log:
- [1659089932.160005][8810:8815] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_0039 Attribute 0x0000_0005 DataVersion: 3178625724
- [1659089932.160111][8810:8815] CHIP:TOO: NodeLabel: Light 1
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
Verify on DUT(chip-tool) Log
@@ -459,86 +1924,157 @@ tests:
Verify on TH(all-clusters-app) Log:
- [1659352004.560327][12241:12246] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_0039 Attribute 0x0000_0005 DataVersion: 2321959095
- [1659352004.560365][12241:12246] CHIP:TOO: NodeLabel: Light 1b
+ [1659973028.616696][3652:3652] CHIP:IM: Received Read request
+ [1659973028.616774][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659973028.616810][3652:3652] CHIP:DMG: {
+ [1659973028.616833][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659973028.616859][3652:3652] CHIP:DMG: [
+ [1659973028.616891][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659973028.616919][3652:3652] CHIP:DMG: {
+ [1659973028.616955][3652:3652] CHIP:DMG: Endpoint = 0x3,
+ [1659973028.617095][3652:3652] CHIP:DMG: Cluster = 0x39,
+ [1659973028.617138][3652:3652] CHIP:DMG: Attribute = 0x0000_0005,
+ [1659973028.617166][3652:3652] CHIP:DMG: }
+ [1659973028.617194][3652:3652] CHIP:DMG:
+ [1659973028.617228][3652:3652] CHIP:DMG: ],
+ [1659973028.617256][3652:3652] CHIP:DMG:
+ [1659973028.617291][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659973028.617317][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659973028.617348][3652:3652] CHIP:DMG: },
+ [1659973028.617428][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659973028.617533][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659973028.617572][3652:3652] CHIP:DMG: Cluster 39, Attribute 5 is dirty
disabled: true
- - label:
- "Use TH/bridge-app to add a bridged light (use key 2 in the console to
- bridge-app to add Light 2)"
+ - label: ""
+ PICS: MCORE.DEVLIST.UseDeviceNames
verification: |
Verify on DUT(chip-tool) Log
- 2
- [1659352274.915018][14237:14242] CHIP:DMG: Endpoint 1, Cluster 0x0000_001D update version to 7e918bae
- [1659352274.915107][14237:14242] CHIP:DMG: Endpoint 0, Cluster 0x0000_001D update version to 7561f371
- [1659352274.915166][14237:14242] CHIP:DL: Added device Light 2 to dynamic endpoint 14 (index=11)
+ b
+ [1659089470.077297][12236:12241] CHIP:DL: Device[Light 1]: New Name="Light 1b"
+ disabled: true
+
+ - label:
+ "Use TH/bridge-app to add a bridged light (use key 2 in the console to
+ bridge-app to add Light 2)"
+ verification: |
+ Press "2" on TH(chip-tool) Log
./chip-tool descriptor read parts-list 1 0
Verify the endpoints listed in TH(all-clusters-app) Log
- [1659352284.821350][12264:12269] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 1969353585
- [1659352284.821433][12264:12269] CHIP:TOO: parts list: 13 entries
- [1659352284.821470][12264:12269] CHIP:TOO: [1]: 1
- [1659352284.821500][12264:12269] CHIP:TOO: [2]: 3
- [1659352284.821529][12264:12269] CHIP:TOO: [3]: 4
- [1659352284.821557][12264:12269] CHIP:TOO: [4]: 5
- [1659352284.821586][12264:12269] CHIP:TOO: [5]: 6
- [1659352284.821614][12264:12269] CHIP:TOO: [6]: 7
- [1659352284.821642][12264:12269] CHIP:TOO: [7]: 8
- [1659352284.821670][12264:12269] CHIP:TOO: [8]: 9
- [1659352284.821698][12264:12269] CHIP:TOO: [9]: 10
- [1659352284.821726][12264:12269] CHIP:TOO: [10]: 11
- [1659352284.821755][12264:12269] CHIP:TOO: [11]: 12
- [1659352284.821784][12264:12269] CHIP:TOO: [12]: 13
- [1659352284.821812][12264:12269] CHIP:TOO: [13]: 14
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x0,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
"
./chip-tool descriptor read parts-list 1 1
Verify the list contains 11 entries in TH(all-clusters-app) Log
- [1659352298.310126][12270:12275] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 2123467694
- [1659352298.310213][12270:12275] CHIP:TOO: parts list: 12 entries
- [1659352298.310248][12270:12275] CHIP:TOO: [1]: 3
- [1659352298.310277][12270:12275] CHIP:TOO: [2]: 4
- [1659352298.310304][12270:12275] CHIP:TOO: [3]: 5
- [1659352298.310330][12270:12275] CHIP:TOO: [4]: 6
- [1659352298.310356][12270:12275] CHIP:TOO: [5]: 7
- [1659352298.310381][12270:12275] CHIP:TOO: [6]: 8
- [1659352298.310407][12270:12275] CHIP:TOO: [7]: 9
- [1659352298.310433][12270:12275] CHIP:TOO: [8]: 10
- [1659352298.310459][12270:12275] CHIP:TOO: [9]: 11
- [1659352298.310485][12270:12275] CHIP:TOO: [10]: 12
- [1659352298.310512][12270:12275] CHIP:TOO: [11]: 13
- [1659352298.310538][12270:12275] CHIP:TOO: [12]: 14
- [1659352298.310687][12270:12275] CHIP:EM: Sending Standalone Ack for MessageCounter:4449538 on exchange 4393i
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x1,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
./chip-tool descriptor read parts-list 1 14
Verify on TH(all-clusters-app) Log
-
- [1659352316.442844][12276:12281] CHIP:TOO: Endpoint: 14 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 3417142897
- [1659352316.442927][12276:12281] CHIP:TOO: parts list: 0 entries
- [1659352316.443042][12276:12281] CHIP:EM: Sending Standalone Ack for MessageCounter:85433161 on exchange 30040i
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x14,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
./chip-tool descriptor read device-list 1 14
Verify the list contains 11 entries in TH(all-clusters-app) Log
- [1659352346.719522][12283:12288] CHIP:TOO: Endpoint: 14 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3417142897
- [1659352346.719601][12283:12288] CHIP:TOO: device list: 2 entries
- [1659352346.719645][12283:12288] CHIP:TOO: [1]: {
- [1659352346.719675][12283:12288] CHIP:TOO: Type: 256
- [1659352346.719704][12283:12288] CHIP:TOO: Revision: 1
- [1659352346.719732][12283:12288] CHIP:TOO: }
- [1659352346.719766][12283:12288] CHIP:TOO: [2]: {
- [1659352346.719794][12283:12288] CHIP:TOO: Type: 19
- [1659352346.719822][12283:12288] CHIP:TOO: Revision: 1
- [1659352346.719849][12283:12288] CHIP:TOO: }
- [1659352346.719958][12283:12288] CHIP:EM: Sending Standalone Ack fo
+ [1659972694.732632][3652:3652] CHIP:IM: Received Read request
+ [1659972694.732712][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972694.732739][3652:3652] CHIP:DMG: {
+ [1659972694.732761][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972694.732800][3652:3652] CHIP:DMG: [
+ [1659972694.732824][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972694.732866][3652:3652] CHIP:DMG: {
+ [1659972694.732905][3652:3652] CHIP:DMG: Endpoint = 0x14,
+ [1659972694.732940][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972694.732980][3652:3652] CHIP:DMG: Attribute = 0x0000_0000,
+ [1659972694.733009][3652:3652] CHIP:DMG: }
+ [1659972694.733066][3652:3652] CHIP:DMG:
+ [1659972694.733092][3652:3652] CHIP:DMG: ],
+ [1659972694.733128][3652:3652] CHIP:DMG:
+ [1659972694.733154][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972694.733188][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972694.733211][3652:3652] CHIP:DMG: },
+ [1659972694.733292][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972694.733401][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972694.733429][3652:3652] CHIP:DMG: Cluster 1d, Attribute 0 is dirty
+ [1659972694.733460][3652:3652] CHIP:DMG: Reading attribute: Cluster=0x0000_001D Endpoint=1 AttributeId=0x0000_0000 (expanded=0)
+ [1659972694.733487][3652:3652] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_001D e=1 p=v
+ [1659972694.733520][3652:3652] CHIP:DMG: AccessControl: allowed
+ disabled: true
+
+ - label: ""
+ PICS: MCORE.DEVLIST.UseDevices
+ verification: |
+ Verify on DUT(chip-tool) Log
+
+ 2
+ [1659352274.915018][14237:14242] CHIP:DMG: Endpoint 1, Cluster 0x0000_001D update version to 7e918bae
+ [1659352274.915107][14237:14242] CHIP:DMG: Endpoint 0, Cluster 0x0000_001D update version to 7561f371
+ [1659352274.915166][14237:14242] CHIP:DL: Added device Light 2 to dynamic endpoint 14 (index=11)
disabled: true
- label:
@@ -549,36 +2085,62 @@ tests:
Verify on TH(all-clusters-app) Log:
- [1659352461.553715][12295:12300] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 1969353586
- [1659352461.553848][12295:12300] CHIP:TOO: parts list: 12 entries
- [1659352461.553882][12295:12300] CHIP:TOO: [1]: 1
- [1659352461.553910][12295:12300] CHIP:TOO: [2]: 4
- [1659352461.553936][12295:12300] CHIP:TOO: [3]: 5
- [1659352461.553961][12295:12300] CHIP:TOO: [4]: 6
- [1659352461.553987][12295:12300] CHIP:TOO: [5]: 7
- [1659352461.554013][12295:12300] CHIP:TOO: [6]: 8
- [1659352461.554038][12295:12300] CHIP:TOO: [7]: 9
- [1659352461.554064][12295:12300] CHIP:TOO: [8]: 10
- [1659352461.554090][12295:12300] CHIP:TOO: [9]: 11
- [1659352461.554116][12295:12300] CHIP:TOO: [10]: 12
- [1659352461.554142][12295:12300] CHIP:TOO: [11]: 13
- [1659352461.554168][12295:12300] CHIP:TOO: [12]: 14
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x0,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
./chip-tool descriptor read parts-list 1 1
Verify on TH(all-clusters-app) Log:
- [1659352492.227696][12302:12307] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 2123467695
- [1659352492.227770][12302:12307] CHIP:TOO: parts list: 11 entries
- [1659352492.227804][12302:12307] CHIP:TOO: [1]: 4
- [1659352492.227831][12302:12307] CHIP:TOO: [2]: 5
- [1659352492.227857][12302:12307] CHIP:TOO: [3]: 6
- [1659352492.227883][12302:12307] CHIP:TOO: [4]: 7
- [1659352492.227909][12302:12307] CHIP:TOO: [5]: 8
- [1659352492.227934][12302:12307] CHIP:TOO: [6]: 9
- [1659352492.227960][12302:12307] CHIP:TOO: [7]: 10
- [1659352492.227986][12302:12307] CHIP:TOO: [8]: 11
- [1659352492.228012][12302:12307] CHIP:TOO: [9]: 12
- [1659352492.228038][12302:12307] CHIP:TOO: [10]: 13
- [1659352492.228063][12302:12307] CHIP:TOO: [11]: 14
+ [1659972886.385225][3652:3652] CHIP:IM: Received Read request
+ [1659972886.385307][3652:3652] CHIP:DMG: ReadRequestMessage =
+ [1659972886.385353][3652:3652] CHIP:DMG: {
+ [1659972886.385377][3652:3652] CHIP:DMG: AttributePathIBs =
+ [1659972886.385413][3652:3652] CHIP:DMG: [
+ [1659972886.385438][3652:3652] CHIP:DMG: AttributePathIB =
+ [1659972886.385482][3652:3652] CHIP:DMG: {
+ [1659972886.385511][3652:3652] CHIP:DMG: Endpoint = 0x1,
+ [1659972886.385555][3652:3652] CHIP:DMG: Cluster = 0x1d,
+ [1659972886.385596][3652:3652] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972886.385630][3652:3652] CHIP:DMG: }
+ [1659972886.385668][3652:3652] CHIP:DMG:
+ [1659972886.385694][3652:3652] CHIP:DMG: ],
+ [1659972886.385730][3652:3652] CHIP:DMG:
+ [1659972886.385757][3652:3652] CHIP:DMG: isFabricFiltered = true,
+ [1659972886.385793][3652:3652] CHIP:DMG: InteractionModelRevision = 1
+ [1659972886.385817][3652:3652] CHIP:DMG: },
+ [1659972886.385908][3652:3652] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1659972886.386016][3652:3652] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1659972886.386056][3652:3652] CHIP:DMG: Cluster 1d, Attribute 3 is dirty
+ disabled: true
+
+ - label:
+ "Verify DUT no longer contains the removed device in the list of
+ devices"
+ PICS: MCORE.DEVLIST.UseDevices
+ verification: |
+ Verify on DUT(chip-tool) Log
+
+ 4
+ [1659352426.184434][14237:14242] CHIP:DMG: Endpoint 1, Cluster 0x0000_001D update version to 7e918baf
+ [1659352426.184489][14237:14242] CHIP:DMG: Endpoint 0, Cluster 0x0000_001D update version to 7561f372
+ [1659352426.184512][14237:14242] CHIP:DL: Removed device Light 1b from dynamic endpoint 3 (index=0)
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_1.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_1.yaml
index 69671749350344..6bfdea56d5dde6 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_1.yaml
@@ -18,6 +18,7 @@ name:
PICS:
- CADMIN.C
+ - CADMIN.C.C00.Tx
config:
nodeId: 0x12344321
@@ -38,8 +39,7 @@ tests:
- label: "TH_CR1 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- "1. Provision the device using 1st controller chip-tool on the raspi (use above instructions)
- "
+ "1. Provision the TH_CE (all-cluster-app) device using TH_CR1 (chip-tool ) on the raspi"
disabled: true
- label:
@@ -48,22 +48,22 @@ tests:
(Enhanced Commissioning Method)."
PICS: CADMIN.C.C00.Tx
verification: |
- On 1st controller using chip tool, open commissioning window using ECM
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On TH_CR1 send the below command
./chip-tool pairing open-commissioning-window 1 1 400 2000 3841
- On TH1(chip-tool) Log
+ Verify Manual pairing code On TH_CR1(CHIP-TOOL) Log
CHIP:IN: Sending encrypted msg 0xaaaad3464d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 5805157 msec
[1635691999.946536][3822:3827] CHIP:DMG: ICR moving to [CommandSen]
[1635691999.946586][3822:3827] CHIP:CTL: Manual pairing code: [35407541839]
[1635691999.946650][3822:3827] CHIP:CTL: SetupQRCode: [MT:00000CQM00G6V851H10]
[1635691999.946802][3822:3827] CHIP:EM: Sending Standalone Ack for MessageCounter:3234931243 on exchange 35324i
- [1635691999.946850][3822:3827] CHIP:IN: Prepared plaintext message 0xffffaa58a960 to 0x0000000000000000 of type 0x10 and protocolId (0, 0) on exchange 35324i with MessageCounter:1726016118.
- [1635691999.946895][3822:3827] CHIP:IN: Sending plaintext msg 0xffffaa58a960 with MessageCounter:1726016118 to 0x0000000000000000 at monotonic time: 5805158 msec
- [1635691999.946983][3822:3827] CHIP:EM: Flushed pending ack for MessageCounter:3234931243 on exchange 35324i
- On DUT as server side
+
+ On TH_CE(All-cluster-app) log
CHIP minimal mDNS started advertising.
[1635687658.683388][3792:3792] CHIP:DIS: Failed to find a valid admin pairing. Node ID unknown
@@ -78,10 +78,13 @@ tests:
- label: "TH_CR1 sends command to TH_CE to read the list of Fabrics"
PICS: OPCREDS.C.A0001
verification: |
- On 1st controller using chip tool read fabricList
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command with their all-cluster-app and for the second and third commissioners.
+
+ On TH_CR1 send the below command
./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
+ Verify 1 entry in the Fabrics list attributeOn TH_CR1(CHIP-TOOL) Log
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 3621507058
[1649245801.244173][10091:10096] CHIP:TOO: Fabrics: 1 entries
@@ -99,18 +102,25 @@ tests:
- label: "DUT_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On 2nd controller, using chip-tool connect using manual code.
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On DUT_CR2 send the below command
+
Below is the example when using chip tool as controller (considering 35998938564 as the manual code generated by 1st controller)
- ./chip-tool pairing code 2 35998938564
+ ./chip-tool pairing code 2 35998938564 --commissioner-name beta
- Verify whether you got below message in the log of TH
+ Verify whether you got below message in the log of DUT_CR2(CHIP-TOOL)
Device commissioning completed with success
disabled: true
- label: "Verify TH_CE is now discoverable over DNS-SD with two SRV Records"
verification: |
- On the raspi , Verify if the DUT is broadcasting using
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On the raspi , Verify if the TH_CE(All-cluster-app) is broadcasting
+
+ On TH_CR1 send the below command
ubuntu@ubuntu:~/may10_cntrl2/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matter._tcp
+ eth0 IPv6 E0AF53B23E580769-0000000000000002 _matter._tcp local
@@ -132,86 +142,66 @@ tests:
Information Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- On 2nd controller using chip tool write and read node-label
-
- Below is the example when using chip tool as controller
- ./chip-tool basic write node-label te5new 2 0
-
- CHIP:DMG: WriteClient moving to [ResponseRe]
- [1649671460.431199][20958:20963] CHIP:DMG: WriteResponseMessage =
- [1649671460.431217][20958:20963] CHIP:DMG: {
- [1649671460.431230][20958:20963] CHIP:DMG: AttributeStatusIBs =
- [1649671460.431252][20958:20963] CHIP:DMG: [
- [1649671460.431266][20958:20963] CHIP:DMG: AttributeStatusIB =
- [1649671460.431282][20958:20963] CHIP:DMG: {
- [1649671460.431297][20958:20963] CHIP:DMG: AttributePathIB =
- [1649671460.431314][20958:20963] CHIP:DMG: {
- [1649671460.431331][20958:20963] CHIP:DMG: Endpoint = 0x0,
- [1649671460.431347][20958:20963] CHIP:DMG: Cluster = 0x28,
- [1649671460.431364][20958:20963] CHIP:DMG: Attribute = 0x0000_0005,
- [1649671460.431380][20958:20963] CHIP:DMG: }
- [1649671460.431403][20958:20963] CHIP:DMG:
- [1649671460.431422][20958:20963] CHIP:DMG: StatusIB =
- [1649671460.431445][20958:20963] CHIP:DMG: {
- [1649671460.431467][20958:20963] CHIP:DMG: status = 0x00 (SUCCESS),
- [1649671460.431488][20958:20963] CHIP:DMG: },
- [1649671460.431511][20958:20963] CHIP:DMG:
- [1649671460.431530][20958:20963] CHIP:DMG: },
- [1649671460.431556][20958:20963] CHIP:DMG:
- [1649671460.431570][20958:20963] CHIP:DMG: ],
- [1649671460.431593][20958:20963] CHIP:DMG:
- [1649671460.431607][20958:20963] CHIP:DMG: InteractionModelRevision = 1
- [1649671460.431620][20958:20963] CHIP:DMG: }
- [1649671460.431685][20958:20963] CHIP:DMG: WriteClient moving to [AwaitingDe]
- [1649671460.431729][20958:20963] CHIP:EM: Sending Standalone Ack for MessageCounter:11088724 on exchange 41848i
-
-
-
- Verify read attribute returns the updated value written
-
- ./chip-tool basic read node-label 2 0
-
- CHIP:DMG: ReportDataMessage =
- [1649671466.310233][20969:20974] CHIP:DMG: {
- [1649671466.310241][20969:20974] CHIP:DMG: AttributeReportIBs =
- [1649671466.310256][20969:20974] CHIP:DMG: [
- [1649671466.310265][20969:20974] CHIP:DMG: AttributeReportIB =
- [1649671466.310281][20969:20974] CHIP:DMG: {
- [1649671466.310292][20969:20974] CHIP:DMG: AttributeDataIB =
- [1649671466.310304][20969:20974] CHIP:DMG: {
- [1649671466.310317][20969:20974] CHIP:DMG: DataVersion = 0xd581a5e8,
- [1649671466.310328][20969:20974] CHIP:DMG: AttributePathIB =
- [1649671466.310342][20969:20974] CHIP:DMG: {
- [1649671466.310355][20969:20974] CHIP:DMG: Endpoint = 0x0,
- [1649671466.310367][20969:20974] CHIP:DMG: Cluster = 0x28,
- [1649671466.310380][20969:20974] CHIP:DMG: Attribute = 0x0000_0005,
- [1649671466.310391][20969:20974] CHIP:DMG: }
- [1649671466.310405][20969:20974] CHIP:DMG:
- [1649671466.310420][20969:20974] CHIP:DMG: Data = "te8",
- [1649671466.310432][20969:20974] CHIP:DMG: },
- [1649671466.310446][20969:20974] CHIP:DMG:
- [1649671466.310457][20969:20974] CHIP:DMG: },
- [1649671466.310471][20969:20974] CHIP:DMG:
- [1649671466.310481][20969:20974] CHIP:DMG: ],
- [1649671466.310497][20969:20974] CHIP:DMG:
- [1649671466.310508][20969:20974] CHIP:DMG: SuppressResponse = true,
- [1649671466.310518][20969:20974] CHIP:DMG: InteractionModelRevision = 1
- [1649671466.310528][20969:20974] CHIP:DMG: }
- [1649671466.310629][20969:20974] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3582043624
- [1649671466.310646][20969:20974] CHIP:TOO: NodeLabel: te8
- [1649671466.310704][20969:20974] CHIP:EM: Sending Standalone Ack for MessageCounter:15357338 on exchange 20724i
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command with their all-cluster-app and for the second and third commissioners.
+
+ On DUT_CR2 send the below command
+
+
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
+
+ Verify Write request on TH_CE(all-clusters-app) Log
+
+ [1660894021.901330][2871:2871] CHIP:EM: Handling via exchange: 9616r, Delegate: 0xaaaada21ffc0
+ [1660894021.901426][2871:2871] CHIP:IM: Received Write request
+ [1660894021.901484][2871:2871] CHIP:DMG: IM WH moving to [Initialized]
+ [1660894021.901613][2871:2871] CHIP:DMG: WriteRequestMessage =
+ [1660894021.901676][2871:2871] CHIP:DMG: {
+ [1660894021.901735][2871:2871] CHIP:DMG: suppressResponse = false,
+ [1660894021.901802][2871:2871] CHIP:DMG: timedRequest = false,
+ [1660894021.901864][2871:2871] CHIP:DMG: AttributeDataIBs =
+ [1660894021.901940][2871:2871] CHIP:DMG: [
+ [1660894021.902001][2871:2871] CHIP:DMG: AttributeDataIB =
+ [1660894021.902071][2871:2871] CHIP:DMG: {
+ [1660894021.902136][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894021.902219][2871:2871] CHIP:DMG: {
+ [1660894021.902302][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894021.902394][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894021.902488][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660894021.902574][2871:2871] CHIP:DMG: }
+ [1660894021.902827][2871:2871] CHIP:DMG:
+ [1660894021.902912][2871:2871] CHIP:DMG: Data = "te5new" (6 chars),
+ [1660894021.902985][2871:2871] CHIP:DMG: },
+
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
+
+ Verify read request on TH_CE(all-clusters-app) Log
+
+
+ [1660894142.828718][2871:2871] CHIP:EM: Handling via exchange: 62454r, Delegate: 0xaaaada21ffc0
+ [1660894142.828834][2871:2871] CHIP:IM: Received Read request
+ [1660894142.829023][2871:2871] CHIP:DMG: ReadRequestMessage =
+ [1660894142.829097][2871:2871] CHIP:DMG: {
+ [1660894142.829153][2871:2871] CHIP:DMG: AttributePathIBs =
+ [1660894142.829235][2871:2871] CHIP:DMG: [
+ [1660894142.829306][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894142.829376][2871:2871] CHIP:DMG: {
+ [1660894142.829449][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894142.829532][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894142.829627][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660894142.829703][2871:2871] CHIP:DMG: }
+ [1660894142.829777][2871:2871] CHIP:DMG:
disabled: true
- label: "DUT_CR2 sends command to TH_CE to read the list of Fabrics"
PICS: OPCREDS.C.A0001
verification: |
- On 2nd controller using chip tool read fabricList
-
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example using chip tool as controller
+ On DUT_CR2 send the below command
- ./chip-tool operationalcredentials read fabrics 2 0 --fabric-filtered 0
+ ./chip-tool operationalcredentials read fabrics 2 0 --fabric-filtered 0 --commissioner-name beta
+ Verify 2 entries in the Fabrics list attribute On DUT_CR2(chip-tool) Log
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 3621507063
[1649245825.315152][10098:10103] CHIP:TOO: Fabrics: 2 entries
@@ -238,44 +228,52 @@ tests:
Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- On first controller using chip tool, write attribute and read attribute
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool basic write node-label te8 1 0
+ On TH_CR1 send the below command
- CHIP:DMG: WriteResponse =
- CHIP:DMG: WriteResponseMessage =
- [1649245940.788522][10110:10115] CHIP:DMG: {
- [1649245940.788577][10110:10115] CHIP:DMG: AttributeStatusIBs =
- [1649245940.788653][10110:10115] CHIP:DMG: [
- [1649245940.788713][10110:10115] CHIP:DMG: AttributeStatusIB =
- [1649245940.788787][10110:10115] CHIP:DMG: {
- [1649245940.788852][10110:10115] CHIP:DMG: AttributePathIB =
- [1649245940.788931][10110:10115] CHIP:DMG: {
- [1649245940.789009][10110:10115] CHIP:DMG: Endpoint = 0x0,
- [1649245940.789143][10110:10115] CHIP:DMG: Cluster = 0x28,
- [1649245940.789228][10110:10115] CHIP:DMG: Attribute = 0x0000_0005,
- [1649245940.789313][10110:10115] CHIP:DMG: }
- [1649245940.789388][10110:10115] CHIP:DMG:
- [1649245940.789454][10110:10115] CHIP:DMG: StatusIB =
- [1649245940.789519][10110:10115] CHIP:DMG: {
- [1649245940.789588][10110:10115] CHIP:DMG: status = 0x00 (SUCCESS),
- [1649245940.789654][10110:10115] CHIP:DMG: },
- [1649245940.789719][10110:10115] CHIP:DMG:
- [1649245940.789778][10110:10115] CHIP:DMG: },
- [1649245940.789841][10110:10115] CHIP:DMG:
- [1649245940.789885][10110:10115] CHIP:DMG: ],
- [1649245940.789941][10110:10115] CHIP:DMG:
- [1649245940.789984][10110:10115] CHIP:DMG: InteractionModelRevision = 1
- [1649245940.790033][10110:10115] CHIP:DMG: }
- [1649245940.790167][10110:10115] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ ./chip-tool basic write node-label te8 1 0
+ Verify the Write request On TH_CE(all-clusters-app) Log
+
+
+ [1660894538.804578][2871:2871] CHIP:EM: Handling via exchange: 64932r, Delegate: 0xaaaada21ffc0
+ [1660894538.804677][2871:2871] CHIP:IM: Received Write request
+ [1660894538.804737][2871:2871] CHIP:DMG: IM WH moving to [Initialized]
+ [1660894538.804867][2871:2871] CHIP:DMG: WriteRequestMessage =
+ [1660894538.804933][2871:2871] CHIP:DMG: {
+ [1660894538.804993][2871:2871] CHIP:DMG: suppressResponse = false,
+ [1660894538.805059][2871:2871] CHIP:DMG: timedRequest = false,
+ [1660894538.805120][2871:2871] CHIP:DMG: AttributeDataIBs =
+ [1660894538.805196][2871:2871] CHIP:DMG: [
+ [1660894538.805258][2871:2871] CHIP:DMG: AttributeDataIB =
+ [1660894538.805346][2871:2871] CHIP:DMG: {
+ [1660894538.805412][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894538.805493][2871:2871] CHIP:DMG: {
+ [1660894538.805575][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894538.805661][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894538.805752][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660894538.805840][2871:2871] CHIP:DMG: }
+ [1660894538.805922][2871:2871] CHIP:DMG:
+ [1660894538.806010][2871:2871] CHIP:DMG: Data = "te8" (3 chars),
+ [1660894538.806082][2871:2871] CHIP:DMG: },
- Verify read attribute returns the updated value written
./chip-tool basic read node-label 1 0
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3061847068
- [1649245950.006849][10116:10121] CHIP:TOO: NodeLabel: te8
- [1649245950.007024][10116:10121] CHIP:EM: Sending Standalone Ack for MessageCounter:12495101 on exchange 24816i
+ Verify the Read request On TH_CE(all-clusters-app) Log
+
+ [1660894686.511690][2871:2871] CHIP:EM: Received message of type 0x2 with protocolId (0, 1) and MessageCounter:155836021 on exchange 25703r
+ [1660894686.511817][2871:2871] CHIP:EM: Handling via exchange: 25703r, Delegate: 0xaaaada21ffc0
+ [1660894686.511920][2871:2871] CHIP:IM: Received Read request
+ [1660894686.512190][2871:2871] CHIP:DMG: ReadRequestMessage =
+ [1660894686.512259][2871:2871] CHIP:DMG: {
+ [1660894686.512314][2871:2871] CHIP:DMG: AttributePathIBs =
+ [1660894686.512380][2871:2871] CHIP:DMG: [
+ [1660894686.512441][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894686.512526][2871:2871] CHIP:DMG: {
+ [1660894686.512599][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894686.512683][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894686.512772][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
disabled: true
- label:
@@ -283,41 +281,67 @@ tests:
Information Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- On 2nd controller using chip-tool read, write attribute and then read attribute to and from TH_CE
-
- Below is an example of using chip tool as controller
-
- ./chip-tool basic write node-label te5new 2 0
-
- CHIP:DMG: WriteResponseMessage =
- [1649245940.788522][10110:10115] CHIP:DMG: {
- [1649245940.788577][10110:10115] CHIP:DMG: AttributeStatusIBs =
- [1649245940.788653][10110:10115] CHIP:DMG: [
- [1649245940.788713][10110:10115] CHIP:DMG: AttributeStatusIB =
- [1649245940.788787][10110:10115] CHIP:DMG: {
- [1649245940.788852][10110:10115] CHIP:DMG: AttributePathIB =
- [1649245940.788931][10110:10115] CHIP:DMG: {
- [1649245940.789009][10110:10115] CHIP:DMG: Endpoint = 0x0,
- [1649245940.789143][10110:10115] CHIP:DMG: Cluster = 0x28,
- [1649245940.789228][10110:10115] CHIP:DMG: Attribute = 0x0000_0005,
- [1649245940.789313][10110:10115] CHIP:DMG: }
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On DUT_CR2 send the below command
+
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
+
+ Verify the Write request On TH_CE(all-clusters-app) Log
+
+ [1660900144.090077][3045:3045] CHIP:EM: Handling via exchange: 23950r, Delegate: 0xaaaaadbeffc0
+ [1660900144.090167][3045:3045] CHIP:IM: Received Write request
+ [1660900144.090226][3045:3045] CHIP:DMG: IM WH moving to [Initialized]
+ [1660900144.090347][3045:3045] CHIP:DMG: WriteRequestMessage =
+ [1660900144.090411][3045:3045] CHIP:DMG: {
+ [1660900144.090470][3045:3045] CHIP:DMG: suppressResponse = false,
+ [1660900144.090537][3045:3045] CHIP:DMG: timedRequest = false,
+ [1660900144.090598][3045:3045] CHIP:DMG: AttributeDataIBs =
+ [1660900144.090677][3045:3045] CHIP:DMG: [
+ [1660900144.090739][3045:3045] CHIP:DMG: AttributeDataIB =
+ [1660900144.090816][3045:3045] CHIP:DMG: {
+ [1660900144.090887][3045:3045] CHIP:DMG: AttributePathIB =
+ [1660900144.090976][3045:3045] CHIP:DMG: {
+ [1660900144.091061][3045:3045] CHIP:DMG: Endpoint = 0x0,
+ [1660900144.091150][3045:3045] CHIP:DMG: Cluster = 0x28,
+ [1660900144.091247][3045:3045] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660900144.091344][3045:3045] CHIP:DMG: }
+ [1660900144.091432][3045:3045] CHIP:DMG:
+ [1660900144.091560][3045:3045] CHIP:DMG: Data = "te5new" (6 chars),
+ [1660900144.091655][3045:3045] CHIP:DMG: },
+
+ Verify the success response in the DUT_CR2(Chip-tool) log
+
+
[1649245940.789388][10110:10115] CHIP:DMG:
[1649245940.789454][10110:10115] CHIP:DMG: StatusIB =
[1649245940.789519][10110:10115] CHIP:DMG: {
[1649245940.789588][10110:10115] CHIP:DMG: status = 0x00 (SUCCESS),
[1649245940.789654][10110:10115] CHIP:DMG: },
- [1649245940.789719][10110:10115] CHIP:DMG:
- [1649245940.789778][10110:10115] CHIP:DMG: },
- [1649245940.789841][10110:10115] CHIP:DMG:
- [1649245940.789885][10110:10115] CHIP:DMG: ],
- [1649245940.789941][10110:10115] CHIP:DMG:
- [1649245940.789984][10110:10115] CHIP:DMG: InteractionModelRevision = 1
- [1649245940.790033][10110:10115] CHIP:DMG: }
- [1649245940.790167][10110:10115] CHIP:DMG: WriteClient moving to [AwaitingDe]
+
Verify read attribute returns the updated value written
- ./chip-tool basic read node-label 2 0
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
+
+ Verify the Write request On TH_CE(all-clusters-app) Log
+
+ [1660900360.861128][3045:3045] CHIP:EM: Handling via exchange: 17574r, Delegate: 0xaaaaadbeffc0
+ [1660900360.861223][3045:3045] CHIP:IM: Received Read request
+ [1660900360.861402][3045:3045] CHIP:DMG: ReadRequestMessage =
+ [1660900360.861471][3045:3045] CHIP:DMG: {
+ [1660900360.861527][3045:3045] CHIP:DMG: AttributePathIBs =
+ [1660900360.861591][3045:3045] CHIP:DMG: [
+ [1660900360.861651][3045:3045] CHIP:DMG: AttributePathIB =
+ [1660900360.861727][3045:3045] CHIP:DMG: {
+ [1660900360.861798][3045:3045] CHIP:DMG: Endpoint = 0x0,
+ [1660900360.861871][3045:3045] CHIP:DMG: Cluster = 0x28,
+ [1660900360.861939][3045:3045] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660900360.862012][3045:3045] CHIP:DMG: }
+ [1660900360.862088][3045:3045] CHIP:DMG:
+ [1660900360.862158][3045:3045] CHIP:DMG: ],
+
+ Verify the success response in the DUT_CR2(Chip-tool) log
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3061847068
[1649245950.006849][10116:10121] CHIP:TOO: NodeLabel: te5new
@@ -335,19 +359,25 @@ tests:
(Enhanced Commissioning Method)"
PICS: CADMIN.C.C00.Tx
verification: |
- On 2nd controller open commissioning window using ECM
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is an example when using chip tool as controller
- ./chip-tool pairing open-commissionig-window 2 1 300 1000 3841
+ On DUT_CR2 send the below command
+
+ ./chip-tool pairing open-commissioning-window 2 1 300 1000 3841 --commissioner-name
+
+ Verify the Commissioning window is opened in TH_CE(all-clusters-app) Log
+
+ [1660901022.112296][3045:3045] CHIP:DIS: mDNS service published: _matterc._udp
+ [1660901022.112389][3045:3045] CHIP:ZCL: Commissioning window is now open
+ [1660901022.112474][3045:3045] CHIP:DMG: Command handler moving to [ Preparing]
+
+ Verify the Manual pairing code On DUT_CR2(chip-tool) Log
CHIP: [IN] Prepared encrypted message 0x124012e80 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 50829i with MessageCounter:0.
[1635693418549] [30519:4583024] CHIP: [IN] Sending encrypted msg 0x124012e80 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 5995099243 msec
[1635693418549] [30519:4583024] CHIP: [DMG] ICR moving to [CommandSen]
[1635693418549] [30519:4583024] CHIP: [CTL] Manual pairing code: [34995354639]
[1635693418550] [30519:4583024] CHIP: [CTL] SetupQRCode: [MT:00000CQM00YND84XX10]
- [1635693418550] [30519:4583024] CHIP: [EM] Sending Standalone Ack for MessageCounter:3441918415 on exchange 50828i
- [1635693418550] [30519:4583024] CHIP: [IN] Prepared plaintext message 0x16b92d198 to 0x0000000000000000 of type 0x10 and protocolId (0, 0) on exchange 50828i with MessageCounter:3727034150.
- [1635693418550] [30519:4583024] CHIP: [IN] Sending plaintext msg 0x16b92d198 with Mes
disabled: true
- label:
@@ -355,43 +385,26 @@ tests:
using the Revoke Commissioning command"
PICS: CADMIN.C.C02.Tx
verification: |
- On 2nd controller, run revoke command
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is an example when using chip tool as controller
+ On DUT_CR2 send the below command
- ./chip-tool administratorcommissioning revoke-commissioning 2 0 --timedInteractionTimeoutMs 1000
+ ./chip-tool administratorcommissioning revoke-commissioning 2 0 --timedInteractionTimeoutMs 1000 --commissioner-name beta
+ Verify the Commissioning window is closed in TH_CE(all-clusters-app) Log
+
+ [1660901039.590891][3045:3045] CHIP:DMG: AccessControl: allowed
+ [1660901039.590962][3045:3045] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0002
+ [1660901039.591036][3045:3045] CHIP:ZCL: Received command to close commissioning window
+ [1660901039.591094][3045:3045] CHIP:SVR: Closing pairing window
+ [1660901039.591169][3045:3045] CHIP:IN: SecureSession[0xaaaab010d400]: Released - Type:1 LSID:14411
+
+ Verify the success response On DUT_CR2(chip-tool) Log
- CHIP: [DMG] InvokeResponseMessage =
- [1648115245106] [6681:3894448] CHIP: [DMG] {
- [1648115245106] [6681:3894448] CHIP: [DMG] suppressResponse = false,
- [1648115245106] [6681:3894448] CHIP: [DMG] InvokeResponseIBs =
- [1648115245106] [6681:3894448] CHIP: [DMG] [
- [1648115245106] [6681:3894448] CHIP: [DMG] InvokeResponseIB =
- [1648115245106] [6681:3894448] CHIP: [DMG] {
- [1648115245106] [6681:3894448] CHIP: [DMG] CommandStatusIB =
- [1648115245106] [6681:3894448] CHIP: [DMG] {
- [1648115245106] [6681:3894448] CHIP: [DMG] CommandPathIB =
- [1648115245106] [6681:3894448] CHIP: [DMG] {
- [1648115245106] [6681:3894448] CHIP: [DMG] EndpointId = 0x0,
- [1648115245106] [6681:3894448] CHIP: [DMG] ClusterId = 0x3c,
- [1648115245106] [6681:3894448] CHIP: [DMG] CommandId = 0x2,
- [1648115245106] [6681:3894448] CHIP: [DMG] },
- [1648115245106] [6681:3894448] CHIP: [DMG]
[1648115245106] [6681:3894448] CHIP: [DMG] StatusIB =
[1648115245106] [6681:3894448] CHIP: [DMG] {
[1648115245106] [6681:3894448] CHIP: [DMG] status = 0x0,
[1648115245106] [6681:3894448] CHIP: [DMG] },
- [1648115245106] [6681:3894448] CHIP: [DMG]
- [1648115245106] [6681:3894448] CHIP: [DMG] },
- [1648115245106] [6681:3894448] CHIP: [DMG]
- [1648115245106] [6681:3894448] CHIP: [DMG] },
- [1648115245106] [6681:3894448] CHIP: [DMG]
- [1648115245106] [6681:3894448] CHIP: [DMG] ],
- [1648115245107] [6681:3894448] CHIP: [DMG]
- [1648115245107] [6681:3894448] CHIP: [DMG] InteractionModelRevision = 1
- [1648115245107] [6681:3894448] CHIP: [DMG] },
- [1648115245107] [6681:3894448] CHIP: [DMG] Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0002 Status=0x0
disabled: true
- label:
@@ -399,11 +412,13 @@ tests:
with TH_CE"
PICS: CADMIN.C
verification: |
- On 3rd controller using chip-tool connect using manual code generated from 1st controller. This attempt should fail, i.e
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command with their all-cluster-app and for the second and third commissioners.
+
+ On TH_CR3 send the below command
- ./chip-tool pairing code 1 34995354639
+ ./chip-tool pairing code 3 34995354639 --commissioner-name gamma
- verify you got the following message in the TH log
+ verify you got the following message in the TH_CR3(chip-tool) log
CHIP:SC: PASESession timed out while waiting for a response from the peer. Expected message type was 33
CHIP:TOO: Secure Pairing Failed
@@ -415,45 +430,54 @@ tests:
Information Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- On 2nd controller , write attribute and read attribute to and from TH_CE
-
- Below is the example using chip tool as controller
-
- ./chip-tool basic write node-label te5new 2 0
-
- CHIP:DMG: WriteResponseMessage =
- [1649245940.788522][10110:10115] CHIP:DMG: {
- [1649245940.788577][10110:10115] CHIP:DMG: AttributeStatusIBs =
- [1649245940.788653][10110:10115] CHIP:DMG: [
- [1649245940.788713][10110:10115] CHIP:DMG: AttributeStatusIB =
- [1649245940.788787][10110:10115] CHIP:DMG: {
- [1649245940.788852][10110:10115] CHIP:DMG: AttributePathIB =
- [1649245940.788931][10110:10115] CHIP:DMG: {
- [1649245940.789009][10110:10115] CHIP:DMG: Endpoint = 0x0,
- [1649245940.789143][10110:10115] CHIP:DMG: Cluster = 0x28,
- [1649245940.789228][10110:10115] CHIP:DMG: Attribute = 0x0000_0005,
- [1649245940.789313][10110:10115] CHIP:DMG: }
- [1649245940.789388][10110:10115] CHIP:DMG:
- [1649245940.789454][10110:10115] CHIP:DMG: StatusIB =
- [1649245940.789519][10110:10115] CHIP:DMG: {
- [1649245940.789588][10110:10115] CHIP:DMG: status = 0x00 (SUCCESS),
- [1649245940.789654][10110:10115] CHIP:DMG: },
- [1649245940.789719][10110:10115] CHIP:DMG:
- [1649245940.789778][10110:10115] CHIP:DMG: },
- [1649245940.789841][10110:10115] CHIP:DMG:
- [1649245940.789885][10110:10115] CHIP:DMG: ],
- [1649245940.789941][10110:10115] CHIP:DMG:
- [1649245940.789984][10110:10115] CHIP:DMG: InteractionModelRevision = 1
- [1649245940.790033][10110:10115] CHIP:DMG: }
- [1649245940.790167][10110:10115] CHIP:DMG: WriteClient moving to [AwaitingDe]
-
- Verify read attribute returns the updated value written
-
- ./chip-tool basic read node-label 2 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3061847068
- [1649245950.006849][10116:10121] CHIP:TOO: NodeLabel: te5new
- [1649245950.007024][10116:10121] CHIP:EM: Sending Standalone Ack for MessageCounter:12495101 on exchange 24816i
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On DUT_CR2 send the below command
+
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
+
+ Verify the Write request On TH_CE(all-clusters-app) Log
+
+ [1660902144.913634][3045:3045] CHIP:EM: Handling via exchange: 22257r, Delegate: 0xaaaaadbeffc0
+ [1660902144.913728][3045:3045] CHIP:IM: Received Write request
+ [1660902144.913785][3045:3045] CHIP:DMG: IM WH moving to [Initialized]
+ [1660902144.913912][3045:3045] CHIP:DMG: WriteRequestMessage =
+ [1660902144.913977][3045:3045] CHIP:DMG: {
+ [1660902144.914038][3045:3045] CHIP:DMG: suppressResponse = false,
+ [1660902144.914106][3045:3045] CHIP:DMG: timedRequest = false,
+ [1660902144.914168][3045:3045] CHIP:DMG: AttributeDataIBs =
+ [1660902144.914244][3045:3045] CHIP:DMG: [
+ [1660902144.914305][3045:3045] CHIP:DMG: AttributeDataIB =
+ [1660902144.914375][3045:3045] CHIP:DMG: {
+ [1660902144.914440][3045:3045] CHIP:DMG: AttributePathIB =
+ [1660902144.914522][3045:3045] CHIP:DMG: {
+ [1660902144.914602][3045:3045] CHIP:DMG: Endpoint = 0x0,
+ [1660902144.914691][3045:3045] CHIP:DMG: Cluster = 0x28,
+ [1660902144.914940][3045:3045] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660902144.915025][3045:3045] CHIP:DMG: }
+ [1660902144.915109][3045:3045] CHIP:DMG:
+ [1660902144.915208][3045:3045] CHIP:DMG: Data = "te5new" (6 chars),
+ [1660902144.915292][3045:3045] CHIP:DMG: },
+ [1660902144.915374][3045:3045] CHIP:DMG:
+
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
+
+ Verify the Write request On TH_CE(all-clusters-app) Log
+
+ [1660902253.379018][3045:3045] CHIP:EM: Handling via exchange: 3197r, Delegate: 0xaaaaadbeffc0
+ [1660902253.379122][3045:3045] CHIP:IM: Received Read request
+ [1660902253.379306][3045:3045] CHIP:DMG: ReadRequestMessage =
+ [1660902253.379373][3045:3045] CHIP:DMG: {
+ [1660902253.379430][3045:3045] CHIP:DMG: AttributePathIBs =
+ [1660902253.379496][3045:3045] CHIP:DMG: [
+ [1660902253.379557][3045:3045] CHIP:DMG: AttributePathIB =
+ [1660902253.379634][3045:3045] CHIP:DMG: {
+ [1660902253.379703][3045:3045] CHIP:DMG: Endpoint = 0x0,
+ [1660902253.379782][3045:3045] CHIP:DMG: Cluster = 0x28,
+ [1660902253.379871][3045:3045] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660902253.379935][3045:3045] CHIP:DMG: }
+ [1660902253.380141][3045:3045] CHIP:DMG:
+ [1660902253.380208][3045:3045] CHIP:DMG: ],
disabled: true
- label:
@@ -461,19 +485,25 @@ tests:
ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On 2nd controller open commissioning window using ECM
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is an example when using chip tool as controller
- ./chip-tool pairing open-commissioning-window 2 1 180 1000 3840
+ On DUT_CR2 send the below command
+
+ ./chip-tool pairing open-commissioning-window 2 1 180 1000 3840 --commissioner-name beta
+
+ Verify the Commissioning window is opened in TH_CE(all-clusters-app) Log
+
+ [1660902413.357922][3045:3045] CHIP:DIS: mDNS service published: _matterc._udp
+ [1660902413.358025][3045:3045] CHIP:ZCL: Commissioning window is now open
+ [1660902413.358116][3045:3045] CHIP:DMG: Command handler moving to [ Preparing]
+
+ Verify Manual pairing code On DUT_CR2(chip-tool) Log
- CHIP: [IN] Prepared encrypted message 0x124012e80 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 50829i with MessageCounter:0.
[1635693418549] [30519:4583024] CHIP: [IN] Sending encrypted msg 0x124012e80 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 5995099243 msec
[1635693418549] [30519:4583024] CHIP: [DMG] ICR moving to [CommandSen]
[1635693418549] [30519:4583024] CHIP: [CTL] Manual pairing code: [34995354639]
[1635693418550] [30519:4583024] CHIP: [CTL] SetupQRCode: [MT:00000CQM00YND84XX10]
- [1635693418550] [30519:4583024] CHIP: [EM] Sending Standalone Ack for MessageCounter:3441918415 on exchange 50828i
- [1635693418550] [30519:4583024] CHIP: [IN] Prepared plaintext message 0x16b92d198 to 0x0000000000000000 of type 0x10 and protocolId (0, 0) on exchange 50828i with MessageCounter:3727034150.
- [1635693418550] [30519:4583024] CHIP: [IN] Sending plaintext msg 0x16b92d198 with Mes
+ [1635693418550] [30519:4583024] CHIP: [EM] Sending Standalone Ack for MessageCounter:3441918415 on exchange
disabled: true
- label:
@@ -487,13 +517,20 @@ tests:
ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On 2nd controller open commissioning window using ECM
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is an example when using chip tool as controller
- ./chip-tool pairing open-commissionig-window 2 1 300 1000 3840
+ On DUT_CR2 send the below command
+
+ ./chip-tool pairing open-commissioning-window 2 1 300 1000 3840 --commissioner-name beta
+
+ Verify the Commissioning window is opened in TH_CE(all-clusters-app) Log
+
+ [1660902623.744448][3045:3045] CHIP:DIS: mDNS service published: _matterc._udp
+ [1660902623.744550][3045:3045] CHIP:ZCL: Commissioning window is now open
+ [1660902623.744634][3045:3045] CHIP:DMG: Command handler moving to [ Preparing]
+
+ Verify Manual pairing code On DUT_CR2(chip-tool) Log
- CHIP: [IN] Prepared encrypted message 0x124012e80 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 50829i with MessageCounter:0.
- [1635693418549] [30519:4583024] CHIP: [IN] Sending encrypted msg 0x124012e80 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 5995099243 msec
[1635693418549] [30519:4583024] CHIP: [DMG] ICR moving to [CommandSen]
[1635693418549] [30519:4583024] CHIP: [CTL] Manual pairing code: [34995354639]
[1635693418550] [30519:4583024] CHIP: [CTL] SetupQRCode: [MT:00000CQM00YND84XX10]
@@ -507,15 +544,26 @@ tests:
from step 15"
PICS: CADMIN.C
verification: |
- On 1st controller, using chip-tool connect using manual code.
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On TH_CR1 send the below command
- Below is the example when using chip tool as controller (considering 34995354639 as the manual code generated by DUT)
+ (considering 34995354639 as the manual code generated by DUT)
./chip-tool pairing code 2 34995354639
+ Verify the OperationalCert error 9 in TH_CE(all-clusters-app) Log
+
+ [1660902716.613196][3045:3045] CHIP:DMG: Command handler moving to [AddedComma]
+ [1660902716.613274][3045:3045] CHIP:ZCL: OpCreds: Failed AddNOC request (err=../../examples/all-clusters-app/linux/third_party/connectedhomeip/src/credentials/FabricTable.cpp:1692: CHIP Error 0x0000007E: Trying to add a NOC for a fabric that already exists) with OperationalCert error 9
+ [1660902716.613394][3045:3045] CHIP:DMG: Decreasing reference count for CommandHandler, remaining 0
+ [1660902716.613497][3045:3045] CHIP:EM: Piggybacking Ack for MessageCounter:176866087 on exchange: 56605r
+
+ Verify that the commissioning process fails as TH_CE was already commissioned by TH_CR1 in step 1
+
+ Trying to add a NOC for a fabric that already exists On TH_CR1(chip-tool) Log
+
[1651786200275] [36301:315544] CHIP: [DMG] Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
[1651786200275] [36301:315544] CHIP: [CTL] Device returned status 9 on receiving the NOC
[1651786200275] [36301:315544] CHIP: [CTL] Add NOC failed with error ../../src/controller/CHIPDeviceController.cpp:1187: CHIP Error 0x0000007E: Trying to add a NOC for a fabric that already exists
[1651786200275] [36301:315544] CHIP: [CTL] Error on commissioning step "SendNOC": "../../src/controller/CHIPDeviceController.cpp:1187: CHIP Error 0x0000007E: Trying to add a NOC for a fabric that already exists"
-
- Verify that the commissioning process fails as TH_CE was already commissioned by TH_CR1 in step 1
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_10.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_10.yaml
index 3b8159c6a97805..f70e43457d47fa 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_10.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_10.yaml
@@ -18,6 +18,7 @@ name:
PICS:
- CADMIN.S
+ - CADMIN.S.F00
config:
nodeId: 0x12344321
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_11.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_11.yaml
index a87bb4d5f0986a..9f820a377fbfea 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_11.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_11.yaml
@@ -11,448 +11,295 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name:
- 4.1.11. [TC-CADMIN-1.11] Open commissioning window on DUT twice using ECM
+ 30.1.11. [TC-CADMIN-1.11] Open commissioning window on DUT twice using ECM
then BCM [DUT - Commissionee]
PICS:
- CADMIN.S
+ - CADMIN.S.F00
config:
nodeId: 0x12344321
- cluster: "Basic"
+ timeout: 400
+ nodeId2:
+ type: node_id
+ defaultValue: 0xCAFE
+ nodeId3:
+ type: node_id
+ defaultValue: 0xC00FEE
endpoint: 0
+ discriminator:
+ type: int16u
+ defaultValue: 3840
+ payload:
+ type: char_string
+ defaultValue: "MT:-24J0AFN00KA0648G00"
+ PakeVerifier:
+ type: octet_string
+ defaultValue:
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"
tests:
- - label: "Precondition"
+ - label: "Precondition: Reset Devices to factory defaults"
+ PICS: PICS_SDK_CI_ONLY
+ cluster: "SystemCommands"
+ command: "FactoryReset"
+
+ - label: "Precondition: Reset Devices to factory defaults"
verification: |
- Reset Devices to factory defaults
- disabled: true
+ Not implemented in YAML
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_SKIP_SAMPLE_APP
+ arguments:
+ values:
+ - name: "message"
+ value: "Factory Reset the DUT and enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
- label: "TH_CR1 starts a commissioning process with DUT_CE"
PICS: CADMIN.S
- verification: |
- "1. Provision the device using 1st controller chip tool on the raspi (use above instructions) ,
- "
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE using ECM"
PICS: CADMIN.S.C00.Rsp
- verification: |
- On the 1st controller using chip tool, open commissioning window using ECM
-
-
- ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
-
- [1635874557.409509][4549:4554] CHIP:SC: Success status report received. Session was established
- [1635874557.409553][4549:4554] CHIP:IN: New secure session created for device 0x0000000000000001, key 76!!
- [1635874557.409649][4549:4554] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635874557.416929][4549:4554] CHIP:DMG: ICR moving to [AddingComm]
- [1635874557.417092][4549:4554] CHIP:DMG: ICR moving to [AddedComma]
- [1635874557.417215][4549:4554] CHIP:IN: Prepared encrypted message 0xaaaac5947d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 5541i with MessageCounter:0.
- [1635874557.417271][4549:4554] CHIP:IN: Sending encrypted msg 0xaaaac5947d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 16129075 msec
- [1635874557.417449][4549:4554] CHIP:DMG: ICR moving to [CommandSen]
- [1635874557.417505][4549:4554] CHIP:CTL: Manual pairing code: [35484132896]
- [1635874557.417577][4549:4554] CHIP:CTL: SetupQRCode: [MT:00000CQM00AT-F5A510]
- disabled: true
-
- - label: "DNS-SD records shows DUT_CE advertising"
- verification: |
- grl@grl-ThinkPad-L480:~/2nd_cntrl/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matterc._udp
- + wlp5s0 IPv6 C326228BDB082BF4 _matterc._udp local
- + wlp5s0 IPv6 7B6545A75C5330BE _matterc._udp local
- = wlp5s0 IPv6 7B6545A75C5330BE _matterc._udp local
- hostname = [E45F010F27530000.local]
- address = [fe80::e65f:1ff:fe0f:2755]
- port = [5540]
- txt = ["PI=" "PH=33" "CM=1" "D=3841" "T=1" "CRA=300" "CRI=5000" "VP=65521+32769"]
- = wlp5s0 IPv6 C326228BDB082BF4 _matterc._udp local
- hostname = [E45F010F27530000.local]
- address = [fe80::e65f:1ff:fe0f:2755]
- port = [5540]
- txt = ["PI=" "PH=36" "CM=2" "D=3840" "T=1" "CRA=300" "CRI=5000" "VP=65521+32769"]
- grl@grl-ThinkPad-L480:~/2nd_cntrl/connectedhomeip/examples/chip-tool/out/debug$
- disabled: true
-
- - label: "TH_CR3 Commissions with DUT_CE"
+ cluster: "AdministratorCommissioning"
+ command: "OpenCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "PAKEVerifier"
+ value: PakeVerifier
+ - name: "discriminator"
+ value: discriminator
+ - name: "iterations"
+ value: 1000
+ - name: "salt"
+ value: "SPAKE2P Key Salt"
+
+ - label: "TH_CR3 starts a commissioning process with DUT_CE"
PICS: CADMIN.S
- verification: |
- On 3rd controller using chip tool connect using manual code
-
- ./chip-tool pairing code 3 35484132896
-
- Verify you got below message
- Device commissioning completed with success
- disabled: true
+ identity: "gamma"
+ cluster: "CommissionerCommands"
+ command: "PairWithCode"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId3
+ - name: "payload"
+ value: payload
+
+ - label: "DUT_CE is commissioned to TH_CR3 on Fabric ID3 with Node ID3"
+ identity: "gamma"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ PICS: CADMIN.S
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId3
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using ECM and TH_CR2
- Commissions with DUT_CE"
+ - label: "TH_CR1 opens a commissioning window on DUT_CE using ECM"
PICS: CADMIN.S.C00.Rsp
- verification: |
- On 1st controller using chip tool, open commissioning window using ECM
-
-
- ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
-
- [1635874557.409509][4549:4554] CHIP:SC: Success status report received. Session was established
- [1635874557.409553][4549:4554] CHIP:IN: New secure session created for device 0x0000000000000001, key 76!!
- [1635874557.409649][4549:4554] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635874557.416929][4549:4554] CHIP:DMG: ICR moving to [AddingComm]
- [1635874557.417092][4549:4554] CHIP:DMG: ICR moving to [AddedComma]
- [1635874557.417215][4549:4554] CHIP:IN: Prepared encrypted message 0xaaaac5947d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 5541i with MessageCounter:0.
- [1635874557.417271][4549:4554] CHIP:IN: Sending encrypted msg 0xaaaac5947d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 16129075 msec
- [1635874557.417449][4549:4554] CHIP:DMG: ICR moving to [CommandSen]
- [1635874557.417505][4549:4554] CHIP:CTL: Manual pairing code: [35484132896]
- [1635874557.417577][4549:4554] CHIP:CTL: SetupQRCode: [MT:00000CQM00AT-F5A510]
-
-
- On 2nd controller using chip tool connect using manual code
-
- ./chip-tool pairing code 1 35484132896
-
- Verify you got below message
- Device commissioning completed with success
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
+ cluster: "AdministratorCommissioning"
+ command: "OpenCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "PAKEVerifier"
+ value: PakeVerifier
+ - name: "discriminator"
+ value: discriminator
+ - name: "iterations"
+ value: 1000
+ - name: "salt"
+ value: "SPAKE2P Key Salt"
+
+ - label: "TH_CR2 starts a commissioning process with DUT_CE"
+ identity: "beta"
+ cluster: "CommissionerCommands"
+ command: "PairWithCode"
+ PICS: CADMIN.S
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
+ - name: "payload"
+ value: payload --commissioner-name beta
+
+ - label: "DUT_CE is commissioned to TH_CR2"
+ PICS: CADMIN.S
+ identity: "beta"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE using ECM"
PICS: CADMIN.S.C00.Rsp
- verification: |
- On 1st controller using chip tool, open commissioning window using ECM
-
-
- ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
-
- [1635874557.409509][4549:4554] CHIP:SC: Success status report received. Session was established
- [1635874557.409553][4549:4554] CHIP:IN: New secure session created for device 0x0000000000000001, key 76!!
- [1635874557.409649][4549:4554] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635874557.416929][4549:4554] CHIP:DMG: ICR moving to [AddingComm]
- [1635874557.417092][4549:4554] CHIP:DMG: ICR moving to [AddedComma]
- [1635874557.417215][4549:4554] CHIP:IN: Prepared encrypted message 0xaaaac5947d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 5541i with MessageCounter:0.
- [1635874557.417271][4549:4554] CHIP:IN: Sending encrypted msg 0xaaaac5947d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 16129075 msec
- [1635874557.417449][4549:4554] CHIP:DMG: ICR moving to [CommandSen]
- [1635874557.417505][4549:4554] CHIP:CTL: Manual pairing code: [35484132896]
- [1635874557.417577][4549:4554] CHIP:CTL: SetupQRCode: [MT:00000CQM00AT-F5A510]
- disabled: true
+ cluster: "AdministratorCommissioning"
+ command: "OpenCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "PAKEVerifier"
+ value: PakeVerifier
+ - name: "discriminator"
+ value: discriminator
+ - name: "iterations"
+ value: 1000
+ - name: "salt"
+ value: "SPAKE2P Key Salt"
- label:
"Before the expiration of PIXIT.CADMIN.CwDuration seconds which was
set in step 5, TH_CR1 opens a 2nd commissioning window on DUT_CE using
a commissioning timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
PICS: CADMIN.S.C00.Rsp
- verification: |
- Before the timer expiry, on the 1st controller using chip tool, open commissioning window using ECM. Verify the General code return error 1
-
-
- ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
-
- CHIP:DMG: InvokeResponseMessage =
- [1650527291.952055][8566:8571] CHIP:DMG: {
- [1650527291.952074][8566:8571] CHIP:DMG: suppressResponse = false,
- [1650527291.952091][8566:8571] CHIP:DMG: InvokeResponseIBs =
- [1650527291.952116][8566:8571] CHIP:DMG: [
- [1650527291.952134][8566:8571] CHIP:DMG: InvokeResponseIB =
- [1650527291.952172][8566:8571] CHIP:DMG: {
- [1650527291.952195][8566:8571] CHIP:DMG: CommandStatusIB =
- [1650527291.952220][8566:8571] CHIP:DMG: {
- [1650527291.952245][8566:8571] CHIP:DMG: CommandPathIB =
- [1650527291.952276][8566:8571] CHIP:DMG: {
- [1650527291.952303][8566:8571] CHIP:DMG: EndpointId = 0x0,
- [1650527291.952334][8566:8571] CHIP:DMG: ClusterId = 0x3c,
- [1650527291.952369][8566:8571] CHIP:DMG: CommandId = 0x0,
- [1650527291.952394][8566:8571] CHIP:DMG: },
- [1650527291.952431][8566:8571] CHIP:DMG:
- [1650527291.952458][8566:8571] CHIP:DMG: StatusIB =
- [1650527291.952488][8566:8571] CHIP:DMG: {
- [1650527291.952519][8566:8571] CHIP:DMG: status = 0x01 (FAILURE),
- [1650527291.952555][8566:8571] CHIP:DMG: cluster-status = 0x1,
- [1650527291.952578][8566:8571] CHIP:DMG: },
- [1650527291.952612][8566:8571] CHIP:DMG:
- [1650527291.952634][8566:8571] CHIP:DMG: },
- [1650527291.952671][8566:8571] CHIP:DMG:
- [1650527291.952694][8566:8571] CHIP:DMG: },
- [1650527291.952731][8566:8571] CHIP:DMG:
- [1650527291.952751][8566:8571] CHIP:DMG: ],
- [1650527291.952781][8566:8571] CHIP:DMG:
- [1650527291.952795][8566:8571] CHIP:DMG: InteractionModelRevision = 1
- [1650527291.952807][8566:8571] CHIP:DMG: },
- [1650527291.952886][8566:8571] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0000 Status=0x1
- [1650527291.952931][8566:8571] CHIP:CTL: Failed to open pairing window on the device. Status IM Error 0x00000601: Cluster-specific error: 0x01
- disabled: true
+ cluster: "AdministratorCommissioning"
+ command: "OpenCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "PAKEVerifier"
+ value: PakeVerifier
+ - name: "discriminator"
+ value: discriminator
+ - name: "iterations"
+ value: 1000
+ - name: "salt"
+ value: "SPAKE2P Key Salt"
+ response:
+ error: FAILURE
- label: "TH_CR1 reads the list of Fabrics on DUT_CE"
+ cluster: "Operational Credentials"
PICS: OPCREDS.S.A0001
- verification: |
- On 1st controller using chip tool, read fabrics list
-
- ./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 268962768
- [1650527361.425870][15792:15797] CHIP:TOO: Fabrics: 3 entries
- [1650527361.426777][15792:15797] CHIP:TOO: [1]: {
- [1650527361.426859][15792:15797] CHIP:TOO: RootPublicKey: 0429A71383F336D80918C9EC655112513E428C073AF7FB44820EC793535302C6E3825C56EE6DD1A683EAA7B59E3F261B46FFA24A6D911E8D88839F4C1B3C84BA01
- [1650527361.426923][15792:15797] CHIP:TOO: VendorId: 65521
- [1650527361.426979][15792:15797] CHIP:TOO: FabricId: 1
- [1650527361.427033][15792:15797] CHIP:TOO: NodeId: 1
- [1650527361.427088][15792:15797] CHIP:TOO: Label:
- [1650527361.427166][15792:15797] CHIP:TOO: FabricIndex: 1
- [1650527361.427376][15792:15797] CHIP:TOO: }
- [1650527361.427464][15792:15797] CHIP:TOO: [2]: {
- [1650527361.427532][15792:15797] CHIP:TOO: RootPublicKey: 04781BCEE70118049ED61DD5B4E401CF1A09D2F78AE7F5770BE5506AD24238E5E0777277DABAFD062659651C95CC2CA7DEAACE40DB579A946CC07CADB141BE05D7
- [1650527361.427595][15792:15797] CHIP:TOO: VendorId: 65521
- [1650527361.427649][15792:15797] CHIP:TOO: FabricId: 1
- [1650527361.427703][15792:15797] CHIP:TOO: NodeId: 3
- [1650527361.427756][15792:15797] CHIP:TOO: Label:
- [1650527361.427811][15792:15797] CHIP:TOO: FabricIndex: 2
- [1650527361.427868][15792:15797] CHIP:TOO: }
- [1650527361.427943][15792:15797] CHIP:TOO: [3]: {
- [1650527361.428008][15792:15797] CHIP:TOO: RootPublicKey: 0403EDB5B461030A34EF7EA2F9DB0D46A36185E4755C365AF9344C4959F049EF21D55EAB903A2C7FBFC305EEFA42989250D7517A73E6156062390A60C0D4C41EBD
- [1650527361.428067][15792:15797] CHIP:TOO: VendorId: 65521
- [1650527361.428122][15792:15797] CHIP:TOO: FabricId: 1
- [1650527361.428176][15792:15797] CHIP:TOO: NodeId: 2
- [1650527361.428229][15792:15797] CHIP:TOO: Label:
- [1650527361.428282][15792:15797] CHIP:TOO: FabricIndex: 3
- [1650527361.428335][15792:15797] CHIP:TOO: }
- disabled: true
+ command: "readAttribute"
+ attribute: "Fabrics"
+ fabricFiltered: false
+ response:
+ value:
+ [
+ { Label: "", nodeId: nodeId },
+ { Label: "", nodeId: nodeId3 },
+ { Label: "", nodeID: nodeId2 },
+ ]
+ constraints:
+ type: list
- label:
"Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that was
set in step 6"
- verification: |
- verification step to be updated.
- disabled: true
+ cluster: "DelayCommands"
+ command: "WaitForMs"
+ arguments:
+ values:
+ - name: "ms"
+ value: 180000
- label:
"TH_CR1 re-opens a commissioning window on DUT_CE using a
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
PICS: CADMIN.S.C01.Rsp
- verification: |
- On the 1st controller using chip tool, open commissioning window using BCM
-
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
-
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
- disabled: true
-
- - label: "DNS-SD records shows DUT_CE advertising"
- verification: |
- ubuntu@ubuntu:~/may16_cntrl/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matterc._udp
- + eth0 IPv6 2664ED6939FC373C _matterc._udp local
- = eth0 IPv6 2664ED6939FC373C _matterc._udp local
- hostname = [E45F010F27530000.local]
- address = [fe80::e65f:1ff:fe0f:2753]
- port = [5540]
- txt = ["PI=" "PH=36" "CM=1" "D=3840" "T=1" "SAI=300" "SII=5000" "VP=65521+32769"]
- ubuntu@ubuntu:~/may16_cntrl/connectedhomeip/examples/chip-tool/out/debug$
- disabled: true
+ cluster: "AdministratorCommissioning"
+ command: "OpenBasicCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "discriminator"
+ value: discriminator
- label:
"Before the expiration of PIXIT.CADMIN.CwDuration seconds that was set
in step 10, TH_CR3 opens a 2nd commissioning window on DUT_CE using a
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
PICS: CADMIN.S.C01.Rsp
- verification: |
- On the 3rd controller using chip tool, open commissioning window using BCM before the timer expiry of the above step
-
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 3 0 --timedInteractionTimeoutMs 1000
-
- CHIP:DMG: InvokeResponseMessage =
- [1650527565.990404][24618:24623] CHIP:DMG: {
- [1650527565.990476][24618:24623] CHIP:DMG: suppressResponse = false,
- [1650527565.990528][24618:24623] CHIP:DMG: InvokeResponseIBs =
- [1650527565.990615][24618:24623] CHIP:DMG: [
- [1650527565.990667][24618:24623] CHIP:DMG: InvokeResponseIB =
- [1650527565.990755][24618:24623] CHIP:DMG: {
- [1650527565.990816][24618:24623] CHIP:DMG: CommandStatusIB =
- [1650527565.990900][24618:24623] CHIP:DMG: {
- [1650527565.990967][24618:24623] CHIP:DMG: CommandPathIB =
- [1650527565.991042][24618:24623] CHIP:DMG: {
- [1650527565.991112][24618:24623] CHIP:DMG: EndpointId = 0x0,
- [1650527565.991186][24618:24623] CHIP:DMG: ClusterId = 0x3c,
- [1650527565.991257][24618:24623] CHIP:DMG: CommandId = 0x1,
- [1650527565.991332][24618:24623] CHIP:DMG: },
- [1650527565.991441][24618:24623] CHIP:DMG:
- [1650527565.991505][24618:24623] CHIP:DMG: StatusIB =
- [1650527565.991574][24618:24623] CHIP:DMG: {
- [1650527565.991645][24618:24623] CHIP:DMG: status = 0x01 (FAILURE),
- [1650527565.991743][24618:24623] CHIP:DMG: cluster-status = 0x1,
- [1650527565.991830][24618:24623] CHIP:DMG: },
- [1650527565.991918][24618:24623] CHIP:DMG:
- [1650527565.991976][24618:24623] CHIP:DMG: },
- [1650527565.992061][24618:24623] CHIP:DMG:
- [1650527565.992116][24618:24623] CHIP:DMG: },
- [1650527565.992202][24618:24623] CHIP:DMG:
- [1650527565.992253][24618:24623] CHIP:DMG: ],
- [1650527565.992316][24618:24623] CHIP:DMG:
- [1650527565.992365][24618:24623] CHIP:DMG: InteractionModelRevision = 1
- [1650527565.992414][24618:24623] CHIP:DMG: },
- [1650527565.992535][24618:24623] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x1
- [1650527565.992601][24618:24623] CHIP:TOO: Error: IM Error 0x00000601: Cluster-specific error: 0x01
- disabled: true
+ identity: "gamma"
+ cluster: "AdministratorCommissioning"
+ command: "OpenBasicCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "discriminator"
+ value: discriminator
+ response:
+ error: FAILURE
- label:
"Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that was
set in step 11"
- verification: |
- verification step to be updated.
- disabled: true
+ cluster: "DelayCommands"
+ command: "WaitForMs"
+ arguments:
+ values:
+ - name: "ms"
+ value: 180000
- label: "TH_CR1 reads the list of Fabrics on DUT_CE"
+ cluster: "Operational Credentials"
PICS: OPCREDS.S.A0001
- verification: |
- On 1st controller using chip tool, read fabrics list
-
- ./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 268962768
- [1650527361.425870][15792:15797] CHIP:TOO: Fabrics: 3 entries
- [1650527361.426777][15792:15797] CHIP:TOO: [1]: {
- [1650527361.426859][15792:15797] CHIP:TOO: RootPublicKey: 0429A71383F336D80918C9EC655112513E428C073AF7FB44820EC793535302C6E3825C56EE6DD1A683EAA7B59E3F261B46FFA24A6D911E8D88839F4C1B3C84BA01
- [1650527361.426923][15792:15797] CHIP:TOO: VendorId: 65521
- [1650527361.426979][15792:15797] CHIP:TOO: FabricId: 1
- [1650527361.427033][15792:15797] CHIP:TOO: NodeId: 1
- [1650527361.427088][15792:15797] CHIP:TOO: Label:
- [1650527361.427166][15792:15797] CHIP:TOO: FabricIndex: 1
- [1650527361.427376][15792:15797] CHIP:TOO: }
- [1650527361.427464][15792:15797] CHIP:TOO: [2]: {
- [1650527361.427532][15792:15797] CHIP:TOO: RootPublicKey: 04781BCEE70118049ED61DD5B4E401CF1A09D2F78AE7F5770BE5506AD24238E5E0777277DABAFD062659651C95CC2CA7DEAACE40DB579A946CC07CADB141BE05D7
- [1650527361.427595][15792:15797] CHIP:TOO: VendorId: 65521
- [1650527361.427649][15792:15797] CHIP:TOO: FabricId: 1
- [1650527361.427703][15792:15797] CHIP:TOO: NodeId: 3
- [1650527361.427756][15792:15797] CHIP:TOO: Label:
- [1650527361.427811][15792:15797] CHIP:TOO: FabricIndex: 2
- [1650527361.427868][15792:15797] CHIP:TOO: }
- [1650527361.427943][15792:15797] CHIP:TOO: [3]: {
- [1650527361.428008][15792:15797] CHIP:TOO: RootPublicKey: 0403EDB5B461030A34EF7EA2F9DB0D46A36185E4755C365AF9344C4959F049EF21D55EAB903A2C7FBFC305EEFA42989250D7517A73E6156062390A60C0D4C41EBD
- [1650527361.428067][15792:15797] CHIP:TOO: VendorId: 65521
- [1650527361.428122][15792:15797] CHIP:TOO: FabricId: 1
- [1650527361.428176][15792:15797] CHIP:TOO: NodeId: 2
- [1650527361.428229][15792:15797] CHIP:TOO: Label:
- [1650527361.428282][15792:15797] CHIP:TOO: FabricIndex: 3
- [1650527361.428335][15792:15797] CHIP:TOO: }
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
+ command: "readAttribute"
+ attribute: "Fabrics"
+ fabricFiltered: false
+ response:
+ value:
+ [
+ { Label: "", nodeId: nodeId },
+ { Label: "", nodeId: nodeId3 },
+ { Label: "", nodeID: nodeId2 },
+ ]
+ constraints:
+ type: list
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE using BCM"
PICS: CADMIN.S.C01.Rsp
- verification: |
- On 1st controller using chip tool, open commissioning window using BCM
-
-
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
-
-
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
- disabled: true
+ cluster: "AdministratorCommissioning"
+ command: "OpenBasicCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "discriminator"
+ value: discriminator
- label:
"Before the expiration of PIXIT.CADMIN.CwDuration seconds that was set
in step 14, TH_CR2 opens a second commissioning window on DUT_CE using
a commissioning timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
PICS: CADMIN.S.C01.Rsp
- verification: |
- On 2nd controller using chip tool, open commissioning window using BCM before timer expiry from above step
-
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000
-
- CHIP:DMG: InvokeResponseMessage =
- [1650527622.373450][15824:15829] CHIP:DMG: {
- [1650527622.373531][15824:15829] CHIP:DMG: suppressResponse = false,
- [1650527622.373628][15824:15829] CHIP:DMG: InvokeResponseIBs =
- [1650527622.373734][15824:15829] CHIP:DMG: [
- [1650527622.373817][15824:15829] CHIP:DMG: InvokeResponseIB =
- [1650527622.373913][15824:15829] CHIP:DMG: {
- [1650527622.374001][15824:15829] CHIP:DMG: CommandStatusIB =
- [1650527622.374087][15824:15829] CHIP:DMG: {
- [1650527622.374182][15824:15829] CHIP:DMG: CommandPathIB =
- [1650527622.374296][15824:15829] CHIP:DMG: {
- [1650527622.374382][15824:15829] CHIP:DMG: EndpointId = 0x0,
- [1650527622.374490][15824:15829] CHIP:DMG: ClusterId = 0x3c,
- [1650527622.374593][15824:15829] CHIP:DMG: CommandId = 0x1,
- [1650527622.374682][15824:15829] CHIP:DMG: },
- [1650527622.374799][15824:15829] CHIP:DMG:
- [1650527622.374896][15824:15829] CHIP:DMG: StatusIB =
- [1650527622.374979][15824:15829] CHIP:DMG: {
- [1650527622.375086][15824:15829] CHIP:DMG: status = 0x01 (FAILURE),
- [1650527622.375236][15824:15829] CHIP:DMG: cluster-status = 0x1,
- [1650527622.375320][15824:15829] CHIP:DMG: },
- [1650527622.375426][15824:15829] CHIP:DMG:
- [1650527622.375527][15824:15829] CHIP:DMG: },
- [1650527622.375616][15824:15829] CHIP:DMG:
- [1650527622.375704][15824:15829] CHIP:DMG: },
- [1650527622.375786][15824:15829] CHIP:DMG:
- [1650527622.375864][15824:15829] CHIP:DMG: ],
- [1650527622.375940][15824:15829] CHIP:DMG:
- [1650527622.376000][15824:15829] CHIP:DMG: InteractionModelRevision = 1
- [1650527622.376058][15824:15829] CHIP:DMG: },
- [1650527622.376202][15824:15829] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x1
- [1650527622.376278][15824:15829] CHIP:TOO: Error: IM Error 0x00000601: Cluster-specific error: 0x01
- disabled: true
+ identity: "beta"
+ cluster: "AdministratorCommissioning"
+ command: "OpenBasicCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "discriminator"
+ value: discriminator
+ response:
+ error: FAILURE
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_12.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_12.yaml
index bd41c7bcb0f53c..c736e2199f821e 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_12.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_12.yaml
@@ -19,6 +19,8 @@ name:
PICS:
- CADMIN.C
+ - CADMIN.C.C00.Tx
+ - CADMIN.C.C01.Tx
config:
nodeId: 0x12344321
@@ -69,7 +71,7 @@ tests:
On 3rd controller using chip tool connect using manual code
- ./chip-tool pairing code 1 35484132896
+ ./chip-tool pairing code 1 35484132896 --commissioner-name gamma
Verify you got below message
Device commissioning completed with success
@@ -101,7 +103,7 @@ tests:
On 2nd controller using chip tool connect using manual code
- ./chip-tool pairing code 1 35484132896
+ ./chip-tool pairing code 2 35484132896 --commissioner-name beta
Verify you got below message
Device commissioning completed with success
@@ -319,7 +321,7 @@ tests:
verification: |
On third controller open commissioning window verify status code 1
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 3 0 --timedInteractionTimeoutMs 1000
+ ./chip-tool administratorcommissioning open-basic-commissioning-window 500 3 0 --timedInteractionTimeoutMs 1000 --commissioner-name gamma
[1658838344.191922][9291:9296] CHIP:DMG: InvokeResponseMessage =
[1658838344.191947][9291:9296] CHIP:DMG: {
@@ -414,7 +416,7 @@ tests:
verification: |
On the 2nd controller using chip tool, open commissioning window using BCM before the timer expiry from above step
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000
+ ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000 --commissioner-name beta
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_13.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_13.yaml
index 4b151704ebc91d..79c0171de6bf29 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_13.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_13.yaml
@@ -19,6 +19,7 @@ name:
PICS:
- CADMIN.S
+ - CADMIN.S.F00
config:
nodeId: 0x12344321
@@ -103,7 +104,6 @@ tests:
constraints:
notValue: null
- #Issue https://github.com/CHIP-Specifications/chip-test-plans/issues/1972
- label: "TH_CR1 reads AdminVendorId attribute from DUT_CE"
cluster: "AdministratorCommissioning"
command: "readAttribute"
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_14.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_14.yaml
index c2526b965e5dcd..621aa56f0f62f9 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_14.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_14.yaml
@@ -19,6 +19,8 @@ name:
PICS:
- CADMIN.C
+ - CADMIN.C.C01.Tx
+ - CADMIN.C.C00.Tx
config:
nodeId: 0x12344321
@@ -39,7 +41,7 @@ tests:
- label: "DUT_CR1 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- "1. Provision the device using your DUT controller (use above instructions) ,
+ "1. Provision TH_CE using DUT_CR1 (Chip-tool as DUT controller)
"
disabled: true
@@ -49,9 +51,14 @@ tests:
TH_CR3 Commissions with TH_CE"
PICS: CADMIN.C.C01.Tx
verification: |
- On first controller, open commissioning window using BCM
+ On DUT_CR1 , open commissioning window using BCM
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+
./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
+ Verify success response On TH_CE(all-clusters-app) Log
CHIP:DMG: InvokeResponseMessage =
[1650278416.248379][11064:11069] CHIP:DMG: {
@@ -87,10 +94,10 @@ tests:
- On 3rd controller, using chip tool connect to the accessory
- ./chip-tool pairing onnetwork 1 20202021
+ On DUT_CR2, using chip tool connect to the accessory
+ ./chip-tool pairing onnetwork 1 20202021 --commissioner-name gamma
- Verify you got below message
+ Verify you got below message on TH_CE (all-clusters-app) log
Device commissioning completed with success
disabled: true
@@ -100,9 +107,14 @@ tests:
TH_CR2 Commissions with TH_CE"
PICS: CADMIN.C.C01.Tx
verification: |
- On first controller, open commissioning window using BCM
+ On DUT_CR1 , open commissioning window using BCM
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+
./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
+ Verify success response On TH_CE (all-clusters-app) Log
CHIP:DMG: InvokeResponseMessage =
[1650278416.248379][11064:11069] CHIP:DMG: {
@@ -138,10 +150,15 @@ tests:
- On 2nd controller, using chip tool connect to the accessory
- ./chip-tool pairing onnetwork 1 20202021
+ On TH_CR2 , using chip tool connect to the accessory
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+
+ ./chip-tool pairing onnetwork 1 20202021 --commissioner-name beta
+
+ Verify you got below message on TH_CE (all-clusters-app) log
- Verify you got below message
Device commissioning completed with success
disabled: true
@@ -150,9 +167,14 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
PICS: CADMIN.C.C01.Tx
verification: |
- On first controller, open commissioning window using BCM
+ On DUT_CR1 , open commissioning window using BCM
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+
./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
+ Verify success response On TH_CE (all-clusters-app) Log
CHIP:DMG: InvokeResponseMessage =
[1650278416.248379][11064:11069] CHIP:DMG: {
@@ -193,10 +215,17 @@ tests:
attribute"
PICS: CADMIN.C.A0000
verification: |
- On first controller, read WindowStatus
+ On DUT_CR1 , read WindowStatus
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool administratorcommissioning read window-status 1 0
+
+ Verify on TH_CE (all-clusters-app) log successfully reads the WindowStatus
+
+ CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2849200592
+ [1651137648.760469][14047:14052] CHIP:TOO: WindowStatus: 0
+ [1651137648.760534][14047:14052] CHIP:EM: Sending Standalone Ack for MessageCounter:5527412 on exchange 14590i"
disabled: true
- label:
@@ -206,16 +235,55 @@ tests:
using ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On 1st controller chip tool, open commissioning window using ECM
+ On DUT_CR1 chip tool, open commissioning window using ECM
- ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+
+ ./chip-tool pairing open-commissioning-window 1 1 200 1000 3840
+
+ Verify that the TH_CE is rejecting the opening of second commissioning session with the response status 0x01 failure in TH_CE Log
+
+
+ CHIP:DMG: InvokeResponseMessage =
+ [1650527622.373450][15824:15829] CHIP:DMG: {
+ [1650527622.373531][15824:15829] CHIP:DMG: suppressResponse = false,
+ [1650527622.373628][15824:15829] CHIP:DMG: InvokeResponseIBs =
+ [1650527622.373734][15824:15829] CHIP:DMG: [
+ [1650527622.373817][15824:15829] CHIP:DMG: InvokeResponseIB =
+ [1650527622.373913][15824:15829] CHIP:DMG: {
+ [1650527622.374001][15824:15829] CHIP:DMG: CommandStatusIB =
+ [1650527622.374087][15824:15829] CHIP:DMG: {
+ [1650527622.374182][15824:15829] CHIP:DMG: CommandPathIB =
+ [1650527622.374296][15824:15829] CHIP:DMG: {
+ [1650527622.374382][15824:15829] CHIP:DMG: EndpointId = 0x0,
+ [1650527622.374490][15824:15829] CHIP:DMG: ClusterId = 0x3c,
+ [1650527622.374593][15824:15829] CHIP:DMG: CommandId = 0x1,
+ [1650527622.374682][15824:15829] CHIP:DMG: },
+ [1650527622.374799][15824:15829] CHIP:DMG:
+ [1650527622.374896][15824:15829] CHIP:DMG: StatusIB =
+ [1650527622.374979][15824:15829] CHIP:DMG: {
+ [1650527622.375086][15824:15829] CHIP:DMG: status = 0x01 (FAILURE),
+ [1650527622.375236][15824:15829] CHIP:DMG: cluster-status = 0x1,
+ [1650527622.375320][15824:15829] CHIP:DMG: },
+ [1650527622.375426][15824:15829] CHIP:DMG:
+ [1650527622.375527][15824:15829] CHIP:DMG: },
+ [1650527622.375616][15824:15829] CHIP:DMG:
+ [1650527622.375704][15824:15829] CHIP:DMG: },
+ [1650527622.375786][15824:15829] CHIP:DMG:
+ [1650527622.375864][15824:15829] CHIP:DMG: ],
+ [1650527622.375940][15824:15829] CHIP:DMG:
+ [1650527622.376000][15824:15829] CHIP:DMG: InteractionModelRevision = 1
+ [1650527622.376058][15824:15829] CHIP:DMG: },
+ [1650527622.376202][15824:15829] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x1
+ [1650527622.376278][15824:15829] CHIP:TOO: Error: IM Error 0x00000601: Cluster-specific error: 0x01"
disabled: true
- label:
"Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that is
set in step 4"
verification: |
- verification step to be updated.
+ Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that is set in step 4
disabled: true
- label:
@@ -224,10 +292,14 @@ tests:
ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On 1st controller chip tool, open commissioning window using ECM
+ On DUT_CR1 chip tool, open commissioning window using ECM
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
+ Verify Manual pairing code on TH_CE (all-clusters-app) Log
+
[1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
[1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
[1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
@@ -247,10 +319,17 @@ tests:
attribute"
PICS: CADMIN.C.A0000
verification: |
- On first controller, read WindowStatus
+ On DUT_CR1 , read WindowStatus
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool administratorcommissioning read window-status 1 0
+
+ Verify on TH_CE (all-clusters-app) log successfully reads the WindowStatus
+
+ CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2849200592
+ [1651137648.760469][14047:14052] CHIP:TOO: WindowStatus: 0
+ [1651137648.760534][14047:14052] CHIP:EM: Sending Standalone Ack for MessageCounter:5527412 on exchange 14590i"
disabled: true
- label:
@@ -260,28 +339,55 @@ tests:
using ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On 3rd controller chip tool, open commissioning window using ECM
+ On TH_CR3 chip tool, open commissioning window using ECM
- ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- [1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
- [1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
- [1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635925713.972601][9695:9700] CHIP:DMG: ICR moving to [AddingComm]
- [1635925713.972705][9695:9700] CHIP:DMG: ICR moving to [AddedComma]
- [1635925713.972815][9695:9700] CHIP:IN: Prepared encrypted message 0xaaaad9b57d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 31056i with MessageCounter:0.
- [1635925713.972876][9695:9700] CHIP:IN: Sending encrypted msg 0xaaaad9b57d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 13449459 msec
- [1635925713.973006][9695:9700] CHIP:DMG: ICR moving to [CommandSen]
- [1635925713.973061][9695:9700] CHIP:CTL: Manual pairing code: [36217551633]
- [1635925713.973120][9695:9700] CHIP:CTL: SetupQRCode: [MT:00000CQM00A7F87ZT10]
- [1635925713.973178][9695:9700] CHIP:EM: Sending Standalone Ack for MessageCounter:1964916542 on exchange 31055i
+
+ ./chip-tool pairing open-commissioning-window 1 1 200 1000 3840 --commissioner-name beta
+
+ Verify that the TH_CE is rejecting the opening of second commissioning session with the response status 0x01 failure in TH_CE Log
+
+
+ CHIP:DMG: InvokeResponseMessage =
+ [1650527622.373450][15824:15829] CHIP:DMG: {
+ [1650527622.373531][15824:15829] CHIP:DMG: suppressResponse = false,
+ [1650527622.373628][15824:15829] CHIP:DMG: InvokeResponseIBs =
+ [1650527622.373734][15824:15829] CHIP:DMG: [
+ [1650527622.373817][15824:15829] CHIP:DMG: InvokeResponseIB =
+ [1650527622.373913][15824:15829] CHIP:DMG: {
+ [1650527622.374001][15824:15829] CHIP:DMG: CommandStatusIB =
+ [1650527622.374087][15824:15829] CHIP:DMG: {
+ [1650527622.374182][15824:15829] CHIP:DMG: CommandPathIB =
+ [1650527622.374296][15824:15829] CHIP:DMG: {
+ [1650527622.374382][15824:15829] CHIP:DMG: EndpointId = 0x0,
+ [1650527622.374490][15824:15829] CHIP:DMG: ClusterId = 0x3c,
+ [1650527622.374593][15824:15829] CHIP:DMG: CommandId = 0x1,
+ [1650527622.374682][15824:15829] CHIP:DMG: },
+ [1650527622.374799][15824:15829] CHIP:DMG:
+ [1650527622.374896][15824:15829] CHIP:DMG: StatusIB =
+ [1650527622.374979][15824:15829] CHIP:DMG: {
+ [1650527622.375086][15824:15829] CHIP:DMG: status = 0x01 (FAILURE),
+ [1650527622.375236][15824:15829] CHIP:DMG: cluster-status = 0x1,
+ [1650527622.375320][15824:15829] CHIP:DMG: },
+ [1650527622.375426][15824:15829] CHIP:DMG:
+ [1650527622.375527][15824:15829] CHIP:DMG: },
+ [1650527622.375616][15824:15829] CHIP:DMG:
+ [1650527622.375704][15824:15829] CHIP:DMG: },
+ [1650527622.375786][15824:15829] CHIP:DMG:
+ [1650527622.375864][15824:15829] CHIP:DMG: ],
+ [1650527622.375940][15824:15829] CHIP:DMG:
+ [1650527622.376000][15824:15829] CHIP:DMG: InteractionModelRevision = 1
+ [1650527622.376058][15824:15829] CHIP:DMG: },
+ [1650527622.376202][15824:15829] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x1
+ [1650527622.376278][15824:15829] CHIP:TOO: Error: IM Error 0x00000601: Cluster-specific error: 0x01"
disabled: true
- label:
"Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that is
set in step 8"
verification: |
- verification step to be updated.
+ Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that is set in step 8
disabled: true
- label:
@@ -289,10 +395,14 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On 1st controller chip tool, open commissioning window using ECM
+ On DUT_CR1 chip tool, open commissioning window using ECM
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
+ Verify Manual pairing code on TH_CE (all-clusters-app) Log
+
[1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
[1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
[1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
@@ -313,27 +423,67 @@ tests:
PIXIT.CADMIN.CwDuration seconds using ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On 2nd controller using chip tool connect to the accessory using ECM
+ On TH_CR2 using chip tool connect to the accessory using ECM
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
+
+ ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840 --commissioner-name beta
+
+ Verify that the TH_CE is rejecting the opening of second commissioning session with the response status 0x01 failure in TH_CE Log
+
+ CHIP:DMG: InvokeResponseMessage =
+ [1650527622.373450][15824:15829] CHIP:DMG: {
+ [1650527622.373531][15824:15829] CHIP:DMG: suppressResponse = false,
+ [1650527622.373628][15824:15829] CHIP:DMG: InvokeResponseIBs =
+ [1650527622.373734][15824:15829] CHIP:DMG: [
+ [1650527622.373817][15824:15829] CHIP:DMG: InvokeResponseIB =
+ [1650527622.373913][15824:15829] CHIP:DMG: {
+ [1650527622.374001][15824:15829] CHIP:DMG: CommandStatusIB =
+ [1650527622.374087][15824:15829] CHIP:DMG: {
+ [1650527622.374182][15824:15829] CHIP:DMG: CommandPathIB =
+ [1650527622.374296][15824:15829] CHIP:DMG: {
+ [1650527622.374382][15824:15829] CHIP:DMG: EndpointId = 0x0,
+ [1650527622.374490][15824:15829] CHIP:DMG: ClusterId = 0x3c,
+ [1650527622.374593][15824:15829] CHIP:DMG: CommandId = 0x1,
+ [1650527622.374682][15824:15829] CHIP:DMG: },
+ [1650527622.374799][15824:15829] CHIP:DMG:
+ [1650527622.374896][15824:15829] CHIP:DMG: StatusIB =
+ [1650527622.374979][15824:15829] CHIP:DMG: {
+ [1650527622.375086][15824:15829] CHIP:DMG: status = 0x01 (FAILURE),
+ [1650527622.375236][15824:15829] CHIP:DMG: cluster-status = 0x1,
+ [1650527622.375320][15824:15829] CHIP:DMG: },
+ [1650527622.375426][15824:15829] CHIP:DMG:
+ [1650527622.375527][15824:15829] CHIP:DMG: },
+ [1650527622.375616][15824:15829] CHIP:DMG:
+ [1650527622.375704][15824:15829] CHIP:DMG: },
+ [1650527622.375786][15824:15829] CHIP:DMG:
+ [1650527622.375864][15824:15829] CHIP:DMG: ],
+ [1650527622.375940][15824:15829] CHIP:DMG:
+ [1650527622.376000][15824:15829] CHIP:DMG: InteractionModelRevision = 1
+ [1650527622.376058][15824:15829] CHIP:DMG: },
+ [1650527622.376202][15824:15829] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x1
+ [1650527622.376278][15824:15829] CHIP:TOO: Error: IM Error 0x00000601: Cluster-specific error: 0x01"
disabled: true
- label:
"Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that is
set in step 12"
verification: |
- verification step to be updated.
+ Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that is set in step 12
disabled: true
- label: "DUT_CR1 sends command to TH_CE to read WindowStatus attribute"
PICS: CADMIN.C.A0000
verification: |
- On first controller, read WindowStatus
+ On DUT_CR1 , read WindowStatus
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool administratorcommissioning read window-status 1 0
+ Verify on TH_CE(all-clusters-app) log successfully reads the WindowStatus
+
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2849200592
[1651137648.760469][14047:14052] CHIP:TOO: WindowStatus: 0
[1651137648.760534][14047:14052] CHIP:EM: Sending Standalone Ack for MessageCounter:5527412 on exchange 14590i"
@@ -342,10 +492,14 @@ tests:
- label: "DUT_CR1 sends command to TH_CE to read AdminFabricIndex attribute"
PICS: CADMIN.C.A0001
verification: |
- On first controller, read AdminFabricIndex
+ On DUT_CR1 , read AdminFabricIndex
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool administratorcommissioning read admin-fabric-index 1 0
+ Verify on TH_CE(all-clusters-app) log successfully reads the AdminFabricIndex
+
[1659097193.389295][11728:11733] CHIP:DMG: }
[1659097193.389588][11728:11733] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0001 DataVersion: 1299585105
[1659097193.389731][11728:11733] CHIP:TOO: AdminFabricIndex: 0
@@ -355,10 +509,14 @@ tests:
- label: "DUT_CR1 sends command to TH_CE to read AdminVendorId attribute"
PICS: CADMIN.C.A0002
verification: |
- On first controller, read AdminVendorId
+ On DUT_CR1 , read AdminVendorId
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool administratorcommissioning read admin-vendor-id 1 0
+ Verify on TH_CE(all-clusters-app) log successfully reads the AdminVendorId
+
[1658838521.588942][9317:9322] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0002 DataVersion: 2423106591
[1658838521.589005][9317:9322] CHIP:TOO: AdminVendorId: 0
[1658838521.589079][9317:9322] CHIP:EM: Sending Standalone Ack for MessageCounter:217165763 on exchange 55683i
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_15.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_15.yaml
index e8b060d2034eb3..17191702192c60 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_15.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_15.yaml
@@ -11,293 +11,279 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name:
- 4.1.15. [TC-CADMIN-1.15] Removing Fabrics from DUT and Fabric index
- enumeration using ECM [DUT - Commissionee]
+ 30.1.15. [TC-CADMIN-1.15] Removing Fabrics from DUT and Fabric index
+ enumeration using ECM [DUT - Commissionee]
PICS:
- CADMIN.S
config:
nodeId: 0x12344321
- cluster: "Basic"
+ nodeId2:
+ type: node_id
+ defaultValue: 0xCAFE
+ nodeId3:
+ type: node_id
+ defaultValue: 0xC00FEE
endpoint: 0
+ discriminator:
+ type: int16u
+ defaultValue: 3840
+ payload:
+ type: char_string
+ defaultValue: "MT:-24J0AFN00KA0648G00"
+ PakeVerifier:
+ type: octet_string
+ defaultValue:
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"
tests:
- - label: "Precondition"
+ - label: "Precondition: Reset Devices to factory defaults"
+ PICS: PICS_SDK_CI_ONLY
+ cluster: "SystemCommands"
+ command: "FactoryReset"
+
+ - label: "Precondition: Reset Devices to factory defaults"
verification: |
- Reset Devices to factory defaults
- disabled: true
+ Not implemented in YAML
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_SKIP_SAMPLE_APP
+ arguments:
+ values:
+ - name: "message"
+ value: "Factory Reset the DUT and enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
- label: "TH_CR1 starts a commissioning process with DUT_CE"
+ identity: "alpha"
PICS: CADMIN.S
- verification: |
- "1. Provision the device using 1st controller chip tool(use above instructions) ,
- "
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE using ECM"
+ identity: "alpha"
PICS: CADMIN.S.C00.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window using ECM
-
- ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
-
- [1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
- [1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
- [1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635925713.972601][9695:9700] CHIP:DMG: ICR moving to [AddingComm]
- [1635925713.972705][9695:9700] CHIP:DMG: ICR moving to [AddedComma]
- [1635925713.972815][9695:9700] CHIP:IN: Prepared encrypted message 0xaaaad9b57d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 31056i with MessageCounter:0.
- [1635925713.972876][9695:9700] CHIP:IN: Sending encrypted msg 0xaaaad9b57d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 13449459 msec
- [1635925713.973006][9695:9700] CHIP:DMG: ICR moving to [CommandSen]
- [1635925713.973061][9695:9700] CHIP:CTL: Manual pairing code: [36217551633]
- [1635925713.973120][9695:9700] CHIP:CTL: SetupQRCode: [MT:00000CQM00A7F87ZT10]
- [1635925713.973178][9695:9700] CHIP:EM: Sending Standalone Ack for MessageCounter:1964916542 on exchange 31055i
- disabled: true
+ cluster: "AdministratorCommissioning"
+ command: "OpenCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "PAKEVerifier"
+ value: PakeVerifier
+ - name: "discriminator"
+ value: discriminator
+ - name: "iterations"
+ value: 1000
+ - name: "salt"
+ value: "SPAKE2P Key Salt"
- label: "TH_CR2 starts a commissioning process with DUT_CE"
+ identity: "beta"
+ cluster: "CommissionerCommands"
+ command: "PairWithCode"
PICS: CADMIN.S
- verification: |
- On 2nd controller using chip tool connect to the accessory
-
-
- ./chip-tool pairing code 2 36217551633
-
- Verify you got below message
- Device commissioning completed with success
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
+ - name: "payload"
+ value: payload
+
+ - label: "DUT_CE is commissioned to TH_CR2"
+ identity: "beta"
+ PICS: CADMIN.S
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE using ECM"
+ identity: "alpha"
PICS: CADMIN.S.C00.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window using ECM
-
- ./chip-tool pairing open-commissioning-window 1 1 300 1000 3840
-
- [1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
- [1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
- [1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635925713.972601][9695:9700] CHIP:DMG: ICR moving to [AddingComm]
- [1635925713.972705][9695:9700] CHIP:DMG: ICR moving to [AddedComma]
- [1635925713.972815][9695:9700] CHIP:IN: Prepared encrypted message 0xaaaad9b57d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 31056i with MessageCounter:0.
- [1635925713.972876][9695:9700] CHIP:IN: Sending encrypted msg 0xaaaad9b57d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 13449459 msec
- [1635925713.973006][9695:9700] CHIP:DMG: ICR moving to [CommandSen]
- [1635925713.973061][9695:9700] CHIP:CTL: Manual pairing code: [36217551633]
- [1635925713.973120][9695:9700] CHIP:CTL: SetupQRCode: [MT:00000CQM00A7F87ZT10]
- [1635925713.973178][9695:9700] CHIP:EM: Sending Standalone Ack for MessageCounter:1964916542 on exchange 31055i
- disabled: true
-
- - label: "TH_CR3 starts a commissioning process with DUT_CE"
+ cluster: "AdministratorCommissioning"
+ command: "OpenCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "PAKEVerifier"
+ value: PakeVerifier
+ - name: "discriminator"
+ value: discriminator
+ - name: "iterations"
+ value: 1000
+ - name: "salt"
+ value: "SPAKE2P Key Salt"
+
+ - label: "TH_CR3 Commissions with DUT_CE"
PICS: CADMIN.S
- verification: |
- On 3rd controller using chip tool connect to the accessory
-
-
-
- ./chip-tool pairing code 3 36217551633
-
- Verify you got below message
- Device commissioning completed with success
- disabled: true
+ identity: "gamma"
+ cluster: "CommissionerCommands"
+ command: "PairWithCode"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId3
+ - name: "payload"
+ value: payload
+
+ - label: "DUT_CE is commissioned to TH_CR3"
+ PICS: CADMIN.S
+ identity: "gamma"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId3
- label: "TH_CR2 reads the list of Fabrics on DUT_CE"
+ identity: "beta"
+ cluster: "Operational Credentials"
PICS: OPCREDS.S.A0001
- verification: |
- On 2nd controller using chip tool, read fabrics list
-
- ./chip-tool operationalcredentials read fabrics 2 0 --fabric-filtered 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995193
- CHIP:TOO: Fabrics: 3 entries
- CHIP:TOO: [1]: {
- CHIP:TOO: RootPublicKey: 04656F56DBDB677DC957028DFC0ED76709C72753C9194B117A483BDC07386BFD9529B68EB4448FBBA3964EFF37A56A8F461D348B0DAF3B56A75F3B94BF8209D36F
- CHIP:TOO: VendorId: 65521
- CHIP:TOO: FabricId: 1
- CHIP:TOO: NodeId: 1
- CHIP:TOO: Label:
- CHIP:TOO: FabricIndex: 1
- CHIP:TOO: }
- CHIP:TOO: [2]: {
- CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- CHIP:TOO: VendorId: 65521
- CHIP:TOO: FabricId: 1
- CHIP:TOO: NodeId: 2
- CHIP:TOO: Label:
- CHIP:TOO: FabricIndex: 2
- CHIP:TOO: }
- CHIP:TOO: [3]: {
- CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- CHIP:TOO: VendorId: 65521
- CHIP:TOO: FabricId: 1
- CHIP:TOO: NodeId: 3
- CHIP:TOO: Label:
- CHIP:TOO: FabricIndex: 3
- CHIP:TOO: }
- CHIP:EM: Sending Standalone Ack for MessageCounter:9143157 on exchange 1147i
- disabled: true
+ command: "readAttribute"
+ attribute: "Fabrics"
+ fabricFiltered: false
+ response:
+ value:
+ [
+ { Label: "", FabricIndex: 1, nodeId: nodeId },
+ { Label: "", FabricIndex: 2, nodeId: nodeId2 },
+ { Label: "", FabricIndex: 3, nodeID: nodeId3 },
+ ]
+ constraints:
+ type: list
- label: "TH_CR2 sends RemoveFabric with FabricIndex = 2 command to DUT_CE"
PICS: OPCREDS.S.C0a.Rsp
- verification: |
- on 2nd controller using chip tool, remove fabric with FabricIndex=2
-
- ./chip-tool operationalcredentials remove-fabric 2 2 0
-
- CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0008
- CHIP:TOO: NOCResponse: {
- CHIP:TOO: statusCode: 0
- CHIP:TOO: fabricIndex: 2
- CHIP:TOO: }
- CHIP:DMG: ICR moving to [AwaitingDe]
- disabled: true
+ identity: "beta"
+ cluster: "Operational Credentials"
+ command: "RemoveFabric"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "FabricIndex"
+ value: 2
- label:
- "TH_CR2 writes and reads the Basic Information Clusters NodeLabel
- mandatory attribute of DUT_CE"
+ "TH_CR2 writes the Basic Information Clusters NodeLabel mandatory
+ attribute of DUT_CE"
PICS: BINFO.S.A0005
+ identity: "beta"
+ command: "writeAttribute"
+ cluster: "Basic"
+ attribute: "NodeLabel"
+ arguments:
+ value: "chiptest"
+ response:
+ error: FAILURE
+
+ #Issue https://github.com/project-chip/connectedhomeip/issues/21999
+ - label:
+ "TH_CR2 reads the Basic Information Clusters NodeLabel mandatory
+ attribute of DUT_CE"
+ PICS: BINFO.S.A0005 && PICS_USER_PROMPT
verification: |
- Using your 2nd controller, write attribute and read attribute
+ Using your 2nd controller read attribute
Below is the example while using chip tool on second controller,
- ./chip-tool basic write node-label te5new 2 0
-
- Received error (protocol code 2) during pairing process. ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter
- [1651819620.929567][4359:4364] CHIP:CTL: OperationalDeviceProxy[B8070CD13C99D367:0000000000000002]: State change 3 --> 2
- [1651819620.929700][4359:4364] CHIP:-: ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter at ../../commands/clusters/ModelCommand.cpp:53
-
./chip-tool basic read node-label 2 0
Received error (protocol code 2) during pairing process. ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter
[1651819620.929567][4359:4364] CHIP:CTL: OperationalDeviceProxy[B8070CD13C99D367:0000000000000002]: State change 3 --> 2
[1651819620.929700][4359:4364] CHIP:-: ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter at ../../commands/clusters/ModelCommand.cpp:53
- disabled: true
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' for success"
+ - name: "expectedValue"
+ value: "y"
- label: "TH_CR1 reads the list of Fabrics on DUT_CE"
+ identity: "alpha"
PICS: OPCREDS.S.A0001
- verification: |
- On 1st controller using chip tool, read fabrics list
-
- Below is the command using chip tool controller
-
- ./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995219
- [1647863260.286772][9294:9299] CHIP:TOO: Fabrics: 2 entries
- [1647863260.286908][9294:9299] CHIP:TOO: [1]: {
- [1647863260.286947][9294:9299] CHIP:TOO: RootPublicKey: 04656F56DBDB677DC957028DFC0ED76709C72753C9194B117A483BDC07386BFD9529B68EB4448FBBA3964EFF37A56A8F461D348B0DAF3B56A75F3B94BF8209D36F
- [1647863260.286995][9294:9299] CHIP:TOO: VendorId: 65521
- [1647863260.287026][9294:9299] CHIP:TOO: FabricId: 1
- [1647863260.287055][9294:9299] CHIP:TOO: NodeId: 1
- [1647863260.287084][9294:9299] CHIP:TOO: Label:
- [1647863260.287113][9294:9299] CHIP:TOO: FabricIndex: 1
- [1647863260.287144][9294:9299] CHIP:TOO: }
- [1647863260.287185][9294:9299] CHIP:TOO: [2]: {
- [1647863260.287221][9294:9299] CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- [1647863260.287253][9294:9299] CHIP:TOO: VendorId: 65521
- [1647863260.287282][9294:9299] CHIP:TOO: FabricId: 1
- [1647863260.287310][9294:9299] CHIP:TOO: NodeId: 3
- [1647863260.287339][9294:9299] CHIP:TOO: Label:
- [1647863260.287368][9294:9299] CHIP:TOO: FabricIndex: 3
- [1647863260.287396][9294:9299] CHIP:TOO: }
- [1647863260.287515][9294:9299] CHIP:EM: Sending Standalone Ack for MessageCounter:11301761 on exchange 13180i"
- disabled: true
-
- - label:
- "Verify DUT_CE is now discoverable over DNS-SD with 2 Operational
- service records (_matter._tcp SRV records)"
- verification: |
- grl@grl-ThinkPad-L480:~/may16_cntrl03/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matter._tcp
- + wlp5s0 IPv6 8E50A59FAF52A809-0000000000000001 _matter._tcp local
- + wlp5s0 IPv6 03E707466A904C7E-0000000000000003 _matter._tcp local
- = wlp5s0 IPv6 8E50A59FAF52A809-0000000000000001 _matter._tcp local
- hostname = [E45F010F27530000.local]
- address = [fe80::e65f:1ff:fe0f:2753]
- port = [5540]
- txt = ["T=1" "SAI=300" "SII=5000"]
- = wlp5s0 IPv6 03E707466A904C7E-0000000000000003 _matter._tcp local
- hostname = [E45F010F27530000.local]
- address = [fe80::e65f:1ff:fe0f:2753]
- port = [5540]
- txt = ["T=1" "SAI=300" "SII=5000"]
- grl@grl-ThinkPad-L480:~/may16_cntrl03/connectedhomeip/examples/chip-tool/out/debug$
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
+ cluster: "Operational Credentials"
+ command: "readAttribute"
+ attribute: "Fabrics"
+ fabricFiltered: false
+ response:
+ value:
+ [
+ { Label: "", FabricIndex: 1, nodeId: nodeId },
+ { Label: "", FabricIndex: 3, nodeID: nodeId3 },
+ ]
+ constraints:
+ type: list
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE using ECM"
+ identity: "alpha"
PICS: CADMIN.S.C00.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window using ECM
-
- ./chip-tool pairing open-commissioning-window 1 1 180 1000 3840
-
- [1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
- [1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
- [1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635925713.972601][9695:9700] CHIP:DMG: ICR moving to [AddingComm]
- [1635925713.972705][9695:9700] CHIP:DMG: ICR moving to [AddedComma]
- [1635925713.972815][9695:9700] CHIP:IN: Prepared encrypted message 0xaaaad9b57d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 31056i with MessageCounter:0.
- [1635925713.972876][9695:9700] CHIP:IN: Sending encrypted msg 0xaaaad9b57d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 13449459 msec
- [1635925713.973006][9695:9700] CHIP:DMG: ICR moving to [CommandSen]
- [1635925713.973061][9695:9700] CHIP:CTL: Manual pairing code: [36217551633]
- [1635925713.973120][9695:9700] CHIP:CTL: SetupQRCode: [MT:00000CQM00A7F87ZT10]
- [1635925713.973178][9695:9700] CHIP:EM: Sending Standalone Ack for MessageCounter:1964916542 on exchange 31055i
- disabled: true
+ cluster: "AdministratorCommissioning"
+ command: "OpenCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "PAKEVerifier"
+ value: PakeVerifier
+ - name: "discriminator"
+ value: discriminator
+ - name: "iterations"
+ value: 1000
+ - name: "salt"
+ value: "SPAKE2P Key Salt"
- label: "TH_CR2 starts a commissioning process with DUT_CE"
+ identity: "beta"
+ cluster: "CommissionerCommands"
+ command: "PairWithCode"
PICS: CADMIN.S
- verification: |
- On 2nd controller using chip tool connect to the accessory
-
-
- ./chip-tool pairing code 2 36217551633
-
- Verify you got below message
- Device commissioning completed with success
- disabled: true
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
+ - name: "payload"
+ value: payload
+
+ - label: "DUT_CE is commissioned to TH_CR2"
+ PICS: CADMIN.S
+ identity: "beta"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
- label: "TH_CR1 reads the list of Fabrics on DUT_CE"
+ identity: "alpha"
PICS: OPCREDS.S.A0001
- verification: |
- On 1st controller, read fabrics list
-
- Below is the command using chip tool controller
-
- ./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995246
- [1647863342.980899][9309:9314] CHIP:TOO: Fabrics: 3 entries
- [1647863342.981158][9309:9314] CHIP:TOO: [1]: {
- [1647863342.981231][9309:9314] CHIP:TOO: RootPublicKey: 04656F56DBDB677DC957028DFC0ED76709C72753C9194B117A483BDC07386BFD9529B68EB4448FBBA3964EFF37A56A8F461D348B0DAF3B56A75F3B94BF8209D36F
- [1647863342.981322][9309:9314] CHIP:TOO: VendorId: 65521
- [1647863342.981380][9309:9314] CHIP:TOO: FabricId: 1
- [1647863342.981434][9309:9314] CHIP:TOO: NodeId: 1
- [1647863342.981486][9309:9314] CHIP:TOO: Label:
- [1647863342.981539][9309:9314] CHIP:TOO: FabricIndex: 1
- [1647863342.981594][9309:9314] CHIP:TOO: }
- [1647863342.981671][9309:9314] CHIP:TOO: [2]: {
- [1647863342.981737][9309:9314] CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- [1647863342.981796][9309:9314] CHIP:TOO: VendorId: 65521
- [1647863342.981849][9309:9314] CHIP:TOO: FabricId: 1
- [1647863342.981901][9309:9314] CHIP:TOO: NodeId: 3
- [1647863342.981952][9309:9314] CHIP:TOO: Label:
- [1647863342.982005][9309:9314] CHIP:TOO: FabricIndex: 3
- [1647863342.982057][9309:9314] CHIP:TOO: }
- [1647863342.982131][9309:9314] CHIP:TOO: [3]: {
- [1647863342.982195][9309:9314] CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- [1647863342.982252][9309:9314] CHIP:TOO: VendorId: 65521
- [1647863342.982305][9309:9314] CHIP:TOO: FabricId: 1
- [1647863342.982357][9309:9314] CHIP:TOO: NodeId: 2
- [1647863342.982409][9309:9314] CHIP:TOO: Label:
- [1647863342.982460][9309:9314] CHIP:TOO: FabricIndex: 4
- [1647863342.982512][9309:9314] CHIP:TOO: }
- [1647863342.982738][9309:9314] CHIP:EM: Sending Standalone Ack for MessageCounter:5772016 on exchange 3310i
- disabled: true
+ cluster: "Operational Credentials"
+ command: "readAttribute"
+ attribute: "Fabrics"
+ fabricFiltered: false
+ response:
+ value:
+ [
+ { Label: "", FabricIndex: 1, nodeId: nodeId },
+ { Label: "", FabricIndex: 4, nodeId: nodeId2 },
+ { Label: "", FabricIndex: 3, nodeID: nodeId3 },
+ ]
+ constraints:
+ type: list
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_16.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_16.yaml
index 623466e4edeaa7..ba7744562b2518 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_16.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_16.yaml
@@ -11,353 +11,258 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name:
- 4.1.16. [TC-CADMIN-1.16] Removing Fabrics from DUT and Fabric index
- enumeration using BCM [DUT - Commissionee]
+ 30.1.16. [TC-CADMIN-1.16] Removing Fabrics from DUT and Fabric index
+ enumeration using BCM [DUT - Commissionee]
PICS:
- CADMIN.S
+ - CADMIN.S.F00
config:
nodeId: 0x12344321
- cluster: "Basic"
+ nodeId2:
+ type: node_id
+ defaultValue: 0xCAFE
+ nodeId3:
+ type: node_id
+ defaultValue: 0xC00FEE
endpoint: 0
+ discriminator:
+ type: int16u
+ defaultValue: 3840
+ payload:
+ type: char_string
+ defaultValue: "MT:-24J0AFN00KA0648G00"
tests:
- - label: "Precondition"
+ - label: "Precondition: Reset Devices to factory defaults"
+ PICS: PICS_SDK_CI_ONLY
+ cluster: "SystemCommands"
+ command: "FactoryReset"
+
+ - label: "Precondition: Reset Devices to factory defaults"
verification: |
- Reset Devices to factory defaults
- disabled: true
+ Not implemented in YAML
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_SKIP_SAMPLE_APP
+ arguments:
+ values:
+ - name: "message"
+ value: "Factory Reset the DUT and enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
- label: "TH_CR1 starts a commissioning process with DUT_CE"
+ identity: "alpha"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
PICS: CADMIN.S
- verification: |
- "1. Provision the device using 1st controller chip tool(use above instructions) ,
- "
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE"
+ identity: "alpha"
+ cluster: "AdministratorCommissioning"
+ command: "OpenBasicCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
PICS: CADMIN.S.C01.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window using BCM
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
-
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
- disabled: true
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "discriminator"
+ value: discriminator
- label: "TH_CR2 starts a commissioning process with DUT_CE"
+ identity: "beta"
+ cluster: "CommissionerCommands"
+ command: "PairWithCode"
PICS: CADMIN.S
- verification: |
- On 2nd controller using chip tool connect to the accessory
-
-
- ./chip-tool pairing onnetwork 2 20202021
-
- Verify you got below message
- Device commissioning completed with success
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
+ - name: "payload"
+ value: payload
+
+ - label: "DUT_CE is commissioned to TH_CR2"
+ PICS: CADMIN.S
+ identity: "beta"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE"
+ identity: "alpha"
+ cluster: "AdministratorCommissioning"
+ command: "OpenBasicCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
PICS: CADMIN.S.C01.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window using BCM
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
-
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
- disabled: true
-
- - label: "TH_CR3 starts a commissioning process with DUT_CE"
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "discriminator"
+ value: discriminator
+
+ - label: "TH_CR3 Commissions with DUT_CE"
PICS: CADMIN.S
- verification: |
- On 3rd controller using chip tool connect to the accessory
-
-
-
- ./chip-tool pairing onnetwork 3 20202021
-
- Verify you got below message
- Device commissioning completed with success
- disabled: true
+ identity: "gamma"
+ cluster: "CommissionerCommands"
+ command: "PairWithCode"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId3
+ - name: "payload"
+ value: payload
+
+ - label: "DUT_CE is commissioned to TH_CR3"
+ PICS: CADMIN.S
+ identity: "gamma"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId3
- label: "TH_CR2 reads the list of Fabrics on DUT_CE"
+ identity: "beta"
+ cluster: "Operational Credentials"
PICS: OPCREDS.S.A0001
- verification: |
- On 2nd controller using chip tool, read fabrics list
-
- ./chip-tool operationalcredentials read fabrics 2 0 --fabric-filtered 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995193
- CHIP:TOO: Fabrics: 3 entries
- CHIP:TOO: [1]: {
- CHIP:TOO: RootPublicKey: 04656F56DBDB677DC957028DFC0ED76709C72753C9194B117A483BDC07386BFD9529B68EB4448FBBA3964EFF37A56A8F461D348B0DAF3B56A75F3B94BF8209D36F
- CHIP:TOO: VendorId: 65521
- CHIP:TOO: FabricId: 1
- CHIP:TOO: NodeId: 1
- CHIP:TOO: Label:
- CHIP:TOO: FabricIndex: 1
- CHIP:TOO: }
- CHIP:TOO: [2]: {
- CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- CHIP:TOO: VendorId: 65521
- CHIP:TOO: FabricId: 1
- CHIP:TOO: NodeId: 2
- CHIP:TOO: Label:
- CHIP:TOO: FabricIndex: 2
- CHIP:TOO: }
- CHIP:TOO: [3]: {
- CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- CHIP:TOO: VendorId: 65521
- CHIP:TOO: FabricId: 1
- CHIP:TOO: NodeId: 3
- CHIP:TOO: Label:
- CHIP:TOO: FabricIndex: 3
- CHIP:TOO: }
- CHIP:EM: Sending Standalone Ack for MessageCounter:9143157 on exchange 1147i
- disabled: true
+ command: "readAttribute"
+ attribute: "Fabrics"
+ fabricFiltered: false
+ response:
+ value:
+ [
+ { Label: "", FabricIndex: 1, nodeId: nodeId },
+ { Label: "", FabricIndex: 2, nodeId: nodeId2 },
+ { Label: "", FabricIndex: 3, nodeID: nodeId3 },
+ ]
+ constraints:
+ type: list
- label: "TH_CR2 sends RemoveFabric with FabricIndex = 2 command to DUT_CE"
PICS: OPCREDS.S.C0a.Rsp
- verification: |
- on 2nd controller using chip tool, remove fabric with FabricIndex=2
-
- ./chip-tool operationalcredentials remove-fabric 2 2 0
-
- CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0008
- CHIP:TOO: NOCResponse: {
- CHIP:TOO: statusCode: 0
- CHIP:TOO: fabricIndex: 2
- CHIP:TOO: }
- CHIP:DMG: ICR moving to [AwaitingDe]
- disabled: true
+ identity: "beta"
+ cluster: "Operational Credentials"
+ command: "RemoveFabric"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "FabricIndex"
+ value: 2
- label:
- "TH_CR2 writes and reads the Basic Information Clusters NodeLabel
- mandatory attribute of DUT_CE"
+ "TH_CR2 writes the Basic Information Clusters NodeLabel mandatory
+ attribute of DUT_CE"
PICS: BINFO.S.A0005
+ identity: "beta"
+ command: "writeAttribute"
+ cluster: "Basic"
+ attribute: "NodeLabel"
+ arguments:
+ value: "chiptest"
+ response:
+ error: FAILURE
+
+ #Issue https://github.com/project-chip/connectedhomeip/issues/21999
+ - label:
+ "TH_CR2 reads the Basic Information Clusters NodeLabel mandatory
+ attribute of DUT_CE"
+ PICS: BINFO.S.A0005 && PICS_USER_PROMPT
verification: |
- Using your 2nd controller, write attribute and read attribute
+ Using your 2nd controller read attribute
Below is the example while using chip tool on second controller,
- ./chip-tool basic write node-label te5new 2 0
-
- Received error (protocol code 2) during pairing process. ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter
- [1651819620.929567][4359:4364] CHIP:CTL: OperationalDeviceProxy[B8070CD13C99D367:0000000000000002]: State change 3 --> 2
- [1651819620.929700][4359:4364] CHIP:-: ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter at ../../commands/clusters/ModelCommand.cpp:53
-
./chip-tool basic read node-label 2 0
Received error (protocol code 2) during pairing process. ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter
[1651819620.929567][4359:4364] CHIP:CTL: OperationalDeviceProxy[B8070CD13C99D367:0000000000000002]: State change 3 --> 2
[1651819620.929700][4359:4364] CHIP:-: ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter at ../../commands/clusters/ModelCommand.cpp:53
- disabled: true
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' for success"
+ - name: "expectedValue"
+ value: "y"
- label: "TH_CR1 reads the list of Fabrics on DUT_CE"
+ identity: "alpha"
PICS: OPCREDS.S.A0001
- verification: |
- On 1st controller using chip tool, read fabrics list
-
-
- Below is the command using chip tool controller
-
- ./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995219
- [1647863260.286772][9294:9299] CHIP:TOO: Fabrics: 2 entries
- [1647863260.286908][9294:9299] CHIP:TOO: [1]: {
- [1647863260.286947][9294:9299] CHIP:TOO: RootPublicKey: 04656F56DBDB677DC957028DFC0ED76709C72753C9194B117A483BDC07386BFD9529B68EB4448FBBA3964EFF37A56A8F461D348B0DAF3B56A75F3B94BF8209D36F
- [1647863260.286995][9294:9299] CHIP:TOO: VendorId: 65521
- [1647863260.287026][9294:9299] CHIP:TOO: FabricId: 1
- [1647863260.287055][9294:9299] CHIP:TOO: NodeId: 1
- [1647863260.287084][9294:9299] CHIP:TOO: Label:
- [1647863260.287113][9294:9299] CHIP:TOO: FabricIndex: 1
- [1647863260.287144][9294:9299] CHIP:TOO: }
- [1647863260.287185][9294:9299] CHIP:TOO: [2]: {
- [1647863260.287221][9294:9299] CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- [1647863260.287253][9294:9299] CHIP:TOO: VendorId: 65521
- [1647863260.287282][9294:9299] CHIP:TOO: FabricId: 1
- [1647863260.287310][9294:9299] CHIP:TOO: NodeId: 3
- [1647863260.287339][9294:9299] CHIP:TOO: Label:
- [1647863260.287368][9294:9299] CHIP:TOO: FabricIndex: 3
- [1647863260.287396][9294:9299] CHIP:TOO: }
- [1647863260.287515][9294:9299] CHIP:EM: Sending Standalone Ack for MessageCounter:11301761 on exchange 13180i"
- disabled: true
-
- - label:
- "Verify DUT_CE is now discoverable over DNS-SD with 2 Operational
- service records (_matter._tcp SRV records)."
- verification: |
- grl@grl-ThinkPad-L480:~/may16_cntrl03/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matter._tcp
- + wlp5s0 IPv6 8E50A59FAF52A809-0000000000000001 _matter._tcp local
- + wlp5s0 IPv6 03E707466A904C7E-0000000000000003 _matter._tcp local
- = wlp5s0 IPv6 8E50A59FAF52A809-0000000000000001 _matter._tcp local
- hostname = [E45F010F27530000.local]
- address = [fe80::e65f:1ff:fe0f:2753]
- port = [5540]
- txt = ["T=1" "SAI=300" "SII=5000"]
- = wlp5s0 IPv6 03E707466A904C7E-0000000000000003 _matter._tcp local
- hostname = [E45F010F27530000.local]
- address = [fe80::e65f:1ff:fe0f:2753]
- port = [5540]
- txt = ["T=1" "SAI=300" "SII=5000"]
- grl@grl-ThinkPad-L480:~/may16_cntrl03/connectedhomeip/examples/chip-tool/out/debug$
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE using a commissioning
- timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
+ cluster: "Operational Credentials"
+ command: "readAttribute"
+ attribute: "Fabrics"
+ fabricFiltered: false
+ response:
+ value:
+ [
+ { Label: "", FabricIndex: 1, nodeId: nodeId },
+ { Label: "", FabricIndex: 3, nodeID: nodeId3 },
+ ]
+ constraints:
+ type: list
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE using BCM"
+ identity: "alpha"
PICS: CADMIN.S.C01.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window using BCM
-
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
-
-
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
- disabled: true
+ cluster: "AdministratorCommissioning"
+ command: "OpenBasicCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 180
+ - name: "discriminator"
+ value: discriminator
- label: "TH_CR2 starts a commissioning process with DUT_CE"
+ identity: "beta"
+ cluster: "CommissionerCommands"
+ command: "PairWithCode"
PICS: CADMIN.S
- verification: |
- On 2nd controller using chip tool connect to the accessory
-
-
- ./chip-tool pairing onnetwork 2 20202021
-
- Verify you got below message
- Device commissioning completed with success
- disabled: true
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
+ - name: "payload"
+ value: payload
+
+ - label: "DUT_CE is commissioned to TH_CR2"
+ PICS: CADMIN.S
+ identity: "beta"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId2
- label: "TH_CR1 reads the list of Fabrics on DUT_CE"
+ identity: "alpha"
PICS: OPCREDS.S.A0001
- verification: |
- On 1st controller, read fabrics list
-
- Below is the command using chip tool controller
-
- ./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995246
- [1647863342.980899][9309:9314] CHIP:TOO: Fabrics: 3 entries
- [1647863342.981158][9309:9314] CHIP:TOO: [1]: {
- [1647863342.981231][9309:9314] CHIP:TOO: RootPublicKey: 04656F56DBDB677DC957028DFC0ED76709C72753C9194B117A483BDC07386BFD9529B68EB4448FBBA3964EFF37A56A8F461D348B0DAF3B56A75F3B94BF8209D36F
- [1647863342.981322][9309:9314] CHIP:TOO: VendorId: 65521
- [1647863342.981380][9309:9314] CHIP:TOO: FabricId: 1
- [1647863342.981434][9309:9314] CHIP:TOO: NodeId: 1
- [1647863342.981486][9309:9314] CHIP:TOO: Label:
- [1647863342.981539][9309:9314] CHIP:TOO: FabricIndex: 1
- [1647863342.981594][9309:9314] CHIP:TOO: }
- [1647863342.981671][9309:9314] CHIP:TOO: [2]: {
- [1647863342.981737][9309:9314] CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- [1647863342.981796][9309:9314] CHIP:TOO: VendorId: 65521
- [1647863342.981849][9309:9314] CHIP:TOO: FabricId: 1
- [1647863342.981901][9309:9314] CHIP:TOO: NodeId: 3
- [1647863342.981952][9309:9314] CHIP:TOO: Label:
- [1647863342.982005][9309:9314] CHIP:TOO: FabricIndex: 3
- [1647863342.982057][9309:9314] CHIP:TOO: }
- [1647863342.982131][9309:9314] CHIP:TOO: [3]: {
- [1647863342.982195][9309:9314] CHIP:TOO: RootPublicKey: 04F8F28D5D70A4510E0F72FBBA31369796C4206FF95D97B77C1BDFD0438A3BE43510631A1B915BE189323F4CC0E015480192654D8170F8F230C7713898962958B7
- [1647863342.982252][9309:9314] CHIP:TOO: VendorId: 65521
- [1647863342.982305][9309:9314] CHIP:TOO: FabricId: 1
- [1647863342.982357][9309:9314] CHIP:TOO: NodeId: 2
- [1647863342.982409][9309:9314] CHIP:TOO: Label:
- [1647863342.982460][9309:9314] CHIP:TOO: FabricIndex: 4
- [1647863342.982512][9309:9314] CHIP:TOO: }
- [1647863342.982738][9309:9314] CHIP:EM: Sending Standalone Ack for MessageCounter:5772016 on exchange 3310i
- disabled: true
+ cluster: "Operational Credentials"
+ command: "readAttribute"
+ attribute: "Fabrics"
+ fabricFiltered: false
+ response:
+ value:
+ [
+ { Label: "", FabricIndex: 1, nodeId: nodeId },
+ { Label: "", FabricIndex: 4, nodeId: nodeId2 },
+ { Label: "", FabricIndex: 3, nodeID: nodeId3 },
+ ]
+ constraints:
+ type: list
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_17.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_17.yaml
index fd2367e6ef2057..fecdf6fc80af4d 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_17.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_17.yaml
@@ -19,6 +19,7 @@ name:
PICS:
- CADMIN.C
+ - CADMIN.C.C00.Tx
config:
nodeId: 0x12344321
@@ -39,7 +40,7 @@ tests:
- label: "DUT_CR1 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- "1. Provision the device using DUT controller chip tool(use above instructions) ,
+ "1. Provision the device using DUT_CR1 (Chip-tool as DUT controller)
"
disabled: true
@@ -48,13 +49,14 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On your first controller, open commissioning window using ECM
-
- Below is the example when using chip tool as controller
+ On DUT_CR1 , open commissioning window using ECM
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool pairing open-commissioning-window 1 1 300 1000 3840
+ Verify Manual pairing code on TH_CE (all-clusters-app) Log
+
[1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
[1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
[1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
@@ -85,12 +87,14 @@ tests:
- label: "TH_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On 2nd controller using chip tool connect to the accessory
+ On TH_CR2 using chip tool connect to the accessory
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool pairing code 1 35484132896
+ ./chip-tool pairing code 1 35484132896 --commissioner-name beta
- Verify you got below message
+ Verify you got below message on TH_CE(all-clusters-app) log
Device commissioning completed with success
disabled: true
@@ -99,13 +103,14 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On your first controller chip tool, open commissioning window using ECM
-
- Below is the example when using chip tool as controller
+ On TH_CR1 (chip tool), open commissioning window using ECM
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool pairing open-commissioning-window 1 1 300 1000 3840
+ Verify Manual pairing code on TH_CE(all-clusters-app) Log
+
[1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
[1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
[1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
@@ -136,21 +141,26 @@ tests:
- label: "TH_CR3 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On 3rd controller using chip tool connect to the accessory
+ On TH_CR3 using chip tool connect to the accessory
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool pairing code 1 35484132896
+ ./chip-tool pairing code 1 35484132896 --commissioner-name gamma
- Verify you got below message
+ Verify you got below message on TH_CE(all-clusters-app) log
Device commissioning completed with success
disabled: true
- label: "DUT_CR1 sends command to TH_CE to read the list of Fabrics"
PICS: OPCREDS.C.A0001
verification: |
- On 2nd controller using chip tool, read fabrics list
+ On DUT_CR1 using chip tool, read fabrics list
- ./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ Verify TH_CE receives and processes the command successfully on TH_CE (all-clusters-app) log
+
+ ./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0 --commissioner-name beta
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995193
CHIP:TOO: Fabrics: 3 entries
@@ -184,9 +194,13 @@ tests:
- label: "DUT_CR1 sends RemoveFabric with FabricIndex = 2 command to TH_CE"
PICS: OPCREDS.C.C0a.Tx
verification: |
- on 2nd controller using chip tool, remove fabric with FabricIndex=2
+ on DUT_CR1 using chip tool, remove fabric with FabricIndex=2
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool operationalcredentials remove-fabric 2 1 0
+ ./chip-tool operationalcredentials remove-fabric 2 1 0 --commissioner-name beta
+
+ Verify TH_CE responses with NOCResponse with a StatusCode OK on TH_CE (all-clusters-app) log
CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0008
@@ -202,16 +216,22 @@ tests:
Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- Using your 2nd controller, write attribute and read attribute to and from TH_CE
+ Using TH_CR2 , write attribute and read attribute to and from TH_CE
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ Verify read/write commands fail as expected since the TH_CR2 is no longer on the network on TH_CE (all-clusters-app) log
- Below is the example while using chip tool on second controller,
- ./chip-tool basic write node-label te5new 2 0
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
Received error (protocol code 2) during pairing process. ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter
[1651819620.929567][4359:4364] CHIP:CTL: OperationalDeviceProxy[B8070CD13C99D367:0000000000000002]: State change 3 --> 2
[1651819620.929700][4359:4364] CHIP:-: ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter at ../../commands/clusters/ModelCommand.cpp:53
- ./chip-tool basic read node-label 2 0
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
Received error (protocol code 2) during pairing process. ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter
[1651819620.929567][4359:4364] CHIP:CTL: OperationalDeviceProxy[B8070CD13C99D367:0000000000000002]: State change 3 --> 2
@@ -222,12 +242,14 @@ tests:
"DUT_CR1 sends command to TH_CE to read the list of Fabrics on TH_CE"
PICS: OPCREDS.C.A0001
verification: |
- On first controller, read fabrics list
+ On DUT_CR1 , read fabrics list
- Below is the command using chip tool controller
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0
+ Verify TH_CE receives and processes the command successfully on TH_CE (all-clusters-app) log
+
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995219
[1647863260.286772][9294:9299] CHIP:TOO: Fabrics: 2 entries
[1647863260.286908][9294:9299] CHIP:TOO: [1]: {
@@ -253,7 +275,11 @@ tests:
"Verify TH_CE is now discoverable over DNS-SD with 2 Operational
service records (_matter._tcp SRV records)."
verification: |
+ On any Linux platform execute this command or in TH_CR2
+
grl@grl-ThinkPad-L480:~/may16_cntrl03/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matter._tcp
+
+
+ wlp5s0 IPv6 8E50A59FAF52A809-0000000000000001 _matter._tcp local
+ wlp5s0 IPv6 03E707466A904C7E-0000000000000003 _matter._tcp local
= wlp5s0 IPv6 8E50A59FAF52A809-0000000000000001 _matter._tcp local
@@ -276,10 +302,13 @@ tests:
verification: |
On first controller chip tool, open commissioning window using ECM
- Below is the example when using chip tool as controller
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool pairing open-commissioning-window 1 1 300 1000 3840
+ Verify Manual pairing code on TH1(all-clusters-app) Log
+
+
[1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
[1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
[1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
@@ -296,12 +325,14 @@ tests:
- label: "TH_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On 2nd controller using chip tool connect to the accessory
+ On TH_CR2 using chip tool connect to the accessory
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool pairing code 1 36217551633
+ ./chip-tool pairing code 1 36217551633 --commissioner-name beta
- Verify you got below message
+ Verify you got below message on TH_CE (all-clusters-app) log
Device commissioning completed with success
disabled: true
@@ -309,11 +340,13 @@ tests:
"TH_CR2 sends command to TH_CE to read the list of Fabrics on TH_CE"
PICS: OPCREDS.C.A0001
verification: |
- On second controller, read fabrics list
+ On TH_CR2 , read fabrics list
- Below is the command using chip tool controller
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0
+ ./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0 --commissioner-name beta
+
+ Verify TH_CE receives and processes the command successfully on TH_CE (all-clusters-app) log
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995246
[1647863342.980899][9309:9314] CHIP:TOO: Fabrics: 3 entries
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_18.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_18.yaml
index 12cfd95c8d60c4..a3acd649a11040 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_18.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_18.yaml
@@ -14,11 +14,12 @@
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name:
- 4.1.18. [TC-CADMIN-1.18] Removing Fabrics from DUT and Fabric index
- enumeration using BCM [DUT - Commissioner]
+ 30.1.18. [TC-CADMIN-1.18] Removing Fabrics from DUT and Fabric index
+ enumeration using BCM [DUT - Commissioner]
PICS:
- CADMIN.C
+ - CADMIN.C.C01.Tx
config:
nodeId: 0x12344321
@@ -39,7 +40,7 @@ tests:
- label: "DUT_CR1 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- "1. Provision the device using DUT controller chip tool(use above instructions) ,
+ "1. Provision the device using DUT_CR1 (Chip-tool as DUT controller)
"
disabled: true
@@ -48,11 +49,14 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
PICS: CADMIN.C.C01.Tx
verification: |
- On your first controller chip tool, open commissioning window using BCM
+ On DUT_CR1 (chip tool), open commissioning window using BCM
- Below is the example when using chip tool as controller
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+
+ ./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
+ Verify success response On TH-CE(all-clusters-app) Log
CHIP: [DMG] InvokeResponseMessage =
[1648116114630] [6871:3898916] CHIP: [DMG] {
@@ -89,12 +93,14 @@ tests:
- label: "TH_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On 2nd controller using chip tool connect to the accessory
+ On TH_CR2 using chip tool connect to the accessory
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool pairing onnetwork 1 20202021
- Verify you got below message
+ ./chip-tool pairing onnetwork 2 20202021 --commissioner-name beta
+
+ Verify you got below message on TH_CE (all-clusters-app) log
Device commissioning completed with success
disabled: true
@@ -103,11 +109,14 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
PICS: CADMIN.C.C01.Tx
verification: |
- On your first controller chip tool, open commissioning window using BCM
+ On DUT_CR1 (chip tool), open commissioning window using BCM
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
- Below is the example when using chip tool as controller
./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000
+ Verify success response On TH_CE (all-clusters-app) Log
CHIP: [DMG] InvokeResponseMessage =
[1648116114630] [6871:3898916] CHIP: [DMG] {
@@ -144,12 +153,14 @@ tests:
- label: "TH_CR3 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On 3rd controller using chip tool connect to the accessory
+ On TH_CR3 using chip tool connect to the accessory
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool pairing onnetwork 1 20202021
- Verify you got below message
+ ./chip-tool pairing onnetwork 3 20202021 --commissioner-name gamma
+
+ Verify you got below message on TH_CE (all-clusters-app) log
Device commissioning completed with success
disabled: true
@@ -157,11 +168,13 @@ tests:
"DUT_CR1 sends command to TH_CE to read the list of Fabrics on TH_CE"
PICS: OPCREDS.C.A0001
verification: |
- On first controller, read fabrics list
+ On DUT_CR1 , read fabrics list
- ./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+ ./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0
+ Verify TH_CE receives and processes the command successfully on TH_CE (all-clusters-app) log
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995193
CHIP:TOO: Fabrics: 3 entries
@@ -193,12 +206,16 @@ tests:
"
disabled: true
- - label: "DUT_CR1 sends RemoveFabric with FabricIndex = 2 command to TH_CE"
+ - label: "DUT_CR1 sends RemoveFabric with FabricIndex = 2command to TH_CE"
PICS: OPCREDS.C.C0a.Tx
verification: |
- on 2nd controller using chip tool, remove fabric with FabricIndex=2
+ on DUT_CR1 ( using chip tool), remove fabric with FabricIndex=2
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ Verify TH_CE responses with NOCResponse with a StatusCode OK on TH_CE (all-clusters-app) log
- ./chip-tool operationalcredentials remove-fabric 2 1 0
+ ./chip-tool operationalcredentials remove-fabric 2 1 0 --commissioner-name beta
CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0008
@@ -214,16 +231,19 @@ tests:
Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- Using your 2nd controller, write attribute and read attribute to and from TH_CE
+ Using TH_CR2 , write attribute and read attribute to and from TH_CE
- Below is the example while using chip tool on second controller,
- ./chip-tool basic write node-label te5new 2 0
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ Verify read/write commands fail as expected since the TH_CR2 is no longer on the network on TH_CE (all-clusters-app)
+
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
Received error (protocol code 2) during pairing process. ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter
[1651819620.929567][4359:4364] CHIP:CTL: OperationalDeviceProxy[B8070CD13C99D367:0000000000000002]: State change 3 --> 2
[1651819620.929700][4359:4364] CHIP:-: ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter at ../../commands/clusters/ModelCommand.cpp:53
- ./chip-tool basic read node-label 2 0
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
Received error (protocol code 2) during pairing process. ../../third_party/connectedhomeip/src/protocols/secure_channel/CASESession.cpp:1551: CHIP Error 0x00000054: Invalid CASE parameter
[1651819620.929567][4359:4364] CHIP:CTL: OperationalDeviceProxy[B8070CD13C99D367:0000000000000002]: State change 3 --> 2
@@ -233,9 +253,11 @@ tests:
- label: "DUT_CR1 sends command to TH_CE to read the list of Fabrics"
PICS: OPCREDS.C.A0001
verification: |
- On first controller, read fabrics list
+ On DUT_CR1 , read fabrics list
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the command using chip tool controller
+ Verify TH_CE receives and processes the command successfully on TH_CE (all-clusters-app)
./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0
@@ -260,11 +282,12 @@ tests:
[1647863260.287515][9294:9299] CHIP:EM: Sending Standalone Ack for MessageCounter:11301761 on exchange 13180i
disabled: true
- - label:
- "Verify TH_CE is now discoverable over DNS-SD with 2 Operational
- service records (_matter._tcp SRV records)."
+ - label: ""
verification: |
- 1. Verify if the DUT is broadcasting using
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ Execute the below avahi-browse command in any LInux machine or in TH_CR2.
+
grl@grl-ThinkPad-L480:~/may16_cntrl03/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matter._tcp
+ wlp5s0 IPv6 8E50A59FAF52A809-0000000000000001 _matter._tcp local
+ wlp5s0 IPv6 03E707466A904C7E-0000000000000003 _matter._tcp local
@@ -286,13 +309,15 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
PICS: CADMIN.C.C01.Tx
verification: |
- On first controller chip tool, open commissioning window using BCM
+ On DUT_CR1 chip tool, open commissioning window using BCM
- Below is the example when using chip tool as controller
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
For BCM,
./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000
+ Verify success response On TH_CE (all-clusters-app) Log
+
CHIP:DMG: InvokeResponseMessage =
[1650278416.248379][11064:11069] CHIP:DMG: {
[1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
@@ -329,23 +354,27 @@ tests:
- label: "TH_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On 2nd controller using chip tool connect to the accessory
+ On TH_CR2 using chip tool connect to the accessory
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool pairing onnetwork 1 20202021
+ ./chip-tool pairing onnetwork 2 20202021 --commissioner-name beta
- Verify you got below message
+ Verify you got below message on TH_CE (all-clusters-app) log
Device commissioning completed with success
disabled: true
- label: "TH_CR2 sends command to TH_CE to read the list of Fabrics"
PICS: OPCREDS.C.A0001
verification: |
- On second controller, read fabrics list
+ On TH_CR2 , read fabrics list
- Below is the command using chip tool controller
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0
+ ./chip-tool operationalcredentials read fabrics 1234 0 --fabric-filtered 0 --commissioner-name beta
+
+ Verify TH_CE receives and processes the command successfully on TH_CE (all-clusters-app) log
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 2455995246
[1647863342.980899][9309:9314] CHIP:TOO: Fabrics: 3 entries
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_19.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_19.yaml
index 269f9e66c9f9b2..83891c653b5b23 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_19.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_19.yaml
@@ -34,7 +34,7 @@ tests:
- label: "TH_CR1 starts a commissioning process with DUT_CE"
PICS: CADMIN.S
verification: |
- "1. Provision the device using 1st controller chip tool(use above instructions) ,
+ "1. Provision the device using TH_CR1 -chip tool(use above instructions) ,
"
disabled: true
@@ -43,12 +43,12 @@ tests:
timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
PICS: CADMIN.S.C00.Rsp
verification: |
- On 1st controller chip tool, open commissioning window using ECM
-
- Below is the example when using chip tool as controller
+ On TH_CR1 (chip tool), open commissioning window using ECM
./chip-tool pairing open-commissioning-window 1 1 300 1000 3840
+ Verify Manual pairing code on TH_CR1 (chip-tool) Log
+
[1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
[1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
[1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
@@ -65,12 +65,12 @@ tests:
- label: "THn starts a commissioning process with DUT_CE"
PICS: CADMIN.S
verification: |
- On nth controller using chip tool connect to the accessory
+ On TH_CR1+1 controller using chip tool connect to the accessory
- ./chip-tool pairing code 2 36217551633
+ ./chip-tool pairing code 2 36217551633 --commissioner-name beta
- Verify you got below message
+ Verify you got below message on TH_CR1+1(chip-tool) log
Device commissioning completed with success
disabled: true
@@ -79,7 +79,13 @@ tests:
to reach an index value of SupportedFabrics on DUT_CE"
PICS: CADMIN.S.C00.Rsp
verification: |
- Repeat step 3 until CommissionedFabrics=SupportedFabrics
+ Repeat step 3 until CommissionedFabrics=SupportedFabrics (Supported fabrics value obtained in the precondition)
+
+ Use the following command to verify the currentcommissioned fabric (Output number may vary depends on the number successful commissioning )
+
+ ./chip-tool operationalcredentials read commissioned-fabrics 1 0
+
+ [1660907933.677983][33780:33785] CHIP:TOO: CommissionedFabrics: 16
disabled: true
- label:
@@ -87,10 +93,11 @@ tests:
with DUT_CE"
PICS: CADMIN.S
verification: |
- On nth controller using chip tool connect to the accessory
+ On THnth controller using chip tool connect to the accessory
+ ./chip-tool pairing code 6 36217551633 --commissioner-name 4
- ./chip-tool pairing code 6 36217551633
+ Verify DUT_CE responds with NOCResponse with a StatusCode of 0x05 on THn (chip-tool) log
CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
[1649756670.402192][10794:10799] CHIP:CTL: Device returned status 5 on receiving the NOC
@@ -101,7 +108,21 @@ tests:
- label: "TH_CR1 removes FabricIndex1"
PICS: OPCREDS.S.C0a.Rsp
verification: |
- on 1st controller using chip tool, remove fabric with FabricIndex=1
+ on TH_CR1 using chip tool, remove fabric with FabricIndex=1
./chip-tool operationalcredentials remove-fabric 1 1 0
+
+ CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
+ CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0008
+ CHIP:TOO: NOCResponse: {
+ CHIP:TOO: statusCode: 0
+ CHIP:TOO: fabricIndex: 1
+ CHIP:TOO: }
+ CHIP:DMG: ICR moving to [AwaitingDe]
+
+ Verify CommissionedFabrics=SupportedFabrics-1 on TH_CR1(chip-tool) log
+
+ ./chip-tool operationalcredentials read commissioned-fabrics 1 0
+
+ [1660907933.677983][33780:33785] CHIP:TOO: CommissionedFabrics: 15
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_2.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_2.yaml
index ee32a4cbd10d91..7696714ea2df48 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_2.yaml
@@ -18,6 +18,7 @@ name:
PICS:
- CADMIN.C
+ - CADMIN.C.C01.Tx
config:
nodeId: 0x12344321
@@ -38,7 +39,7 @@ tests:
- label: "TH_CR1 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- Provision the device using chip tool on first controller
+ "1. Provision the TH_CE (all-cluster-app) device using TH_CR1 (chip-tool ) on the raspi"
disabled: true
- label:
@@ -47,10 +48,13 @@ tests:
(Basic Commissioning Method)"
PICS: CADMIN.C.C01.Tx
verification: |
- On first controller, usinadministratorcommissioningg chip tool open commissioning window.
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On TH_CR1 send the below command
./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
+ Verify Success response On TH_CR1(CHIP-TOOL) Log
CHIP:DMG: InvokeResponseMessage =
@@ -89,10 +93,15 @@ tests:
- label: "TH_CR1 sends command to TH_CE to read the list of Fabrics"
PICS: OPCREDS.C.A0001
verification: |
- On first controller, using chip tool read fabricList
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On TH_CR1 send the below command
./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
+ On TH1(all-clusters-app) Log
+
+ Verify 1 entry in the Fabrics list attributeOn TH_CR1(CHIP-TOOL) Log
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 3621507058
[1649245801.244173][10091:10096] CHIP:TOO: Fabrics: 1 entries
@@ -110,18 +119,25 @@ tests:
- label: "DUT_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On second Controller connect to the accessory.
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On DUT_CR2 send the below command
- Below is the example when using chip tool as controller
- ./chip-tool pairing onnetwork 2 20202021
+ ./chip-tool pairing onnetwork 2 20202021 --commissioner-name beta
+
+ Verify whether you got below message in the log of DUT_CR2(CHIP-TOOL)
- Verify you got below message
Device commissioning completed with success
disabled: true
- label: "Verify TH_CE is now discoverable over DNS-SD with two SRV Records"
verification: |
- On the raspi , Verify if the DUT is broadcasting using
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+
+ On the raspi , Verify if the TH_CE(All-cluster-app) is broadcasting
+
+ On TH_CR1 send the below command
ubuntu@ubuntu:~/may10_cntrl2/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matter._tcp
+ eth0 IPv6 E0AF53B23E580769-0000000000000002 _matter._tcp local
@@ -143,53 +159,62 @@ tests:
Information Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- On the 2nd controller write attribute and read attribute to and from TH_CE
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example while using chip tool on second controller,
- ./chip-tool basic write node-label te5new 2 0
+ On DUT_CR2 send the below command
- CHIP:DMG: WriteResponseMessage =
- [1649245940.788522][10110:10115] CHIP:DMG: {
- [1649245940.788577][10110:10115] CHIP:DMG: AttributeStatusIBs =
- [1649245940.788653][10110:10115] CHIP:DMG: [
- [1649245940.788713][10110:10115] CHIP:DMG: AttributeStatusIB =
- [1649245940.788787][10110:10115] CHIP:DMG: {
- [1649245940.788852][10110:10115] CHIP:DMG: AttributePathIB =
- [1649245940.788931][10110:10115] CHIP:DMG: {
- [1649245940.789009][10110:10115] CHIP:DMG: Endpoint = 0x0,
- [1649245940.789143][10110:10115] CHIP:DMG: Cluster = 0x28,
- [1649245940.789228][10110:10115] CHIP:DMG: Attribute = 0x0000_0005,
- [1649245940.789313][10110:10115] CHIP:DMG: }
- [1649245940.789388][10110:10115] CHIP:DMG:
- [1649245940.789454][10110:10115] CHIP:DMG: StatusIB =
- [1649245940.789519][10110:10115] CHIP:DMG: {
- [1649245940.789588][10110:10115] CHIP:DMG: status = 0x00 (SUCCESS),
- [1649245940.789654][10110:10115] CHIP:DMG: },
- [1649245940.789719][10110:10115] CHIP:DMG:
- [1649245940.789778][10110:10115] CHIP:DMG: },
- [1649245940.789841][10110:10115] CHIP:DMG:
- [1649245940.789885][10110:10115] CHIP:DMG: ],
- [1649245940.789941][10110:10115] CHIP:DMG:
- [1649245940.789984][10110:10115] CHIP:DMG: InteractionModelRevision = 1
- [1649245940.790033][10110:10115] CHIP:DMG: }
- [1649245940.790167][10110:10115] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
+ On TH2(all-clusters-app) Log
- Verify read attribute returns the updated value written
- ./chip-tool basic read node-label 1 0
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3061847068
- [1649245950.006849][10116:10121] CHIP:TOO: NodeLabel: te5new
- [1649245950.007024][10116:10121] CHIP:EM: Sending Standalone Ack for MessageCounter:12495101 on exchange 24816i
+ Verify Write request on TH_CE(all-clusters-app) Log
+
+ [1660894021.901330][2871:2871] CHIP:EM: Handling via exchange: 9616r, Delegate: 0xaaaada21ffc0
+ [1660894021.901426][2871:2871] CHIP:IM: Received Write request
+ [1660894021.901484][2871:2871] CHIP:DMG: IM WH moving to [Initialized]
+ [1660894021.901613][2871:2871] CHIP:DMG: WriteRequestMessage =
+ [1660894021.901676][2871:2871] CHIP:DMG: {
+ [1660894021.901735][2871:2871] CHIP:DMG: suppressResponse = false,
+ [1660894021.901802][2871:2871] CHIP:DMG: timedRequest = false,
+ [1660894021.901864][2871:2871] CHIP:DMG: AttributeDataIBs =
+ [1660894021.901940][2871:2871] CHIP:DMG: [
+ [1660894021.902001][2871:2871] CHIP:DMG: AttributeDataIB =
+ [1660894021.902071][2871:2871] CHIP:DMG: {
+ [1660894021.902136][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894021.902219][2871:2871] CHIP:DMG: {
+ [1660894021.902302][2871:2871] CHIP:DMG: Endpoint = 0x0,
+
+
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
+
+ Verify read request on TH_CE(all-clusters-app) Log
+
+
+ [1660894142.828718][2871:2871] CHIP:EM: Handling via exchange: 62454r, Delegate: 0xaaaada21ffc0
+ [1660894142.828834][2871:2871] CHIP:IM: Received Read request
+ [1660894142.829023][2871:2871] CHIP:DMG: ReadRequestMessage =
+ [1660894142.829097][2871:2871] CHIP:DMG: {
+ [1660894142.829153][2871:2871] CHIP:DMG: AttributePathIBs =
+ [1660894142.829235][2871:2871] CHIP:DMG: [
+ [1660894142.829306][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894142.829376][2871:2871] CHIP:DMG: {
+ [1660894142.829449][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894142.829532][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894142.829627][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
disabled: true
- label:
"DUT_CR2 sends command to TH_CE to read the list of Fabrics on TH_CE"
PICS: OPCREDS.C.A0001
verification: |
- On second controller controller read fabricList
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On DUT_CR2 send the below command
+
+ ./chip-tool operationalcredentials read fabrics 2 0 --fabric-filtered 0 --commissioner-name beta
+
+ Verify 2 entries in the Fabrics list attribute On DUT_CR2(chip-tool) Log
- Below is the example while using chip tool on second controller,
- ./chip-tool operationalcredentials read fabrics 2 0 --fabric-filtered 0
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 3229397217
[1650277071.834099][40790:40795] CHIP:TOO: Fabrics: 2 entries
@@ -217,41 +242,43 @@ tests:
Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- On first controller, using chip-tool write attribute, Verify read attribute returns the updated value written.
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
./chip-tool basic write node-label te8 1 0
- CHIP:DMG: WriteResponseMessage =
- [1649245940.788522][10110:10115] CHIP:DMG: {
- [1649245940.788577][10110:10115] CHIP:DMG: AttributeStatusIBs =
- [1649245940.788653][10110:10115] CHIP:DMG: [
- [1649245940.788713][10110:10115] CHIP:DMG: AttributeStatusIB =
- [1649245940.788787][10110:10115] CHIP:DMG: {
- [1649245940.788852][10110:10115] CHIP:DMG: AttributePathIB =
- [1649245940.788931][10110:10115] CHIP:DMG: {
- [1649245940.789009][10110:10115] CHIP:DMG: Endpoint = 0x0,
- [1649245940.789143][10110:10115] CHIP:DMG: Cluster = 0x28,
- [1649245940.789228][10110:10115] CHIP:DMG: Attribute = 0x0000_0005,
- [1649245940.789313][10110:10115] CHIP:DMG: }
- [1649245940.789388][10110:10115] CHIP:DMG:
- [1649245940.789454][10110:10115] CHIP:DMG: StatusIB =
- [1649245940.789519][10110:10115] CHIP:DMG: {
- [1649245940.789588][10110:10115] CHIP:DMG: status = 0x00 (SUCCESS),
- [1649245940.789654][10110:10115] CHIP:DMG: },
- [1649245940.789719][10110:10115] CHIP:DMG:
- [1649245940.789778][10110:10115] CHIP:DMG: },
- [1649245940.789841][10110:10115] CHIP:DMG:
- [1649245940.789885][10110:10115] CHIP:DMG: ],
- [1649245940.789941][10110:10115] CHIP:DMG:
- [1649245940.789984][10110:10115] CHIP:DMG: InteractionModelRevision = 1
- [1649245940.790033][10110:10115] CHIP:DMG: }
- [1649245940.790167][10110:10115] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ Verify the Write request On TH_CE(all-clusters-app) Log
+
+
+ [1660894538.804578][2871:2871] CHIP:EM: Handling via exchange: 64932r, Delegate: 0xaaaada21ffc0
+ [1660894538.804677][2871:2871] CHIP:IM: Received Write request
+ [1660894538.804737][2871:2871] CHIP:DMG: IM WH moving to [Initialized]
+ [1660894538.804867][2871:2871] CHIP:DMG: WriteRequestMessage =
+ [1660894538.804933][2871:2871] CHIP:DMG: {
+ [1660894538.804993][2871:2871] CHIP:DMG: suppressResponse = false,
+ [1660894538.805059][2871:2871] CHIP:DMG: timedRequest = false,
+ [1660894538.805120][2871:2871] CHIP:DMG: AttributeDataIBs =
+ [1660894538.805196][2871:2871] CHIP:DMG: [
+
- Verify read attribute returns the updated value written
./chip-tool basic read node-label 1 0
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3061847068
- [1649245950.006849][10116:10121] CHIP:TOO: NodeLabel: te8
- [1649245950.007024][10116:10121] CHIP:EM: Sending Standalone Ack for MessageCounter:12495101 on exchange 24816i
+
+ Verify the Read request On TH_CE(all-clusters-app) Log
+
+ [1660894686.511690][2871:2871] CHIP:EM: Received message of type 0x2 with protocolId (0, 1) and MessageCounter:155836021 on exchange 25703r
+ [1660894686.511817][2871:2871] CHIP:EM: Handling via exchange: 25703r, Delegate: 0xaaaada21ffc0
+ [1660894686.511920][2871:2871] CHIP:IM: Received Read request
+ [1660894686.512190][2871:2871] CHIP:DMG: ReadRequestMessage =
+ [1660894686.512259][2871:2871] CHIP:DMG: {
+ [1660894686.512314][2871:2871] CHIP:DMG: AttributePathIBs =
+ [1660894686.512380][2871:2871] CHIP:DMG: [
+ [1660894686.512441][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894686.512526][2871:2871] CHIP:DMG: {
+ [1660894686.512599][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894686.512683][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894686.512772][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660894142.829703][2871:2871] CHIP:DMG: }
+ [1660894142.829777][2871:2871] CHIP:DMG:
disabled: true
- label:
@@ -261,10 +288,13 @@ tests:
verification: |
On second controller read, write attribute and then read attribute to and from TH_CE
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example while using chip tool on second controller,
- ./chip-tool basic write node-label te5new 2 0
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
+
+ On TH2(all-clusters-app) Log
+
CHIP:DMG: WriteResponseMessage =
[1649245940.788522][10110:10115] CHIP:DMG: {
@@ -294,7 +324,11 @@ tests:
Verify read attribute returns the updated value written
- ./chip-tool basic read node-label 2 0
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
+
+ On TH2(all-clusters-app) Log
+
+
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3061847068
[1649245950.006849][10116:10121] CHIP:TOO: NodeLabel: te5new
[1649245950.007024][10116:10121] CHIP:EM: Sending Standalone Ack for MessageCounter:12495101 on exchange 24816i
@@ -311,43 +345,17 @@ tests:
(Basic Commissioning Method)"
PICS: CADMIN.C.C01.Tx
verification: |
- On second controller using chip-tool open commissioning widow using BCM.
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example while using chip tool on second controller,
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000
+ On DUT_CR2 send the below command
+ ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000 --commissioner-name beta
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
+ Verify the Commissioning window is opened in TH_CE(all-clusters-app) Log
+
+ [1660901022.112296][3045:3045] CHIP:DIS: mDNS service published: _matterc._udp
+ [1660901022.112389][3045:3045] CHIP:ZCL: Commissioning window is now open
+ [1660901022.112474][3045:3045] CHIP:DMG: Command handler moving to [ Preparing]
disabled: true
- label:
@@ -355,43 +363,18 @@ tests:
using the Revoke Commissioning command"
PICS: CADMIN.C.C02.Tx
verification: |
- On second controller using chip-tool run revoke command
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example while using chip tool on second controller,
- ./chip-tool administratorcommissioning revoke-commissioning 2 0 --timedInteractionTimeoutMs 1000
+ On DUT_CR2 send the below command
+ ./chip-tool administratorcommissioning revoke-commissioning 2 0 --timedInteractionTimeoutMs 1000 --commissioner-name beta
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
+ Verify the Commissioning window is closed in TH_CE(all-clusters-app) Log
+
+ [1660901039.590962][3045:3045] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0002
+ [1660901039.591036][3045:3045] CHIP:ZCL: Received command to close commissioning window
+ [1660901039.591094][3045:3045] CHIP:SVR: Closing pairing window
+ [1660901039.591169][3045:3045] CHIP:IN: SecureSession[0xaaaab010d400]: Released - Type:1 LSID:14411
disabled: true
- label:
@@ -399,10 +382,13 @@ tests:
with TH_CE"
PICS: CADMIN.C
verification: |
- 1. On third controller, using chip-tool connect to the accessory. Connect attempt should fail, i.e
- ./chip-tool pairing onnetwork 3 20202021
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On TH_CR3 send the below command
+
+ ./chip-tool pairing onnetwork 3 20202021 --commissioner-name gamma
- verify you got the following message in the TH log
+ verify you got the following message in the TH_CR3(chip-tool) log
CHIP:SC: PASESession timed out while waiting for a response from the peer. Expected message type was 33
CHIP:TOO: Secure Pairing Failed
@@ -414,42 +400,38 @@ tests:
Information Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- On second controller, write attribute and read attribute to and from TH_CE
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example while using chip tool on second controller,
- ./chip-tool basic write node-label te5new 2 0
+ On DUT_CR2 send the below command
- CHIP:DMG: WriteResponseMessage =
- [1649245940.788522][10110:10115] CHIP:DMG: {
- [1649245940.788577][10110:10115] CHIP:DMG: AttributeStatusIBs =
- [1649245940.788653][10110:10115] CHIP:DMG: [
- [1649245940.788713][10110:10115] CHIP:DMG: AttributeStatusIB =
- [1649245940.788787][10110:10115] CHIP:DMG: {
- [1649245940.788852][10110:10115] CHIP:DMG: AttributePathIB =
- [1649245940.788931][10110:10115] CHIP:DMG: {
- [1649245940.789009][10110:10115] CHIP:DMG: Endpoint = 0x0,
- [1649245940.789143][10110:10115] CHIP:DMG: Cluster = 0x28,
- [1649245940.789228][10110:10115] CHIP:DMG: Attribute = 0x0000_0005,
- [1649245940.789313][10110:10115] CHIP:DMG: }
- [1649245940.789388][10110:10115] CHIP:DMG:
- [1649245940.789454][10110:10115] CHIP:DMG: StatusIB =
- [1649245940.789519][10110:10115] CHIP:DMG: {
- [1649245940.789588][10110:10115] CHIP:DMG: status = 0x00 (SUCCESS),
- [1649245940.789654][10110:10115] CHIP:DMG: },
- [1649245940.789719][10110:10115] CHIP:DMG:
- [1649245940.789778][10110:10115] CHIP:DMG: },
- [1649245940.789841][10110:10115] CHIP:DMG:
- [1649245940.789885][10110:10115] CHIP:DMG: ],
- [1649245940.789941][10110:10115] CHIP:DMG:
- [1649245940.789984][10110:10115] CHIP:DMG: InteractionModelRevision = 1
- [1649245940.790033][10110:10115] CHIP:DMG: }
- [1649245940.790167][10110:10115] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
- Verify read attribute returns the updated value written
- ./chip-tool basic read node-label 2 0
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3061847068
- [1649245950.006849][10116:10121] CHIP:TOO: NodeLabel: te5new
- [1649245950.007024][10116:10121] CHIP:EM: Sending Standalone Ack for MessageCounter:12495101 on exchange 24816i
+ Verify the Write request On TH_CE(all-clusters-app) Log
+
+ [1660902144.913634][3045:3045] CHIP:EM: Handling via exchange: 22257r, Delegate: 0xaaaaadbeffc0
+ [1660902144.913728][3045:3045] CHIP:IM: Received Write request
+ [1660902144.913785][3045:3045] CHIP:DMG: IM WH moving to [Initialized]
+ [1660902144.913912][3045:3045] CHIP:DMG: WriteRequestMessage =
+ [1660902144.913977][3045:3045] CHIP:DMG: {
+ [1660902144.914038][3045:3045] CHIP:DMG: suppressResponse = false,
+ [1660902144.914106][3045:3045] CHIP:DMG: timedRequest = false,
+ [1660902144.914168][3045:3045] CHIP:DMG: AttributeDataIBs =
+
+ [1660902144.915374][3045:3045] CHIP:DMG:
+
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
+
+ Verify the Write request On TH_CE(all-clusters-app) Log
+
+ [1660902253.379018][3045:3045] CHIP:EM: Handling via exchange: 3197r, Delegate: 0xaaaaadbeffc0
+ [1660902253.379122][3045:3045] CHIP:IM: Received Read request
+ [1660902253.379306][3045:3045] CHIP:DMG: ReadRequestMessage =
+ [1660902253.379373][3045:3045] CHIP:DMG: {
+ [1660902253.379430][3045:3045] CHIP:DMG: AttributePathIBs =
+ [1660902253.379496][3045:3045] CHIP:DMG: [
+ [1660902253.379557][3045:3045] CHIP:DMG: AttributePathIB =
+ [1660902253.379634][3045:3045] CHIP:DMG: {
+ [1660902253.379703][3045:3045] CHIP:DMG: Endpoint = 0x0,
disabled: true
- label:
@@ -457,43 +439,17 @@ tests:
BCM"
PICS: CADMIN.C.C01.Tx
verification: |
- On second controller using chip-tool open commissioning widow using BCM.
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example while using chip tool on second controller,
- ./chip-tool administratorcommissioning open-basic-commissioning-window 180 2 0 --timedInteractionTimeoutMs 1000
+ On DUT_CR2 send the below command
+ ./chip-tool administratorcommissioning open-basic-commissioning-window 180 2 0 --timedInteractionTimeoutMs 1000 --commissioner-name beta
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
+ Verify the Commissioning window is opened in TH_CE(all-clusters-app) Log
+
+ [1660902413.357922][3045:3045] CHIP:DIS: mDNS service published: _matterc._udp
+ [1660902413.358025][3045:3045] CHIP:ZCL: Commissioning window is now open
+ [1660902413.358116][3045:3045] CHIP:DMG: Command handler moving to [ Preparing]
disabled: true
- label:
@@ -507,43 +463,17 @@ tests:
BCM"
PICS: CADMIN.C.C01.Tx
verification: |
- On second controller using chip-tool open commissioning widow using BCM.
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example while using chip tool on second controller,
- ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000
+ On DUT_CR2 send the below command
+ ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000 --commissioner-name beta
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
+ Verify the Commissioning window is opened in TH_CE(all-clusters-app) Log
+
+ [1660902623.744448][3045:3045] CHIP:DIS: mDNS service published: _matterc._udp
+ [1660902623.744550][3045:3045] CHIP:ZCL: Commissioning window is now open
+ [1660902623.744634][3045:3045] CHIP:DMG: Command handler moving to [ Preparing]
disabled: true
- label:
@@ -551,15 +481,23 @@ tests:
from step 15"
PICS: CADMIN.C
verification: |
- Using your 1st Controller connect to the accessory.
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ On TH_CR1 send the below command
- Below is the example when using chip tool as controller
./chip-tool pairing onnetwork 1 20202021
+ Verify the OperationalCert error 9 in TH_CE(all-clusters-app) Log
+
+ [1660902716.613196][3045:3045] CHIP:DMG: Command handler moving to [AddedComma]
+ [1660902716.613274][3045:3045] CHIP:ZCL: OpCreds: Failed AddNOC request (err=../../examples/all-clusters-app/linux/third_party/connectedhomeip/src/credentials/FabricTable.cpp:1692: CHIP Error 0x0000007E: Trying to add a NOC for a fabric that already exists) with OperationalCert error 9
+ [1660902716.613394][3045:3045] CHIP:DMG: Decreasing reference count for CommandHandler, remaining 0
+ [1660902716.613497][3045:3045] CHIP:EM: Piggybacking Ack for MessageCounter:176866087 on exchange: 56605r
+
+ Trying to add a NOC for a fabric that already exists On TH_CR1(chip-tool) Log
+
[1651786200275] [36301:315544] CHIP: [DMG] Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
[1651786200275] [36301:315544] CHIP: [CTL] Device returned status 9 on receiving the NOC
[1651786200275] [36301:315544] CHIP: [CTL] Add NOC failed with error ../../src/controller/CHIPDeviceController.cpp:1187: CHIP Error 0x0000007E: Trying to add a NOC for a fabric that already exists
[1651786200275] [36301:315544] CHIP: [CTL] Error on commissioning step "SendNOC": "../../src/controller/CHIPDeviceController.cpp:1187: CHIP Error 0x0000007E: Trying to add a NOC for a fabric that already exists"
-
- Verify that the commissioning process fails as TH_CE was already commissioned by TH_CR1 in step 1
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_20.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_20.yaml
index ebe9ef8c3db72d..18672ffa5ddad4 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_20.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_20.yaml
@@ -19,6 +19,7 @@ name:
PICS:
- CADMIN.S
+ - CADMIN.S.F00
config:
nodeId: 0x12344321
@@ -34,7 +35,7 @@ tests:
- label: "TH_CR1 starts a commissioning process with DUT_CE"
PICS: CADMIN.S
verification: |
- "1. Provision the device using 1st controller chip tool(use above instructions) ,
+ "1. Provision the device using TH_CR1 - chip tool(use above instructions) ,
"
disabled: true
@@ -43,12 +44,12 @@ tests:
timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
PICS: CADMIN.S.C01.Rsp
verification: |
- On 1st controller chip tool, open commissioning window using BCM
-
- Below is the example when using chip tool as controller
+ On TH_CR1 (chip tool), open commissioning window using BCM
./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
+ Verify success response On TH_CR1(chip-tool) Log
+
CHIP:DMG: InvokeResponseMessage =
[1649756654.928453][3385:3390] CHIP:DMG: {
[1649756654.928511][3385:3390] CHIP:DMG: suppressResponse = false,
@@ -85,12 +86,11 @@ tests:
- label: "THn starts a commissioning process with DUT_CE"
PICS: CADMIN.S
verification: |
- On nth controller using chip tool connect to the accessory
-
+ On TH_CR1+1 controller using chip tool connect to the accessory
- ./chip-tool pairing onnetwork 2 20202021
+ ./chip-tool pairing onnetwork 2 20202021 --commissioner-name beta
- Verify you got below message
+ Verify you got below message on TH_CR1+1(chip-tool) log
Device commissioning completed with success
disabled: true
@@ -99,7 +99,13 @@ tests:
to reach an index value of SupportedFabrics on DUT_CE"
PICS: CADMIN.S.C01.Rsp
verification: |
- Repeat step 3 until CommissionedFabrics=SupportedFabrics
+ Repeat step 3 until CommissionedFabrics=SupportedFabrics (Supported fabrics value obtained in the precondition)
+
+ Use the following command to verify the currentcommissioned fabric (Output number may vary depends on the number successful commissioning )
+
+ ./chip-tool operationalcredentials read commissioned-fabrics 1 0
+
+ [1660907933.677983][33780:33785] CHIP:TOO: CommissionedFabrics: 16
disabled: true
- label:
@@ -107,10 +113,11 @@ tests:
with DUT_CE"
PICS: CADMIN.S.C01.Rsp
verification: |
- On nth controller using chip tool connect to the accessory
+ On THnth controller using chip tool connect to the accessory
+ ./chip-tool pairing onnetwork 6 20202021 --commissioner-name 4
- ./chip-tool pairing onnetwork 6 20202021
+ Verify DUT_CE responds with NOCResponse with a StatusCode of 0x05 on THn (chip-tool) log
CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
[1649756670.402192][10794:10799] CHIP:CTL: Device returned status 5 on receiving the NOC
@@ -121,7 +128,21 @@ tests:
- label: "TH_CR1 removes FabricIndex1"
PICS: OPCREDS.S.C0a.Rsp
verification: |
- on 1st controller using chip tool, remove fabric with FabricIndex=1
+ on TH_CR1 using chip tool, remove fabric with FabricIndex=1
./chip-tool operationalcredentials remove-fabric 1 1 0
+
+ CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
+ CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0008
+ CHIP:TOO: NOCResponse: {
+ CHIP:TOO: statusCode: 0
+ CHIP:TOO: fabricIndex: 1
+ CHIP:TOO: }
+ CHIP:DMG: ICR moving to [AwaitingDe]
+
+ Verify CommissionedFabrics=SupportedFabrics-1 on TH_CR1(chip-tool) log
+
+ ./chip-tool operationalcredentials read commissioned-fabrics 1 0
+
+ [1660907933.677983][33780:33785] CHIP:TOO: CommissionedFabrics: 15
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_21.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_21.yaml
index 5097d626ef0cca..3b49df915b30db 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_21.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_21.yaml
@@ -14,117 +14,97 @@
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name:
- 4.1.21. [TC-CADMIN-1.21] Open commissioning window - durations max and max+1
- [BCM] [DUT - Commissionee]
+ 30.1.21. [TC-CADMIN-1.21] Open commissioning window - durations max and
+ max+1 [BCM] [DUT - Commissionee]
PICS:
- CADMIN.S
+ - CADMIN.S.F00
config:
nodeId: 0x12344321
- cluster: "Basic"
+ timeout: 950
endpoint: 0
+ discriminator:
+ type: int16u
+ defaultValue: 3840
tests:
- - label: "Precondition"
- verification: |
- Reset Devices to factory defaults
- disabled: true
+ - label: "Precondition: Reset Devices to factory defaults"
+ PICS: PICS_SDK_CI_ONLY
+ cluster: "SystemCommands"
+ command: "FactoryReset"
- - label: "TH_CR1 starts a commissioning process with DUT_CE using BCM"
- PICS: CADMIN.S.C01.Rsp
+ - label: "Precondition: Reset Devices to factory defaults"
verification: |
- "1. Provision the device using 1st controller chip tool(use above instructions) ,
- "
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE with a value of 900
- seconds"
+ Not implemented in YAML
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_SKIP_SAMPLE_APP
+ arguments:
+ values:
+ - name: "message"
+ value: "Factory Reset the DUT and enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label: "TH_CR1 starts a commissioning process with DUT_CE"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ PICS: CADMIN.S
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE using BCM"
+ cluster: "AdministratorCommissioning"
+ command: "OpenBasicCommissioningWindow"
+ timedInteractionTimeoutMs: 10000
PICS: CADMIN.S.C01.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window
-
- For BCM,
-
-
- ./chip-tool administratorcommissioning open-basic-commissioning-window 900 2 0 --timedInteractionTimeoutMs 1000
-
-
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
- [1650278416.249430][11064:11069] CHIP:DMG:
- [1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
- [1650278416.249581][11064:11069] CHIP:DMG: {
- [1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
- disabled: true
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 900
+ - name: "discriminator"
+ value: discriminator
- label: "Wait for commissioning Window to 901 seconds"
- verification: |
- Wait for commissioning Window to Timeout
- disabled: true
+ cluster: "DelayCommands"
+ command: "WaitForMs"
+ arguments:
+ values:
+ - name: "ms"
+ value: 901000
- label:
"TH_CR1 reads the window status to verify the DUT_CE window is closed"
+ cluster: "AdministratorCommissioning"
+ command: "readAttribute"
+ attribute: "WindowStatus"
PICS: CADMIN.S.A0000
- verification: |
- ./chip-tool administratorcommissioning read window-status 1 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2849200592
- [1651137648.760469][14047:14052] CHIP:TOO: WindowStatus: 0
- [1651137648.760534][14047:14052] CHIP:EM: Sending Standalone Ack for MessageCounter:5527412 on exchange 14590i
- disabled: true
+ response:
+ value: 0
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE with a value of 901
- seconds"
+ - label: "TH_CR1 opens a commissioning window on DUT_CE"
+ cluster: "AdministratorCommissioning"
+ command: "OpenBasicCommissioningWindow"
PICS: CADMIN.S.C01.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window
-
- For BCM,
- ./chip-tool administratorcommissioning open-basic-commissioning-window 901 2 0 --timedInteractionTimeoutMs 1000
-
- CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x85
- [1652860801.225084][9512:9517] CHIP:TOO: Error: IM Error 0x00000585: General error: 0x85 (INVALID_COMMAND)
- [1652860801.225173][9512:9517] CHIP:DMG: ICR moving to [AwaitingDe]
- [1652860801.225294][9512:9517] CHIP:EM: Sending Standalone Ack for MessageCounter:4191961 on exchange 37827i
- disabled: true
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 901
+ - name: "discriminator"
+ value: discriminator
+ response:
+ error: INVALID_COMMAND
- label:
"TH_CR1 reads the window status to verify the DUT_CE window is closed"
+ cluster: "AdministratorCommissioning"
+ command: "readAttribute"
+ attribute: "WindowStatus"
PICS: CADMIN.S.A0000
- verification: |
- On 1st controller read window status
-
- ./chip-tool administratorcommissioning read window-status 1 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2849200592
- [1651137648.760469][14047:14052] CHIP:TOO: WindowStatus: 0
- [1651137648.760534][14047:14052] CHIP:EM: Sending Standalone Ack for MessageCounter:5527412 on exchange 14590i
- disabled: true
+ response:
+ value: 0
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_22.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_22.yaml
index 261b804cfc05e6..52864032e07829 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_22.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_22.yaml
@@ -14,120 +14,112 @@
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name:
- 4.1.22. [TC-CADMIN-1.22] Open commissioning window - durations max and max+1
- [ECM] [DUT - Commissionee]
+ 30.1.22. [TC-CADMIN-1.22] Open commissioning window - durations max and
+ max+1 [ECM] [DUT - Commissionee]
PICS:
- CADMIN.S
config:
nodeId: 0x12344321
- cluster: "Basic"
+ timeout: 950
endpoint: 0
+ discriminator:
+ type: int16u
+ defaultValue: 3840
+ PakeVerifier:
+ type: octet_string
+ defaultValue:
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"
tests:
- - label: "Precondition"
- verification: |
- Reset Devices to factory defaults
- disabled: true
+ - label: "Precondition: Reset Devices to factory defaults"
+ cluster: "SystemCommands"
+ PICS: PICS_SDK_CI_ONLY
+ command: "FactoryReset"
- - label: "TH_CR1 starts a commissioning process with DUT_CE using ECM"
- PICS: CADMIN.S.C00.Rsp
+ - label: "Precondition: Reset Devices to factory defaults"
verification: |
- "1. Provision the device using 1st controller chip tool(use above instructions) ,
- "
- disabled: true
-
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE with a value of 900
- seconds"
+ Not implemented in YAML
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_SKIP_SAMPLE_APP
+ arguments:
+ values:
+ - name: "message"
+ value: "Factory Reset the DUT and enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label: "TH_CR1 starts a commissioning process with DUT_CE"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
PICS: CADMIN.S.C00.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window
-
- Below is the example when using chip tool as controller
-
-
- For ECM,
- ./chip-tool pairing open-commissioning-window 1 1 900 1000 3840
-
- [1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
- [1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
- [1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635925713.972601][9695:9700] CHIP:DMG: ICR moving to [AddingComm]
- [1635925713.972705][9695:9700] CHIP:DMG: ICR moving to [AddedComma]
- [1635925713.972815][9695:9700] CHIP:IN: Prepared encrypted message 0xaaaad9b57d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 31056i with MessageCounter:0.
- [1635925713.972876][9695:9700] CHIP:IN: Sending encrypted msg 0xaaaad9b57d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 13449459 msec
- [1635925713.973006][9695:9700] CHIP:DMG: ICR moving to [CommandSen]
- [1635925713.973061][9695:9700] CHIP:CTL: Manual pairing code: [35484132896]
- [1635925713.973120][9695:9700] CHIP:CTL: SetupQRCode: [MT:00000CQM00A7F87ZT10]
- [1635925713.973178][9695:9700] CHIP:EM: Sending Standalone Ack for MessageCounter:1964916542 on exchange 31055i
- disabled: true
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
+
+ - label: "TH_CR1 opens a commissioning window on DUT_CE"
+ cluster: "AdministratorCommissioning"
+ command: "OpenCommissioningWindow"
+ PICS: CADMIN.S.C00.Rsp
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 900
+ - name: "PAKEVerifier"
+ value: PakeVerifier
+ - name: "discriminator"
+ value: discriminator
+ - name: "iterations"
+ value: 1000
+ - name: "salt"
+ value: "SPAKE2P Key Salt"
- label: "Wait for commissioning Window to 901 seconds"
- verification: |
- On 1st controller chip tool, open commissioning window
-
- Below is the example when using chip tool as controller
-
-
- For ECM,
- ./chip-tool pairing open-commissioning-window 1 1 900 1000 3840
-
- [1635925713.966786][9695:9700] CHIP:SC: Success status report received. Session was established
- [1635925713.966839][9695:9700] CHIP:IN: New secure session created for device 0x0000000000000001, key 33!!
- [1635925713.966938][9695:9700] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635925713.972601][9695:9700] CHIP:DMG: ICR moving to [AddingComm]
- [1635925713.972705][9695:9700] CHIP:DMG: ICR moving to [AddedComma]
- [1635925713.972815][9695:9700] CHIP:IN: Prepared encrypted message 0xaaaad9b57d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 31056i with MessageCounter:0.
- [1635925713.972876][9695:9700] CHIP:IN: Sending encrypted msg 0xaaaad9b57d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 13449459 msec
- [1635925713.973006][9695:9700] CHIP:DMG: ICR moving to [CommandSen]
- [1635925713.973061][9695:9700] CHIP:CTL: Manual pairing code: [35484132896]
- [1635925713.973120][9695:9700] CHIP:CTL: SetupQRCode: [MT:00000CQM00A7F87ZT10]
- [1635925713.973178][9695:9700] CHIP:EM: Sending Standalone Ack for MessageCounter:1964916542 on exchange 31055i
- disabled: true
+ cluster: "DelayCommands"
+ command: "WaitForMs"
+ arguments:
+ values:
+ - name: "ms"
+ value: 901000
- label:
"TH_CR1 reads the window status to verify the DUT_CE window is closed"
+ cluster: "AdministratorCommissioning"
+ command: "readAttribute"
+ attribute: "WindowStatus"
PICS: CADMIN.S.A0000
- verification: |
- On 1st controller read window status
-
- ./chip-tool administratorcommissioning read window-status 1 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2849200592
- [1651137648.760469][14047:14052] CHIP:TOO: WindowStatus: 0
- [1651137648.760534][14047:14052] CHIP:EM: Sending Standalone Ack for MessageCounter:5527412 on exchange 14590i
- disabled: true
+ response:
+ value: 0
- - label:
- "TH_CR1 opens a commissioning window on DUT_CE with a value of 901
- seconds"
+ - label: "TH_CR1 opens a commissioning window on DUT_CE"
+ cluster: "AdministratorCommissioning"
+ command: "OpenCommissioningWindow"
PICS: CADMIN.S.C00.Rsp
- verification: |
- On 1st controller chip tool, open commissioning window
-
- Below is the example when using chip tool as controller
-
-
- For ECM,
- ./chip-tool pairing open-commissioning-window 1 1 901 1000 3840
-
- CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x85
- [1652860801.225084][9512:9517] CHIP:TOO: Error: IM Error 0x00000585: General error: 0x85 (INVALID_COMMAND)
- [1652860801.225173][9512:9517] CHIP:DMG: ICR moving to [AwaitingDe]
- [1652860801.225294][9512:9517] CHIP:EM: Sending Standalone Ack for MessageCounter:4191961 on exchange 37827i
- disabled: true
+ timedInteractionTimeoutMs: 10000
+ arguments:
+ values:
+ - name: "CommissioningTimeout"
+ value: 901
+ - name: "PAKEVerifier"
+ value: PakeVerifier
+ - name: "discriminator"
+ value: discriminator
+ - name: "iterations"
+ value: 1000
+ - name: "salt"
+ value: "SPAKE2P Key Salt"
+ response:
+ error: INVALID_COMMAND
- label:
"TH_CR1 reads the window status to verify the DUT_CE window is closed"
+ cluster: "AdministratorCommissioning"
+ command: "readAttribute"
+ attribute: "WindowStatus"
PICS: CADMIN.S.A0000
- verification: |
- On first controller, read window status
-
- ./chip-tool administratorcommissioning read window-status 1 0
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2849200592
- [1651137648.760469][14047:14052] CHIP:TOO: WindowStatus: 0
- [1651137648.760534][14047:14052] CHIP:EM: Sending Standalone Ack for MessageCounter:5527412 on exchange 14590i
- disabled: true
+ response:
+ value: 0
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_23.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_23.yaml
index 7f521e503c5e82..f014b0272aabe3 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_23.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_23.yaml
@@ -19,10 +19,11 @@ name:
PICS:
- CADMIN.S
+ - CADMIN.S.F00
config:
nodeId: 0x12344321
- timeout: 330
+ timeout: 200
endpoint: 0
discriminator:
type: int16u
@@ -68,7 +69,7 @@ tests:
- name: "discriminator"
value: discriminator
- - label: "Wait for commissioning Window to 301 seconds"
+ - label: "Wait for commissioning Window to 181 seconds"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_24.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_24.yaml
index 736adc1aad733b..d589e09a309ac1 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_24.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_24.yaml
@@ -22,7 +22,7 @@ PICS:
config:
nodeId: 0x12344321
- timeout: 330
+ timeout: 200
endpoint: 0
discriminator:
type: int16u
@@ -78,7 +78,7 @@ tests:
- name: "salt"
value: "SPAKE2P Key Salt"
- - label: "Wait for commissioning Window to 301 seconds"
+ - label: "Wait for commissioning Window to 181 seconds"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_4.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_4.yaml
index 4ee2d08ee9743e..2d5f38f4b1eca4 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_4.yaml
@@ -16,6 +16,7 @@ name: 24.1.4. [TC-CADMIN-1.4] Node Behavior using BCM [DUT - Commissionee]
PICS:
- CADMIN.S
+ - CADMIN.S.F00
config:
nodeId: 0x12344321
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_5.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_5.yaml
index a27b47f8dc672b..9f47616362ded0 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_5.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_5.yaml
@@ -235,6 +235,7 @@ tests:
value: "SPAKE2P Key Salt"
response:
error: FAILURE
+ clusterError: 2
- label: "TH_CR2 starts a commissioning process with DUT_CE"
PICS: CADMIN.S
@@ -257,6 +258,7 @@ tests:
timedInteractionTimeoutMs: 10000
response:
error: FAILURE
+ clusterError: 4
- label: "TH_CR3 starts a commissioning process with DUT_CE"
identity: "gamma"
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_6.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_6.yaml
index 4015bf778f5759..fc2ef27ac21f25 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_6.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_6.yaml
@@ -18,6 +18,7 @@ name:
PICS:
- CADMIN.S
+ - CADMIN.S.F00
config:
nodeId: 0x12344321
@@ -86,7 +87,7 @@ tests:
- name: "ms"
value: 190000
- - label: "Commission from beta"
+ - label: "TH_CR2 starts a commissioning process with DUT_CE"
identity: "beta"
cluster: "CommissionerCommands"
command: "PairWithCode"
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_7.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_7.yaml
index d935c80b5bcaff..51584addb07c21 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_7.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_7.yaml
@@ -19,6 +19,7 @@ name:
PICS:
- CADMIN.C
+ - CADMIN.C.C00.Tx
config:
nodeId: 0x12344321
@@ -39,7 +40,7 @@ tests:
- label: "DUT_CR1 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- 1. Provision the device using DUT_CR1 controller on the raspi.
+ "1. Provision the TH_CE (all-cluster-app) device using DUT_CR1 (chip-tool ) on the raspi" "
disabled: true
- label:
@@ -47,19 +48,21 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On 1st controller open commissioning widow using ECM.
+ On DUT_CR1 send the below command
- Below is the example while using chip tool as controller,
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command with their all-cluster-app and for the second and third commissioners.
+
+ Verify the Open commisioning window on the TH_CE(all-cluster-app) Log:
+
+ [1660904553.796857][3537:3537] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0000
+ [1660904553.796951][3537:3537] CHIP:ZCL: Received command to open commissioning window
+ [1660904553.797255][3537:3537] CHIP:IN: SecureSession[0xaaab142ef7f0]: Allocated Type:1 LSID:34523
./chip-tool pairing open-commissioning-window 1 1 300 1000 3840
- [1635871058.908790][4273:4278] CHIP:SC: Success status report received. Session was established
- [1635871058.908827][4273:4278] CHIP:IN: New secure session created for device 0x0000000000000001, key 47!!
- [1635871058.908924][4273:4278] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635871058.916166][4273:4278] CHIP:DMG: ICR moving to [AddingComm]
- [1635871058.916223][4273:4278] CHIP:DMG: ICR moving to [AddedComma]
- [1635871058.916362][4273:4278] CHIP:IN: Prepared encrypted message 0xaaaac41dfd10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 21937i with MessageCounter:0.
- [1635871058.916421][4273:4278] CHIP:IN: Sending encrypted msg 0xaaaac41dfd10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 12630575 msec
+ Verify the Manual pairing code on the DUT_CR1(chip-tool) Log:
+
+ 0x0000000000000001 at monotonic time: 12630575 msec
[1635871058.916549][4273:4278] CHIP:DMG: ICR moving to [CommandSen]
[1635871058.916607][4273:4278] CHIP:CTL: Manual pairing code: [36366524220]
[1635871058.916679][4273:4278] CHIP:CTL: SetupQRCode: [MT:00000CQM0088GL3XV00]
@@ -93,13 +96,15 @@ tests:
PIXIT.CADMIN.CwDuration (that was given in step 2) + 10 seconds"
PICS: CADMIN.C
verification: |
- On the 2nd controller using chip-tool , connect using manual code generated by DUT Controller
+ On TH_CR2 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+ (considering 36366524220 as the manual code generated by DUT controller)
+ ./chip-tool pairing code 2 36366524220 --commissioner-name beta
- Below is the example when using chip tool as controller (considering 36366524220 as the manual code generated by DUT controller)
- ./chip-tool pairing code 2 36366524220
+ Verify the below message in the TH_CR2(chip-tool) Log:
- verify you got the following message in the TH log
CHIP:SC: PASESession timed out while waiting for a response from the peer. Expected message type was 33
CHIP:TOO: Secure Pairing Failed
CHIP:TOO: Pairing Failure: ../../third_party/connectedhomeip/src/protocols/secure_channel/PASESession.cpp:324: CHIP Error 0x00000032: Timeout
@@ -111,19 +116,21 @@ tests:
ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On your second controller open commissioning widow using ECM.
+ On DUT_CR1 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ ./chip-tool pairing open-commissioning-window 2 1 300 1000 3840 --commissioner-name beta
+
+ Verify the Open commisioning window on the TH_CE(all-cluster-app) Log:
- Below is the example while using chip tool as controller,
+ [1660904553.796857][3537:3537] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0000
+ [1660904553.796951][3537:3537] CHIP:ZCL: Received command to open commissioning window
+ [1660904553.797255][3537:3537] CHIP:IN: SecureSession[0xaaab142ef7f0]: Allocated Type:1 LSID:34523
- ./chip-tool pairing open-commissioning-window 2 1 300 1000 3840
+ Verify the Manual pairing code on the DUT_CR1(chip-tool) Log:
- [1635871058.908790][4273:4278] CHIP:SC: Success status report received. Session was established
- [1635871058.908827][4273:4278] CHIP:IN: New secure session created for device 0x0000000000000001, key 47!!
- [1635871058.908924][4273:4278] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635871058.916166][4273:4278] CHIP:DMG: ICR moving to [AddingComm]
- [1635871058.916223][4273:4278] CHIP:DMG: ICR moving to [AddedComma]
- [1635871058.916362][4273:4278] CHIP:IN: Prepared encrypted message 0xaaaac41dfd10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 21937i with MessageCounter:0.
- [1635871058.916421][4273:4278] CHIP:IN: Sending encrypted msg 0xaaaac41dfd10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 12630575 msec
+ 0x0000000000000001 at monotonic time: 12630575 msec
[1635871058.916549][4273:4278] CHIP:DMG: ICR moving to [CommandSen]
[1635871058.916607][4273:4278] CHIP:CTL: Manual pairing code: [36366524220]
[1635871058.916679][4273:4278] CHIP:CTL: SetupQRCode: [MT:00000CQM0088GL3XV00]
@@ -133,55 +140,43 @@ tests:
- label: "DUT_CR1 sends command to TH_CE to revoke the commissioning window"
PICS: CADMIN.C.C02.Tx
verification: |
- On First controller send revoke commissioning
+ On DUT_CR1 send the below command
- Below is the example while using chip tool as controller,
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool administratorcommissioning revoke-commissioning 1 0 --timedInteractionTimeoutMs 1000
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
+ Verify success response On DUT_CR1(CHIP-TOOL) Log
+
+
[1650278416.249347][11064:11069] CHIP:DMG: },
[1650278416.249430][11064:11069] CHIP:DMG:
[1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
[1650278416.249581][11064:11069] CHIP:DMG: {
[1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
[1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
+
[1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
+
+ Verify the Commissioning window is closed in TH_CE(all-clusters-app) Log
+
+ [1660901039.590962][3045:3045] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0002
+ [1660901039.591036][3045:3045] CHIP:ZCL: Received command to close commissioning window
+ [1660901039.591094][3045:3045] CHIP:SVR: Closing pairing window
+ [1660901039.591169][3045:3045] CHIP:IN: SecureSession[0xaaaab010d400]: Released - Type:1 LSID:14411
disabled: true
- label: "TH_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On the 2nd controller using chip-tool , connect using manual code generated by DUT Controller
+ On TH_CR2 send the below command
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example when using chip tool as controller (considering 34921141778 as the manual code generated by DUT controller)
- ./chip-tool pairing code 2 34921141778
+ (considering 34921141778 as the manual code generated by DUT controller)
+ ./chip-tool pairing code 2 34921141778 --commissioner-name beta
- verify you got the following message in the TH log
+ verify you got the following message in the TH_CR2(chip-tool) log
CHIP:SC: PASESession timed out while waiting for a response from the peer. Expected message type was 33
CHIP:TOO: Secure Pairing Failed
CHIP:TOO: Pairing Failure: ../../third_party/connectedhomeip/src/protocols/secure_channel/PASESession.cpp:324: CHIP Error 0x00000032: Timeout
@@ -190,26 +185,22 @@ tests:
- label: "DUT_CR1 sends command to TH_CE to revoke the commissioning window"
PICS: CADMIN.C.C02.Tx
verification: |
- On your first controller revoke commissioning
-
- Below is the example while using chip tool as controller,
-
- /chip-tool administratorcommissioning revoke-commissioning 1 0 --timedInteractionTimeoutMs 1000
-
- CHIP:DMG: InvokeResponseMessage =
- [1650524034.111241][15422:15427] CHIP:DMG: {
- [1650524034.111316][15422:15427] CHIP:DMG: suppressResponse = false,
- [1650524034.111383][15422:15427] CHIP:DMG: InvokeResponseIBs =
- [1650524034.111464][15422:15427] CHIP:DMG: [
- [1650524034.111531][15422:15427] CHIP:DMG: InvokeResponseIB =
- [1650524034.111643][15422:15427] CHIP:DMG: {
- [1650524034.111714][15422:15427] CHIP:DMG: CommandStatusIB =
- [1650524034.111803][15422:15427] CHIP:DMG: {
- [1650524034.111886][15422:15427] CHIP:DMG: CommandPathIB =
- [1650524034.111979][15422:15427] CHIP:DMG: {
- [1650524034.112072][15422:15427] CHIP:DMG: EndpointId = 0x0,
- [1650524034.112167][15422:15427] CHIP:DMG: ClusterId = 0x3c,
- [1650524034.112257][15422:15427] CHIP:DMG: CommandId = 0x2,
+ On DUT_CR1 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ ./chip-tool administratorcommissioning revoke-commissioning 1 0 --timedInteractionTimeoutMs 1000
+
+ Verify the Commissioning window is closed in TH_CE(all-clusters-app) Log
+
+ [1660901039.590962][3045:3045] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0002
+ [1660901039.591036][3045:3045] CHIP:ZCL: Received command to close commissioning window
+ [1660901039.591094][3045:3045] CHIP:SVR: Closing pairing window
+ [1660901039.591169][3045:3045] CHIP:IN: SecureSession[0xaaaab010d400]: Released - Type:1 LSID:14411
+
+ Verify cluster-status code 3 On DUT_CR1(chip-tool) Log
+
+
[1650524034.112345][15422:15427] CHIP:DMG: },
[1650524034.112456][15422:15427] CHIP:DMG:
[1650524034.112543][15422:15427] CHIP:DMG: StatusIB =
@@ -218,16 +209,6 @@ tests:
[1650524034.112825][15422:15427] CHIP:DMG: cluster-status = 0x3,
[1650524034.112914][15422:15427] CHIP:DMG: },
[1650524034.113005][15422:15427] CHIP:DMG:
- [1650524034.113084][15422:15427] CHIP:DMG: },
- [1650524034.113176][15422:15427] CHIP:DMG:
- [1650524034.113245][15422:15427] CHIP:DMG: },
- [1650524034.113328][15422:15427] CHIP:DMG:
- [1650524034.113392][15422:15427] CHIP:DMG: ],
- [1650524034.113477][15422:15427] CHIP:DMG:
- [1650524034.113545][15422:15427] CHIP:DMG: InteractionModelRevision = 1
- [1650524034.113610][15422:15427] CHIP:DMG: },
- [1650524034.113780][15422:15427] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0002 Status=0x1
- [1650524034.113892][15422:15427] CHIP:TOO: Error: IM Error 0x00000603: Cluster-specific error: 0x03
disabled: true
- label:
@@ -235,43 +216,52 @@ tests:
Information Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- Using your DUT controller, write attribute and read attribute to and from TH_CE
-
- Below is the example while using chip tool on second controller,
- ./chip-tool basic write node-label te5new 1 0
-
- CHIP:DMG: WriteResponseMessage =
- [1649245940.788522][10110:10115] CHIP:DMG: {
- [1649245940.788577][10110:10115] CHIP:DMG: AttributeStatusIBs =
- [1649245940.788653][10110:10115] CHIP:DMG: [
- [1649245940.788713][10110:10115] CHIP:DMG: AttributeStatusIB =
- [1649245940.788787][10110:10115] CHIP:DMG: {
- [1649245940.788852][10110:10115] CHIP:DMG: AttributePathIB =
- [1649245940.788931][10110:10115] CHIP:DMG: {
- [1649245940.789009][10110:10115] CHIP:DMG: Endpoint = 0x0,
- [1649245940.789143][10110:10115] CHIP:DMG: Cluster = 0x28,
- [1649245940.789228][10110:10115] CHIP:DMG: Attribute = 0x0000_0005,
- [1649245940.789313][10110:10115] CHIP:DMG: }
- [1649245940.789388][10110:10115] CHIP:DMG:
- [1649245940.789454][10110:10115] CHIP:DMG: StatusIB =
- [1649245940.789519][10110:10115] CHIP:DMG: {
- [1649245940.789588][10110:10115] CHIP:DMG: status = 0x00 (SUCCESS),
- [1649245940.789654][10110:10115] CHIP:DMG: },
- [1649245940.789719][10110:10115] CHIP:DMG:
- [1649245940.789778][10110:10115] CHIP:DMG: },
- [1649245940.789841][10110:10115] CHIP:DMG:
- [1649245940.789885][10110:10115] CHIP:DMG: ],
- [1649245940.789941][10110:10115] CHIP:DMG:
- [1649245940.789984][10110:10115] CHIP:DMG: InteractionModelRevision = 1
- [1649245940.790033][10110:10115] CHIP:DMG: }
- [1649245940.790167][10110:10115] CHIP:DMG: WriteClient moving to [AwaitingDe]
-
-
- Verify read attribute returns the updated value written
- ./chip-tool basic read node-label 2 0
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3061847068
- [1649245950.006849][10116:10121] CHIP:TOO: NodeLabel: te5new
- [1649245950.007024][10116:10121] CHIP:EM: Sending Standalone Ack for MessageCounter:12495101 on exchange 24816i
+ On DUT_CR1 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
+
+ Verify Write request on TH_CE(all-clusters-app) Log
+
+ [1660894021.901330][2871:2871] CHIP:EM: Handling via exchange: 9616r, Delegate: 0xaaaada21ffc0
+ [1660894021.901426][2871:2871] CHIP:IM: Received Write request
+ [1660894021.901484][2871:2871] CHIP:DMG: IM WH moving to [Initialized]
+ [1660894021.901613][2871:2871] CHIP:DMG: WriteRequestMessage =
+ [1660894021.901676][2871:2871] CHIP:DMG: {
+ [1660894021.901735][2871:2871] CHIP:DMG: suppressResponse = false,
+ [1660894021.901802][2871:2871] CHIP:DMG: timedRequest = false,
+ [1660894021.901864][2871:2871] CHIP:DMG: AttributeDataIBs =
+ [1660894021.901940][2871:2871] CHIP:DMG: [
+ [1660894021.902001][2871:2871] CHIP:DMG: AttributeDataIB =
+ [1660894021.902071][2871:2871] CHIP:DMG: {
+ [1660894021.902136][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894021.902219][2871:2871] CHIP:DMG: {
+ [1660894021.902302][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894021.902394][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894021.902488][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660894021.902574][2871:2871] CHIP:DMG: }
+ [1660894021.902827][2871:2871] CHIP:DMG:
+ [1660894021.902912][2871:2871] CHIP:DMG: Data = "te5new" (6 chars),
+ [1660894021.902985][2871:2871] CHIP:DMG: },
+
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
+
+ Verify read request on TH_CE(all-clusters-app) Log
+
+
+ [1660894142.828718][2871:2871] CHIP:EM: Handling via exchange: 62454r, Delegate: 0xaaaada21ffc0
+ [1660894142.828834][2871:2871] CHIP:IM: Received Read request
+ [1660894142.829023][2871:2871] CHIP:DMG: ReadRequestMessage =
+ [1660894142.829097][2871:2871] CHIP:DMG: {
+ [1660894142.829153][2871:2871] CHIP:DMG: AttributePathIBs =
+ [1660894142.829235][2871:2871] CHIP:DMG: [
+ [1660894142.829306][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894142.829376][2871:2871] CHIP:DMG: {
+ [1660894142.829449][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894142.829532][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894142.829627][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660894142.829703][2871:2871] CHIP:DMG: }
+ [1660894142.829777][2871:2871] CHIP:DMG:
disabled: true
- label:
@@ -279,19 +269,21 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
PICS: CADMIN.C.C00.Tx
verification: |
- On your first controller open commissioning widow using ECM.
+ On DUT_CR1 send the below command
- Below is the example while using chip tool as controller,
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool pairing open-commissioning-window 1 1 300 1000 3840
- [1635871373.773447][4322:4328] CHIP:SC: Success status report received. Session was established
- [1635871373.773517][4322:4328] CHIP:IN: New secure session created for device 0x0000000000000001, key 54!!
- [1635871373.773611][4322:4328] CHIP:CTL: OpenCommissioningWindow for device ID 1
- [1635871373.780891][4322:4328] CHIP:DMG: ICR moving to [AddingComm]
- [1635871373.780942][4322:4328] CHIP:DMG: ICR moving to [AddedComma]
- [1635871373.781067][4322:4328] CHIP:IN: Prepared encrypted message 0xaaaae2653d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 62089i with MessageCounter:0.
- [1635871373.781124][4322:4328] CHIP:IN: Sending encrypted msg 0xaaaae2653d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 12945439 msec
+ Verify the Commissioning window is opened in TH_CE(all-clusters-app) Log
+
+ [1660901022.112296][3045:3045] CHIP:DIS: mDNS service published: _matterc._udp
+ [1660901022.112389][3045:3045] CHIP:ZCL: Commissioning window is now open
+ [1660901022.112474][3045:3045] CHIP:DMG: Command handler moving to [ Preparing]
+
+ Verify Manual pairing code on DUT_CR1(chip-tool) Log
+
+
[1635871373.781269][4322:4328] CHIP:DMG: ICR moving to [CommandSen]
[1635871373.781329][4322:4328] CHIP:CTL: Manual pairing code: [35256543344]
[1635871373.781482][4322:4328] CHIP:CTL: SetupQRCode: [MT:00000CQM00CIWV01J10]
@@ -301,26 +293,29 @@ tests:
- label: "TH_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On the 2nd controller using chip-tool , connect using manual code generated by DUT Controller
+ On TH_CR2 send the below command
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example when using chip tool as controller (considering 35256543344 as the manual code generated by DUT controller)
- ./chip-tool pairing code 2 35256543344
+ (considering 35256543344 as the manual code generated by DUT controller)
+ ./chip-tool pairing code 2 35256543344 --commissioner-name beta
- Verify you got below message
+ Verify whether you got below message in the log of TH_CR2(CHIP-TOOL)
Device commissioning completed with success
disabled: true
- label: "TH_CR3 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On the 3rd controller using chip-tool , connect using manual code generated by DUT Controller
+ On TH_CR3 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command with their all-cluster-app and for the second and third commissioners.
+ (considering 35256543344 as the manual code generated by DUT controller)
+ ./chip-tool pairing code 3 35256543344 --commissioner-name gamma
- Below is the example when using chip tool as controller (considering 35256543344 as the manual code generated by DUT controller)
- ./chip-tool pairing code 3 35256543344
+ verify you got the following message in the TH_CR3(chip-tool) log
- verify you got the following message in the TH log
CHIP:SC: PASESession timed out while waiting for a response from the peer. Expected message type was 33
CHIP:TOO: Secure Pairing Failed
CHIP:TOO: Pairing Failure: ../../third_party/connectedhomeip/src/protocols/secure_channel/PASESession.cpp:324: CHIP Error 0x00000032: Timeout
diff --git a/src/app/tests/suites/certification/Test_TC_CADMIN_1_8.yaml b/src/app/tests/suites/certification/Test_TC_CADMIN_1_8.yaml
index 6ee77b6feeb50b..b5bec5f1454f45 100644
--- a/src/app/tests/suites/certification/Test_TC_CADMIN_1_8.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CADMIN_1_8.yaml
@@ -19,6 +19,7 @@ name:
PICS:
- CADMIN.C
+ - CADMIN.C.C01.Tx
config:
nodeId: 0x12344321
@@ -39,7 +40,7 @@ tests:
- label: "DUT_CR1 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- 1. Provision the device using DUT_CR1 controller on the raspi.
+ "1. Provision the TH_CE (all-cluster-app) device using DUT_CR1 (chip-tool ) on the raspi" "
disabled: true
- label:
@@ -47,43 +48,28 @@ tests:
commissioning timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
PICS: CADMIN.C.C01.Tx
verification: |
- On your 1st controller open commissioning widow using BCM.
+ On DUT_CR1 send the below command
- Below is the example while using chip tool as controller,
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
- [1650278416.249347][11064:11069] CHIP:DMG: },
+
+ Verify the Open commisioning window on the TH_CE(all-cluster-app) Log:
+
+ [1660904553.796857][3537:3537] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0000
+ [1660904553.796951][3537:3537] CHIP:ZCL: Received command to open commissioning window
+ [1660904553.797255][3537:3537] CHIP:IN: SecureSession[0xaaab142ef7f0]: Allocated Type:1 LSID:34523
+
+ Verify success response On DUT_CR1(chip-tool) Log
+
+
[1650278416.249430][11064:11069] CHIP:DMG:
[1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
[1650278416.249581][11064:11069] CHIP:DMG: {
[1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
[1650278416.249738][11064:11069] CHIP:DMG: },
[1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
disabled: true
- label:
@@ -113,11 +99,14 @@ tests:
PIXIT.CADMIN.CwDuration (that was given in step 2) + 10 seconds"
PICS: CADMIN.C
verification: |
- On the 2nd controller using chip-tool , connect to the accessory
+ On TH_CR2 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool pairing onnetwork 2 20202021
+ ./chip-tool pairing onnetwork 2 20202021 --commissioner-name beta
+
+ Verify the below message in the TH_CR2(chip-tool) Log:
- verify you got the following message in the TH log
CHIP:SC: PASESession timed out while waiting for a response from the peer. Expected message type was 33
CHIP:TOO: Secure Pairing Failed
CHIP:TOO: Pairing Failure: ../../third_party/connectedhomeip/src/protocols/secure_channel/PASESession.cpp:324: CHIP Error 0x00000032: Timeout
@@ -129,27 +118,20 @@ tests:
BCM"
PICS: CADMIN.C.C01.Tx
verification: |
- On your first controller open commissioning widow using BCM.
+ On DUT_CR1 send the below command
- Below is the example while using chip tool as controller,
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000
+ Verify the Open commisioning window on the TH_CE(all-cluster-app) Log:
+
+ [1660904553.796857][3537:3537] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0000
+ [1660904553.796951][3537:3537] CHIP:ZCL: Received command to open commissioning window
+ [1660904553.797255][3537:3537] CHIP:IN: SecureSession[0xaaab142ef7f0]: Allocated Type:1 LSID:34523
+
+ Verify success response On TH1(all-clusters-app) Log
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
[1650278416.249347][11064:11069] CHIP:DMG: },
[1650278416.249430][11064:11069] CHIP:DMG:
[1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
@@ -157,67 +139,45 @@ tests:
[1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
[1650278416.249738][11064:11069] CHIP:DMG: },
[1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
disabled: true
- label: "DUT_CR1 sends command to TH_CE to revoke the commissioning window"
PICS: CADMIN.C.C02.Tx
verification: |
- On your DUT controller revoke commissioning
+ On DUT_CR1 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Below is the example while using chip tool as controller,
/chip-tool administratorcommissioning revoke-commissioning 1 0 --timedInteractionTimeoutMs 1000
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
+ Verify success response On DUT_CR1(CHIP-TOOL) Log
+
[1650278416.249347][11064:11069] CHIP:DMG: },
[1650278416.249430][11064:11069] CHIP:DMG:
[1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
[1650278416.249581][11064:11069] CHIP:DMG: {
[1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
[1650278416.249738][11064:11069] CHIP:DMG: },
- [1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
+
+ Verify the Commissioning window is closed in TH_CE(all-clusters-app) Log
+
+ [1660901039.590962][3045:3045] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0002
+ [1660901039.591036][3045:3045] CHIP:ZCL: Received command to close commissioning window
+ [1660901039.591094][3045:3045] CHIP:SVR: Closing pairing window
+ [1660901039.591169][3045:3045] CHIP:IN: SecureSession[0xaaaab010d400]: Released - Type:1 LSID:14411
disabled: true
- label: "TH_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On the 2nd controller using chip-tool , connect to the accessory
+ On TH_CR2 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- ./chip-tool pairing onnetwork 2 20202021
+ ./chip-tool pairing onnetwork 2 20202021 --commissioner-name beta
+
+ verify you got the following message in the TH_CR2(CHIP-TOOL) log
- verify you got the following message in the TH log
CHIP:SC: PASESession timed out while waiting for a response from the peer. Expected message type was 33
CHIP:TOO: Secure Pairing Failed
CHIP:TOO: Pairing Failure: ../../third_party/connectedhomeip/src/protocols/secure_channel/PASESession.cpp:324: CHIP Error 0x00000032: Timeout
@@ -226,26 +186,25 @@ tests:
- label: "DUT_CR1 sends command to TH_CE to revoke the commissioning window"
PICS: CADMIN.C.C02.Tx
verification: |
- On your 1st controller revoke commissioning
+ On DUT_CR1 send the below command
- Below is the example while using chip tool as controller,
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
/chip-tool administratorcommissioning revoke-commissioning 1 0 --timedInteractionTimeoutMs 1000
- CHIP:DMG: InvokeResponseMessage =
- [1650524034.111241][15422:15427] CHIP:DMG: {
- [1650524034.111316][15422:15427] CHIP:DMG: suppressResponse = false,
- [1650524034.111383][15422:15427] CHIP:DMG: InvokeResponseIBs =
- [1650524034.111464][15422:15427] CHIP:DMG: [
- [1650524034.111531][15422:15427] CHIP:DMG: InvokeResponseIB =
- [1650524034.111643][15422:15427] CHIP:DMG: {
- [1650524034.111714][15422:15427] CHIP:DMG: CommandStatusIB =
- [1650524034.111803][15422:15427] CHIP:DMG: {
- [1650524034.111886][15422:15427] CHIP:DMG: CommandPathIB =
- [1650524034.111979][15422:15427] CHIP:DMG: {
- [1650524034.112072][15422:15427] CHIP:DMG: EndpointId = 0x0,
- [1650524034.112167][15422:15427] CHIP:DMG: ClusterId = 0x3c,
- [1650524034.112257][15422:15427] CHIP:DMG: CommandId = 0x2,
+ Verify success response On TH1(all-clusters-app) Log
+
+
+ Verify the Commissioning window is closed in TH_CE(all-clusters-app) Log
+
+ [1660901039.590962][3045:3045] CHIP:DMG: Received command for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0002
+ [1660901039.591036][3045:3045] CHIP:ZCL: Received command to close commissioning window
+ [1660901039.591094][3045:3045] CHIP:SVR: Closing pairing window
+ [1660901039.591169][3045:3045] CHIP:IN: SecureSession[0xaaaab010d400]: Released - Type:1 LSID:14411
+
+ Verify cluster-status code 3 On DUT_CR1(CHIP-TOOL) Log
+
+
[1650524034.112345][15422:15427] CHIP:DMG: },
[1650524034.112456][15422:15427] CHIP:DMG:
[1650524034.112543][15422:15427] CHIP:DMG: StatusIB =
@@ -254,16 +213,6 @@ tests:
[1650524034.112825][15422:15427] CHIP:DMG: cluster-status = 0x3,
[1650524034.112914][15422:15427] CHIP:DMG: },
[1650524034.113005][15422:15427] CHIP:DMG:
- [1650524034.113084][15422:15427] CHIP:DMG: },
- [1650524034.113176][15422:15427] CHIP:DMG:
- [1650524034.113245][15422:15427] CHIP:DMG: },
- [1650524034.113328][15422:15427] CHIP:DMG:
- [1650524034.113392][15422:15427] CHIP:DMG: ],
- [1650524034.113477][15422:15427] CHIP:DMG:
- [1650524034.113545][15422:15427] CHIP:DMG: InteractionModelRevision = 1
- [1650524034.113610][15422:15427] CHIP:DMG: },
- [1650524034.113780][15422:15427] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0002 Status=0x1
- [1650524034.113892][15422:15427] CHIP:TOO: Error: IM Error 0x00000603: Cluster-specific error: 0x03
disabled: true
- label:
@@ -271,42 +220,53 @@ tests:
Information Clusters NodeLabel mandatory attribute"
PICS: BINFO.C.A0005
verification: |
- Using 1st controller, write attribute and read attribute to and from TH_CE
-
- Below is the example while using chip tool on second controller,
- ./chip-tool basic write node-label te5new 2 0
-
- CHIP:DMG: WriteResponseMessage =
- [1649245940.788522][10110:10115] CHIP:DMG: {
- [1649245940.788577][10110:10115] CHIP:DMG: AttributeStatusIBs =
- [1649245940.788653][10110:10115] CHIP:DMG: [
- [1649245940.788713][10110:10115] CHIP:DMG: AttributeStatusIB =
- [1649245940.788787][10110:10115] CHIP:DMG: {
- [1649245940.788852][10110:10115] CHIP:DMG: AttributePathIB =
- [1649245940.788931][10110:10115] CHIP:DMG: {
- [1649245940.789009][10110:10115] CHIP:DMG: Endpoint = 0x0,
- [1649245940.789143][10110:10115] CHIP:DMG: Cluster = 0x28,
- [1649245940.789228][10110:10115] CHIP:DMG: Attribute = 0x0000_0005,
- [1649245940.789313][10110:10115] CHIP:DMG: }
- [1649245940.789388][10110:10115] CHIP:DMG:
- [1649245940.789454][10110:10115] CHIP:DMG: StatusIB =
- [1649245940.789519][10110:10115] CHIP:DMG: {
- [1649245940.789588][10110:10115] CHIP:DMG: status = 0x00 (SUCCESS),
- [1649245940.789654][10110:10115] CHIP:DMG: },
- [1649245940.789719][10110:10115] CHIP:DMG:
- [1649245940.789778][10110:10115] CHIP:DMG: },
- [1649245940.789841][10110:10115] CHIP:DMG:
- [1649245940.789885][10110:10115] CHIP:DMG: ],
- [1649245940.789941][10110:10115] CHIP:DMG:
- [1649245940.789984][10110:10115] CHIP:DMG: InteractionModelRevision = 1
- [1649245940.790033][10110:10115] CHIP:DMG: }
- [1649245940.790167][10110:10115] CHIP:DMG: WriteClient moving to [AwaitingDe]
-
- Verify read attribute returns the updated value written
- ./chip-tool basic read node-label 2 0
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3061847068
- [1649245950.006849][10116:10121] CHIP:TOO: NodeLabel: te5new
- [1649245950.007024][10116:10121] CHIP:EM: Sending Standalone Ack for MessageCounter:12495101 on exchange 24816i
+ On DUT_CR1 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ ./chip-tool basic write node-label te5new 2 0 --commissioner-name beta
+
+ Verify Write request on TH_CE(all-clusters-app) Log
+
+ [1660894021.901330][2871:2871] CHIP:EM: Handling via exchange: 9616r, Delegate: 0xaaaada21ffc0
+ [1660894021.901426][2871:2871] CHIP:IM: Received Write request
+ [1660894021.901484][2871:2871] CHIP:DMG: IM WH moving to [Initialized]
+ [1660894021.901613][2871:2871] CHIP:DMG: WriteRequestMessage =
+ [1660894021.901676][2871:2871] CHIP:DMG: {
+ [1660894021.901735][2871:2871] CHIP:DMG: suppressResponse = false,
+ [1660894021.901802][2871:2871] CHIP:DMG: timedRequest = false,
+ [1660894021.901864][2871:2871] CHIP:DMG: AttributeDataIBs =
+ [1660894021.901940][2871:2871] CHIP:DMG: [
+ [1660894021.902001][2871:2871] CHIP:DMG: AttributeDataIB =
+ [1660894021.902071][2871:2871] CHIP:DMG: {
+ [1660894021.902136][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894021.902219][2871:2871] CHIP:DMG: {
+ [1660894021.902302][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894021.902394][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894021.902488][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660894021.902574][2871:2871] CHIP:DMG: }
+ [1660894021.902827][2871:2871] CHIP:DMG:
+ [1660894021.902912][2871:2871] CHIP:DMG: Data = "te5new" (6 chars),
+ [1660894021.902985][2871:2871] CHIP:DMG: },
+
+ ./chip-tool basic read node-label 2 0 --commissioner-name beta
+
+ Verify read request on TH_CE(all-clusters-app) Log
+
+
+ [1660894142.828718][2871:2871] CHIP:EM: Handling via exchange: 62454r, Delegate: 0xaaaada21ffc0
+ [1660894142.828834][2871:2871] CHIP:IM: Received Read request
+ [1660894142.829023][2871:2871] CHIP:DMG: ReadRequestMessage =
+ [1660894142.829097][2871:2871] CHIP:DMG: {
+ [1660894142.829153][2871:2871] CHIP:DMG: AttributePathIBs =
+ [1660894142.829235][2871:2871] CHIP:DMG: [
+ [1660894142.829306][2871:2871] CHIP:DMG: AttributePathIB =
+ [1660894142.829376][2871:2871] CHIP:DMG: {
+ [1660894142.829449][2871:2871] CHIP:DMG: Endpoint = 0x0,
+ [1660894142.829532][2871:2871] CHIP:DMG: Cluster = 0x28,
+ [1660894142.829627][2871:2871] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660894142.829703][2871:2871] CHIP:DMG: }
+ [1660894142.829777][2871:2871] CHIP:DMG:
disabled: true
- label:
@@ -315,28 +275,21 @@ tests:
BCM"
PICS: CADMIN.C.C01.Tx
verification: |
- On 1st controller open commissioning widow using BCM.
+ On DUT_CR1 send the below command
- Below is the example while using chip tool as controller,
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000
+ Verify the Commissioning window is opened in TH_CE(all-clusters-app) Log
+
+ [1660901022.112296][3045:3045] CHIP:DIS: mDNS service published: _matterc._udp
+ [1660901022.112389][3045:3045] CHIP:ZCL: Commissioning window is now open
+ [1660901022.112474][3045:3045] CHIP:DMG: Command handler moving to [ Preparing]
+
+ Verify Manual pairing code on DUT_CR1(chip-tool) Log
- CHIP:DMG: InvokeResponseMessage =
- [1650278416.248379][11064:11069] CHIP:DMG: {
- [1650278416.248436][11064:11069] CHIP:DMG: suppressResponse = false,
- [1650278416.248495][11064:11069] CHIP:DMG: InvokeResponseIBs =
- [1650278416.248570][11064:11069] CHIP:DMG: [
- [1650278416.248630][11064:11069] CHIP:DMG: InvokeResponseIB =
- [1650278416.248718][11064:11069] CHIP:DMG: {
- [1650278416.248783][11064:11069] CHIP:DMG: CommandStatusIB =
- [1650278416.248860][11064:11069] CHIP:DMG: {
- [1650278416.248931][11064:11069] CHIP:DMG: CommandPathIB =
- [1650278416.249011][11064:11069] CHIP:DMG: {
- [1650278416.249100][11064:11069] CHIP:DMG: EndpointId = 0x0,
- [1650278416.249186][11064:11069] CHIP:DMG: ClusterId = 0x3c,
- [1650278416.249268][11064:11069] CHIP:DMG: CommandId = 0x1,
[1650278416.249347][11064:11069] CHIP:DMG: },
[1650278416.249430][11064:11069] CHIP:DMG:
[1650278416.249501][11064:11069] CHIP:DMG: StatusIB =
@@ -344,37 +297,32 @@ tests:
[1650278416.249664][11064:11069] CHIP:DMG: status = 0x00 (SUCCESS),
[1650278416.249738][11064:11069] CHIP:DMG: },
[1650278416.249823][11064:11069] CHIP:DMG:
- [1650278416.249889][11064:11069] CHIP:DMG: },
- [1650278416.249969][11064:11069] CHIP:DMG:
- [1650278416.250035][11064:11069] CHIP:DMG: },
- [1650278416.250113][11064:11069] CHIP:DMG:
- [1650278416.250169][11064:11069] CHIP:DMG: ],
- [1650278416.250241][11064:11069] CHIP:DMG:
- [1650278416.250298][11064:11069] CHIP:DMG: InteractionModelRevision = 1
- [1650278416.250355][11064:11069] CHIP:DMG: },
- [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
- [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
disabled: true
- label: "TH_CR2 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On the 2nd controller using chip-tool , connect to the accessory
+ On TH_CR2 send the below command
- ./chip-tool pairing onnetwork 2 20202021
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
- Verify you got below message
+ ./chip-tool pairing onnetwork 2 20202021 --commissioner-name beta
+
+ Verify whether you got below message in the log of TH_CR2(CHIP-TOOL)
Device commissioning completed with success
disabled: true
- label: "TH_CR3 starts a commissioning process with TH_CE"
PICS: CADMIN.C
verification: |
- On the 3rd controller using chip-tool , connect to the accessory
+ On TH_CR3 send the below command
+
+ Below are the example command for using single RPI as multiple controller. Vendor should have the provision to use the equivalent command in their DUT or use multiple commissioners/controllers
+
+ ./chip-tool pairing onnetwork 3 20202021 --commissioner-name gamma
- ./chip-tool pairing onnetwork 3 20202021
+ verify you got the following message in the TH_CR3(all-clusters-app) log
- verify you got the following message in the TH log
CHIP:SC: PASESession timed out while waiting for a response from the peer. Expected message type was 33
CHIP:TOO: Secure Pairing Failed
CHIP:TOO: Pairing Failure: ../../third_party/connectedhomeip/src/protocols/secure_channel/PASESession.cpp:324: CHIP Error 0x00000032: Timeout
diff --git a/src/app/tests/suites/certification/Test_TC_CC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_CC_1_1.yaml
index 7be4ab23fed5fc..1cc684a78110d2 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_1_1.yaml
@@ -14,6 +14,9 @@
name: 25.1.1. [TC-CC-1.1] Global attributes with server as DUT
+PICS:
+ - CC.S
+
config:
nodeId: 0x12344321
cluster: "Color Control"
@@ -37,13 +40,22 @@ tests:
type: int16u
- label: "Read the global attribute: FeatureMap"
- PICS: (CC.S.F00 || CC.S.F01 || CC.S.F02 || CC.S.F03)
+ PICS: ( !CC.S.F00 && !CC.S.F01 && !CC.S.F02 && !CC.S.F03 )
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
+
+ - label: "Read the global attribute: FeatureMap"
+ PICS: ( CC.S.F00 || CC.S.F01 || CC.S.F02 || CC.S.F03 )
command: "readAttribute"
attribute: "FeatureMap"
response:
constraints:
type: bitmap32
- minValue: 0
+ minValue: 1
maxValue: 31
- label: "Read the global attribute: AttributeList"
diff --git a/src/app/tests/suites/certification/Test_TC_CC_2_2.yaml b/src/app/tests/suites/certification/Test_TC_CC_2_2.yaml
index 8ed35a01186c95..1633c8b1f41e04 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_2_2.yaml
@@ -39,7 +39,7 @@ tests:
verification: |
./chip-tool colorcontrol read current-hue 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
[1657908705.581609][2861:2861] CHIP:IM: Received Read request
[1657908705.581752][2861:2861] CHIP:DMG: ReadRequestMessage =
@@ -72,7 +72,7 @@ tests:
verification: |
./chip-tool colorcontrol read current-saturation 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
[1657908593.710273][2861:2861] CHIP:IM: Received Read request
[1657908593.710359][2861:2861] CHIP:DMG: ReadRequestMessage =
@@ -103,7 +103,7 @@ tests:
verification: |
./chip-tool colorcontrol read remaining-time 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
[1657908803.102070][2933:2933] CHIP:IM: Received Read request
[1657908803.102154][2933:2933] CHIP:DMG: ReadRequestMessage =
@@ -136,7 +136,7 @@ tests:
verification: |
./chip-tool colorcontrol read current-x 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
[1657908856.780574][2933:2933] CHIP:IM: Received Read request
[1657908856.780702][2933:2933] CHIP:DMG: ReadRequestMessage =
@@ -169,7 +169,8 @@ tests:
verification: |
./chip-tool colorcontrol read current-y 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657909305.413625][2933:2933] CHIP:IM: Received Read request
[1657909305.413743][2933:2933] CHIP:DMG: ReadRequestMessage =
@@ -204,7 +205,8 @@ tests:
verification: |
./chip-tool colorcontrol read drift-compensation 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an enum8 in TH(all-clusters-app) Logs:
+
[1657909433.948649][2933:2933] CHIP:IM: Received Read request
[1657909433.948766][2933:2933] CHIP:DMG: ReadRequestMessage =
@@ -239,7 +241,9 @@ tests:
verification: |
./chip-tool colorcontrol read compensation-text 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains a string in TH(all-clusters-app) Logs:
+
[1657909470.827379][2933:2933] CHIP:IM: Received Read request
[1657909470.827505][2933:2933] CHIP:DMG: ReadRequestMessage =
@@ -273,7 +277,8 @@ tests:
verification: |
./chip-tool colorcontrol read color-temperature 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657909522.420348][2977:2977] CHIP:IM: Received Read request
[1657909522.420471][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -306,7 +311,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-mode 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an enum8 in TH(all-clusters-app) Logs:
+
[1657909555.028998][2977:2977] CHIP:IM: Received Read request
[1657909555.029124][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -339,7 +346,9 @@ tests:
verification: |
./chip-tool colorcontrol read options 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an bitmap8 in TH(all-clusters-app) Logs:
+
[1657909576.774655][2977:2977] CHIP:IM: Received Read request
[1657909576.774796][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -372,7 +381,8 @@ tests:
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657909627.086489][2977:2977] CHIP:IM: Received Read request
[1657909627.086602][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -405,7 +415,9 @@ tests:
verification: |
./chip-tool colorcontrol read enhanced-color-mode 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an enum8 in TH(all-clusters-app) Logs:
+
[1657909652.217887][2977:2977] CHIP:IM: Received Read request
[1657909652.218015][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -438,7 +450,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-active 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
[1657909711.352753][2977:2977] CHIP:IM: Received Read request
[1657909711.352915][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -471,7 +485,7 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-direction 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
[1657909741.232136][2977:2977] CHIP:IM: Received Read request
[1657909741.232261][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -504,7 +518,8 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-time 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
[1657909771.649273][2977:2977] CHIP:IM: Received Read request
[1657909771.649413][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -539,7 +554,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-start-enhanced-hue 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657909997.529812][2977:2977] CHIP:IM: Received Read request
[1657909997.530002][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -574,7 +591,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-stored-enhanced-hue 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657910020.977065][2977:2977] CHIP:IM: Received Read request
[1657910020.977155][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -607,7 +626,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-capabilities 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an map16 in TH(all-clusters-app) Logs:
+
[1657910072.897195][2977:2977] CHIP:IM: Received Read request
[1657910072.897323][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -642,7 +663,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-temp-physical-min-mireds 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657910109.902989][2977:2977] CHIP:IM: Received Read request
[1657910109.903095][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -677,7 +700,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-temp-physical-max-mireds 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657910176.514563][2977:2977] CHIP:IM: Received Read request
[1657910176.514690][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -712,7 +737,9 @@ tests:
verification: |
./chip-tool colorcontrol read couple-color-temp-to-level-min-mireds 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657910205.278279][2977:2977] CHIP:IM: Received Read request
[1657910205.278421][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -747,7 +774,8 @@ tests:
verification: |
./chip-tool colorcontrol read start-up-color-temperature-mireds 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657910246.097315][2977:2977] CHIP:IM: Received Read request
[1657910246.097460][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -780,7 +808,8 @@ tests:
verification: |
./chip-tool colorcontrol read number-of-primaries 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
[1657910445.890552][2977:2977] CHIP:IM: Received Read request
[1657910445.890635][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -813,7 +842,9 @@ tests:
verification: |
./chip-tool colorcontrol read primary1x 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657910568.808716][2977:2977] CHIP:IM: Received Read request
[1657910568.808876][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -846,7 +877,9 @@ tests:
verification: |
./chip-tool colorcontrol read primary1y 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657910588.961223][2977:2977] CHIP:IM: Received Read request
[1657910588.961366][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -879,7 +912,9 @@ tests:
verification: |
./chip-tool colorcontrol read primary1intensity 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
[1657910622.925613][2977:2977] CHIP:IM: Received Read request
[1657910622.925739][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -912,7 +947,9 @@ tests:
verification: |
./chip-tool colorcontrol read primary2x 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657910659.885682][2977:2977] CHIP:IM: Received Read request
[1657910659.885821][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -945,7 +982,9 @@ tests:
verification: |
./chip-tool colorcontrol read primary2y 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
[1657910687.168648][2977:2977] CHIP:IM: Received Read request
[1657910687.168754][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -978,7 +1017,8 @@ tests:
verification: |
./chip-tool colorcontrol read primary2intensity 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
[1657910837.125032][2977:2977] CHIP:IM: Received Read request
[1657910837.125157][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -1011,7 +1051,8 @@ tests:
verification: |
./chip-tool colorcontrol read primary3x 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
CHIP:DMG: {
@@ -1036,7 +1077,8 @@ tests:
verification: |
./chip-tool colorcontrol read primary3y 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1062,7 +1104,7 @@ tests:
verification: |
./chip-tool colorcontrol read primary3intensity 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1088,7 +1130,9 @@ tests:
verification: |
./chip-tool colorcontrol read primary4x 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1114,7 +1158,9 @@ tests:
verification: |
./chip-tool colorcontrol read primary4y 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1140,7 +1186,8 @@ tests:
verification: |
./chip-tool colorcontrol read primary4intensity 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1166,7 +1213,7 @@ tests:
verification: |
./chip-tool colorcontrol read primary5x 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1192,7 +1239,8 @@ tests:
verification: |
./chip-tool colorcontrol read primary5y 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1218,7 +1266,9 @@ tests:
verification: |
./chip-tool colorcontrol read primary5intensity 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1244,7 +1294,8 @@ tests:
verification: |
./chip-tool colorcontrol read primary6x 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1270,7 +1321,8 @@ tests:
verification: |
./chip-tool colorcontrol read primary6y 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1296,7 +1348,9 @@ tests:
verification: |
./chip-tool colorcontrol read primary6intensity 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1322,7 +1376,9 @@ tests:
verification: |
./chip-tool colorcontrol read white-point-x 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1348,7 +1404,8 @@ tests:
verification: |
./chip-tool colorcontrol read white-point-y 1 1
- Verify on TH(all-clusters-app) log:
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1375,7 +1432,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-point-rx 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1402,7 +1461,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-point-ry 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1430,7 +1491,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-point-rintensity 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1457,7 +1520,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-point-gx 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1484,7 +1549,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-point-gy 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1512,7 +1579,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-point-gintensity 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1539,7 +1608,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-point-bx 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1566,7 +1637,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-point-by 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint16 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
@@ -1594,7 +1667,9 @@ tests:
verification: |
./chip-tool colorcontrol read color-point-bintensity 1 1
- Verify on TH(all-clusters-app) log:
+
+ Verify response contains an uint8 in TH(all-clusters-app) Logs:
+
CHIP:IM: Received Read request
CHIP:DMG: ReadRequestMessage =
diff --git a/src/app/tests/suites/certification/Test_TC_CC_3_2.yaml b/src/app/tests/suites/certification/Test_TC_CC_3_2.yaml
index 5ec62e14fd1454..a629614f4b3795 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_3_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_3_2.yaml
@@ -14,6 +14,9 @@
name: 25.3.2. [TC-CC-3.2] Hue Move functionality with server as DUT
+PICS:
+ - CC.S
+
config:
nodeId: 0x12344321
cluster: "Color Control"
diff --git a/src/app/tests/suites/certification/Test_TC_CC_3_3.yaml b/src/app/tests/suites/certification/Test_TC_CC_3_3.yaml
index f34c9bf733dc81..c3e2ad14f2714e 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_3_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_3_3.yaml
@@ -14,6 +14,9 @@
name: 25.3.3. [TC-CC-3.3] Hue Step functionality with server as DUT
+PICS:
+ - CC.S
+
config:
nodeId: 0x12344321
cluster: "Color Control"
diff --git a/src/app/tests/suites/certification/Test_TC_CC_3_4.yaml b/src/app/tests/suites/certification/Test_TC_CC_3_4.yaml
index 3882463b3106f6..eddc65458d3002 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_3_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_3_4.yaml
@@ -34,7 +34,7 @@ tests:
verification: |
./chip-tool colorcontrol move-to-hue 1 0 300 0 0 1 1
- Verify on TH(all-clusters-app) Log
+ Verify success response in TH(all-clusters-app) Log:
[1657911287.814194][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657911287.814246][2977:2977] CHIP:DMG: {
@@ -76,8 +76,7 @@ tests:
verification: |
./chip-tool colorcontrol read current-hue 1 1
- Verify on TH(all-clusters-app) Log
-
+ Verify response contains a CurrentHue value in TH(all-clusters-app) Logs:
[1657911327.184763][2977:2977] CHIP:IM: Received Read request
[1657911327.184901][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911327.184952][2977:2977] CHIP:DMG: {
@@ -109,7 +108,7 @@ tests:
verification: |
./chip-tool colorcontrol move-hue 1 10 0 0 1 1
- Verify on TH(all-clusters-app) log
+ Verify success response in TH(all-clusters-app) Log:
[1657911357.567908][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657911357.567957][2977:2977] CHIP:DMG: {
@@ -149,7 +148,8 @@ tests:
verification: |
./chip-tool colorcontrol read current-hue 1 1
- Verify on TH(all-clusters-app) log
+
+ Verify response contains a CurrentHue value in TH(all-clusters-app) Logs:
[1657911381.312873][2977:2977] CHIP:IM: Received Read request
[1657911381.312995][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -182,7 +182,8 @@ tests:
verification: |
./chip-tool colorcontrol step-hue 1 10 200 0 0 1 1
- Verify on TH(all-clusters-app) log
+
+ Verify success response in TH(all-clusters-app) Log:
[1657911412.480684][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657911412.480741][2977:2977] CHIP:DMG: {
@@ -223,7 +224,8 @@ tests:
PICS: CC.C.C02.Rsp && CC.C.A0000
verification: |
./chip-tool colorcontrol read current-hue 1 1
- Verify on TH(all-clusters-app) Log
+
+ Verify response contains a CurrentHue value in TH(all-clusters-app) Logs:
[1657911437.116353][2977:2977] CHIP:IM: Received Read request
[1657911437.116480][2977:2977] CHIP:DMG: ReadRequestMessage =
@@ -255,7 +257,8 @@ tests:
PICS: CC.C.C47.Rsp
verification: |
./chip-tool colorcontrol stop-move-step 0 0 1 1
- Verify on TH(all-clusters-app) log
+
+ Verify success response in TH(all-clusters-app) Log:
[1657911457.334435][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657911457.334464][2977:2977] CHIP:DMG: {
@@ -292,8 +295,8 @@ tests:
PICS: CC.C.C47.Rsp && CC.C.A0000
verification: |
./chip-tool colorcontrol read current-hue 1 1
- Verify on TH(all-clusters-app) Log
+ Verify response contains a CurrentHue value in TH(all-clusters-app) Logs:
[1657911437.116353][2977:2977] CHIP:IM: Received Read request
[1657911437.116480][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911437.116528][2977:2977] CHIP:DMG: {
diff --git a/src/app/tests/suites/certification/Test_TC_CC_4_1.yaml b/src/app/tests/suites/certification/Test_TC_CC_4_1.yaml
index 861d16be0b72aa..2f4fe4a27f5e9b 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_4_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_4_1.yaml
@@ -14,6 +14,9 @@
name: 25.3.5. [TC-CC-4.1] Saturation MoveTo functionality with server as DUT
+PICS:
+ - CC.S
+
config:
nodeId: 0x12344321
cluster: "Color Control"
diff --git a/src/app/tests/suites/certification/Test_TC_CC_4_2.yaml b/src/app/tests/suites/certification/Test_TC_CC_4_2.yaml
index 4f275574c0f43f..f338768af6aa88 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_4_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_4_2.yaml
@@ -14,6 +14,9 @@
name: 25.3.6. [TC-CC-4.2] Saturation Move functionality with server as DUT
+PICS:
+ - CC.S
+
config:
nodeId: 0x12344321
cluster: "Color Control"
diff --git a/src/app/tests/suites/certification/Test_TC_CC_4_3.yaml b/src/app/tests/suites/certification/Test_TC_CC_4_3.yaml
index e7b72f1ef8184b..f66cfa2afa84bc 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_4_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_4_3.yaml
@@ -14,6 +14,9 @@
name: 25.3.7. [TC-CC-4.3] Saturation Step functionality with server as DUT
+PICS:
+ - CC.S
+
config:
nodeId: 0x12344321
cluster: "Color Control"
diff --git a/src/app/tests/suites/certification/Test_TC_CC_4_4.yaml b/src/app/tests/suites/certification/Test_TC_CC_4_4.yaml
index f855351c446655..5de1f4e59a1f19 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_4_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_4_4.yaml
@@ -15,6 +15,9 @@
name:
25.3.8. [TC-CC-4.4] MoveToHueAndSaturation functionality with server as DUT
+PICS:
+ - CC.S
+
config:
nodeId: 0x12344321
cluster: "Color Control"
diff --git a/src/app/tests/suites/certification/Test_TC_CC_5_4.yaml b/src/app/tests/suites/certification/Test_TC_CC_5_4.yaml
index 0dc2c4ac9afd70..f9b24fd63fb975 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_5_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_5_4.yaml
@@ -34,7 +34,8 @@ tests:
verification: |
./chip-tool colorcontrol move-to-color 400 500 300 0 0 1 1
- Verify in TH(all-clusters-app) log:
+ Verify success response in TH(all-clusters-app) Log:
+
[1657911753.687856][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657911753.687913][2977:2977] CHIP:DMG: {
[1657911753.687961][2977:2977] CHIP:DMG: suppressResponse = false,
@@ -76,7 +77,7 @@ tests:
verification: |
./chip-tool colorcontrol read current-x 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a CurrentX value in TH(all-clusters-app) Logs:
[1657911771.965429][2977:2977] CHIP:IM: Received Read request
[1657911771.965509][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911771.965536][2977:2977] CHIP:DMG: {
@@ -104,8 +105,7 @@ tests:
"./chip-tool colorcontrol read current-y 1 1
-
- Verify in TH(all-clusters-app) log:
+ Verify response contains a CurrentY value in TH(all-clusters-app) Logs:
[1657911790.232595][2977:2977] CHIP:IM: Received Read request
[1657911790.232674][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911790.232700][2977:2977] CHIP:DMG: {
@@ -138,8 +138,7 @@ tests:
PICS: CC.C.C08.Rsp
verification: |
./chip-tool colorcontrol move-color 10 20 0 0 1 1
-
- Verify in TH(all-clusters-app) log:
+ Verify success response in TH(all-clusters-app) Log:
[1657911814.839535][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657911814.839586][2977:2977] CHIP:DMG: {
@@ -181,7 +180,7 @@ tests:
verification: |
./chip-tool colorcontrol read current-x 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a CurrentX value in TH(all-clusters-app) Logs:
[1657911771.965429][2977:2977] CHIP:IM: Received Read request
[1657911771.965509][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911771.965536][2977:2977] CHIP:DMG: {
@@ -209,8 +208,7 @@ tests:
"./chip-tool colorcontrol read current-y 1 1
-
- Verify in TH(all-clusters-app) log:
+ Verify response contains a CurrentY value in TH(all-clusters-app) Logs:
[1657911790.232595][2977:2977] CHIP:IM: Received Read request
[1657911790.232674][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911790.232700][2977:2977] CHIP:DMG: {
@@ -244,7 +242,7 @@ tests:
verification: |
./chip-tool colorcontrol step-color 100 100 200 0 0 1 1
- Verify in TH(all-clusters-app) log:
+ Verify success response in TH(all-clusters-app) Log:
[1657911853.249758][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657911853.249810][2977:2977] CHIP:DMG: {
[1657911853.249851][2977:2977] CHIP:DMG: suppressResponse = false,
@@ -286,7 +284,8 @@ tests:
verification: |
./chip-tool colorcontrol read current-x 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify response contains a CurrentX value in TH(all-clusters-app) Logs:
[1657911771.965429][2977:2977] CHIP:IM: Received Read request
[1657911771.965509][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911771.965536][2977:2977] CHIP:DMG: {
@@ -315,7 +314,7 @@ tests:
"./chip-tool colorcontrol read current-y 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a CurrentY value in TH(all-clusters-app) Logs:
[1657911790.232595][2977:2977] CHIP:IM: Received Read request
[1657911790.232674][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911790.232700][2977:2977] CHIP:DMG: {
@@ -349,7 +348,7 @@ tests:
verification: |
./chip-tool colorcontrol stop-move-step 0 0 1 1
- Verify in TH(all-clusters-app) log:
+ Verify success response in TH(all-clusters-app) Log:
[1657911876.005800][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657911876.005828][2977:2977] CHIP:DMG: {
@@ -389,7 +388,7 @@ tests:
verification: |
./chip-tool colorcontrol read current-x 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a CurrentX value in TH(all-clusters-app) Logs:
[1657911771.965429][2977:2977] CHIP:IM: Received Read request
[1657911771.965509][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911771.965536][2977:2977] CHIP:DMG: {
@@ -418,7 +417,7 @@ tests:
"./chip-tool colorcontrol read current-y 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a CurrentY value in TH(all-clusters-app) Logs:
[1657911790.232595][2977:2977] CHIP:IM: Received Read request
[1657911790.232674][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657911790.232700][2977:2977] CHIP:DMG: {
diff --git a/src/app/tests/suites/certification/Test_TC_CC_6_4.yaml b/src/app/tests/suites/certification/Test_TC_CC_6_4.yaml
index 2075de950248b2..19ec1699bb490f 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_6_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_6_4.yaml
@@ -39,7 +39,8 @@ tests:
verification: |
./chip-tool colorcontrol read color-temp-physical-min-mireds 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify response contains an ColorTempPhysicalMinMireds in TH(all-clusters-app) Logs:
[1658215472.478274][3413:3413] CHIP:IM: Received Read request
[1658215472.478456][3413:3413] CHIP:DMG: ReadRequestMessage =
[1658215472.478527][3413:3413] CHIP:DMG: {
@@ -67,7 +68,8 @@ tests:
./chip-tool colorcontrol read color-temp-physical-max-mireds 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify response contains an ColorTempPhysicalMaxMireds in TH(all-clusters-app) Logs:
[1658215497.166720][3413:3413] CHIP:IM: Received Read request
[1658215497.166886][3413:3413] CHIP:DMG: ReadRequestMessage =
[1658215497.166949][3413:3413] CHIP:DMG: {
@@ -98,7 +100,8 @@ tests:
verification: |
./chip-tool colorcontrol move-to-color-temperature 150 300 0 0 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify response contains an ColorTemperatureMireds in TH(all-clusters-app) Logs:
[1657911906.102478][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657911906.102603][2977:2977] CHIP:DMG: {
[1657911906.102633][2977:2977] CHIP:DMG: suppressResponse = false,
@@ -139,22 +142,23 @@ tests:
verification: |
./chip-tool colorcontrol read color-temperature 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify response contains an ColorTemperatureMireds in TH(all-clusters-app) Logs:
[1659955633.975562][2718:2718] CHIP:DMG: ReadRequestMessage =
[1659955633.975617][2718:2718] CHIP:DMG: {
- [1659955633.975650][2718:2718] CHIP:DMG: AttributePathIBs =
- [1659955633.975689][2718:2718] CHIP:DMG: [
- [1659955633.975738][2718:2718] CHIP:DMG: AttributePathIB =
- [1659955633.975779][2718:2718] CHIP:DMG: {
- [1659955633.975834][2718:2718] CHIP:DMG: Endpoint = 0x1,
- [1659955633.975894][2718:2718] CHIP:DMG: Cluster = 0x300,
- [1659955633.975941][2718:2718] CHIP:DMG: Attribute = 0x0000_0007,
- [1659955633.975998][2718:2718] CHIP:DMG: }
+ [1659955633.975650][2718:2718] CHIP:DMG: AttributePathIBs =
+ [1659955633.975689][2718:2718] CHIP:DMG: [
+ [1659955633.975738][2718:2718] CHIP:DMG: AttributePathIB =
+ [1659955633.975779][2718:2718] CHIP:DMG: {
+ [1659955633.975834][2718:2718] CHIP:DMG: Endpoint = 0x1,
+ [1659955633.975894][2718:2718] CHIP:DMG: Cluster = 0x300,
+ [1659955633.975941][2718:2718] CHIP:DMG: Attribute = 0x0000_0007,
+ [1659955633.975998][2718:2718] CHIP:DMG: }
[1659955633.976040][2718:2718] CHIP:DMG:
- [1659955633.976090][2718:2718] CHIP:DMG: ],
+ [1659955633.976090][2718:2718] CHIP:DMG: ],
[1659955633.976132][2718:2718] CHIP:DMG:
- [1659955633.976183][2718:2718] CHIP:DMG: isFabricFiltered = true,
- [1659955633.976221][2718:2718] CHIP:DMG: InteractionModelRevision = 1
+ [1659955633.976183][2718:2718] CHIP:DMG: isFabricFiltered = true,
+ [1659955633.976221][2718:2718] CHIP:DMG: InteractionModelRevision = 1
[1659955633.976268][2718:2718] CHIP:DMG: },
[1659955633.976388][2718:2718] CHIP:DMG: IM RH moving to [GeneratingReports]
[1659955633.976525][2718:2718] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
@@ -170,37 +174,39 @@ tests:
./chip-tool colorcontrol move-color-temperature 1 16319 0 65279 0 0 1 1
- Verify in TH(all-clusters-app) log:
+
+
+ Verify response contains an ColorTemperatureMireds in TH(all-clusters-app) Logs:
[1659955779.460043][2718:2718] CHIP:DMG: InvokeRequestMessage =
[1659955779.460071][2718:2718] CHIP:DMG: {
- [1659955779.460095][2718:2718] CHIP:DMG: suppressResponse = false,
- [1659955779.460122][2718:2718] CHIP:DMG: timedRequest = false,
- [1659955779.460147][2718:2718] CHIP:DMG: InvokeRequests =
- [1659955779.460178][2718:2718] CHIP:DMG: [
- [1659955779.460202][2718:2718] CHIP:DMG: CommandDataIB =
- [1659955779.460230][2718:2718] CHIP:DMG: {
- [1659955779.460263][2718:2718] CHIP:DMG: CommandPathIB =
- [1659955779.460300][2718:2718] CHIP:DMG: {
- [1659955779.460334][2718:2718] CHIP:DMG: EndpointId = 0x1,
- [1659955779.460372][2718:2718] CHIP:DMG: ClusterId = 0x300,
- [1659955779.460409][2718:2718] CHIP:DMG: CommandId = 0x4b,
- [1659955779.460444][2718:2718] CHIP:DMG: },
+ [1659955779.460095][2718:2718] CHIP:DMG: suppressResponse = false,
+ [1659955779.460122][2718:2718] CHIP:DMG: timedRequest = false,
+ [1659955779.460147][2718:2718] CHIP:DMG: InvokeRequests =
+ [1659955779.460178][2718:2718] CHIP:DMG: [
+ [1659955779.460202][2718:2718] CHIP:DMG: CommandDataIB =
+ [1659955779.460230][2718:2718] CHIP:DMG: {
+ [1659955779.460263][2718:2718] CHIP:DMG: CommandPathIB =
+ [1659955779.460300][2718:2718] CHIP:DMG: {
+ [1659955779.460334][2718:2718] CHIP:DMG: EndpointId = 0x1,
+ [1659955779.460372][2718:2718] CHIP:DMG: ClusterId = 0x300,
+ [1659955779.460409][2718:2718] CHIP:DMG: CommandId = 0x4b,
+ [1659955779.460444][2718:2718] CHIP:DMG: },
[1659955779.460477][2718:2718] CHIP:DMG:
- [1659955779.460504][2718:2718] CHIP:DMG: CommandFields =
- [1659955779.460539][2718:2718] CHIP:DMG: {
- [1659955779.460572][2718:2718] CHIP:DMG: 0x0 = 1,
- [1659955779.460608][2718:2718] CHIP:DMG: 0x1 = 16319,
- [1659955779.460646][2718:2718] CHIP:DMG: 0x2 = 0,
- [1659955779.460683][2718:2718] CHIP:DMG: 0x3 = 65279,
- [1659955779.460717][2718:2718] CHIP:DMG: 0x4 = 0,
- [1659955779.460755][2718:2718] CHIP:DMG: 0x5 = 0,
- [1659955779.460791][2718:2718] CHIP:DMG: },
- [1659955779.460820][2718:2718] CHIP:DMG: },
+ [1659955779.460504][2718:2718] CHIP:DMG: CommandFields =
+ [1659955779.460539][2718:2718] CHIP:DMG: {
+ [1659955779.460572][2718:2718] CHIP:DMG: 0x0 = 1,
+ [1659955779.460608][2718:2718] CHIP:DMG: 0x1 = 16319,
+ [1659955779.460646][2718:2718] CHIP:DMG: 0x2 = 0,
+ [1659955779.460683][2718:2718] CHIP:DMG: 0x3 = 65279,
+ [1659955779.460717][2718:2718] CHIP:DMG: 0x4 = 0,
+ [1659955779.460755][2718:2718] CHIP:DMG: 0x5 = 0,
+ [1659955779.460791][2718:2718] CHIP:DMG: },
+ [1659955779.460820][2718:2718] CHIP:DMG: },
[1659955779.460851][2718:2718] CHIP:DMG:
- [1659955779.460875][2718:2718] CHIP:DMG: ],
+ [1659955779.460875][2718:2718] CHIP:DMG: ],
[1659955779.460907][2718:2718] CHIP:DMG:
- [1659955779.460931][2718:2718] CHIP:DMG: InteractionModelRevision = 1
+ [1659955779.460931][2718:2718] CHIP:DMG: InteractionModelRevision = 1
[1659955779.460954][2718:2718] CHIP:DMG: },
[1659955779.461068][2718:2718] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=o
[1659955779.461110][2718:2718] CHIP:DMG: AccessControl: allowed
@@ -218,22 +224,24 @@ tests:
verification: |
./chip-tool colorcontrol read color-temperature 1 1
- Verify in TH(all-clusters-app) log:
+
+
+ Verify response contains an ColorTemperatureMireds in TH(all-clusters-app) Logs:
[1659955633.975562][2718:2718] CHIP:DMG: ReadRequestMessage =
[1659955633.975617][2718:2718] CHIP:DMG: {
- [1659955633.975650][2718:2718] CHIP:DMG: AttributePathIBs =
- [1659955633.975689][2718:2718] CHIP:DMG: [
- [1659955633.975738][2718:2718] CHIP:DMG: AttributePathIB =
- [1659955633.975779][2718:2718] CHIP:DMG: {
- [1659955633.975834][2718:2718] CHIP:DMG: Endpoint = 0x1,
- [1659955633.975894][2718:2718] CHIP:DMG: Cluster = 0x300,
- [1659955633.975941][2718:2718] CHIP:DMG: Attribute = 0x0000_0007,
- [1659955633.975998][2718:2718] CHIP:DMG: }
+ [1659955633.975650][2718:2718] CHIP:DMG: AttributePathIBs =
+ [1659955633.975689][2718:2718] CHIP:DMG: [
+ [1659955633.975738][2718:2718] CHIP:DMG: AttributePathIB =
+ [1659955633.975779][2718:2718] CHIP:DMG: {
+ [1659955633.975834][2718:2718] CHIP:DMG: Endpoint = 0x1,
+ [1659955633.975894][2718:2718] CHIP:DMG: Cluster = 0x300,
+ [1659955633.975941][2718:2718] CHIP:DMG: Attribute = 0x0000_0007,
+ [1659955633.975998][2718:2718] CHIP:DMG: }
[1659955633.976040][2718:2718] CHIP:DMG:
- [1659955633.976090][2718:2718] CHIP:DMG: ],
+ [1659955633.976090][2718:2718] CHIP:DMG: ],
[1659955633.976132][2718:2718] CHIP:DMG:
- [1659955633.976183][2718:2718] CHIP:DMG: isFabricFiltered = true,
- [1659955633.976221][2718:2718] CHIP:DMG: InteractionModelRevision = 1
+ [1659955633.976183][2718:2718] CHIP:DMG: isFabricFiltered = true,
+ [1659955633.976221][2718:2718] CHIP:DMG: InteractionModelRevision = 1
[1659955633.976268][2718:2718] CHIP:DMG: },
[1659955633.976388][2718:2718] CHIP:DMG: IM RH moving to [GeneratingReports]
[1659955633.976525][2718:2718] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
@@ -248,7 +256,9 @@ tests:
verification: |
./chip-tool colorcontrol step-color-temperature 1 32639 200 0 65279 0 0 1 1
- Verify in TH(all-clusters-app) log:
+
+
+ Verify the all fields are within their allowed bounds in CommandFields on TH(all-clusters-app) Logs:
[1659955888.144223][2718:2718] CHIP:DMG: InvokeRequestMessage =
[1659955888.144251][2718:2718] CHIP:DMG: {
@@ -294,11 +304,10 @@ tests:
- label:
"DUT reads ColorTemperatureMired attribute from TH (potentially
multiple times)"
- PICS: CC.C.C4c.Rsp && CC.C.A0007
+ PICS: CC.C.C4c.Rsp & CC.C.A0007
verification: |
./chip-tool colorcontrol read color-temperature 1 1
-
- Verify in TH(all-clusters-app) log:
+ Verify response contains an ColorTemperatureMireds in TH(all-clusters-app) Logs:
[1659955633.975562][2718:2718] CHIP:DMG: ReadRequestMessage =
[1659955633.975617][2718:2718] CHIP:DMG: {
[1659955633.975650][2718:2718] CHIP:DMG: AttributePathIBs =
@@ -327,7 +336,8 @@ tests:
PICS: CC.C.C47.Rsp
verification: |
./chip-tool colorcontrol stop-move-step 0 0 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify the all fields are within their allowed bounds in CommandFields on TH(all-clusters-app) Logs:
[1659955999.857777][2718:2718] CHIP:DMG: InvokeRequestMessage =
@@ -373,7 +383,7 @@ tests:
verification: |
./chip-tool colorcontrol read color-temperature 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains an ColorTemperatureMireds in TH(all-clusters-app) Logs:
[1659955633.975562][2718:2718] CHIP:DMG: ReadRequestMessage =
[1659955633.975617][2718:2718] CHIP:DMG: {
[1659955633.975650][2718:2718] CHIP:DMG: AttributePathIBs =
@@ -397,3 +407,13 @@ tests:
[1659955633.976650][2718:2718] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
[1659955633.976696][2718:2718] CHIP:DMG: AccessControl: allowed
disabled: true
+
+ - label: ""
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: ""
+ verification: |
+ verification step to be updated.
+ disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_CC_7_5.yaml b/src/app/tests/suites/certification/Test_TC_CC_7_5.yaml
index 9e45d0bfb2c66f..8cccb5a8a4e54d 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_7_5.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_7_5.yaml
@@ -34,7 +34,7 @@ tests:
verification: |
./chip-tool colorcontrol enhanced-move-to-hue 1000 3 200 0 0 1 1
- Verify in TH(all-clusters-app) log:
+ Verify success response in TH(all-clusters-app) Log:
[1657912045.703432][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657912045.703462][2977:2977] CHIP:DMG: {
[1657912045.703485][2977:2977] CHIP:DMG: suppressResponse = false,
@@ -76,7 +76,8 @@ tests:
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify response contains a EnhancedCurrentHue value in TH(all-clusters-app) Logs:
[1657912064.296156][2977:2977] CHIP:IM: Received Read request
[1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657912064.296295][2977:2977] CHIP:DMG: {
@@ -108,7 +109,8 @@ tests:
verification: |
./chip-tool colorcontrol enhanced-move-hue 0 100 0 0 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify success response in TH(all-clusters-app) Log:
[1657912085.345044][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657912085.345072][2977:2977] CHIP:DMG: {
@@ -149,7 +151,7 @@ tests:
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a EnhancedCurrentHue value in TH(all-clusters-app) Logs:
[1657912064.296156][2977:2977] CHIP:IM: Received Read request
[1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657912064.296295][2977:2977] CHIP:DMG: {
@@ -181,7 +183,7 @@ tests:
verification: |
./chip-tool colorcontrol enhanced-step-hue 1 1000 200 0 0 1 1
- Verify in TH(all-clusters-app) log:
+ Verify success response in TH(all-clusters-app) Log:
[1657912123.677693][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657912123.677720][2977:2977] CHIP:DMG: {
[1657912123.677742][2977:2977] CHIP:DMG: suppressResponse = false,
@@ -223,7 +225,7 @@ tests:
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a EnhancedCurrentHue value in TH(all-clusters-app) Logs:
[1657912064.296156][2977:2977] CHIP:IM: Received Read request
[1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657912064.296295][2977:2977] CHIP:DMG: {
@@ -255,7 +257,8 @@ tests:
verification: |
./chip-tool colorcontrol enhanced-move-to-hue-and-saturation 2500 100 200 0 0 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify success response in TH(all-clusters-app) Log:
[1657912153.500024][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657912153.500080][2977:2977] CHIP:DMG: {
[1657912153.500108][2977:2977] CHIP:DMG: suppressResponse = false,
@@ -297,7 +300,8 @@ tests:
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify response contains a EnhancedCurrentHue value in TH(all-clusters-app) Logs:
[1657912064.296156][2977:2977] CHIP:IM: Received Read request
[1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657912064.296295][2977:2977] CHIP:DMG: {
@@ -329,7 +333,8 @@ tests:
verification: |
./chip-tool colorcontrol stop-move-step 0 0 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify success response in TH(all-clusters-app) Log:
[1657912172.988756][2977:2977] CHIP:DMG: InvokeRequestMessage =
[1657912172.988782][2977:2977] CHIP:DMG: {
[1657912172.988805][2977:2977] CHIP:DMG: suppressResponse = false,
@@ -367,7 +372,8 @@ tests:
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify response contains a EnhancedCurrentHue value in TH(all-clusters-app) Logs:
[1657912064.296156][2977:2977] CHIP:IM: Received Read request
[1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
[1657912064.296295][2977:2977] CHIP:DMG: {
diff --git a/src/app/tests/suites/certification/Test_TC_CC_9_4.yaml b/src/app/tests/suites/certification/Test_TC_CC_9_4.yaml
index e91449eaab5604..4a83af9b79a42d 100644
--- a/src/app/tests/suites/certification/Test_TC_CC_9_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CC_9_4.yaml
@@ -34,7 +34,7 @@ tests:
verification: |
./chip-tool colorcontrol color-loop-set 15 0 0 30 160 0 0 1 1
- Verify in TH(all-clusters-app) log:
+ Verify success response in TH(all-clusters-app) Log:
[1657912387.432732][3126:3126] CHIP:DMG: InvokeRequestMessage =
[1657912387.432781][3126:3126] CHIP:DMG: {
[1657912387.432823][3126:3126] CHIP:DMG: suppressResponse = false,
@@ -76,7 +76,7 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-active 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a value consistent in TH(all-clusters-app) Logs:
[1657912416.547714][3126:3126] CHIP:IM: Received Read request
[1657912416.547842][3126:3126] CHIP:DMG: ReadRequestMessage =
[1657912416.547890][3126:3126] CHIP:DMG: {
@@ -108,7 +108,7 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-direction 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a value consistent in TH(all-clusters-app) Logs:
[1657912446.661818][3126:3126] CHIP:IM: Received Read request
[1657912446.661940][3126:3126] CHIP:DMG: ReadRequestMessage =
[1657912446.661989][3126:3126] CHIP:DMG: {
@@ -139,8 +139,7 @@ tests:
PICS: CC.C.A4004
verification: |
./chip-tool colorcontrol read color-loop-time 1 1
-
- Verify in TH(all-clusters-app) log:
+ Verify response contains a value consistent in TH(all-clusters-app) Logs:
[1657912469.590293][3126:3126] CHIP:IM: Received Read request
[1657912469.590419][3126:3126] CHIP:DMG: ReadRequestMessage =
[1657912469.590466][3126:3126] CHIP:DMG: {
@@ -171,8 +170,7 @@ tests:
PICS: CC.C.A4005
verification: |
./chip-tool colorcontrol read color-loop-start-enhanced-hue 1 1
-
- Verify in TH(all-clusters-app) log:
+ Verify response contains a value consistent in TH(all-clusters-app) Logs:
[1657912490.104534][3126:3126] CHIP:IM: Received Read request
[1657912490.104664][3126:3126] CHIP:DMG: ReadRequestMessage =
[1657912490.104713][3126:3126] CHIP:DMG: {
@@ -205,23 +203,22 @@ tests:
PICS: CC.C.A4000
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
-
- Verify in TH(all-clusters-app) log:
+ Verify response contains a value consistent in TH(all-clusters-app) Logs:
[1659960576.917953][2718:2718] CHIP:DMG: ReadRequestMessage =
[1659960576.917989][2718:2718] CHIP:DMG: {
- [1659960576.918016][2718:2718] CHIP:DMG: AttributePathIBs =
- [1659960576.918051][2718:2718] CHIP:DMG: [
- [1659960576.918084][2718:2718] CHIP:DMG: AttributePathIB =
- [1659960576.918121][2718:2718] CHIP:DMG: {
- [1659960576.918159][2718:2718] CHIP:DMG: Endpoint = 0x1,
- [1659960576.918206][2718:2718] CHIP:DMG: Cluster = 0x300,
- [1659960576.918249][2718:2718] CHIP:DMG: Attribute = 0x0000_4000,
- [1659960576.918287][2718:2718] CHIP:DMG: }
+ [1659960576.918016][2718:2718] CHIP:DMG: AttributePathIBs =
+ [1659960576.918051][2718:2718] CHIP:DMG: [
+ [1659960576.918084][2718:2718] CHIP:DMG: AttributePathIB =
+ [1659960576.918121][2718:2718] CHIP:DMG: {
+ [1659960576.918159][2718:2718] CHIP:DMG: Endpoint = 0x1,
+ [1659960576.918206][2718:2718] CHIP:DMG: Cluster = 0x300,
+ [1659960576.918249][2718:2718] CHIP:DMG: Attribute = 0x0000_4000,
+ [1659960576.918287][2718:2718] CHIP:DMG: }
[1659960576.918325][2718:2718] CHIP:DMG:
- [1659960576.918359][2718:2718] CHIP:DMG: ],
+ [1659960576.918359][2718:2718] CHIP:DMG: ],
[1659960576.918397][2718:2718] CHIP:DMG:
- [1659960576.918432][2718:2718] CHIP:DMG: isFabricFiltered = true,
- [1659960576.918466][2718:2718] CHIP:DMG: InteractionModelRevision = 1
+ [1659960576.918432][2718:2718] CHIP:DMG: isFabricFiltered = true,
+ [1659960576.918466][2718:2718] CHIP:DMG: InteractionModelRevision = 1
[1659960576.918498][2718:2718] CHIP:DMG: },
[1659960576.918604][2718:2718] CHIP:DMG: IM RH moving to [GeneratingReports]
[1659960576.918724][2718:2718] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
@@ -233,7 +230,7 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-active 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a Color Loop activated in TH(all-clusters-app) Logs:
[1657912750.645121][3126:3126] CHIP:IM: Received Read request
[1657912750.645210][3126:3126] CHIP:DMG: ReadRequestMessage =
@@ -262,7 +259,7 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-stored-enhanced-hue 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a value same as EnhencedCurrentHue in TH(all-clusters-app) Logs:
[1657912783.463733][3126:3126] CHIP:IM: Received Read request
[1657912783.463816][3126:3126] CHIP:DMG: ReadRequestMessage =
[1657912783.463844][3126:3126] CHIP:DMG: {
@@ -290,8 +287,7 @@ tests:
PICS: CC.C.A4000
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
-
- Verify in TH(all-clusters-app) log:
+ Verify response contains EnhencedCurrentHue value in TH(all-clusters-app) Logs:
[1657912801.027600][3126:3126] CHIP:IM: Received Read request
[1657912801.027717][3126:3126] CHIP:DMG: ReadRequestMessage =
[1657912801.027761][3126:3126] CHIP:DMG: {
@@ -321,7 +317,7 @@ tests:
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains EnhencedCurrentHue value in TH(all-clusters-app) Logs:
[1657912801.027600][3126:3126] CHIP:IM: Received Read request
[1657912801.027717][3126:3126] CHIP:DMG: ReadRequestMessage =
[1657912801.027761][3126:3126] CHIP:DMG: {
@@ -351,7 +347,7 @@ tests:
verification: |
./chip-tool colorcontrol color-loop-set 1 0 0 0 0 0 0 1 1
- Verify in TH(all-clusters-app) log:
+ Verify success response in TH(all-clusters-app) Log:
[1657912615.862118][3126:3126] CHIP:DMG: InvokeRequestMessage =
[1657912615.862168][3126:3126] CHIP:DMG: {
@@ -394,7 +390,7 @@ tests:
verification: |
./chip-tool colorcontrol read color-loop-active 1 1
- Verify in TH(all-clusters-app) log:
+ Verify response contains a ColorLoop value in TH(all-clusters-app) Logs:
[1657912416.547714][3126:3126] CHIP:IM: Received Read request
[1657912416.547842][3126:3126] CHIP:DMG: ReadRequestMessage =
[1657912416.547890][3126:3126] CHIP:DMG: {
@@ -426,7 +422,8 @@ tests:
verification: |
./chip-tool colorcontrol read enhanced-current-hue 1 1
- Verify in TH(all-clusters-app) log:
+
+ Verify response contains a ColorLoop value in TH(all-clusters-app) Logs:
[1657912801.027600][3126:3126] CHIP:IM: Received Read request
[1657912801.027717][3126:3126] CHIP:DMG: ReadRequestMessage =
[1657912801.027761][3126:3126] CHIP:DMG: {
diff --git a/src/app/tests/suites/certification/Test_TC_CGEN_2_2.yaml b/src/app/tests/suites/certification/Test_TC_CGEN_2_2.yaml
index 2a051a0531c254..1660f93e10be43 100644
--- a/src/app/tests/suites/certification/Test_TC_CGEN_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CGEN_2_2.yaml
@@ -30,7 +30,7 @@ tests:
numTrustedRootsOriginal"
verification: |
./chip-tool operationalcredentials read trusted-root-certificates 1 0
- On TH1 verify that TH reads TrustedRootCertificates entries from DUT
+ On TH1 verify the TrustedRootCertificates entries from DUT
[1658482014.176273][26852:26857] CHIP:DMG: }
[1658482014.176359][26852:26857] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0004 DataVersion: 527687668
@@ -45,7 +45,7 @@ tests:
PICS: CGEN.S.A0001
verification: |
./chip-tool generalcommissioning read basic-commissioning-info 1 0
- On TH1 verify that TH reads BasicCommissioningInfo attribute from DUT
+ On TH1 verify the BasicCommissioningInfo attribute from DUT
[1658482413.950617][27013:27018] CHIP:DMG: }
[1658482413.950753][27013:27018] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Attribute 0x0000_0001 DataVersion: 2195123768
@@ -63,7 +63,7 @@ tests:
PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
verification: |
./chip-tool generalcommissioning arm-fail-safe 900 1 1 0
- On TH1 verify that TH reads ArmFailSafe command from DUT
+ On TH1 verify the ArmFailSafe command from DUT
[1658482454.092676][27036:27041] CHIP:DMG: },
[1658482454.092739][27036:27041] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
@@ -81,7 +81,7 @@ tests:
verification: |
./chip-tool generalcommissioning read breadcrumb 1 0
- On TH1 Verify that the breadcrumb attribute value
+ On TH1 Verify the breadcrumb attribute value
[1658482504.991161][27058:27064] CHIP:DMG: }
[1658482504.991205][27058:27064] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Attribute 0x0000_0000 DataVersion: 2195123769
[1658482504.991215][27058:27064] CHIP:TOO: Breadcrumb: 1
@@ -100,8 +100,9 @@ tests:
Once build completes
3. cd out/debug
4. ./chip-cert gen-cert --type r --subject-chip-id CACACACA00000001 --valid-from "2020-10-15 14:23:43" --lifetime 7305 --out-key Chip-Root-Key.txt --out Chip-Root-Cert.txt --out-format chip-hex
- 5. cat Chip-Root-Key.txt
+ 5. cat Chip-Root-Cert.txt
+ While adding new add-trusted-root-certificate please use the above generated new root key
./chip-tool operationalcredentials add-trusted-root-certificate hex:1530010828c376ebc17f21512402013703271401000000cacacaca182604ef171b2726056eb5b94c3706271401000000cacacaca182407012408013009410452c19fd9d329a738fd65722a8309fa68bcaa9ffe87d8114b802c922e5066d0b2f0573b89b38bf98fc9c424ab8ffdabcb18d42e623d82a02d0ca0c062ccadb4bc370a350129011824026030041457934de5405e9a40eacb86ee647e583141ae78f430051457934de5405e9a40eacb86ee647e583141ae78f418300b40a0b0d57bddbc7bcf44480a8b7bd0231d54ccacd68d90efb67b7aa3206adbd268725092992a0388c8e934504178613c5b932d422eed7463f38fd82aaa429b574a18 1 0
@@ -120,7 +121,7 @@ tests:
Operational Credentials cluster"
verification: |
./chip-tool operationalcredentials read trusted-root-certificates 1 0
- On TH1 verify that TrustedRootCertificates entries from DUT
+ On TH1 verify the TrustedRootCertificates entries from DUT
[1658482718.809139][27144:27149] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0004 DataVersion: 527687668
[1658482718.809271][27144:27149] CHIP:TOO: TrustedRootCertificates: 2 entries
[1658482718.809327][27144:27149] CHIP:TOO: [1]: 1530010100240201370324140018260480228127260580254D3A370624140018240701240801300941045B7F0549925832A9A1294607ADC4695EA3477D3DC9E584431F53A60FC57629C6A616814389C479D3E059D931600F62CA328087462582A350AD015B32756DDC69370A3501290118240260300414A1BBCB2500D57101023ACB4AFD7EBD4FC0487AF3300514A1BBCB2500D57101023ACB4AFD7EBD4FC0487AF318300B40E878725378AEA74A5F6CB6267CB9F7ACD0DACF26741FB24356379D850DD5F23A746281C845FD76D89E97AB188E9BF8A98047B43E3E868A5A8B8E50BAE62F116F18
@@ -133,7 +134,7 @@ tests:
"TH1 waits for PIXIT.CGEN.FailsafeExpiryLengthSeconds to ensure the
failsafe timer has expired"
verification: |
- The expiry length is mentioned in above step as 900 secs so wait till 60secs and proced for next step
+ The expiry length is mentioned in above step as 900 secs so wait till 900secs and proced for next step
disabled: true
- label:
@@ -141,7 +142,7 @@ tests:
Operational Credentials cluster"
verification: |
./chip-tool operationalcredentials read trusted-root-certificates 1 0
- On TH1 verify that TrustedRootCertificates entries from DUT
+ On TH1 verify the TrustedRootCertificates entries from DUT
[1658483361.121153][27343:27348] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0004 DataVersion: 527687668
[1658483361.121212][27343:27348] CHIP:TOO: TrustedRootCertificates: 1 entries
[1658483361.121257][27343:27348] CHIP:TOO: [1]: 1530010100240201370324140018260480228127260580254D3A370624140018240701240801300941045B7F0549925832A9A1294607ADC4695EA3477D3DC9E584431F53A60FC57629C6A616814389C479D3E059D931600F62CA328087462582A350AD015B32756DDC69370A3501290118240260300414A1BBCB2500D57101023ACB4AFD7EBD4FC0487AF3300514A1BBCB2500D57101023ACB4AFD7EBD4FC0487AF318300B40E878725378AEA74A5F6CB6267CB9F7ACD0DACF26741FB24356379D850DD5F23A746281C845FD76D89E97AB188E9BF8A98047B43E3E868A5A8B8E50BAE62F116F18
@@ -153,7 +154,7 @@ tests:
verification: |
./chip-tool generalcommissioning read breadcrumb 1 0
- On TH1 Verify that the breadcrumb attribute value
+ On TH1 Verify the breadcrumb attribute value
[1658483428.627422][27375:27380] CHIP:DMG: }
[1658483428.627566][27375:27380] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Attribute 0x0000_0000 DataVersion: 2195123770
[1658483428.627610][27375:27380] CHIP:TOO: Breadcrumb: 0
@@ -163,6 +164,51 @@ tests:
- label: "TH1 repeats steps 3 through 5"
verification: |
TH1 repeats steps 3 through 5
+
+ To repeat Step 3 please send below mentioned command
+ ./chip-tool generalcommissioning arm-fail-safe 900 1 1 0
+ On TH1 verify that TH reads ArmFailSafe command from DUT
+
+ [1658482454.092676][27036:27041] CHIP:DMG: },
+ [1658482454.092739][27036:27041] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
+ [1658482454.092777][27036:27041] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0001
+ [1658482454.092821][27036:27041] CHIP:TOO: ArmFailSafeResponse: {
+ [1658482454.092853][27036:27041] CHIP:TOO: errorCode: 0
+ [1658482454.092866][27036:27041] CHIP:TOO: debugText:
+ [1658482454.092878][27036:27041] CHIP:TOO: }
+ [1658482454.092910][27036:27041] CHIP:DMG: ICR moving to [AwaitingDe]
+ [1658482454.092955][27036:27041] CHIP:EM: Sending Standalone Ack for MessageCounter:147679912 on exchange 8754i
+
+ To repeat Step 4 please send below mentioned command
+ ./chip-tool generalcommissioning read breadcrumb 1 0
+
+ On TH1 Verify that the breadcrumb attribute value
+ [1658482504.991161][27058:27064] CHIP:DMG: }
+ [1658482504.991205][27058:27064] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Attribute 0x0000_0000 DataVersion: 2195123769
+ [1658482504.991215][27058:27064] CHIP:TOO: Breadcrumb: 1
+ [1658482504.991243][27058:27064] CHIP:EM: Sending Standalone Ack for MessageCounter:52534281 on exchange 8370i
+
+ To repeat Step 5 please send below mentioned command
+ To generate TrustedRootCertificate, need to buld chip-cert in connectedhomeip by giving below mentioned commands
+ 1. gn gen --check out/debug
+ 2. ninja -v -C out/debug chip-cert
+ Once build completes
+ 3. cd out/debug
+ 4. ./chip-cert gen-cert --type r --subject-chip-id CACACACA00000001 --valid-from ""2020-10-15 14:23:43"" --lifetime 7305 --out-key Chip-Root-Key.txt --out Chip-Root-Cert.txt --out-format chip-hex
+ 5. cat Chip-Root-Cert.txt
+
+ While adding new add-trusted-root-certificate please use the above generated new root key
+
+ ./chip-tool operationalcredentials add-trusted-root-certificate hex:1530010828c376ebc17f21512402013703271401000000cacacaca182604ef171b2726056eb5b94c3706271401000000cacacaca182407012408013009410452c19fd9d329a738fd65722a8309fa68bcaa9ffe87d8114b802c922e5066d0b2f0573b89b38bf98fc9c424ab8ffdabcb18d42e623d82a02d0ca0c062ccadb4bc370a350129011824026030041457934de5405e9a40eacb86ee647e583141ae78f430051457934de5405e9a40eacb86ee647e583141ae78f418300b40a0b0d57bddbc7bcf44480a8b7bd0231d54ccacd68d90efb67b7aa3206adbd268725092992a0388c8e934504178613c5b932d422eed7463f38fd82aaa429b574a18 1 0
+
+
+ on TH1, Verify that the DUT responds with SUCCESS
+
+
+ [1658482609.069728][27095:27100] CHIP:DMG: InteractionModelRevision = 1
+ [1658482609.069733][27095:27100] CHIP:DMG: },
+ [1658482609.069760][27095:27100] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003E Command=0x0000_000B Status=0x0
+ [1658482609.069779][27095:27100] CHIP:DMG: ICR moving to [AwaitingDe]
disabled: true
- label:
@@ -171,7 +217,7 @@ tests:
PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
verification: |
./chip-tool generalcommissioning arm-fail-safe 0 1 1 0
- On TH1 verify that ArmFailSafe command from DUT
+ On TH1 verify the ArmFailSafeResponse with ErrorCode as "OK"(0) and DebugText argument is of type string with max length 512 or empty from DUT
[1658483503.637026][27397:27402] CHIP:DMG: },
[1658483503.637054][27397:27402] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
[1658483503.637074][27397:27402] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0001
@@ -186,6 +232,21 @@ tests:
- label: "Repeat steps 8 through 9"
verification: |
Repeat steps 8 through 9
+ To repeat Step 8 please send below mentioned command
+ ./chip-tool operationalcredentials read trusted-root-certificates 1 0
+ On TH1 verify the TrustedRootCertificates entries from DUT
+ [1658483361.121153][27343:27348] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0004 DataVersion: 527687668
+ [1658483361.121212][27343:27348] CHIP:TOO: TrustedRootCertificates: 1 entries
+ [1658483361.121257][27343:27348] CHIP:TOO: [1]: 1530010100240201370324140018260480228127260580254D3A370624140018240701240801300941045B7F0549925832A9A1294607ADC4695EA3477D3DC9E584431F53A60FC57629C6A616814389C479D3E059D931600F62CA328087462582A350AD015B32756DDC69370A3501290118240260300414A1BBCB2500D57101023ACB4AFD7EBD4FC0487AF3300514A1BBCB2500D57101023ACB4AFD7EBD4FC0487AF318300B40E878725378AEA74A5F6CB6267CB9F7ACD0DACF26741FB24356379D850DD5F23A746281C845FD76D89E97AB188E9BF8A98047B43E3E868A5A8B8E50BAE62F116F18
+ [1658483361.121342][27343:27348] CHIP:EM: Sending Standalone Ack for MessageCounter:8407614 on exchange 22615i
+
+ To repeat Step 9 please send below mentioned command
+ ./chip-tool generalcommissioning read breadcrumb 1 0
+ On TH1 Verify the breadcrumb attribute value
+ [1658483428.627422][27375:27380] CHIP:DMG: }
+ [1658483428.627566][27375:27380] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Attribute 0x0000_0000 DataVersion: 2195123770
+ [1658483428.627610][27375:27380] CHIP:TOO: Breadcrumb: 0
+ [1658483428.627696][27375:27380] CHIP:EM: Sending Standalone Ack for MessageCounter:242324966 on exchange 46358i
disabled: true
- label:
@@ -222,8 +283,8 @@ tests:
- label: "TH2 opens a PASE session with the DUT"
verification: |
- ./chip-tool pairing code 1 36116400648
- On TH2 verify that the PASE established successfully
+ ./chip-tool pairing code 2 36116400648 --commissioner-name beta
+ while pairing On TH2 verify that the PASE established successfully
[1658483765.114083][8082:8087] CHIP:CTL: Stopping commissioning discovery over DNS-SD
[1658483765.114107][8082:8087] CHIP:TOO: Pairing Success
[1658483765.114130][8082:8087] CHIP:TOO: PASE establishment successful
@@ -262,7 +323,7 @@ tests:
as nocs"
verification: |
./chip-tool operationalcredentials read nocs 1 0 --fabric-filtered 0
- On TH1 verify that TH reads nocs entries from DUT
+ On TH1 verify the nocs entries from DUT
[1658484050.459056][27576:27582] CHIP:DMG: }
[1658484050.459316][27576:27582] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0000 DataVersion: 527687672
[1658484050.459362][27576:27582] CHIP:TOO: NOCs: 2 entries
@@ -357,7 +418,7 @@ tests:
cluster using a non-fabric-filtered read"
verification: |
./chip-tool operationalcredentials read nocs 1 0
- On TH1 verify that TH reads nocs entries from DUT
+ On TH1 verify the nocs entries from DUT
[1658484226.587652][27658:27663] CHIP:DMG: }
[1658484226.587884][27658:27663] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0004 DataVersion: 527687672
[1658484226.587936][27658:27663] CHIP:TOO: TrustedRootCertificates: 2 entries
@@ -371,7 +432,7 @@ tests:
cluster using a non-fabric-filtered read"
verification: |
./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
- On TH1 verify that TH reads fabrics list from DUT
+ On TH1 verify the fabrics list from DUT
[1658484405.562192][27710:27716] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 527687672
[1658484405.562321][27710:27716] CHIP:TOO: Fabrics: 2 entries
[1658484405.562395][27710:27716] CHIP:TOO: [1]: {
@@ -398,7 +459,7 @@ tests:
Operational Credentials cluster"
verification: |
./chip-tool operationalcredentials read trusted-root-certificates 1 0
- On TH1 verify that TH reads TrustedRootCertificates entries from DUT
+ On TH1 verify the TrustedRootCertificates entries from DUT
[1658484601.144043][28501:28506] CHIP:DMG: InteractionModelRevision = 1
[1658484601.144050][28501:28506] CHIP:DMG: }
[1658484601.144213][28501:28506] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0004 DataVersion: 527687672
@@ -413,7 +474,12 @@ tests:
- label: "TH2 fully commissions the DUT"
verification: |
- verification step to be updated.
+ While pairing between DUT and TH2, On TH2 verify that commissioning completes successfully
+ [1660748637.271112][21572:21577] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0005
+ [1660748637.271128][21572:21577] CHIP:CTL: Received CommissioningComplete response, errorCode=0
+ [1660748637.271139][21572:21577] CHIP:CTL: Successfully finished commissioning step "SendComplete"
+ [1660748637.271146][21572:21577] CHIP:CTL: Commissioning stage next step: "SendComplete" -> "Cleanup"
+ [1660748637.271156][21572:21577] CHIP:CTL: Performing next commissioning step "Cleanup"
disabled: true
- label:
@@ -428,10 +494,10 @@ tests:
Once build completes
3. cd out/debug
4. ./chip-cert gen-cert --type r --subject-chip-id CACACACA00000001 --valid-from "2020-10-15 14:23:43" --lifetime 7305 --out-key Chip-Root-Key.txt --out Chip-Root-Cert.txt --out-format chip-hex
- 5. cat Chip-Root-Key.txt
+ 5. cat Chip-Root-Cert.txt
- ./chip-tool operationalcredentials add-trusted-root-certificate 04614D01D2897082D7F85832CE00AC787A5A221A6F7B19C4202C069E3D70DDC615E5B9436919266360AC847F2FAB3EAEE3902B43812A13D18C061CC5028EADB775583DCB1008E4CEBFF810EEB2BC60FF7A3CF954C57101798443DA39E75F5FFDEA 2 0
+ ./chip-tool operationalcredentials add-trusted-root-certificate 04614D01D2897082D7F85832CE00AC787A5A221A6F7B19C4202C069E3D70DDC615E5B9436919266360AC847F2FAB3EAEE3902B43812A13D18C061CC5028EADB775583DCB1008E4CEBFF810EEB2BC60FF7A3CF954C57101798443DA39E75F5FFDEA 2 0 --commissioner-name beta
On TH2 verify that DUT responds with FAILSAFE_REQUIRED
[1658484766.785916][8132:8137] CHIP:DMG:
[1658484766.785961][8132:8137] CHIP:DMG: InteractionModelRevision = 1
@@ -446,7 +512,7 @@ tests:
cluster using a non-fabric-filtered read"
verification: |
./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0
- On TH1 verify that TH reads fabrics list from DUT
+ On TH1 verify the fabrics list from DUT
[1658484969.071455][28631:28636] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0000 DataVersion: 527687672
[1658484969.071527][28631:28636] CHIP:TOO: NOCs: 2 entries
[1658484969.071587][28631:28636] CHIP:TOO: [1]: {
@@ -469,7 +535,7 @@ tests:
PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
verification: |
./chip-tool generalcommissioning arm-fail-safe 60 1 1 0
- On TH1 verify that TH reads ArmFailSafe command from DUT
+ On TH1 verify the ArmFailSafe command from DUT
[1658485224.066397][28732:28737] CHIP:DMG: InteractionModelRevision = 1
[1658485224.066407][28732:28737] CHIP:DMG: },
[1658485224.066441][28732:28737] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
@@ -504,7 +570,7 @@ tests:
verification: |
./chip-tool operationalcredentials read trusted-root-certificates 1 0
- On TH1 verify that TH reads TrustedRootCertificates entries from DUT
+ On TH1 verify the TrustedRootCertificates entries from DUT
[1658485696.739931][28920:28925] CHIP:DMG: InteractionModelRevision = 1
[1658485696.739936][28920:28925] CHIP:DMG: }
[1658485696.740122][28920:28925] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0004 DataVersion: 527687672
@@ -521,7 +587,7 @@ tests:
PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
verification: |
./chip-tool generalcommissioning arm-fail-safe 900 1 1 0
- On TH1 verify that TH reads ArmFailSafe command from DUT
+ On TH1 verify the ArmFailSafe command from DUT
[1658486181.080260][29218:29223] CHIP:DMG: },
[1658486181.080289][29218:29223] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
[1658486181.080319][29218:29223] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0001
@@ -557,8 +623,8 @@ tests:
value as 1"
PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
verification: |
- ./chip-tool generalcommissioning arm-fail-safe 900 1 2 0
- On TH2 verify that TH reads ArmFailSafe command from DUT
+ ./chip-tool generalcommissioning arm-fail-safe 900 1 2 0 --commissioner-name beta
+ On TH2 verify the ArmFailSafe command from DUT
[1658486289.473526][8200:8205] CHIP:DMG: InteractionModelRevision = 1
[1658486289.473563][8200:8205] CHIP:DMG: },
[1658486289.473639][8200:8205] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
@@ -577,7 +643,7 @@ tests:
PICS: CGEN.S.C00.Rsp
verification: |
./chip-tool generalcommissioning arm-fail-safe 0 1 1 0
- On TH1 verify that TH reads ArmFailSafe command from DUT
+ On TH1 verify the ArmFailSafe command from DUT
[1658486510.232274][29388:29393] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
[1658486510.232302][29388:29393] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0001
[1658486510.232334][29388:29393] CHIP:TOO: ArmFailSafeResponse: {
@@ -594,7 +660,7 @@ tests:
PICS: CGEN.S.C00.Rsp
verification: |
./chip-tool generalcommissioning arm-fail-safe 900 1 1 0
- On TH1 verify that TH reads ArmFailSafe command from DUT
+ On TH1 verify the ArmFailSafe command from DUT
[1658486418.024554][29343:29348] CHIP:DMG: InteractionModelRevision = 1
[1658486418.024559][29343:29348] CHIP:DMG: },
[1658486418.024588][29343:29348] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
@@ -624,7 +690,7 @@ tests:
Once build completes
3. cd out/debug
4. ./chip-cert gen-cert --type r --subject-chip-id CACACACA00000001 --valid-from "2020-10-15 14:23:43" --lifetime 7305 --out-key Chip-Root-Key.txt --out Chip-Root-Cert.txt --out-format chip-hex
- 5. cat Chip-Root-Key.txt
+ 5. cat Chip-Root-Cert.txt
@@ -642,7 +708,7 @@ tests:
Operational Credentials cluster"
verification: |
./chip-tool operationalcredentials read trusted-root-certificates 1 0
- On TH1 verify that TH reads TrustedRootCertificates entries from DUT
+ On TH1 verify the TrustedRootCertificates entries from DUT
[1658487613.357548][30232:30237] CHIP:DMG: }
[1658487613.358000][30232:30237] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0004 DataVersion: 527687672
@@ -668,7 +734,7 @@ tests:
PICS: CGEN.S.C00.Rsp
verification: |
./chip-tool generalcommissioning arm-fail-safe 900 0 1 0
- On TH1 verify that TH reads ArmFailSafe command from DUT
+ On TH1 verify the ArmFailSafe command from DUT
[1658487663.593485][30268:30273] CHIP:DMG: InteractionModelRevision = 1
[1658487663.593506][30268:30273] CHIP:DMG: },
@@ -696,7 +762,7 @@ tests:
Operational Credentials cluster"
verification: |
./chip-tool operationalcredentials read trusted-root-certificates 1 0
- On TH1 verify that TH reads TrustedRootCertificates entries from DUT
+ On TH1 verify the TrustedRootCertificates entries from DUT
[1658489869.278413][31188:31193] CHIP:DMG: }
[1658489869.278997][31188:31193] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0004 DataVersion: 527687672
[1658489869.279090][31188:31193] CHIP:TOO: TrustedRootCertificates: 2 entries
diff --git a/src/app/tests/suites/certification/Test_TC_CHANNEL_1_6.yaml b/src/app/tests/suites/certification/Test_TC_CHANNEL_1_6.yaml
index fa5005b3600bba..a988c23d18dc14 100644
--- a/src/app/tests/suites/certification/Test_TC_CHANNEL_1_6.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CHANNEL_1_6.yaml
@@ -40,6 +40,15 @@ tests:
constraints:
type: int16u
+ - label: "Read the global attribute: FeatureMap"
+ PICS: ( !CHANNEL.S.CL && !CHANNEL.S.LI )
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
+
- label: "Read the global attribute: FeatureMap"
PICS: CHANNEL.S.CL || CHANNEL.S.LI
command: "readAttribute"
@@ -47,7 +56,7 @@ tests:
response:
constraints:
type: bitmap32
- minValue: 0
+ minValue: 1
maxValue: 3
- label: "Read the global attribute: AttributeList"
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_1_3.yaml b/src/app/tests/suites/certification/Test_TC_CNET_1_3.yaml
index e53ddab91811e2..ec94f45a29f012 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_1_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_1_3.yaml
@@ -44,23 +44,34 @@ tests:
- label: "TH reads the FeatureMap from DUT"
verification: |
+ (WiFi)
./chip-tool networkcommissioning read feature-map 1 0
Verify "FeatureMap" on the TH(Chip-tool) Log:
[1651215443.195852][3285:3290] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFC DataVersion: 2584224280
- [1651215443.195939][3285:3290] CHIP:TOO: FeatureMap: 4
+ [1651215443.195939][3285:3290] CHIP:TOO: FeatureMap: 1
+ (Ethernet)
./chip-tool networkcommissioning read feature-map 1 0
Verify "FeatureMap" on the TH(Chip-tool) Log:
[1660315515.081759][32315:32320] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFC DataVersion: 4034679103
[1660315515.081895][32315:32320] CHIP:TOO: FeatureMap: 4
+
+ (Thread)
+ ./chip-tool networkcommissioning read feature-map 1 0
+
+ Verify "FeatureMap" on the TH(Chip-tool) Log:
+
+ [1660315948.250922][3101:3106] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFC DataVersion: 1122474754
+ [1660315948.261520][3101:3106] CHIP:TOO: FeatureMap: 2
disabled: true
- label: "TH reads AttributeList from DUT"
verification: |
+ (WiFi)
./chip-tool networkcommissioning read attribute-list 1 0
Verify "AttributeList" on the TH(Chip-tool) Log:
@@ -82,10 +93,12 @@ tests:
[1651215479.539564][3293:3298] CHIP:TOO: [13]: 65533
- Ethernet:
+ (Ethernet)
./chip-tool networkcommissioning read attribute-list 1 0
+ Verify "AttributeList" on the TH(Chip-tool) Log:
+
[1660315522.163640][32321:32326] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFB DataVersion: 4034679103
[1660315522.163797][32321:32326] CHIP:TOO: AttributeList: 13 entries
[1660315522.163880][32321:32326] CHIP:TOO: [1]: 0
@@ -101,6 +114,28 @@ tests:
[1660315522.164636][32321:32326] CHIP:TOO: [11]: 65531
[1660315522.164708][32321:32326] CHIP:TOO: [12]: 65532
[1660315522.164778][32321:32326] CHIP:TOO: [13]: 65533
+
+ (Thread)
+
+ ./chip-tool networkcommissioning read attribute-list 1 0
+
+ Verify "AttributeList" on the TH(Chip-tool) Log:
+
+ [1660316011.016650][3112:3117] CHIP:TOO: AttributeList: 13 entries
+ [1660316011.016678][3112:3117] CHIP:TOO: [1]: 0
+ [1660316011.016700][3112:3117] CHIP:TOO: [2]: 1
+ [1660316011.016721][3112:3117] CHIP:TOO: [3]: 2
+ [1660316011.016741][3112:3117] CHIP:TOO: [4]: 3
+ [1660316011.016762][3112:3117] CHIP:TOO: [5]: 4
+ [1660316011.016782][3112:3117] CHIP:TOO: [6]: 5
+ [1660316011.016803][3112:3117] CHIP:TOO: [7]: 6
+ [1660316011.016823][3112:3117] CHIP:TOO: [8]: 7
+ [1660316011.016844][3112:3117] CHIP:TOO: [9]: 65528
+ [1660316011.016865][3112:3117] CHIP:TOO: [10]: 65529
+ [1660316011.016887][3112:3117] CHIP:TOO: [11]: 65531
+ [1660316011.016908][3112:3117] CHIP:TOO: [12]: 65532
+ [1660316011.016929][3112:3117] CHIP:TOO: [13]: 65533
+ [1660316011.017068][3112:3117] CHIP:EM: Sending Standalone Ack for MessageCounter:239150268 on exchange 45209i
disabled: true
- label: "TH reads EventList from the DUT"
@@ -132,6 +167,20 @@ tests:
[1660315536.068512][32327:32332] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFF9 DataVersion: 4034679103
[1660315536.068654][32327:32332] CHIP:TOO: AcceptedCommandList: 0 entries
+
+ (Thread)
+ ./chip-tool networkcommissioning read accepted-command-list 1 0
+
+ Verify "AcceptedCommandList" on the TH(Chip-tool) Log:
+
+ [1660316038.564553][3121:3126] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFF9 DataVersion: 1122474754
+ [1660316038.564671][3121:3126] CHIP:TOO: AcceptedCommandList: 5 entries
+ [1660316038.564702][3121:3126] CHIP:TOO: [1]: 0
+ [1660316038.564725][3121:3126] CHIP:TOO: [2]: 3
+ [1660316038.564747][3121:3126] CHIP:TOO: [3]: 4
+ [1660316038.564769][3121:3126] CHIP:TOO: [4]: 6
+ [1660316038.564853][3121:3126] CHIP:TOO: [5]: 8
+ [1660316038.564991][3121:3126] CHIP:EM: Sending Standalone Ack for MessageCounter:232731891 on exchange 30329i
disabled: true
- label: "TH reads GeneratedCommandList from DUT"
@@ -149,6 +198,17 @@ tests:
[1650370123.418013][42418:42423] CHIP:TOO: [3]: 7
[1650370123.418143][42418:42423] CHIP:EM: Sending Standalone Ack for MessageCounter:759910 on exchange 25409i
+
+
+ (Ethernet)
+ ./chip-tool networkcommissioning read generated-command-list 1 0
+
+ Verify "GeneratedCommandList" on the TH(Chip-tool) Log:
+
+ [1660315548.937195][32333:32338] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFF8 DataVersion: 4034679103
+ [1660315548.937327][32333:32338] CHIP:TOO: GeneratedCommandList: 0 entries
+
+
( Thread )
./chip-tool networkcommissioning read generated-command-list 51 0
@@ -161,15 +221,6 @@ tests:
[1650370123.417977][42418:42423] CHIP:TOO: [2]: 5
[1650370123.418013][42418:42423] CHIP:TOO: [3]: 7
[1650370342.693995][7450:7455] CHIP:EM: Sending Standalone Ack for MessageCounter:2345375 on exchange 25146i
-
-
- (Ethernet)
- ./chip-tool networkcommissioning read generated-command-list 1 0
-
- Verify "GeneratedCommandList" on the TH(Chip-tool) Log:
-
- [1660315548.937195][32333:32338] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFF8 DataVersion: 4034679103
- [1660315548.937327][32333:32338] CHIP:TOO: GeneratedCommandList: 0 entries
disabled: true
- label:
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_12.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_12.yaml
index 417f62c1f59b30..63861455bce4fd 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_12.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_12.yaml
@@ -26,6 +26,23 @@ config:
endpoint: 0
tests:
+ - label: "Commission TH and DUT on Thread setup"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label:
+ "The cluster Identifier 49 (0x0031) is present in the ServerList
+ attribute"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: "The FeatureMap attribute value is 2"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label:
"During the commissioning process, TH and DUT, TH sends ArmFailSafe
command to the DUT"
@@ -176,6 +193,8 @@ tests:
fail-safe and is expected to cause the changes of configuration
to NetworkCommissi oning cluster done so far to be reverted."
verification: |
+ Mark as not applicable and proceed to next step
+
./chip-tool generalcommissioning arm-fail-safe 0 1 22 0
Verify "ArmFailSafeResponse" on the TH(Chip-tool) Log:
@@ -193,13 +212,15 @@ tests:
"TH ensures it can communicate on PIXIT.CNET.THRE AD_1ST_OPERATI
ONALDATASET"
verification: |
- verification step to be updated.
+ Mark as not applicable and proceed to next step
disabled: true
- label:
"TH discovers and connects to DUT on the PIXIT.CNET.THRE
AD_1ST_OPERATI ONALDATASET operational network"
verification: |
+ Mark as not applicable and proceed to next step
+
./chip-tool networkcommissioning read networks 22 0
Verify "Networks entiries and its status" on the TH(Chip-tool) Log:
@@ -209,7 +230,7 @@ tests:
"TH sends ArmFailSafe command to the DUT with ExpiryLengthSeco nds set
to 900"
verification: |
- verification step to be updated.
+ Mark as not applicable and proceed to next step
disabled: true
- label:
@@ -217,7 +238,7 @@ tests:
th_xpan and Breadcrumb field set to 1"
PICS: CNET.S.C04.Rsp && CNET.S.C05.Tx
verification: |
- verification step to be updated.
+ Mark as not applicable and proceed to next step
disabled: true
- label:
@@ -226,7 +247,7 @@ tests:
ONALDATASET and Breadcrumb field set to 1"
PICS: CNET.S.C02.Rsp && CNET.S.C05.Tx
verification: |
- verification step to be updated.
+ Mark as not applicable and proceed to next step
disabled: true
- label:
@@ -235,14 +256,14 @@ tests:
and Breadcrumb field set to 3"
PICS: CNET.S.C06.Rsp && CNET.S.C07.Tx
verification: |
- verification step to be updated.
+ Mark as not applicable and proceed to next step
disabled: true
- label:
"TH discovers and connects to DUT on
the PIXIT.CNET.THRE AD_2ND_OPERATI ONALDATASET operational network"
verification: |
- verification step to be updated.
+ Mark as not applicable and proceed to next step
disabled: true
- label:
@@ -250,16 +271,16 @@ tests:
the General Commissioning cluster of the DUT"
PICS: CNET.S.C06.Rsp
verification: |
- verification step to be updated.
+ Mark as not applicable and proceed to next step
disabled: true
- label: "TH sends the CommissioningCo mplete command to the DUT"
verification: |
- verification step to be updated.
+ Mark as not applicable and proceed to next step
disabled: true
- label: "TH reads Networks attribute from the DUT"
PICS: CNET.S.A0001
verification: |
- verification step to be updated.
+ Mark as not applicable and proceed to next step
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_13.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_13.yaml
index ee7443197417c5..68bbd8f20f9910 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_13.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_13.yaml
@@ -26,6 +26,73 @@ config:
endpoint: 0
tests:
+ - label: "Commission TH and DUT over BLE to setup the Wi-Fi"
+ verification: |
+
+ disabled: true
+
+ - label:
+ "The cluster Identifier 49 (0x0031) is present in the ServerList
+ attribute"
+ verification: |
+ ./chip-tool descriptor read server-list 1 0
+
+ Verify the "server-list" on the TH(Chip-tool) log
+
+ [1653474860.462391][29901:29906] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0001 DataVersion: 1237231415
+ [1653474860.462487][29901:29906] CHIP:TOO: server list: 25 entries
+ [1653474860.462524][29901:29906] CHIP:TOO: [1]: 3
+ [1653474860.462549][29901:29906] CHIP:TOO: [2]: 4
+ [1653474860.462574][29901:29906] CHIP:TOO: [3]: 29
+ [1653474860.462598][29901:29906] CHIP:TOO: [4]: 30
+ [1653474860.462622][29901:29906] CHIP:TOO: [5]: 31
+ [1653474860.462646][29901:29906] CHIP:TOO: [6]: 40
+ [1653474860.462670][29901:29906] CHIP:TOO: [7]: 42
+ [1653474860.462693][29901:29906] CHIP:TOO: [8]: 43
+ [1653474860.462717][29901:29906] CHIP:TOO: [9]: 44
+ [1653474860.462741][29901:29906] CHIP:TOO: [10]: 45
+ [1653474860.462765][29901:29906] CHIP:TOO: [11]: 46
+ [1653474860.462788][29901:29906] CHIP:TOO: [12]: 48
+ [1653474860.462812][29901:29906] CHIP:TOO: [13]: 49
+ [1653474860.462836][29901:29906] CHIP:TOO: [14]: 50
+ [1653474860.462859][29901:29906] CHIP:TOO: [15]: 51
+ [1653474860.462883][29901:29906] CHIP:TOO: [16]: 52
+ [1653474860.462906][29901:29906] CHIP:TOO: [17]: 53
+ [1653474860.462930][29901:29906] CHIP:TOO: [18]: 54
+ [1653474860.462954][29901:29906] CHIP:TOO: [19]: 55
+ [1653474860.462977][29901:29906] CHIP:TOO: [20]: 60
+ [1653474860.463001][29901:29906] CHIP:TOO: [21]: 62
+ [1653474860.463024][29901:29906] CHIP:TOO: [22]: 63
+ [1653474860.463048][29901:29906] CHIP:TOO: [23]: 64
+ [1653474860.463071][29901:29906] CHIP:TOO: [24]: 65
+ [1653474860.463095][29901:29906] CHIP:TOO: [25]: 1029
+ [1653474860.463296][29901:29906] CHIP:EM: Sending Standalone Ack for MessageCounter:10703464 on exchange 2435i
+ disabled: true
+
+ - label: "The FeatureMap attribute value is 1"
+ verification: |
+ ./chip-tool networkcommissioning read feature-map 1 0
+
+ Verify the "feature-map" on the TH(Chip-tool) log
+
+ [1653474932.055513][29920:29925] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFC DataVersion: 1600858167
+ [1653474932.055578][29920:29925] CHIP:TOO: FeatureMap: 1
+ [1653474932.055675][29920:29925] CHIP:EM: Sending Standalone Ack for MessageCounter:1494059 on exchange 5482i
+ disabled: true
+
+ - label:
+ "MaxNetworks attribute value is at least 4 which is saved as
+ MaxNetworksValue for future use"
+ verification: |
+ The test case is not verifiable. As MaxNetworks value is 1 but expected is 4
+
+ ./chip-tool networkcommissioning read max-networks 1 0
+
+ [1653476960.303444][30164:30169] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0000 DataVersion: 1600858167
+ [1653476960.303531][30164:30169] CHIP:TOO: MaxNetworks: 1
+ [1653476960.303641][30164:30169] CHIP:EM: Sending Standalone Ack for MessageCounter:2083922 on exchange 45120i
+ disabled: true
+
- label:
"TH sends ArmFailSafe command to the DUT
with ExpiryLengthSeco nds set to 900"
@@ -68,8 +135,8 @@ tests:
disabled: true
- label:
- "TH calculates the midpoint of the network list
- as floor((MaxNetwor ksValue + 1)/2) and saves as Midpoint"
+ "TH calculates the midpoint of the network list as floor((MaxNetwor
+ ksValue + 1)/2) and saves as Midpoint"
verification: |
The test case is not verifiable in RPI platform. As MaxNetworks value is 1 but expected is 4
( Pre-Condition)
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_14.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_14.yaml
index 637f12813fa436..db445de96a72be 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_14.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_14.yaml
@@ -26,6 +26,73 @@ config:
endpoint: 0
tests:
+ - label: "Commission TH and DUT on Thread setup"
+ verification: |
+
+ disabled: true
+
+ - label:
+ "The cluster Identifier 49 (0x0031) is present in the ServerList
+ attribute"
+ verification: |
+ ./chip-tool descriptor read server-list 1 0
+
+ Verify the "server-list" on the TH(Chip-tool) log
+
+ [1653474860.462391][29901:29906] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0001 DataVersion: 1237231415
+ [1653474860.462487][29901:29906] CHIP:TOO: server list: 25 entries
+ [1653474860.462524][29901:29906] CHIP:TOO: [1]: 3
+ [1653474860.462549][29901:29906] CHIP:TOO: [2]: 4
+ [1653474860.462574][29901:29906] CHIP:TOO: [3]: 29
+ [1653474860.462598][29901:29906] CHIP:TOO: [4]: 30
+ [1653474860.462622][29901:29906] CHIP:TOO: [5]: 31
+ [1653474860.462646][29901:29906] CHIP:TOO: [6]: 40
+ [1653474860.462670][29901:29906] CHIP:TOO: [7]: 42
+ [1653474860.462693][29901:29906] CHIP:TOO: [8]: 43
+ [1653474860.462717][29901:29906] CHIP:TOO: [9]: 44
+ [1653474860.462741][29901:29906] CHIP:TOO: [10]: 45
+ [1653474860.462765][29901:29906] CHIP:TOO: [11]: 46
+ [1653474860.462788][29901:29906] CHIP:TOO: [12]: 48
+ [1653474860.462812][29901:29906] CHIP:TOO: [13]: 49
+ [1653474860.462836][29901:29906] CHIP:TOO: [14]: 50
+ [1653474860.462859][29901:29906] CHIP:TOO: [15]: 51
+ [1653474860.462883][29901:29906] CHIP:TOO: [16]: 52
+ [1653474860.462906][29901:29906] CHIP:TOO: [17]: 53
+ [1653474860.462930][29901:29906] CHIP:TOO: [18]: 54
+ [1653474860.462954][29901:29906] CHIP:TOO: [19]: 55
+ [1653474860.462977][29901:29906] CHIP:TOO: [20]: 60
+ [1653474860.463001][29901:29906] CHIP:TOO: [21]: 62
+ [1653474860.463024][29901:29906] CHIP:TOO: [22]: 63
+ [1653474860.463048][29901:29906] CHIP:TOO: [23]: 64
+ [1653474860.463071][29901:29906] CHIP:TOO: [24]: 65
+ [1653474860.463095][29901:29906] CHIP:TOO: [25]: 1029
+ [1653474860.463296][29901:29906] CHIP:EM: Sending Standalone Ack for MessageCounter:10703464 on exchange 2435i
+ disabled: true
+
+ - label: "The FeatureMap attribute value is 2"
+ verification: |
+ ./chip-tool networkcommissioning read feature-map 1 0
+
+ Verify the "feature-map" on the TH(Chip-tool) log
+
+ [1653474932.055513][29920:29925] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFC DataVersion: 1600858167
+ [1653474932.055578][29920:29925] CHIP:TOO: FeatureMap: 1
+ [1653474932.055675][29920:29925] CHIP:EM: Sending Standalone Ack for MessageCounter:1494059 on exchange 5482i
+ disabled: true
+
+ - label:
+ "MaxNetworks attribute value is at least 4 which is saved as
+ MaxNetworksValue for future use"
+ verification: |
+ The test case is not verifiable. As MaxNetworks value is 1 but expected is 4
+
+ ./chip-tool networkcommissioning read max-networks 1 0
+
+ [1653476960.303444][30164:30169] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0000 DataVersion: 1600858167
+ [1653476960.303531][30164:30169] CHIP:TOO: MaxNetworks: 1
+ [1653476960.303641][30164:30169] CHIP:EM: Sending Standalone Ack for MessageCounter:2083922 on exchange 45120i
+ disabled: true
+
- label:
"TH sends ArmFailSafe command to the DUT
with ExpiryLengthSeco nds set to 900"
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_15.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_15.yaml
index 3519c474b73ec3..4c97f68359c397 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_15.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_15.yaml
@@ -26,6 +26,35 @@ config:
endpoint: 0
tests:
+ - label: "Factory Reset the DUT"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: "Commission TH and DUT over BLE to setup the Wi-Fi"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label:
+ "The cluster Identifier 49 (0x0031) is present in the ServerList
+ attribute"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: "The FeatureMap attribute value is 1"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label:
+ "MaxNetworks attribute value is at least 1 which is saved as
+ MaxNetworksValue for future use"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label:
"TH sends ArmFailSafe command to the DUT with
the ExpiryLengthSeco nds field set to 900"
@@ -48,7 +77,7 @@ tests:
"TH sends RemoveNetwork Command to the DUT with NetworkID
field set to PIXIT.CNET.WIFI_ 2ND_ACCESSPOIN T_SSID, which does
not match the provisioned network, and Breadcrumb field set to 1"
- PICS: CNET.S.C06.Rsp && CNET.S.C07.Tx
+ PICS: CNET.S.C04.Rsp && CNET.S.C05.Tx
verification: |
./chip-tool networkcommissioning remove-network hex: 1 0
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_16.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_16.yaml
index 7963d5e3a75fca..c8de75528e18e3 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_16.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_16.yaml
@@ -26,6 +26,35 @@ config:
endpoint: 0
tests:
+ - label: "Factory Reset the DUT"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: "Commission TH and DUT to setup the Thread"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label:
+ "The cluster Identifier 49 (0x0031) is present in the ServerList
+ attribute"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: "The FeatureMap attribute value is 2"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label:
+ "MaxNetworks attribute value is at least 1 which is saved as
+ MaxNetworksValue for future use"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label: "TH sends ArmFailSafe command to the DUT"
verification: |
./chip-tool generalcommissioning arm-fail-safe 900 0 54 0
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_17.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_17.yaml
index 5e70a7db0f11b4..ea25d1506d0157 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_17.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_17.yaml
@@ -31,6 +31,11 @@ tests:
Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
+ - label: "Commission TH and DUT over BLE to setup the Wi-Fi"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label: "DUT reads the MaxNetworks attribute from the TH"
PICS: CNET.S.A0000
verification: |
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_18.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_18.yaml
index b21221f902dba5..e43c2b5422c02b 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_18.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_18.yaml
@@ -31,6 +31,11 @@ tests:
Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
+ - label: "Commission TH and DUT on Thread setup"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label: "DUT reads the MaxNetworks attribute from the TH"
PICS: CNET.S.A0000
verification: |
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_19.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_19.yaml
index 6ccf90ff45fb6a..c6986de08c4b45 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_19.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_19.yaml
@@ -31,6 +31,11 @@ tests:
Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
+ - label: "Commission TH and DUT on Ethernet setup"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label: "DUT reads the MaxNetworks attribute from the TH"
PICS: CNET.S.A0000
verification: |
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_20.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_20.yaml
index c1bcc524516814..286ad3a2b050a4 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_20.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_20.yaml
@@ -30,6 +30,11 @@ tests:
Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
+ - label: "Commission TH and DUT over BLE to setup the Wi-Fi"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label: "DUT sends the ScanNetwork command to the TH"
PICS: CNET.C.C00.Tx
verification: |
@@ -60,7 +65,7 @@ tests:
disabled: true
- label: "DUT sends the AddOrUpdateWiFiNetwork command to the TH"
- PICS: CNET.C.C03.Tx
+ PICS: CNET.C.C02.Tx
verification: |
./chip-tool networkcommissioning add-or-update-wi-fi-network-network hex: 1 0
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_21.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_21.yaml
index fd1cabf5b3bb18..8bb383b44f2388 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_21.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_21.yaml
@@ -31,6 +31,11 @@ tests:
Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
+ - label: "Commission TH and DUT on Thread setup"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label: "DUT sends the ScanNetwork command to the TH"
PICS: CNET.C.C00.Tx
verification: |
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_22.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_22.yaml
index 6fa3d6745f312b..0d5946a130707a 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_22.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_22.yaml
@@ -26,6 +26,30 @@ config:
endpoint: 0
tests:
+ - label: "DUT supports CNET.S.F01(TH)"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label:
+ "DUT has a Network Commissioning cluster on endpoint
+ PIXIT.CNET.ENDPOINT_THREAD with FeatureMap attribute of 2"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: "DUT is commissioned on PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label:
+ "TH can communicate with the DUT on
+ PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label:
"TH sends ScanNetworks command to the DUT with the SSID field omitted
and the Breadcrumb field set to 1"
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_4.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_4.yaml
index 8fa6d52855988d..ae7d031e7e0eaa 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_4.yaml
@@ -26,6 +26,60 @@ config:
endpoint: 0
tests:
+ - label: "Commission TH and DUT over BLE to setup the Wi-Fi"
+ verification: |
+
+ disabled: true
+
+ - label:
+ "The cluster Identifier 49 (0x0031) in present in the ServerList
+ attribute"
+ verification: |
+ ./chip-tool descriptor read server-list 1 0
+
+ Verify tthe "descriptor" on the TH(Chip-tool) Log:
+
+ [1653474860.462391][29901:29906] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0001 DataVersion: 1237231415
+ [1653474860.462487][29901:29906] CHIP:TOO: server list: 25 entries
+ [1653474860.462524][29901:29906] CHIP:TOO: [1]: 3
+ [1653474860.462549][29901:29906] CHIP:TOO: [2]: 4
+ [1653474860.462574][29901:29906] CHIP:TOO: [3]: 29
+ [1653474860.462598][29901:29906] CHIP:TOO: [4]: 30
+ [1653474860.462622][29901:29906] CHIP:TOO: [5]: 31
+ [1653474860.462646][29901:29906] CHIP:TOO: [6]: 40
+ [1653474860.462670][29901:29906] CHIP:TOO: [7]: 42
+ [1653474860.462693][29901:29906] CHIP:TOO: [8]: 43
+ [1653474860.462717][29901:29906] CHIP:TOO: [9]: 44
+ [1653474860.462741][29901:29906] CHIP:TOO: [10]: 45
+ [1653474860.462765][29901:29906] CHIP:TOO: [11]: 46
+ [1653474860.462788][29901:29906] CHIP:TOO: [12]: 48
+ [1653474860.462812][29901:29906] CHIP:TOO: [13]: 49
+ [1653474860.462836][29901:29906] CHIP:TOO: [14]: 50
+ [1653474860.462859][29901:29906] CHIP:TOO: [15]: 51
+ [1653474860.462883][29901:29906] CHIP:TOO: [16]: 52
+ [1653474860.462906][29901:29906] CHIP:TOO: [17]: 53
+ [1653474860.462930][29901:29906] CHIP:TOO: [18]: 54
+ [1653474860.462954][29901:29906] CHIP:TOO: [19]: 55
+ [1653474860.462977][29901:29906] CHIP:TOO: [20]: 60
+ [1653474860.463001][29901:29906] CHIP:TOO: [21]: 62
+ [1653474860.463024][29901:29906] CHIP:TOO: [22]: 63
+ [1653474860.463048][29901:29906] CHIP:TOO: [23]: 64
+ [1653474860.463071][29901:29906] CHIP:TOO: [24]: 65
+ [1653474860.463095][29901:29906] CHIP:TOO: [25]: 1029
+ [1653474860.463296][29901:29906] CHIP:EM: Sending Standalone Ack for MessageCounter:10703464 on exchange 2435i
+ disabled: true
+
+ - label: "The FeatureMap attribute value is 1"
+ verification: |
+ ./chip-tool networkcommissioning read feature-map 1 0
+
+ Verify the "feature-map" on the TH(Chip-tool) Log:
+
+ [1653474932.055513][29920:29925] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFC DataVersion: 1600858167
+ [1653474932.055578][29920:29925] CHIP:TOO: FeatureMap: 1
+ [1653474932.055675][29920:29925] CHIP:EM: Sending Standalone Ack for MessageCounter:1494059 on exchange 5482i
+ disabled: true
+
- label:
"TH sends ScanNetworks command to the DUT with the SSID field set
to null and Breadcrumb field set to 1"
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_5.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_5.yaml
index 8de8180dd2332c..5ca63fec18f1fc 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_5.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_5.yaml
@@ -26,6 +26,29 @@ config:
endpoint: 0
tests:
+ - label: "Commission TH and DUT over BLE to setup the Wi-Fi"
+ verification: |
+
+ disabled: true
+
+ - label:
+ "The cluster Identifier 49 (0x0031) is present in the ServerList
+ attribute"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: "The FeatureMap attribute value is 1"
+ verification: |
+ "./chip-tool networkcommissioning read feature-map 1 0
+
+ Verify the "feature-map" on the TH(Chip-tool) Log:
+
+ [1653474932.055513][29920:29925] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFC DataVersion: 1600858167
+ [1653474932.055578][29920:29925] CHIP:TOO: FeatureMap: 1
+ [1653474932.055675][29920:29925] CHIP:EM: Sending Standalone Ack for MessageCounter:1494059 on exchange 5482i"
+ disabled: true
+
- label:
"TH sends the AddOrUpdateWiFiNetwork command to the DUT with the
following argument: SSID argument value as Userwifi_ssid Credentials
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_6.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_6.yaml
index 0f38ac33930338..5a5a0d81c960d6 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_6.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_6.yaml
@@ -26,6 +26,23 @@ config:
endpoint: 0
tests:
+ - label: "Commission TH and DUT on Thread setup"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label:
+ "The cluster Identifier 49 (0x0031) is present in the ServerList
+ attribute"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: "The FeatureMap attribute value is 2"
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label:
"TH sends the AddOrUpdateThreadNetwork command to the DUT with the
following argument: OperationalDataset argument value as Userth_op
@@ -36,7 +53,7 @@ tests:
Below is an example:
- ./chip-tool networkcommissioning add-or-update-thread-network hex:1232034768527434274 51 0
+ ./chip-tool networkcommissioning add-or-update-thread-network hex:1011101122222229 51 0
Verify "FAILSAFE_REQUIRED status code" on the TH(Chip-tool) Log:
@@ -54,7 +71,7 @@ tests:
Below is an example:
- /chip-tool networkcommissioning remove-network hex:1232034768527434274 51 0
+ ./chip-tool networkcommissioning remove-network hex:1011101122222229 51 0
Verify "FAILSAFE_REQUIRED status code" on the TH(Chip-tool) Log:
@@ -72,7 +89,7 @@ tests:
Below is an example:
- ./chip-tool networkcommissioning connect-network hex:1232034768527434274 51 0
+ ./chip-tool networkcommissioning connect-network hex:1011101122222229 51 0
Verify "FAILSAFE_REQUIRED status code" on the TH(chip-tool) Log:
diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_9.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_9.yaml
index 8bbc9c3b5801fe..4a1dfefa8cd73e 100644
--- a/src/app/tests/suites/certification/Test_TC_CNET_4_9.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CNET_4_9.yaml
@@ -26,6 +26,88 @@ config:
endpoint: 0
tests:
+ - label: "Commission TH and DUT over BLE to setup the Wi-Fi"
+ verification: |
+
+ disabled: true
+
+ - label:
+ "The cluster Identifier 49 (0x0031) is present in the ServerList
+ attribute"
+ verification: |
+ ./chip-tool descriptor read server-list 1 0
+
+ Verify the "descriptor" on the TH(Chip-tool) log
+
+ [1653474860.462391][29901:29906] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0001 DataVersion: 1237231415
+ [1653474860.462487][29901:29906] CHIP:TOO: server list: 25 entries
+ [1653474860.462524][29901:29906] CHIP:TOO: [1]: 3
+ [1653474860.462549][29901:29906] CHIP:TOO: [2]: 4
+ [1653474860.462574][29901:29906] CHIP:TOO: [3]: 29
+ [1653474860.462598][29901:29906] CHIP:TOO: [4]: 30
+ [1653474860.462622][29901:29906] CHIP:TOO: [5]: 31
+ [1653474860.462646][29901:29906] CHIP:TOO: [6]: 40
+ [1653474860.462670][29901:29906] CHIP:TOO: [7]: 42
+ [1653474860.462693][29901:29906] CHIP:TOO: [8]: 43
+ [1653474860.462717][29901:29906] CHIP:TOO: [9]: 44
+ [1653474860.462741][29901:29906] CHIP:TOO: [10]: 45
+ [1653474860.462765][29901:29906] CHIP:TOO: [11]: 46
+ [1653474860.462788][29901:29906] CHIP:TOO: [12]: 48
+ [1653474860.462812][29901:29906] CHIP:TOO: [13]: 49
+ [1653474860.462836][29901:29906] CHIP:TOO: [14]: 50
+ [1653474860.462859][29901:29906] CHIP:TOO: [15]: 51
+ [1653474860.462883][29901:29906] CHIP:TOO: [16]: 52
+ [1653474860.462906][29901:29906] CHIP:TOO: [17]: 53
+ [1653474860.462930][29901:29906] CHIP:TOO: [18]: 54
+ [1653474860.462954][29901:29906] CHIP:TOO: [19]: 55
+ [1653474860.462977][29901:29906] CHIP:TOO: [20]: 60
+ [1653474860.463001][29901:29906] CHIP:TOO: [21]: 62
+ [1653474860.463024][29901:29906] CHIP:TOO: [22]: 63
+ [1653474860.463048][29901:29906] CHIP:TOO: [23]: 64
+ [1653474860.463071][29901:29906] CHIP:TOO: [24]: 65
+ [1653474860.463095][29901:29906] CHIP:TOO: [25]: 1029
+ [1653474860.463296][29901:29906] CHIP:EM: Sending Standalone Ack for MessageCounter:10703464 on exchange 2435i
+ disabled: true
+
+ - label: "The FeatureMap attribute value is 1"
+ verification: |
+ ./chip-tool networkcommissioning read feature-map 1 0
+
+ Verify the "feature-map" on the TH(Chip-tool) log
+
+ [1653474932.055513][29920:29925] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFC DataVersion: 1600858167
+ [1653474932.055578][29920:29925] CHIP:TOO: FeatureMap: 1
+ [1653474932.055675][29920:29925] CHIP:EM: Sending Standalone Ack for MessageCounter:1494059 on exchange 5482i
+ disabled: true
+
+ - label: "The Networks attribute value is 1 entries"
+ verification: |
+ ./chip-tool networkcommissioning read networks 1 0
+
+ Verify the "networks" on the TH(Chip-tool) log
+
+ [1653478044.910989][30351:30356] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0001 DataVersion: 1600858167
+ [1653478044.911109][30351:30356] CHIP:TOO: Networks: 1 entries
+ [1653478044.911192][30351:30356] CHIP:TOO: [1]: {
+ [1653478044.911238][30351:30356] CHIP:TOO: NetworkID: 47524C50726976617465
+ [1653478044.911280][30351:30356] CHIP:TOO: Connected: FALSE
+ [1653478044.911322][30351:30356] CHIP:TOO: }
+ [1653478044.911474][30351:30356] CHIP:EM: Sending Standalone Ack for MessageCounter:3575760 on exchange 51774i
+ disabled: true
+
+ - label:
+ "MaxNetworks attribute value is at least 1 which is saved as
+ MaxNetworksValue for future use"
+ verification: |
+ ./chip-tool networkcommissioning read max-networks 1 0
+
+ Verify the "max-networks" on the TH(Chip-tool) log
+
+ [1653476960.303444][30164:30169] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0000 DataVersion: 1600858167
+ [1653476960.303531][30164:30169] CHIP:TOO: MaxNetworks: 1
+ [1653476960.303641][30164:30169] CHIP:EM: Sending Standalone Ack for MessageCounter:2083922 on exchange 45120i
+ disabled: true
+
- label:
"TH sends ArmFailSafe command to the DUT with ExpiryLengthSeco nds set
to 900"
@@ -181,6 +263,8 @@ tests:
"TH sends ArmFailSafe command to the DUT with ExpiryLengthSeco nds set
to 0"
verification: |
+ Mark as not applicable and proceed to next step
+
./chip-tool generalcommissioning arm-fail-safe 0 0 1 0
Verify "ArmFailSafeResponse" on the TH(Chip-tool) Log:
@@ -196,6 +280,8 @@ tests:
- label: "TH reads Networks attribute from the DUT"
PICS: CNET.S.A0001
verification: |
+ Mark as not applicable and proceed to next step
+
./chip-tool networkcommissioning read networks 1 0
Verify "Networks entiries and its status" on the TH(Chip-tool) Log:
@@ -208,6 +294,8 @@ tests:
"TH sends ArmFailSafe command to the DUT with ExpiryLengthSeco nds set
to 90"
verification: |
+ Mark as not applicable and proceed to next step
+
./chip-tool generalcommissioning arm-fail-safe 90 1 1 0
Verify "ArmFailSafeResponse" on the TH(Chip-tool) Log:
@@ -225,6 +313,8 @@ tests:
PIXIT.CNET.WIFI_ 1ST_ACCESSPOINT _SSID and Breadcrumb field set to 1"
PICS: CNET.S.C04.Rsp && CNET.S.C05.Tx
verification: |
+ Mark as not applicable and proceed to next step
+
./chip-tool networkcommissioning remove-network hex: 1 0
Below is an example:
diff --git a/src/app/tests/suites/certification/Test_TC_CONTENTLAUNCHER_1_11.yaml b/src/app/tests/suites/certification/Test_TC_CONTENTLAUNCHER_1_11.yaml
index 09e8cf190ec511..b24690a2ab0d75 100644
--- a/src/app/tests/suites/certification/Test_TC_CONTENTLAUNCHER_1_11.yaml
+++ b/src/app/tests/suites/certification/Test_TC_CONTENTLAUNCHER_1_11.yaml
@@ -41,6 +41,15 @@ tests:
constraints:
type: int16u
+ - label: "Read the global attribute: FeatureMap"
+ PICS: ( !CONTENTLAUNCHER.S.CS && !CONTENTLAUNCHER.S.UP )
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
+
- label: "Read the global attribute: FeatureMap"
PICS: CONTENTLAUNCHER.S.CS || CONTENTLAUNCHER.S.UP
command: "readAttribute"
@@ -48,7 +57,7 @@ tests:
response:
constraints:
type: bitmap32
- minValue: 0
+ minValue: 1
maxValue: 3
- label: "Read the global attribute: AttributeList"
diff --git a/src/app/tests/suites/certification/Test_TC_DA_1_4.yaml b/src/app/tests/suites/certification/Test_TC_DA_1_4.yaml
index 056047d867594d..a4606fa7781765 100644
--- a/src/app/tests/suites/certification/Test_TC_DA_1_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DA_1_4.yaml
@@ -28,7 +28,14 @@ config:
tests:
- label: "Note"
verification: |
- Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Pre-Conditions"
+ verification: |
+ 1. PAA, PAI, DAC certificates are obtained and validated
+ 2. Operations happen within the Fail-Safe Context
+ 3. TH1 should be known about Commissioner based error condition/warning
disabled: true
- label: "Start the commissioning process of TH1 on DUT"
@@ -42,11 +49,20 @@ tests:
- label: "DUT generates 32-byte AttestationNonce"
verification: |
- To generate the Attestation Nonce give below command
-
- echo hex:$(hexdump -vn32 -e"4/4 "%08X" " /dev/urandom)
-
- The generated Attestation Nonce is hex:F573438E58E445EAB50665023A298E351446F5E5E9493F05F4C63CCC02E1F834
+ DUT generates 32-byte AttestationNonce on TH(all-clusters-app) log
+
+ [1660832898.375011][2480:2485] CHIP:DMG: }
+ [1660832898.375071][2480:2485] CHIP:DMG: Device Type Id = 22
+ [1660832898.375136][2480:2485] CHIP:DMG: Certificate Id (19) = ZIG20142ZB330003-24
+ [1660832898.375198][2480:2485] CHIP:DMG: Security Level = 0
+ [1660832898.375257][2480:2485] CHIP:DMG: Security Information = 0
+ [1660832898.375315][2480:2485] CHIP:DMG: Version Number = 9876
+ [1660832898.375374][2480:2485] CHIP:DMG: Certification Type = 0
+ [1660832898.375431][2480:2485] CHIP:DMG: }
+ [1660832898.375496][2480:2485] CHIP:DMG: Attestation Nonce (32) = 79C7156A8580C653945226CD5B5994EF4EC3D79CEAE6D32325CA2EA24B5201CB
+ [1660832898.375552][2480:2485] CHIP:DMG: Timestamp = 0
+ [1660832898.375605][2480:2485] CHIP:DMG: }
+ [1660832898.375655][2480:2485] CHIP:DMG:
disabled: true
- label:
@@ -55,16 +71,16 @@ tests:
verification: |
DUT sends AttestationRequest Command with AttestationNonce as field to the TH1, verify attestation response is received on TH(all-clusters-app) log
- ./chip-tool operationalcredentials attestation-request hex:F573438E58E445EAB50665023A298E351446F5E5E9493F05F4C63CCC02E1F834 1 0
+ ./chip-tool operationalcredentials attestation-request hex:79C7156A8580C653945226CD5B5994EF4EC3D79CEAE6D32325CA2EA24B5201CB 1 0
- [1659514429.238042][3458:3464] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0001
- [1659514429.238161][3458:3464] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0001
- [1659514429.238282][3458:3464] CHIP:TOO: AttestationResponse: {
- [1659514429.238447][3458:3464] CHIP:TOO: attestationElements: 1531011D023082021906092A864886F70D010702A082020A30820206020103310D300B06096086480165030402013082017106092A864886F70D010701A08201620482015E152400012501F1FF3602050080050180050280050380050480050580050680050780050880050980050A80050B80050C80050D80050E80050F80051080051180051280051380051480051580051680051780051880051980051A80051B80051C80051D80051E80051F80052080052180052280052380052480052580052680052780052880052980052A80052B80052C80052D80052E80052F80053080053180053280053380053480053580053680053780053880053980053A80053B80053C80053D80053E80053F80054080054180054280054380054480054580054680054780054880054980054A80054B80054C80054D80054E80054F80055080055180055280055380055480055580055680055780055880055980055A80055B80055C80055D80055E80055F80056080056180056280056380182403162C04135A494732303134325A423333303030332D3234240500240600250794
- [1659514429.238593][3458:3464] CHIP:TOO: ...................: 2624080018317D307B020103801462FA823359ACFAA9963E1CFA140ADDF504F37160300B0609608648016503040201300A06082A8648CE3D04030204473045022024E5D1F47A7D7B0D206A26EF699B7C9757B72D469089DE3192E678C745E7F60C022100F8AA2FA711FCB79B97E397CEDA667BAE464E2BD3FFDFC3CCED7AA8CA5F4C1A7C300220F573438E58E445EAB50665023A298E351446F5E5E9493F05F4C63CCC02E1F83424030018
- [1659514429.238672][3458:3464] CHIP:TOO: signature: 1644376FEC5DE29C92AD9CDF43E0051EA2C46DA93429BEEADDA5C7B74A6EF8ACFB47D8AAD77EBEEDEEFE987639ECCA596E1BBDBD39BF0ED5EE7BACAA7A899CA0
- [1659514429.238756][3458:3464] CHIP:TOO: }
+ Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0001
+ [1660833399.901252][2506:2511] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0001
+ [1660833399.901498][2506:2511] CHIP:TOO: AttestationResponse: {
+ [1660833399.901607][2506:2511] CHIP:TOO: attestationElements: 1531011D023082021906092A864886F70D010702A082020A30820206020103310D300B06096086480165030402013082017106092A864886F70D010701A08201620482015E152400012501F1FF3602050080050180050280050380050480050580050680050780050880050980050A80050B80050C80050D80050E80050F80051080051180051280051380051480051580051680051780051880051980051A80051B80051C80051D80051E80051F80052080052180052280052380052480052580052680052780052880052980052A80052B80052C80052D80052E80052F80053080053180053280053380053480053580053680053780053880053980053A80053B80053C80053D80053E80053F80054080054180054280054380054480054580054680054780054880054980054A80054B80054C80054D80054E80054F80055080055180055280055380055480055580055680055780055880055980055A80055B80055C80055D80055E80055F80056080056180056280056380182403162C04135A494732303134325A423333303030332D3234240500240600250794
+ [1660833399.901733][2506:2511] CHIP:TOO: ...................: 2624080018317D307B020103801462FA823359ACFAA9963E1CFA140ADDF504F37160300B0609608648016503040201300A06082A8648CE3D04030204473045022024E5D1F47A7D7B0D206A26EF699B7C9757B72D469089DE3192E678C745E7F60C022100F8AA2FA711FCB79B97E397CEDA667BAE464E2BD3FFDFC3CCED7AA8CA5F4C1A7C30022079C7156A8580C653945226CD5B5994EF4EC3D79CEAE6D32325CA2EA24B5201CB24030018
+ [1660833399.901816][2506:2511] CHIP:TOO: signature: 920E22FE88765058D28A248636828BDBD612D24FFA4B27A06FFFB5D76061E0D0EE7FBCED7030026624A012B32F11596FB87CE147323B13F55A3654F27ED59FB3
+ [1660833399.901881][2506:2511] CHIP:TOO: }
disabled: true
- label:
@@ -72,7 +88,7 @@ tests:
by setting the following error condition: Commissionee is not yet
certified"
verification: |
- To Execute ths step follow the following
+ To Execute this step follow the following
1. To generate the CD use the below command
./out/debug/chip-cert gen-cd -C credentials/test/certification-declaration/Chip-Test-CD-Signing-Cert.pem -K credentials/test/certification-declaration/Chip-Test-CD-Signing-Key.pem --out dec_message.txt -f 1 -V FFF1 -p 8000 -p 8001 -p 8002 -p 8003 -p 8004 -p 8005 -p 8006 -p 8007 -p 8008 -p 8009 -p 800A -p 800B -p 800C -p 800D -p 800E -p 800F -p 8010 -p 8011 -p 8012 -p 8013 -p 8014 -p 8015 -p 8016 -p 8017 -p 8018 -p 8019 -p 801A -p 801B -p 801C -p 801D -p 801E -p 801F -p 8020 -p 8021 -p 8022 -p 8023 -p 8024 -p 8025 -p 8026 -p 8027 -p 8028 -p 8029 -p 802A -p 802B -p 802C -p 802D -p 802E -p 802F -p 8030 -p 8031 -p 8032 -p 8033 -p 8034 -p 8035 -p 8036 -p 8037 -p 8038 -p 8039 -p 803A -p 803B -p 803C -p 803D -p 803E -p 803F -p 8040 -p 8041 -p 8042 -p 8043 -p 8044 -p 8045 -p 8046 -p 8047 -p 8048 -p 8049 -p 804A -p 804B -p 804C -p 804D -p 804E -p 804F -p 8050 -p 8051 -p 8052 -p 8053 -p 8054 -p 8055 -p 8056 -p 8057 -p 8058 -p 8059 -p 805A -p 805B -p 805C -p 805D -p 805E -p 805F -p 8060 -p 8061 -p 8062 -p 8063 -d 0016 -c "ZIG20142ZB330003-24" -l 0 -i 0 -n 2694 -t 0
@@ -106,12 +122,7 @@ tests:
[1658320787.292739][4152:4157] CHIP:CTL: Expiring failsafe on proxy 0xffff7c000b60
disabled: true
- - label:
- "Verify that DUT notifies a warning stating that Commissionee is not a
- fully trusted device,Verify that the warning contains the information
- about the reason for error condition,If the warning message indicates
- that Commissioning is allowed then confirm that CSRRequest Command is
- sent from DUT to TH1"
+ - label: ""
PICS: MCORE.DA.ATTEST_WARNING
verification: |
------>sudo ./chip-all-clusters-app --dac_provide /dec_message.json
@@ -159,13 +170,10 @@ tests:
1. To generate the CD use the below command
./out/debug/chip-cert gen-cd -C credentials/development/commissioner_dut/struct_dac_sig_algo_ecdsa_with_sha1/dac-Cert.pem -K credentials/development/commissioner_dut/struct_dac_sig_algo_ecdsa_with_sha1/dac-Key.pem --out dec_message_3 -f 1 -V FFF1 -p 8000 -p 8001 -p 8002 -p 8003 -p 8004 -p 8005 -p 8006 -p 8007 -p 8008 -p 8009 -p 800A -p 800B -p 800C -p 800D -p 800E -p 800F -p 8010 -p 8011 -p 8012 -p 8013 -p 8014 -p 8015 -p 8016 -p 8017 -p 8018 -p 8019 -p 801A -p 801B -p 801C -p 801D -p 801E -p 801F -p 8020 -p 8021 -p 8022 -p 8023 -p 8024 -p 8025 -p 8026 -p 8027 -p 8028 -p 8029 -p 802A -p 802B -p 802C -p 802D -p 802E -p 802F -p 8030 -p 8031 -p 8032 -p 8033 -p 8034 -p 8035 -p 8036 -p 8037 -p 8038 -p 8039 -p 803A -p 803B -p 803C -p 803D -p 803E -p 803F -p 8040 -p 8041 -p 8042 -p 8043 -p 8044 -p 8045 -p 8046 -p 8047 -p 8048 -p 8049 -p 804A -p 804B -p 804C -p 804D -p 804E -p 804F -p 8050 -p 8051 -p 8052 -p 8053 -p 8054 -p 8055 -p 8056 -p 8057 -p 8058 -p 8059 -p 805A -p 805B -p 805C -p 805D -p 805E -p 805F -p 8060 -p 8061 -p 8062 -p 8063 -d 0016 -c "ZIG20142ZB330003-24" -l 0 -i 0 -n 2694 -t 0
-
-
2. Use the below command to see the generated CD
xxd -p -c 1024 dec_message_3
3082021806092a864886f70d010702a082020930820205020103310d300b06096086480165030402013082017106092a864886f70d010701a08201620482015e152400012501f1ff3602050080050180050280050380050480050580050680050780050880050980050a80050b80050c80050d80050e80050f80051080051180051280051380051480051580051680051780051880051980051a80051b80051c80051d80051e80051f80052080052180052280052380052480052580052680052780052880052980052a80052b80052c80052d80052e80052f80053080053180053280053380053480053580053680053780053880053980053a80053b80053c80053d80053e80053f80054080054180054280054380054480054580054680054780054880054980054a80054b80054c80054d80054e80054f80055080055180055280055380055480055580055680055780055880055980055a80055b80055c80055d80055e80055f80056080056180056280056380182403162c04135a494732303134325a423333303030332d32342405002406002507942624080018317c307a02010380146f4b2077c703a3d97e2c7d0f7c309c9db12abbb3300b0609608648016503040201300a06082a8648ce3d04030204463044022065ce44afabe7ad98eba7f382825be984fd4da28a5b00904acaf9f904e12bfd93022037b92fc4343578c5305d0ef0fb85dd2105f8b665bfe97687e24834d7a27c5096
-
3. Copy the result from step 2 in json file and transfer the json file to Raspi That will be running chip-all-clusters-app
4. Commission TH to DUT using the above generated CD by using dac_provider parameter
@@ -180,8 +188,6 @@ tests:
[1658320256.356675][4486:4486] CHIP:IN: SecureSession[0xaaaaf9556b00]: Released - Type:1 LSID:62352
[1658320256.356758][4486:4486] CHIP:SVR: Commissioning failed (attempt 1): ../../third_party/connectedhomeip/src/app/server/CommissioningWindowManager.cpp:71: CHIP Error 0x00000032: Timeout
-
-
--->./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3840 --trace_decode 1
[1658320256.309769][4098:4103] CHIP:CTL: Commissioning stage next step: "SendAttestationRequest" -> "AttestationVerification"
@@ -195,6 +201,80 @@ tests:
[1658320256.315610][4098:4103] CHIP:CTL: Expiring failsafe on proxy 0xffff6c000b60
[1658320256.315707][4098:4103] CHIP:DMG: ICR moving to [AddingComm]
[1658320256.315748][4098:4103] CHIP:DMG: ICR moving to [AddedComma]
+
+
+ Similarly for condition 2 follow below steps
+
+ 1. To generate the CD use the below command
+ ./out/debug/chip-cert gen-cd -E vid-mismatch -C credentials/development/commissioner_dut/struct_dac_sig_algo_ecdsa_with_sha1/dac-Cert.der -K credentials/development/commissioner_dut/struct_dac_sig_algo_ecdsa_with_sha1/dac-Key.der --out dec_message_6.txt -f 1 -V FFF1 -p 8000 -p 8001 -p 8002 -p 8003 -p 8004 -p 8005 -p 8006 -p 8007 -p 8008 -p 8009 -p 800A -p 800B -p 800C -p 800D -p 800E -p 800F -p 8010 -p 8011 -p 8012 -p 8013 -p 8014 -p 8015 -p 8016 -p 8017 -p 8018 -p 8019 -p 801A -p 801B -p 801C -p 801D -p 801E -p 801F -p 8020 -p 8021 -p 8022 -p 8023 -p 8024 -p 8025 -p 8026 -p 8027 -p 8028 -p 8029 -p 802A -p 802B -p 802C -p 802D -p 802E -p 802F -p 8030 -p 8031 -p 8032 -p 8033 -p 8034 -p 8035 -p 8036 -p 8037 -p 8038 -p 8039 -p 803A -p 803B -p 803C -p 803D -p 803E -p 803F -p 8040 -p 8041 -p 8042 -p 8043 -p 8044 -p 8045 -p 8046 -p 8047 -p 8048 -p 8049 -p 804A -p 804B -p 804C -p 804D -p 804E -p 804F -p 8050 -p 8051 -p 8052 -p 8053 -p 8054 -p 8055 -p 8056 -p 8057 -p 8058 -p 8059 -p 805A -p 805B -p 805C -p 805D -p 805E -p 805F -p 8060 -p 8061 -p 8062 -p 8063 -d 0016 -c "ZIG20142ZB330003-24" -l 0 -i 0 -n 2694 -t 0
+
+ 2. Use the below command to see the generated CD
+ xxd -p -c 1024 dec_message_6.txt
+ 3082021906092a864886f70d010702a082020a30820206020103310d300b06096086480165030402013082017106092a864886f70d010701a08201620482015e152400012501f1ff3602050080050180050280050380050480050580050680050780050880050980050a80050b80050c80050d80050e80050f80051080051180051280051380051480051580051680051780051880051980051a80051b80051c80051d80051e80051f80052080052180052280052380052480052580052680052780052880052980052a80052b80052c80052d80052e80052f80053080053180053280053380053480053580053680053780053880053980053a80053b80053c80053d80053e80053f80054080054180054280054380054480054580054680054780054880054980054a80054b80054c80054d80054e80054f80055080055180055280055380055480055580055680055780055880055980055a80055b80055c80055d80055e80055f80056080056180056280056380182403162c04135a494732303134325a423333303030332d32342405002406002507942624080018317d307b02010380146f4b2077c703a3d97e2c7d0f7c309c9db12abbb3300b0609608648016503040201300a06082a8648ce3d040302044730450221009bc4c8759ff98a68fb1b42f2d7b2300a856f7830982a4876ff54855dcc25e773022060c17079368bc8e33171c52d9c73a09d690614c28303c119d1bdc1f9b4be869e
+
+ 3. Copy the result from step 2 in json file and transfer the json file to Raspi That will be running chip-all-clusters-app
+
+ 4. Commission TH to DUT using the above generated CD by using dac_provider parameter
+
+ sudo rm -rf /tmp/chip_*
+ ./all-cluster-app --wifi --dac_provider /dec_3.json
+
+ [1660836160.681814][4884:4884] CHIP:DL: HandlePlatformSpecificBLEEvent 32782
+ [1660836160.681873][4884:4884] CHIP:SVR: Failsafe timer expired
+ [1660836160.681923][4884:4884] CHIP:IN: SecureSession[0xaaaad5440e10]: MarkForEviction Type:1 LSID:22448
+ [1660836160.681975][4884:4884] CHIP:SC: SecureSession[0xaaaad5440e10]: Moving from state "kActive" --> "kPendingEviction"
+ [1660836160.682126][4884:4884] CHIP:IN: SecureSession[0xaaaad5440e10]: Released - Type:1 LSID:22448
+ [1660836160.682202][4884:4884] CHIP:SVR: Commissioning failed (attempt 1): ../../third_party/connectedhomeip/src/app/server/CommissioningWindowManager.cpp:73: CHIP Error 0x00000032: Timeout
+
+
+
+ --->./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3840 --trace_decode 1
+
+ [1660836160.627772][2653:2658] CHIP:CTL: Performing next commissioning step "AttestationVerification"
+ [1660836160.627826][2653:2658] CHIP:CTL: Verifying attestation
+ [1660836160.686379][2653:2658] CHIP:CTL: Failed in verifying "Attestation Information" command received from the device: err 601. Look at AttestationVerificationResult enum to understand the errors
+ [1660836160.686579][2653:2658] CHIP:CTL: Error on commissioning step "AttestationVerification": "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660836160.686648][2653:2658] CHIP:CTL: Failed to perform commissioning step 8
+ [1660836160.686714][2653:2658] CHIP:CTL: Going from commissioning step "AttestationVerification" with lastErr = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error" -> "Cleanup"
+ [1660836160.686806][2653:2658] CHIP:CTL: Performing next commissioning step "Cleanup" with completion status = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660836160.686869][2653:2658] CHIP:CTL: Expiring failsafe on proxy 0xffffa4032330
+
+
+
+ Similarly for condition 3 follow below steps
+
+ 1. To generate the CD use the below command
+ ./out/debug/chip-cert gen-att-cert --type a --subject-cn "Matter Development PAA 01" --valid-from "2020-10-15 14:23:43" --lifetime 7305 --out-key Chip-PAA-Key.pem --out Chip-PAA-Cert.pem
+
+ 2. Use the below command to see the generated CD
+ xxd -p -c 1024 Chip-PAA-Cert.pem
+ 2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d49494270444343415571674177494241674949636769574a6f6e394f653477436759494b6f5a497a6a3045417749774a4445694d434147413155454177775a0a54574630644756794945526c646d5673623342745a57353049464242515341774d544165467730794d4445774d5455784e44497a4e444e61467730304d4445770a4d5455784e44497a4e444a614d435178496a416742674e5642414d4d475531686448526c636942455a585a6c624739776257567564434251515545674d4445770a5754415442676371686b6a4f5051494242676771686b6a4f50514d4242774e4341415461314478507a5873473870372f6d755231686f5631783042797072516a0a58672b77536e742b5a6c45542b78424745373252624b4c6c474f2f54694d427776354972633534664d316e697067483546435078536258736f3259775a4441530a42674e5648524d4241663845434441474151482f416745424d41344741315564447745422f77514541774942426a416442674e564851344546675155307551580a4a6b4c73533667487174717875384a6e5a69487946343077487759445652306a42426777466f4155307551584a6b4c73533667487174717875384a6e5a6948790a46343077436759494b6f5a497a6a30454177494453414177525149674a703546485a545739617958334e575777774870543933677434614f7679424c555937500a74423875397038434951446c4e38375755324c6b6c68313339377a63517942565351345833634e6d4d426f336b5a4853584f475843673d3d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0
+
+ 3. Copy the result from step 2 in json file and transfer the json file to Raspi That will be running chip-all-clusters-app
+
+ 4. Commission TH to DUT using the above generated CD by using dac_provider parameter
+
+ sudo rm -rf /tmp/chip_*
+ ./all-cluster-app --wifi --dac_provider /dec_7.json
+
+ [1660894197.335249][5005:5005] CHIP:DL: HandlePlatformSpecificBLEEvent 32782
+ [1660894197.335308][5005:5005] CHIP:SVR: Failsafe timer expired
+ [1660894197.335357][5005:5005] CHIP:IN: SecureSession[0xaaaae7002e10]: MarkForEviction Type:1 LSID:31514
+ [1660894197.335430][5005:5005] CHIP:SC: SecureSession[0xaaaae7002e10]: Moving from state "kActive" --> "kPendingEviction"
+ [1660894197.335607][5005:5005] CHIP:IN: SecureSession[0xaaaae7002e10]: Released - Type:1 LSID:31514
+ [1660894197.335686][5005:5005] CHIP:SVR: Commissioning failed (attempt 1): ../../third_party/connectedhomeip/src/app/server/CommissioningWindowManager.cpp:73: CHIP Error 0x00000032: Timeout
+
+
+ --->./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3840 --trace_decode 1
+
+ [1660894197.296303][4561:4566] CHIP:CTL: Performing next commissioning step "AttestationVerification"
+ [1660894197.296356][4561:4566] CHIP:CTL: Verifying attestation
+ [1660894197.350259][4561:4566] CHIP:CTL: Failed in verifying "Attestation Information" command received from the device: err 600. Look at AttestationVerificationResult enum to understand the errors
+ [1660894197.350444][4561:4566] CHIP:CTL: Error on commissioning step "AttestationVerification": "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660894197.350508][4561:4566] CHIP:CTL: Failed to perform commissioning step 8
+ [1660894197.350574][4561:4566] CHIP:CTL: Going from commissioning step "AttestationVerification" with lastErr = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error" -> "Cleanup"
+ [1660894197.350659][4561:4566] CHIP:CTL: Performing next commissioning step "Cleanup" with completion status = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660894197.350718][4561:4566] CHIP:CTL: Expiring failsafe on proxy 0xffff6c032330
disabled: true
- label:
@@ -207,13 +287,11 @@ tests:
Product ID (PID) the DAC is not present in the product_id_array field
in the Certification Declaration"
verification: |
- To Execute ths step for error condition 1 follow the following
+ To Execute ths step for error condition 1 follow the following steps
1. To generate the CD use the below command
./out/debug/chip-cert gen-cd -I -E dac-origin-vid-present -C credentials/test/certification-declaration/Chip-Test-CD-Signing-Cert.pem -K credentials/test/certification-declaration/Chip-Test-CD-Signing-Key.pem --out cd_vid_present_pid_missing.txt -o 0x8000 -r 0xFFF1 -f 1 -V FFF1 -p 8000 -p 8001 -p 8002 -p 8003 -p 8004 -p 8005 -p 8006 -p 8007 -p 8008 -p 8009 -p 800A -p 800B -p 800C -p 800D -p 800E -p 800F -p 8010 -p 8011 -p 8012 -p 8013 -p 8014 -p 8015 -p 8016 -p 8017 -p 8018 -p 8019 -p 801A -p 801B -p 801C -p 801D -p 801E -p 801F -p 8020 -p 8021 -p 8022 -p 8023 -p 8024 -p 8025 -p 8026 -p 8027 -p 8028 -p 8029 -p 802A -p 802B -p 802C -p 802D -p 802E -p 802F -p 8030 -p 8031 -p 8032 -p 8033 -p 8034 -p 8035 -p 8036 -p 8037 -p 8038 -p 8039 -p 803A -p 803B -p 803C -p 803D -p 803E -p 803F -p 8040 -p 8041 -p 8042 -p 8043 -p 8044 -p 8045 -p 8046 -p 8047 -p 8048 -p 8049 -p 804A -p 804B -p 804C -p 804D -p 804E -p 804F -p 8050 -p 8051 -p 8052 -p 8053 -p 8054 -p 8055 -p 8056 -p 8057 -p 8058 -p 8059 -p 805A -p 805B -p 805C -p 805D -p 805E -p 805F -p 8060 -p 8061 -p 8062 -p 8063 -d 0016 -c "ZIG20142ZB330003-24" -l 0 -i 0 -n 2694 -t 0
-
-
2. Use the below command to see the generated CD
xxd -p -c 1024 cd_vid_present_pid_missing.txt
3082010506092a864886f70d010702a081f73081f4020103310d300b0609608648016503040201306106092a864886f70d010701a0540452152000012501f1ff3602050080182403162c04135a494732303134325a423333303030332d32342405002406002507942624080025090080360b10140b44cabbc5016577aa8b44ffb90fcca140fe66201818317d307b020103801462fa823359acfaa9963e1cfa140addf504f37160300b0609608648016503040201300a06082a8648ce3d0403020447304502205adea20956fcdce1213f2878da4a5f4a35907eaafa70efe367edc9cec23eb2f80221009b2482360c8713ccd2738150874f9b811ec2149c3ec1f579357219985ecc765a
@@ -225,7 +303,6 @@ tests:
sudo rm -rf /tmp/chip_*
sudo ./chip-all-clusters-app --dac_provider /cd.json
-
[1658320561.405436][4521:4521] CHIP:DL: HandlePlatformSpecificBLEEvent 32782
[1658320561.405489][4521:4521] CHIP:SVR: Failsafe timer expired
[1658320561.405546][4521:4521] CHIP:IN: SecureSession[0xaaaaec7c9e10]: MarkForEviction Type:1 LSID:27478
@@ -235,7 +312,6 @@ tests:
[1658320561.405815][4521:4521] CHIP:IN: Clearing BLE pending packets.
-
--->./chip-tool pairing ble-wifi 1 zigbee-thread matter123 20202021 3840 --trace_decode 1
[1658320561.366298][4126:4132] CHIP:CTL: Failed in verifying "Attestation Information" command received from the device: err 603. Look at AttestationVerificationResult enum to understand the errors
@@ -244,4 +320,111 @@ tests:
[1658320561.366481][4126:4132] CHIP:CTL: Going from commissioning step "AttestationVerification" with lastErr = "../../third_party/connectedhomeip/src/controller/CHIPDeviceController.cpp:1011: CHIP Error 0x000000AC: Internal error" -> "Cleanup"
[1658320561.366524][4126:4132] CHIP:CTL: Performing next commissioning step "Cleanup" with completion status = "../../third_party/connectedhomeip/src/controller/CHIPDeviceController.cpp:1011: CHIP Error 0x000000AC: Internal error"
[1658320561.366554][4126:4132] CHIP:CTL: Expiring failsafe on proxy 0xffff84000b60
+
+
+ Similarly for 2nd error condition follow the below steps
+
+ 1. To generate the CD use the below command
+ ./out/debug/chip-cert gen-cd -E vid-mismatch -C credentials/development/commissioner_dut/struct_cd_vid_mismatch/dac-Cert.der -K credentials/development/commissioner_dut/struct_cd_vid_mismatch/dac-Key.der --out dec_message_3.txt -f 1 -V FFF5 -p 8000 -p 8001 -p 8002 -p 8003 -p 8004 -p 8005 -p 8006 -p 8007 -p 8008 -p 8009 -p 800A -p 800B -p 800C -p 800D -p 800E -p 800F -p 8010 -p 8011 -p 8012 -p 8013 -p 8014 -p 8015 -p 8016 -p 8017 -p 8018 -p 8019 -p 801A -p 801B -p 801C -p 801D -p 801E -p 801F -p 8020 -p 8021 -p 8022 -p 8023 -p 8024 -p 8025 -p 8026 -p 8027 -p 8028 -p 8029 -p 802A -p 802B -p 802C -p 802D -p 802E -p 802F -p 8030 -p 8031 -p 8032 -p 8033 -p 8034 -p 8035 -p 8036 -p 8037 -p 8038 -p 8039 -p 803A -p 803B -p 803C -p 803D -p 803E -p 803F -p 8040 -p 8041 -p 8042 -p 8043 -p 8044 -p 8045 -p 8046 -p 8047 -p 8048 -p 8049 -p 804A -p 804B -p 804C -p 804D -p 804E -p 804F -p 8050 -p 8051 -p 8052 -p 8053 -p 8054 -p 8055 -p 8056 -p 8057 -p 8058 -p 8059 -p 805A -p 805B -p 805C -p 805D -p 805E -p 805F -p 8060 -p 8061 -p 8062 -p 8063 -d 0016 -c "ZIG20142ZB330003-24" -l 0 -i 0 -n 2694 -t 0
+
+
+ 2. Use the below command to see the generated CD
+ xxd -p -c 1024 dec_message_3.txt
+ 3082021906092a864886f70d010702a082020a30820206020103310d300b06096086480165030402013082017106092a864886f70d010701a08201620482015e152400012501f5ff3602050080050180050280050380050480050580050680050780050880050980050a80050b80050c80050d80050e80050f80051080051180051280051380051480051580051680051780051880051980051a80051b80051c80051d80051e80051f80052080052180052280052380052480052580052680052780052880052980052a80052b80052c80052d80052e80052f80053080053180053280053380053480053580053680053780053880053980053a80053b80053c80053d80053e80053f80054080054180054280054380054480054580054680054780054880054980054a80054b80054c80054d80054e80054f80055080055180055280055380055480055580055680055780055880055980055a80055b80055c80055d80055e80055f80056080056180056280056380182403162c04135a494732303134325a423333303030332d32342405002406002507942624080018317d307b02010380140b36c601086c7232d905bd8b1eb2ce75d9aa8eee300b0609608648016503040201300a06082a8648ce3d04030204473045022100afdf19ccdf9ebb227554c11b066d70d648d030cf49c9b16bfbb82f922af325da02201ea59fcb3fb51b99f40283b736486c141f4f136fec63983d72811b5804221d9f
+
+ 3. Copy the result from step 2 in json file and transfer the json file to Raspi That will be running chip-all-clusters-app
+
+ 4. Commission TH to DUT using the above generated CD by using dac_provider parameter
+
+ ./chip-all-clusters-app --dac_provider dec.json
+
+ [1660834197.222084][4765:4765] CHIP:DL: HandlePlatformSpecificBLEEvent 32782
+ [1660834197.222142][4765:4765] CHIP:SVR: Failsafe timer expired
+ [1660834197.222191][4765:4765] CHIP:IN: SecureSession[0xaaaad7a03e10]: MarkForEviction Type:1 LSID:52084
+ [1660834197.222242][4765:4765] CHIP:SC: SecureSession[0xaaaad7a03e10]: Moving from state "kActive" --> "kPendingEviction"
+ [1660834197.222392][4765:4765] CHIP:IN: SecureSession[0xaaaad7a03e10]: Released - Type:1 LSID:52084
+ [1660834197.222468][4765:4765] CHIP:SVR: Commissioning failed (attempt 1): ../../third_party/connectedhomeip/src/app/server/CommissioningWindowManager.cpp:73: CHIP Error 0x00000032: Timeout
+
+ ./chip-tool pairing ethernet 1 20202021 3840 fe80::e65f:1ff:fe0f:2753 5540 --trace_decode 1
+
+ [1660834197.161864][2546:2551] CHIP:CTL: Performing next commissioning step "AttestationVerification"
+ [1660834197.161918][2546:2551] CHIP:CTL: Verifying attestation
+ [1660834197.217691][2546:2551] CHIP:CTL: Failed in verifying "Attestation Information" command received from the device: err 601. Look at AttestationVerificationResult enum to understand the errors
+ [1660834197.218073][2546:2551] CHIP:CTL: Error on commissioning step "AttestationVerification": "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660834197.218139][2546:2551] CHIP:CTL: Failed to perform commissioning step 8
+ [1660834197.218207][2546:2551] CHIP:CTL: Going from commissioning step "AttestationVerification" with lastErr = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error" -> "Cleanup"
+ [1660834197.218295][2546:2551] CHIP:CTL: Performing next commissioning step "Cleanup" with completion status = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660834197.218358][2546:2551] CHIP:CTL: Expiring failsafe on proxy 0xffff80032330
+
+
+ Similary for 3rd error condition follow the below steps
+
+ 1. To generate the CD use the below command
+ ./out/debug/chip-cert gen-cd -E vid-mismatch -C credentials/development/commissioner_dut/struct_cd_vid_mismatch/dac-Cert.der -K credentials/development/commissioner_dut/struct_cd_vid_mismatch/dac-Key.der --out dec_message_3.txt -f 1 -V FFF5 -p 8000 -p 8001 -p 8002 -p 8003 -p 8004 -p 8005 -p 8006 -p 8007 -p 8008 -p 8009 -p 800A -p 800B -p 800C -p 800D -p 800E -p 800F -p 8010 -p 8011 -p 8012 -p 8013 -p 8014 -p 8015 -p 8016 -p 8017 -p 8018 -p 8019 -p 801A -p 801B -p 801C -p 801D -p 801E -p 801F -p 8020 -p 8021 -p 8022 -p 8023 -p 8024 -p 8025 -p 8026 -p 8027 -p 8028 -p 8029 -p 802A -p 802B -p 802C -p 802D -p 802E -p 802F -p 8030 -p 8031 -p 8032 -p 8033 -p 8034 -p 8035 -p 8036 -p 8037 -p 8038 -p 8039 -p 803A -p 803B -p 803C -p 803D -p 803E -p 803F -p 8040 -p 8041 -p 8042 -p 8043 -p 8044 -p 8045 -p 8046 -p 8047 -p 8048 -p 8049 -p 804A -p 804B -p 804C -p 804D -p 804E -p 804F -p 8050 -p 8051 -p 8052 -p 8053 -p 8054 -p 8055 -p 8056 -p 8057 -p 8058 -p 8059 -p 805A -p 805B -p 805C -p 805D -p 805E -p 805F -p 8060 -p 8061 -p 8062 -p 8063 -d 0016 -c "ZIG20142ZB330003-24" -l 0 -i 0 -n 2694 -t 0
+
+
+ 2. Use the below command to see the generated CD
+ xxd -p -c 1024 dec_message_3.txt
+ 3082021906092a864886f70d010702a082020a30820206020103310d300b06096086480165030402013082017106092a864886f70d010701a08201620482015e152400012501f5ff3602050080050180050280050380050480050580050680050780050880050980050a80050b80050c80050d80050e80050f80051080051180051280051380051480051580051680051780051880051980051a80051b80051c80051d80051e80051f80052080052180052280052380052480052580052680052780052880052980052a80052b80052c80052d80052e80052f80053080053180053280053380053480053580053680053780053880053980053a80053b80053c80053d80053e80053f80054080054180054280054380054480054580054680054780054880054980054a80054b80054c80054d80054e80054f80055080055180055280055380055480055580055680055780055880055980055a80055b80055c80055d80055e80055f80056080056180056280056380182403162c04135a494732303134325a423333303030332d32342405002406002507942624080018317d307b02010380140b36c601086c7232d905bd8b1eb2ce75d9aa8eee300b0609608648016503040201300a06082a8648ce3d04030204473045022100afdf19ccdf9ebb227554c11b066d70d648d030cf49c9b16bfbb82f922af325da02201ea59fcb3fb51b99f40283b736486c141f4f136fec63983d72811b5804221d9f
+
+ 3. Copy the result from step 2 in json file and transfer the json file to Raspi That will be running chip-all-clusters-app
+
+ 4. Commission TH to DUT using the above generated CD by using dac_provider parameter
+
+ ./chip-all-clusters-app --dac_provider dec.json
+
+ [1660834197.222084][4765:4765] CHIP:DL: HandlePlatformSpecificBLEEvent 32782
+ [1660834197.222142][4765:4765] CHIP:SVR: Failsafe timer expired
+ [1660834197.222191][4765:4765] CHIP:IN: SecureSession[0xaaaad7a03e10]: MarkForEviction Type:1 LSID:52084
+ [1660834197.222242][4765:4765] CHIP:SC: SecureSession[0xaaaad7a03e10]: Moving from state "kActive" --> "kPendingEviction"
+ [1660834197.222392][4765:4765] CHIP:IN: SecureSession[0xaaaad7a03e10]: Released - Type:1 LSID:52084
+ [1660834197.222468][4765:4765] CHIP:SVR: Commissioning failed (attempt 1): ../../third_party/connectedhomeip/src/app/server/CommissioningWindowManager.cpp:73: CHIP Error 0x00000032: Timeout
+
+ ./chip-tool pairing ethernet 1 20202021 3840 fe80::e65f:1ff:fe0f:2753 5540 --trace_decode 1
+
+ [1660834197.161864][2546:2551] CHIP:CTL: Performing next commissioning step "AttestationVerification"
+ [1660834197.161918][2546:2551] CHIP:CTL: Verifying attestation
+ [1660834197.217691][2546:2551] CHIP:CTL: Failed in verifying "Attestation Information" command received from the device: err 601. Look at AttestationVerificationResult enum to understand the errors
+ [1660834197.218073][2546:2551] CHIP:CTL: Error on commissioning step "AttestationVerification": "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660834197.218139][2546:2551] CHIP:CTL: Failed to perform commissioning step 8
+ [1660834197.218207][2546:2551] CHIP:CTL: Going from commissioning step "AttestationVerification" with lastErr = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error" -> "Cleanup"
+ [1660834197.218295][2546:2551] CHIP:CTL: Performing next commissioning step "Cleanup" with completion status = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660834197.218358][2546:2551] CHIP:CTL: Expiring failsafe on proxy 0xffff80032330
+
+
+ Similary for 4th error condition follow the below steps
+
+ 1. To generate the CD use the below command
+ ./out/debug/chip-cert gen-cd -E vid-mismatch -C credentials/development/commissioner_dut/struct_cd_pid_array_missing/dac-Cert.der -K credentials/development/commissioner_dut/struct_cd_pid_array_missing/dac-Key.der --out dec_message_5.txt -f 1 -V FFF1 -p 8000 -p 8001 -p 8002 -p 8003 -p 8004 -p 8005 -p 8006 -p 8007 -p 8008 -p 8009 -p 800A -p 800B -p 800C -p 800D -p 800E -p 800F -p 8010 -p 8011 -p 8012 -p 8013 -p 8014 -p 8015 -p 8016 -p 8017 -p 8018 -p 8019 -p 801A -p 801B -p 801C -p 801D -p 801E -p 801F -p 8020 -p 8021 -p 8022 -p 8023 -p 8024 -p 8025 -p 8026 -p 8027 -p 8028 -p 8029 -p 802A -p 802B -p 802C -p 802D -p 802E -p 802F -p 8030 -p 8031 -p 8032 -p 8033 -p 8034 -p 8035 -p 8036 -p 8037 -p 8038 -p 8039 -p 803A -p 803B -p 803C -p 803D -p 803E -p 803F -p 8040 -p 8041 -p 8042 -p 8043 -p 8044 -p 8045 -p 8046 -p 8047 -p 8048 -p 8049 -p 804A -p 804B -p 804C -p 804D -p 804E -p 804F -p 8050 -p 8051 -p 8052 -p 8053 -p 8054 -p 8055 -p 8056 -p 8057 -p 8058 -p 8059 -p 805A -p 805B -p 805C -p 805D -p 805E -p 805F -p 8060 -p 8061 -p 8062 -p 8063 -d 0016 -c "ZIG20142ZB330003-24" -l 0 -i 0 -n 2694 -t 0
+
+
+ 2. Use the below command to see the generated CD
+ xxd -p -c 1024 dec_message_5.txt
+ 3082021906092a864886f70d010702a082020a30820206020103310d300b06096086480165030402013082017106092a864886f70d010701a08201620482015e152400012501f1ff3602050080050180050280050380050480050580050680050780050880050980050a80050b80050c80050d80050e80050f80051080051180051280051380051480051580051680051780051880051980051a80051b80051c80051d80051e80051f80052080052180052280052380052480052580052680052780052880052980052a80052b80052c80052d80052e80052f80053080053180053280053380053480053580053680053780053880053980053a80053b80053c80053d80053e80053f80054080054180054280054380054480054580054680054780054880054980054a80054b80054c80054d80054e80054f80055080055180055280055380055480055580055680055780055880055980055a80055b80055c80055d80055e80055f80056080056180056280056380182403162c04135a494732303134325a423333303030332d32342405002406002507942624080018317d307b0201038014e84b969e3104277c0a25ec2fd2e014cf6cabbc50300b0609608648016503040201300a06082a8648ce3d04030204473045022005a46eb5d9ba996c44abcad5498a65898a8a7711bc91b25b24949b154949b046022100873aaac936ef14cf795c59629603d6d9ffa193f3e6d13082b47b0d018b21d60f
+
+ 3. Copy the result from step 2 in json file and transfer the json file to Raspi That will be running chip-all-clusters-app
+
+ 4. Commission TH to DUT using the above generated CD by using dac_provider parameter
+
+ ./chip-all-clusters-app --dac_provider dec_1.json
+
+ [1660834938.999182][4811:4811] CHIP:DL: HandlePlatformSpecificBLEEvent 32782
+ [1660834938.999232][4811:4811] CHIP:SVR: Failsafe timer expired
+ [1660834938.999276][4811:4811] CHIP:IN: SecureSession[0xaaaae51efe10]: MarkForEviction Type:1 LSID:59289
+ [1660834938.999321][4811:4811] CHIP:SC: SecureSession[0xaaaae51efe10]: Moving from state "kActive" --> "kPendingEviction"
+ [1660834938.999452][4811:4811] CHIP:IN: SecureSession[0xaaaae51efe10]: Released - Type:1 LSID:59289
+ [1660834938.999519][4811:4811] CHIP:SVR: Commissioning failed (attempt 1): ../../third_party/connectedhomeip/src/app/server/CommissioningWindowManager.cpp:73: CHIP Error 0x00000032: Timeout
+
+
+ ./chip-tool pairing ethernet 1 20202021 3840 fe80::e65f:1ff:fe0f:2753 5540 --trace_decode 1
+
+ [1660834938.937220][2589:2594] CHIP:CTL: Commissioning stage next step: "SendAttestationRequest" -> "AttestationVerification"
+ [1660834938.937294][2589:2594] CHIP:CTL: Performing next commissioning step "AttestationVerification"
+ [1660834938.937346][2589:2594] CHIP:CTL: Verifying attestation
+ [1660834938.995809][2589:2594] CHIP:CTL: Failed in verifying "Attestation Information" command received from the device: err 601. Look at AttestationVerificationResult enum to understand the errors
+ [1660834938.996010][2589:2594] CHIP:CTL: Error on commissioning step "AttestationVerification": "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660834938.996077][2589:2594] CHIP:CTL: Failed to perform commissioning step 8
+ [1660834938.996145][2589:2594] CHIP:CTL: Going from commissioning step "AttestationVerification" with lastErr = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error" -> "Cleanup"
+ [1660834938.996234][2589:2594] CHIP:CTL: Performing next commissioning step "Cleanup" with completion status = "../../src/controller/CHIPDeviceController.cpp:1018: CHIP Error 0x000000AC: Internal error"
+ [1660834938.996293][2589:2594] CHIP:CTL: Expiring failsafe on proxy 0xffff84032330
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DA_1_5.yaml b/src/app/tests/suites/certification/Test_TC_DA_1_5.yaml
index 1ab2e84c96a65e..717ee8f06dc1d0 100644
--- a/src/app/tests/suites/certification/Test_TC_DA_1_5.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DA_1_5.yaml
@@ -38,7 +38,7 @@ tests:
"TH1 establishes a CASE session to the DUT and saves the attestation
challenge as attestation_challenge"
verification: |
- Verify in TH log:
+ Verify case session is established on TH(chip-tool) log:
[1657081321.112631][2354:2359] CHIP:CTL: Operational credentials provisioned on device 0xffff68000b60
[1657081321.112706][2354:2359] CHIP:TOO: Secure Pairing Success
@@ -51,7 +51,7 @@ tests:
verification: |
./chip-tool operationalcredentials certificate-chain-request 1 1 0
- Verify CertificateChainResponse in TH log:
+ Verify CertificateChainResponse on TH(chip-tool) log:
[1658393690.991117][3329:3334] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0003
[1658393690.991168][3329:3334] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0003
@@ -67,7 +67,7 @@ tests:
verification: |
./chip-tool generalcommissioning arm-fail-safe 900 0 1 0
- Verify ArmFailSafeResponse in TH log :
+ Verify ArmFailSafeResponse on TH(chip-tool) log :
[1658393763.804225][3345:3350] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
[1658393763.804288][3345:3350] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0001
[1658393763.804376][3345:3350] CHIP:TOO: ArmFailSafeResponse: {
@@ -86,7 +86,7 @@ tests:
./chip-tool operationalcredentials csrrequest hex:AFB3070A828B7A9CABEE888688F867683C084E6E4B3F13CDEDF17EEF05A9F352 1 0
- Verify CSRResponse in TH log:
+ Verify CSRResponse on TH(chip-tool) log:
[1658393935.238621][3359:3364] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0005
[1658393935.238726][3359:3364] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0005
[1658393935.238839][3359:3364] CHIP:TOO: CSRResponse: {
@@ -111,13 +111,18 @@ tests:
verification step to be updated.
disabled: true
+ - label: ""
+ verification: |
+ verification step to be updated.
+ disabled: true
+
- label:
"TH1 sends an ArmFailSafe command to the General Commissioning cluster
with the ExpiryLengthSeconds field set to 0"
verification: |
./chip-tool generalcommissioning arm-fail-safe 0 0 1 0
- Verify ArmFailSafeResponse in TH log :
+ Verify ArmFailSafeResponse on TH(chip-tool) log :
[1658394142.961248][3378:3383] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
[1658394142.961297][3378:3383] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0001
@@ -133,7 +138,7 @@ tests:
verification: |
./chip-tool generalcommissioning arm-fail-safe 900 0 1 0
- Verify ArmFailSafeResponse in TH log :
+ Verify ArmFailSafeResponse on TH(chip-tool) log :
[1658393763.804225][3345:3350] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
[1658393763.804288][3345:3350] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0001
@@ -149,7 +154,7 @@ tests:
verification: |
./chip-tool operationalcredentials csrrequest hex:AFB3070A828B7A9CABEE888688F867683C084E6E4B3F13CDEDF17EEF05A9 1 0
- Verify General error INVALID_COMMAND in TH log:
+ Verify General error INVALID_COMMAND in TH(chip-tool) log:
[1658394196.798739][3387:3392] CHIP:EM: Removed CHIP MessageCounter:192677922 from RetransTable on exchange 13029i
[1658394196.798787][3387:3392] CHIP:DMG: ICR moving to [ResponseRe]
[1658394196.798859][3387:3392] CHIP:DMG: InvokeResponseMessage =
@@ -191,7 +196,7 @@ tests:
verification: |
./chip-tool generalcommissioning arm-fail-safe 0 0 1 0
- Verify ArmFailSafeResponse in TH log :
+ Verify ArmFailSafeResponse in TH(chip-tool) log :
[1658394142.961248][3378:3383] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
[1658394142.961297][3378:3383] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0001
@@ -207,7 +212,7 @@ tests:
verification: |
./chip-tool pairing open-commissioning-window 1 1 400 2000 3840
- Verify TH1 open commissiong window
+ Verify manual pairing code on TH(chip-tool) log
[1658394279.082812][3401:3407] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0000 Status=0x0
[1658394279.082900][3401:3407] CHIP:CTL: Successfully opened pairing window on the device
@@ -217,9 +222,9 @@ tests:
- label: "TH2 fully commissions the DUT"
verification: |
- ./chip-tool pairing code 2 34941319897 --trace_decode 1
+ ./chip-tool pairing code 2 34941319897 --trace_decode 1 --commissioner-name beta
- Verify in TH2 is commissioned successfully in log:
+ Verify TH2 is commissioned successfully on TH2(chip-tool) log:
[1658394409.242162][2474:2479] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0005
[1658394409.242204][2474:2479] CHIP:CTL: Received CommissioningComplete response, errorCode=0
[1658394409.242237][2474:2479] CHIP:CTL: Successfully finished commissioning step "SendComplete"
@@ -233,9 +238,9 @@ tests:
"TH2 reads the NOCs attribute from the Node Operational Credentials
cluster using a non-fabric-scoped read"
verification: |
- ./chip-tool operationalcredentials read nocs 2 0
+ ./chip-tool operationalcredentials read nocs 2 0 --commissioner-name beta
- Verify that there are two element in the list in TH2 log:
+ Verify that there are two element in the list on TH2(chip-tool) log:
[1658394451.122862][2491:2496] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0000 DataVersion: 1660110007
[1658394451.126674][2491:2496] CHIP:TOO: NOCs: 1 entries
[1658394451.126806][2491:2496] CHIP:TOO: [1]: {
@@ -247,13 +252,13 @@ tests:
- label: "TH2 extracts the pubic key from noc1 and noc2"
verification: |
- Verify both public key of noc1 and noc 2 are different
+ Verify both public key of noc1 and noc 2 are different in TH (all-clusters-app)
To extract public key follow the below step
1. Copy the NOCVALUE of TH1 in commissioning log of TH1
2. save it in a file
3. give below command to get public key
- ./out/debug/chip-cert print-cert noc_1.txt
+ ./out/debug/chip-cert print-cert noc_1.txt --commissioner-name beta
---> The extracted public key of noc1 is
CHIP Certificate:
@@ -280,6 +285,9 @@ tests:
BA D5 4F AC 3F F0 81 6E 0B D3 E0 BE C9 7E 8E FE
FB 7A 28 67 8E BA 58 8F D9 74 F1 4D C4 82 C5 F4
+
+
+
--->Follow the same steps for noc2
The generated public key for noc2 is
CHIP Certificate:
diff --git a/src/app/tests/suites/certification/Test_TC_DA_1_6.yaml b/src/app/tests/suites/certification/Test_TC_DA_1_6.yaml
index 8881c34f0fba45..16dee77a88b348 100644
--- a/src/app/tests/suites/certification/Test_TC_DA_1_6.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DA_1_6.yaml
@@ -26,15 +26,14 @@ config:
tests:
- label: "Note"
verification: |
- Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
- - label:
- "Pre-Conditions 1. Device Attestation is completed 2. PAI, DAC
- certificates are obtained and validated against externally obtained
- PAA certificate 3. Operations happen within the Fail-Safe Context"
+ - label: "Pre-Conditions"
verification: |
- verification step to be updated.
+ 1. Device Attestation is completed
+ 2. PAI, DAC certificates are obtained and validated against externally obtained PAA certificate
+ 3. Operations happen within the Fail-Safe Context
disabled: true
- label: "DUT completes the attestation procedure"
diff --git a/src/app/tests/suites/certification/Test_TC_DA_1_7.yaml b/src/app/tests/suites/certification/Test_TC_DA_1_7.yaml
index 471121b5640352..f0e874045bb00b 100644
--- a/src/app/tests/suites/certification/Test_TC_DA_1_7.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DA_1_7.yaml
@@ -57,6 +57,31 @@ tests:
[1657774756.281289][7964:7969] CHIP:TOO: certificate: 308201CB30820171A003020102020856AD8222AD945B64300A06082A8648CE3D04030230303118301606035504030C0F4D617474657220546573742050414131143012060A2B0601040182A27C02010C04464646313020170D3232303230353030303030305A180F39393939313233313233353935395A303D3125302306035504030C1C4D6174746572204465762050414920307846464631206E6F2050494431143012060A2B0601040182A27C02010C04464646313059301306072A8648CE3D020106082A8648CE3D03010703420004419A9315C2173E0C8C876D03CCFC944852647F7FEC5E5082F4059928ECA894C594151309AC631E4CB03392AF684B0BAFB7E65B3B8162C2F52BF931B8E77AAA82A366306430120603551D130101FF040830060101FF020100300E0603551D0F0101FF040403020106301D0603551D0E0416041463540E47F64B1C38D13884A462D16C195D8FFB3C301F0603551D230418301680146AFD22771F511FECBF1641976710DCDC31A1717E300A06082A8648CE3D0403020348003045022100B2EF27F49AE9B50FB91EEAC94C4D0BDBB8D7929C6C
[1657774756.281357][7964:7969] CHIP:TOO: ...........: B88FACE529368D12054C0C0220655DC92B86BD909882A6C62177B825D7D05EDBE7C22F9FEA71220E7EA703F891
[1657774756.281388][7964:7969] CHIP:TOO: }
+
+ The log has certificate details (starting with ---BEGIN CERTIFICATE and ending with ---END CERTIFICATE ) as highlighted below , save the certificate in .pem file format. Open editor on your TH , save that in file, example: pai.pem
+
+ [1660952198157] [17290:5268348] CHIP: [DMG] Encrypted Payload (531 bytes) =
+ [1660952198157] [17290:5268348] CHIP: [DMG] {
+ [1660952198157] [17290:5268348] CHIP: [DMG] data = 001c39000820730541fea9f0e9b148d6c50bdd30d20acef8a0ee67b0458c5fe377d9793092b83e0670ad46770ce44154de4d131731f7065b8329d08be8a280db77f8c12b48300c5fb009c0d3f4b0b1b0a8f4523e319db11ee5d8eb679325c2982248aa5c75b474c50f3bbb0f617ab06a04df403557a564bac4cf08c56fd2eb951d4be875f290dd7b9da01e558fc85ad7b4922d804029410735cae9910a6df282145059b3228e9349467ddc917a268638fa7882a3f7b278355ec848c2ac3f466d3cca746ca416733b85dc6bd8e99ecd35bfc0d3b85f28db6e897636bec89fc41ee2eba78bc7ca11fe959a913ec37901b30a193e6665672e8159e194ca133831251205bca75c00dd8b10160a5b6b814e0cc4fc52f48cc2b68819212bcf71ba11785d2c4628363718e9943216a3f4a3f28adcb988997af982a48d793cd9bd0b62648aa2ffed8f373cd7d5ca86ae703415016adf45a1e8ee26a62d023a6a09accca619ca28e3db15cd4ee5b850608c8319e166dc540877683d960d4b9fde0ae4042096ce696532e9d6b8c96f030def011e59a8762753fc0d50ecf30842377249f78c9b3ee164f5f7988a777a4a1ca407f40923737480eca5e0181977b6048d8835b3d3cedd0d36b9c39098e49048c31db9b48decd744f3121b0260e07b9afe9a8a71d9c14a230e48a1b56894c0453b9779bc8fe269e072ee842aa17821ee09b83cfab5e852918a37bbc1414b7f62cd5dc4c254bfa4
+ [1660952198157] [17290:5268348] CHIP: [DMG] buffer_ptr = 140233457951312
+ [1660952198157] [17290:5268348] CHIP: [DMG] }
+ [1660952198157] [17290:5268348] CHIP: [DMG]
+ [1660952198157] [17290:5268348] CHIP: [DMG] DAC/PAI (463) =
+ [1660952198157] [17290:5268348] CHIP: [DMG] {
+ -----BEGIN CERTIFICATE-----
+ MIIByzCCAXGgAwIBAgIIVq2CIq2UW2QwCgYIKoZIzj0EAwIwMDEYMBYGA1UEAwwP
+ TWF0dGVyIFRlc3QgUEFBMRQwEgYKKwYBBAGConwCAQwERkZGMTAgFw0yMjAyMDUw
+ MDAwMDBaGA85OTk5MTIzMTIzNTk1OVowPTElMCMGA1UEAwwcTWF0dGVyIERldiBQ
+ QUkgMHhGRkYxIG5vIFBJRDEUMBIGCisGAQQBgqJ8AgEMBEZGRjEwWTATBgcqhkjO
+ PQIBBggqhkjOPQMBBwNCAARBmpMVwhc+DIyHbQPM/JRIUmR/f+xeUIL0BZko7KiU
+ xZQVEwmsYx5MsDOSr2hLC6+35ls7gWLC9Sv5MbjneqqCo2YwZDASBgNVHRMBAf8E
+ CDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUY1QOR/ZLHDjROISk
+ YtFsGV2P+zwwHwYDVR0jBBgwFoAUav0idx9RH+y/FkGXZxDc3DGhcX4wCgYIKoZI
+ zj0EAwIDSAAwRQIhALLvJ/Sa6bUPuR7qyUxNC9u415KcbLiPrOUpNo0SBUwMAiBl
+ Xckrhr2QmIKmxiF3uCXX0F7b58Ivn+pxIg5+pwP4kQ==
+ -----END CERTIFICATE-----
+ [1660952198157] [17290:5268348] CHIP: [DMG] }
+ [1660952198157] [17290:5268348] CHIP: [DMG]
disabled: true
- label:
@@ -77,153 +102,49 @@ tests:
[1657774717.722181][7956:7961] CHIP:TOO: certificate: 308201E73082018EA003020102020869CDF10DE9E54ED1300A06082A8648CE3D040302303D3125302306035504030C1C4D6174746572204465762050414920307846464631206E6F2050494431143012060A2B0601040182A27C02010C04464646313020170D3232303230353030303030305A180F39393939313233313233353935395A30533125302306035504030C1C4D61747465722044657620444143203078464646312F30783830303131143012060A2B0601040182A27C02010C044646463131143012060A2B0601040182A27C02020C04383030313059301306072A8648CE3D020106082A8648CE3D03010703420004463AC69342910A0E5588FC6FF56BB63E62ECCECB148F7D4EB03EE552601415767D16A5C663F793E49123260B8297A7CD7E7CFC7B316B39D98E90D29377738E82A360305E300C0603551D130101FF04023000300E0603551D0F0101FF040403020780301D0603551D0E0416041488DDE7B300382932CFF734C04624810F44168A6F301F0603551D2304183016801463540E47F64B1C38D13884A462D16C195D8FFB3C300A06082A8648CE3D040302
[1657774717.722269][7956:7961] CHIP:TOO: ...........: 034700304402200127A27B4B44610EE2FCDC4D2B7885563660BC0F76F17219ED6A08DFB2B3C1CD02206B59E0AF45F3EB2A85B919D35731528C6028C415239545E108E4E54E70971353
[1657774717.722297][7956:7961] CHIP:TOO: }
- disabled: true
- - label: "TH extracts the Authority Key Identifier from the PAI certificate"
- verification: |
- During commissioning we will get PAI certificate, see on TH(chip-tool) log:
- [1659415376.883870][2666:2671] CHIP:CTL: Performing next commissioning step "SendPAICertificateRequest"
- [1659415376.883925][2666:2671] CHIP:CTL: Sending request for PAI certificate
- [1659415376.884015][2666:2671] CHIP:CTL: Sending Certificate Chain request to 0xffffa0000b60 device
- [1659415376.884167][2666:2671] CHIP:DMG: ICR moving to [AddingComm]
- [1659415376.884302][2666:2671] CHIP:DMG: ICR moving to [AddedComma]
- [1659415376.884867][2666:2671] CHIP:IN: Prepared secure message 0xffffb37ec8d8 to 0xFFFFFFFB00000000 (0) of type 0x8 and protocolId (0, 1) on exchange 61632i with MessageCounter:72933899.
- [1659415376.884965][2666:2671] CHIP:IN: Sending encrypted msg 0xffffb37ec8d8 with MessageCounter:72933899 to 0xFFFFFFFB00000000 (0) at monotonic time: 0000000000161D55 msec
- [1659415376.885796][2666:2671] CHIP:DMG: >> to BLE | 72933899 | [Interaction Model (1) / InvokeCommandRequest (0x08) / Session = 384 / Exchange = 61632]
- [1659415376.885890][2666:2671] CHIP:DMG: Header Flags =
- [1659415376.885944][2666:2671] CHIP:DMG: {
- [1659415376.886028][2666:2671] CHIP:DMG: Exchange (0x01) =
- [1659415376.886081][2666:2671] CHIP:DMG: {
- [1659415376.886154][2666:2671] CHIP:DMG: Initiator = true
- [1659415376.886206][2666:2671] CHIP:DMG: }
- [1659415376.886296][2666:2671] CHIP:DMG: }
- [1659415376.886350][2666:2671] CHIP:DMG:
- [1659415376.886438][2666:2671] CHIP:DMG: Encrypted Payload (62 bytes) =
- [1659415376.886492][2666:2671] CHIP:DMG: {
- [1659415376.886542][2666:2671] CHIP:DMG: data = 008001000be258046e751fb56b97dabcc7ee6b6611ede33a66461e188834bb1fe5b6332edb4a3896d32bce2eb59dee722e070c4426af77c82dfca14619bb
- [1659415376.886616][2666:2671] CHIP:DMG: buffer_ptr = 281473366182720
- [1659415376.886666][2666:2671] CHIP:DMG: }
- [1659415376.886714][2666:2671] CHIP:DMG:
- [1659415376.886900][2666:2671] CHIP:DMG: InvokeRequestMessage =
- [1659415376.886962][2666:2671] CHIP:DMG: {
- [1659415376.887039][2666:2671] CHIP:DMG: suppressResponse = false,
- [1659415376.887103][2666:2671] CHIP:DMG: timedRequest = false,
- [1659415376.887162][2666:2671] CHIP:DMG: InvokeRequests =
- [1659415376.887234][2666:2671] CHIP:DMG: [
- [1659415376.887312][2666:2671] CHIP:DMG: CommandDataIB =
- [1659415376.887380][2666:2671] CHIP:DMG: {
- [1659415376.887442][2666:2671] CHIP:DMG: CommandPathIB =
- [1659415376.887538][2666:2671] CHIP:DMG: {
- [1659415376.887633][2666:2671] CHIP:DMG: EndpointId = 0x0,
- [1659415376.887874][2666:2671] CHIP:DMG: ClusterId = 0x3e,
- [1659415376.888039][2666:2671] CHIP:DMG: CommandId = 0x2,
- [1659415376.888125][2666:2671] CHIP:DMG: },
- [1659415376.888225][2666:2671] CHIP:DMG:
- [1659415376.888289][2666:2671] CHIP:DMG: CommandFields =
- [1659415376.888384][2666:2671] CHIP:DMG: {
- [1659415376.888478][2666:2671] CHIP:DMG: 0x0 = 2,
- [1659415376.888560][2666:2671] CHIP:DMG: },
- [1659415376.888655][2666:2671] CHIP:DMG: },
- [1659415376.888728][2666:2671] CHIP:DMG:
- [1659415376.888806][2666:2671] CHIP:DMG: ],
- [1659415376.888877][2666:2671] CHIP:DMG:
- [1659415376.888955][2666:2671] CHIP:DMG: InteractionModelRevision = 1
- [1659415376.889012][2666:2671] CHIP:DMG: },
- [1659415376.889086][2666:2671] CHIP:DMG:
- [1659415376.889368][2666:2671] CHIP:DMG: ICR moving to [CommandSen]
- [1659415376.889523][2666:2671] CHIP:DMG: ICR moving to [AwaitingDe]
- [1659415376.972895][2666:2671] CHIP:DL: HandlePlatformSpecificBLEEvent 16387
- [1659415377.021227][2666:2669] CHIP:DL: Indication received, conn = 0xffffa803b9b0
- [1659415377.021488][2666:2671] CHIP:DL: HandlePlatformSpecificBLEEvent 16389
- [1659415377.122119][2666:2669] CHIP:DL: Indication received, conn = 0xffffa803b9b0
- [1659415377.122505][2666:2671] CHIP:DL: HandlePlatformSpecificBLEEvent 16389
- [1659415377.217641][2666:2669] CHIP:DL: Indication received, conn = 0xffffa803b9b0
- [1659415377.217905][2666:2671] CHIP:DL: HandlePlatformSpecificBLEEvent 16389
- [1659415377.219135][2666:2671] CHIP:DMG: << from BLE | 199585160 | [Interaction Model (1) / InvokeCommandResponse (0x09) / Session = 46479 / Exchange = 61632]
- [1659415377.219238][2666:2671] CHIP:DMG: Header Flags =
- [1659415377.219295][2666:2671] CHIP:DMG: {
- [1659415377.219391][2666:2671] CHIP:DMG: }
- [1659415377.219446][2666:2671] CHIP:DMG:
- [1659415377.219518][2666:2671] CHIP:DMG: Encrypted Payload (527 bytes) =
- [1659415377.219573][2666:2671] CHIP:DMG: {
- [1659415377.219626][2666:2671] CHIP:DMG: data = 008fb500886de50b9dd1c80f8f48187dc9457d6066ed57c1f15550aefb6a675573c3fcff99cc266b26bdbd97c5ac460ff50e513fd8ef02f39294c2e79b507b0d7b6342caea806048b1c64804aae7bb9d4cdb04d4c7c4d345788e332256c05e7ea38eddd7693e4a39cdfe625688f0101cf16af6f5281049b25e47e6931b06c832d9a014a8248d7cfe31d8b75ebb7805b511293591caa108030939b43b951ad2a164692b051201f9c777e769b9632f05b94bc1990718ec3d2e0fa0161da28ec39bc51017c519e994e9fbbc68693e86ae9fa72618a5a0bc9a133e919bf61ca0805a90a09807c5c4b88329bd1d99149788c5464650dc3b7223e11f4d5a487c0b589453f725b035b543b0159801bee756dcd835832af45402931d73f4977371c90a3fd406905b278fefccf607e0699cac0b082d062b563f17d6e9438720a885f6b5d0dd035d652fd9b88790b1e79995030977f4423139eff3d2e36915065474ea1996705bd63b40395344e402c191e54c1c136c4daa31040ea09cc39c5804dd4203763d05e30d2cfd50ed84e12fd01ecf9c49a4bf7fe73c13416af1cc8bed4f5f2e8919f5724d698990115f97c08f43f9dd463883b53d09e6f888ac8a8d8ba91bd65b242ae049cccd4af6fdcfa402877ba10fb560008d07054deb1e9f1a39fd9110930e1e620fc64f999255a52f8064dc1c83fe6aa35de56c44850e932c82919c1f1af174afa75f3ef77c8b08fcace33883
- [1659415377.219729][2666:2671] CHIP:DMG: buffer_ptr = 281473366176768
- [1659415377.219780][2666:2671] CHIP:DMG: }
- [1659415377.219830][2666:2671] CHIP:DMG:
- [1659415377.220104][2666:2671] CHIP:DMG: DAC/PAI (463) =
- [1659415377.220220][2666:2671] CHIP:DMG: {
+ The log has certificate details (starting with ---BEGIN CERTIFICATE and ending with ---END CERTIFICATE ) as highlighted below , save the certificate in .pem file format. Open editor on your TH , save that in file , example: dac.pem
+
+ 1660951953700] [17233:5262446] CHIP: [DMG] data = 0068e9001f1f110e4f813e5e997100f2b1c69eb72b23bd4e69002a0485ecc741a33706d82f20c8ea99d6b830b2f60ed69c07cecba48142c7f3c8ded67e9ed878b5d68fe28facaf111ee3ce4510fc9b00ad13d57c2a7bd8bdcf868ca8e0aa0bb96c873862f32f12a32207a22e33fe3d8124435207df4f5747414a21b9674685a486f0d3c0aae5d96ba2f02067be2221b98415244522a221f570b62c21a83d88a9ee1a085c5a8c8f5d598f7cb168b4b36ca2306a4554a062e058dba25e7058a4e2f9f976fc71e3d6fcdafb40346d74600e033100243c0837f30f2e6fb337582f6a7d122ffc8943bbc17ba447f80fbac538609c9822d0ab95f6c831071a68ccc9cb1e5180f4daf0a1ae16a33ee3ac7d4754d5f6dca657e44f5a1f9405e668ce848132bb62b1fab6f5cd9aa2d4357fd14e516f18f5c158373f21479aef4c290477141e6d1894901a1c88db870fc1fc005be219dce3f708868ba532c657cf98b8d154d569d6f3de7639cdf72cc43af330ddbac0b910a839416e38a8b305a7eb1b069d274c8c31868363615adb08bfe99a4353f34927785acdb8c1619e1d4f8574491a3e77a46e6c5b47bdd722adfcb00937be7f9ba8c53a8188d42795439a435e6f6a26288c9278981dcac442d480ee40397e2a808d4ae55139562111120bd69411ef301d1b6caf3a4793d143c57092d4944ca93e848f553a19145dc6c02a0b68a67ea83b66afd10988737a753ea8d1f49ca534d12590bf7c3fddd0d7d00baf0121c883a743fcd289dab3d2a8e5131bd987
+ [1660951953700] [17233:5262446] CHIP: [DMG] buffer_ptr = 140355398986080
+ [1660951953700] [17233:5262446] CHIP: [DMG] }
+ [1660951953700] [17233:5262446] CHIP: [DMG]
+ [1660951953700] [17233:5262446] CHIP: [DMG] DAC/PAI (491) =
+ [1660951953700] [17233:5262446] CHIP: [DMG] {
-----BEGIN CERTIFICATE-----
- MIIByzCCAXGgAwIBAgIIVq2CIq2UW2QwCgYIKoZIzj0EAwIwMDEYMBYGA1UEAwwP
- TWF0dGVyIFRlc3QgUEFBMRQwEgYKKwYBBAGConwCAQwERkZGMTAgFw0yMjAyMDUw
- MDAwMDBaGA85OTk5MTIzMTIzNTk1OVowPTElMCMGA1UEAwwcTWF0dGVyIERldiBQ
- QUkgMHhGRkYxIG5vIFBJRDEUMBIGCisGAQQBgqJ8AgEMBEZGRjEwWTATBgcqhkjO
- PQIBBggqhkjOPQMBBwNCAARBmpMVwhc+DIyHbQPM/JRIUmR/f+xeUIL0BZko7KiU
- xZQVEwmsYx5MsDOSr2hLC6+35ls7gWLC9Sv5MbjneqqCo2YwZDASBgNVHRMBAf8E
- CDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUY1QOR/ZLHDjROISk
- YtFsGV2P+zwwHwYDVR0jBBgwFoAUav0idx9RH+y/FkGXZxDc3DGhcX4wCgYIKoZI
- zj0EAwIDSAAwRQIhALLvJ/Sa6bUPuR7qyUxNC9u415KcbLiPrOUpNo0SBUwMAiBl
- Xckrhr2QmIKmxiF3uCXX0F7b58Ivn+pxIg5+pwP4kQ==
+ MIIB5zCCAY6gAwIBAgIIac3xDenlTtEwCgYIKoZIzj0EAwIwPTElMCMGA1UEAwwc
+ TWF0dGVyIERldiBQQUkgMHhGRkYxIG5vIFBJRDEUMBIGCisGAQQBgqJ8AgEMBEZG
+ RjEwIBcNMjIwMjA1MDAwMDAwWhgPOTk5OTEyMzEyMzU5NTlaMFMxJTAjBgNVBAMM
+ HE1hdHRlciBEZXYgREFDIDB4RkZGMS8weDgwMDExFDASBgorBgEEAYKifAIBDARG
+ RkYxMRQwEgYKKwYBBAGConwCAgwEODAwMTBZMBMGByqGSM49AgEGCCqGSM49AwEH
+ A0IABEY6xpNCkQoOVYj8b/Vrtj5i7M7LFI99TrA+5VJgFBV2fRalxmP3k+SRIyYL
+ gpenzX58/HsxaznZjpDSk3dzjoKjYDBeMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/
+ BAQDAgeAMB0GA1UdDgQWBBSI3eezADgpMs/3NMBGJIEPRBaKbzAfBgNVHSMEGDAW
+ gBRjVA5H9kscONE4hKRi0WwZXY/7PDAKBggqhkjOPQQDAgNHADBEAiABJ6J7S0Rh
+ DuL83E0reIVWNmC8D3bxchntagjfsrPBzQIga1ngr0Xz6yqFuRnTVzFSjGAoxBUj
+ lUXhCOTlTnCXE1M=
-----END CERTIFICATE-----
- [1659415377.220439][2666:2671] CHIP:DMG: }
- [1659415377.220490][2666:2671] CHIP:DMG:
- [1659415377.220553][2666:2671] CHIP:DMG:
- [1659415377.220635][2666:2671] CHIP:DMG: Additional Fields =
- [1659415377.220689][2666:2671] CHIP:DMG: {
- [1659415377.220748][2666:2671] CHIP:DMG: peer_address = BLE
- [1659415377.220801][2666:2671] CHIP:DMG: }
- [1659415377.220850][2666:2671] CHIP:DMG:
- [1659415377.220914][2666:2671] CHIP:EM: Received message of type 0x9 with protocolId (0, 1) and MessageCounter:199585160 on exchange 61632i
- [1659415377.220977][2666:2671] CHIP:EM: Found matching exchange: 61632i, Delegate: 0xffffa803c898
- [1659415377.221071][2666:2671] CHIP:DMG: ICR moving to [ResponseRe]
- [1659415377.221162][2666:2671] CHIP:DMG: InvokeResponseMessage =
- [1659415377.221222][2666:2671] CHIP:DMG: {
- [1659415377.221279][2666:2671] CHIP:DMG: suppressResponse = false,
- [1659415377.221339][2666:2671] CHIP:DMG: InvokeResponseIBs =
- [1659415377.221413][2666:2671] CHIP:DMG: [
- [1659415377.221473][2666:2671] CHIP:DMG: InvokeResponseIB =
- [1659415377.221551][2666:2671] CHIP:DMG: {
- [1659415377.221615][2666:2671] CHIP:DMG: CommandDataIB =
- [1659415377.221691][2666:2671] CHIP:DMG: {
- [1659415377.221764][2666:2671] CHIP:DMG: CommandPathIB =
- [1659415377.221855][2666:2671] CHIP:DMG: {
- [1659415377.221949][2666:2671] CHIP:DMG: EndpointId = 0x0,
- [1659415377.222037][2666:2671] CHIP:DMG: ClusterId = 0x3e,
- [1659415377.222125][2666:2671] CHIP:DMG: CommandId = 0x3,
- [1659415377.222216][2666:2671] CHIP:DMG: },
- [1659415377.222303][2666:2671] CHIP:DMG:
- [1659415377.222377][2666:2671] CHIP:DMG: CommandFields =
- [1659415377.222476][2666:2671] CHIP:DMG: {
- [1659415377.222570][2666:2671] CHIP:DMG: 0x0 = [
- [1659415377.222896][2666:2671] CHIP:DMG: 0x30, 0x82, 0x1, 0xcb, 0x30, 0x82, 0x1, 0x71, 0xa0, 0x3, 0x2, 0x1, 0x2, 0x2, 0x8, 0x56, 0xad, 0x82, 0x22, 0xad, 0x94, 0x5b, 0x64, 0x30, 0xa, 0x6, 0x8, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x4, 0x3, 0x2, 0x30, 0x30, 0x31, 0x18, 0x30, 0x16, 0x6, 0x3, 0x55, 0x4, 0x3, 0xc, 0xf, 0x4d, 0x61, 0x74, 0x74, 0x65, 0x72, 0x20, 0x54, 0x65, 0x73, 0x74, 0x20, 0x50, 0x41, 0x41, 0x31, 0x14, 0x30, 0x12, 0x6, 0xa, 0x2b, 0x6, 0x1, 0x4, 0x1, 0x82, 0xa2, 0x7c, 0x2, 0x1, 0xc, 0x4, 0x46, 0x46, 0x46, 0x31, 0x30, 0x20, 0x17, 0xd, 0x32, 0x32, 0x30, 0x32, 0x30, 0x35, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a, 0x18, 0xf, 0x39, 0x39, 0x39, 0x39, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5a, 0x30, 0x3d, 0x31, 0x25, 0x30, 0x23, 0x6, 0x3, 0x55, 0x4, 0x3, 0xc, 0x1c, 0x4d, 0x61, 0x74, 0x74, 0x65, 0x72, 0x20, 0x44, 0x65, 0x76, 0x20, 0x50, 0x41, 0x49, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x31, 0x20, 0x6e, 0x6f, 0x20, 0x50, 0x49, 0x44, 0x31, 0x14, 0x30, 0x12, 0x6, 0xa, 0x2b, 0x6, 0x1, 0x4, 0x1, 0x82, 0xa2, 0x7c, 0x2, 0x1, 0xc, 0x4, 0x46, 0x46, 0x46, 0x31, 0x30, 0x59, 0x30, 0x13, 0x6, 0x7, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x2, 0x1, 0x6, 0x8, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x3, 0x1, 0x7, 0x3, 0x42, 0x0, 0x4, 0x41, 0x9a, 0x93, 0x15, 0xc2, 0x17, 0x3e, 0xc, 0x8c, 0x87, 0x6d, 0x3, 0xcc, 0xfc, 0x94, 0x48, 0x52, 0x64, 0x7f, 0x7f, 0xec, 0x5e, 0x50, 0x82, 0xf4, 0x5, 0x99, 0x28, 0xec, 0xa8, 0x94, 0xc5, 0x94, 0x15, 0x13, 0x9, 0xac, 0x63, 0x1e, 0x4c, 0xb0, 0x33, 0x92, 0xaf, 0x68, 0x4b, 0xb, 0xaf, 0xb7, 0xe6, 0x5b, 0x3b, 0x81, 0x62, 0xc2, 0xf5, 0x2b, 0xf9, 0x31, 0xb8, 0xe7, 0x7a, 0xaa, 0x82, 0xa3, 0x66, 0x30, 0x64, 0x30, 0x12, 0x6, 0x3, 0x55, 0x1d, 0x13, 0x1, 0x1, 0xff, 0x4, 0x8, 0x30, 0x6, 0x1, 0x1, 0xff, 0x2, 0x1,
- [1659415377.223073][2666:2671] CHIP:DMG: ] (463 bytes)
- [1659415377.223156][2666:2671] CHIP:DMG: },
- [1659415377.223230][2666:2671] CHIP:DMG: },
- [1659415377.223312][2666:2671] CHIP:DMG:
- [1659415377.223374][2666:2671] CHIP:DMG: },
- [1659415377.223448][2666:2671] CHIP:DMG:
- [1659415377.223505][2666:2671] CHIP:DMG: ],
- [1659415377.223579][2666:2671] CHIP:DMG:
- [1659415377.223637][2666:2671] CHIP:DMG: InteractionModelRevision = 1
- [1659415377.223694][2666:2671] CHIP:DMG: },
- [1659415377.223832][2666:2671] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0003
- [1659415377.223908][2666:2671] CHIP:CTL: Received certificate chain from the device
- [1659415377.224018][2666:2671] CHIP:CTL: Successfully finished commissioning step "SendPAICertificateRequest"
-
+ [1660951953700] [17233:5262446] CHIP: [DMG] }
+ disabled: true
- 1. Save the PAI value from commissioning log of TH in the file as below
- vi pai_6.pem
+ - label: "TH extracts the Authority Key Identifier from the PAI certificate"
+ verification: |
+ 1. Print the PAI value saved in the step above using "openssl x509 -in pai.pem -text" as shown below
- 2. Give the below command to extract the Authority key ID
- openssl x509 -in pai_6.pem -text
+ Get the Authority Key Identifier from the console.
- Verify that below extracted authority key is not same as the SDK"s test PAA
+ Verify that below extracted authority key is not the same as the SDK"s test PAA
1. 78:5C:E7:05:B8:6B:8F:4E:6F:C7:93:AA:60:CB:43:EA:69:68:82:D5
2. 6A:FD:22:77:1F:51:1F:EC:BF:16:41:97:67:10:DC:DC:31:A1:71:7E
- Below certificate has been extracted using the sample DUT, hence the Authority key ID is same as SDK"s test PAA
+ On the reference platform implementation, this authority key id matches. But in real DUT it should not match.
- grl@grl-ThinkPad-L480:~/jul14_2ndcntrl/connectedhomeip$ openssl x509 -in pai_6.pem -text
+ Below certificate has been extracted using the sample DUT, hence the Authority key ID is the same as SDK"s test PAA
+
+ Verify the below authority key identifier (AKID) is signed by a PAA. Extract each cert in the TH PAA trust store using the below command and look for AKID is present in those certificates.
+
+ grl@grl-ThinkPad-L480:~/jul14_2ndcntrl/connectedhomeip$ openssl x509 -in pai.pem -text
Certificate:
Data:
Version: 3 (0x2)
@@ -278,163 +199,9 @@ tests:
verification: |
During commissioning we will get DAC certificate, see on TH(chip-tool) log:
- [1659509320.714103][3165:3170] CHIP:CTL: Performing next commissioning step "SendDACCertificateRequest"
- [1659509320.714155][3165:3170] CHIP:CTL: Sending request for DAC certificate
- [1659509320.714225][3165:3170] CHIP:CTL: Sending Certificate Chain request to 0xffff74000b60 device
- [1659509320.714397][3165:3170] CHIP:DMG: ICR moving to [AddingComm]
- [1659509320.714470][3165:3170] CHIP:DMG: ICR moving to [AddedComma]
- [1659509320.715027][3165:3170] CHIP:IN: Prepared secure message 0xffff74001d38 to 0xFFFFFFFB00000000 (0) of type 0x8 and protocolId (0, 1) on exchange 17089i with MessageCounter:86888459.
- [1659509320.715128][3165:3170] CHIP:IN: Sending encrypted msg 0xffff74001d38 with MessageCounter:86888459 to 0xFFFFFFFB00000000 (0) at monotonic time: 0000000000ADAD48 msec
- [1659509320.715804][3165:3170] CHIP:DMG: >> to UDP:[fe80::e65f:1ff:fe0f:2753%eth0]:5540 | 86888459 | [Interaction Model (1) / InvokeCommandRequest (0x08) / Session = 29587 / Exchange = 17089]
- [1659509320.715898][3165:3170] CHIP:DMG: Header Flags =
- [1659509320.715952][3165:3170] CHIP:DMG: {
- [1659509320.716035][3165:3170] CHIP:DMG: Exchange (0x05) =
- [1659509320.716089][3165:3170] CHIP:DMG: {
- [1659509320.716158][3165:3170] CHIP:DMG: Initiator = true
- [1659509320.716212][3165:3170] CHIP:DMG: NeedsAck = true
- [1659509320.716264][3165:3170] CHIP:DMG: }
- [1659509320.716353][3165:3170] CHIP:DMG: }
- [1659509320.716405][3165:3170] CHIP:DMG:
- [1659509320.716491][3165:3170] CHIP:DMG: Encrypted Payload (62 bytes) =
- [1659509320.716544][3165:3170] CHIP:DMG: {
- [1659509320.716616][3165:3170] CHIP:DMG: data = 009373000bd02d05c296dbc864194390f3d020eb61ee335c0d61263dd0d5f4849a5c6a601f73c80e6775d2b422e816cf8e3ae224d59c01f53783a657bd0d
- [1659509320.716672][3165:3170] CHIP:DMG: buffer_ptr = 281472627949680
- [1659509320.716742][3165:3170] CHIP:DMG: }
- [1659509320.716793][3165:3170] CHIP:DMG:
- [1659509320.716965][3165:3170] CHIP:DMG: InvokeRequestMessage =
- [1659509320.717029][3165:3170] CHIP:DMG: {
- [1659509320.717084][3165:3170] CHIP:DMG: suppressResponse = false,
- [1659509320.717148][3165:3170] CHIP:DMG: timedRequest = false,
- [1659509320.717206][3165:3170] CHIP:DMG: InvokeRequests =
- [1659509320.717276][3165:3170] CHIP:DMG: [
- [1659509320.717335][3165:3170] CHIP:DMG: CommandDataIB =
- [1659509320.717399][3165:3170] CHIP:DMG: {
- [1659509320.717461][3165:3170] CHIP:DMG: CommandPathIB =
- [1659509320.717535][3165:3170] CHIP:DMG: {
- [1659509320.717788][3165:3170] CHIP:DMG: EndpointId = 0x0,
- [1659509320.717870][3165:3170] CHIP:DMG: ClusterId = 0x3e,
- [1659509320.717947][3165:3170] CHIP:DMG: CommandId = 0x2,
- [1659509320.718019][3165:3170] CHIP:DMG: },
- [1659509320.718116][3165:3170] CHIP:DMG:
- [1659509320.718181][3165:3170] CHIP:DMG: CommandFields =
- [1659509320.718273][3165:3170] CHIP:DMG: {
- [1659509320.718436][3165:3170] CHIP:DMG: 0x0 = 1,
- [1659509320.718521][3165:3170] CHIP:DMG: },
- [1659509320.718609][3165:3170] CHIP:DMG: },
- [1659509320.718706][3165:3170] CHIP:DMG:
- [1659509320.718766][3165:3170] CHIP:DMG: ],
- [1659509320.718855][3165:3170] CHIP:DMG:
- [1659509320.718915][3165:3170] CHIP:DMG: InteractionModelRevision = 1
- [1659509320.718971][3165:3170] CHIP:DMG: },
- [1659509320.719024][3165:3170] CHIP:DMG:
- [1659509320.719407][3165:3170] CHIP:DMG: ICR moving to [CommandSen]
- [1659509320.719536][3165:3170] CHIP:DMG: ICR moving to [AwaitingDe]
- [1659509320.719608][3165:3170] CHIP:EM: Sending Standalone Ack for MessageCounter:148943591 on exchange 17088i
- [1659509320.720332][3165:3170] CHIP:IN: Prepared secure message 0xffff88e5c9e8 to 0xFFFFFFFB00000000 (0) of type 0x10 and protocolId (0, 0) on exchange 17088i with MessageCounter:86888460.
- [1659509320.720493][3165:3170] CHIP:IN: Sending encrypted msg 0xffff88e5c9e8 with MessageCounter:86888460 to 0xFFFFFFFB00000000 (0) at monotonic time: 0000000000ADAD4E msec
- [1659509320.721152][3165:3170] CHIP:DMG: >> to UDP:[fe80::e65f:1ff:fe0f:2753%eth0]:5540 | 86888460 | [Secure Channel (0) / Standalone Ack (0x10) / Session = 29587 / Exchange = 17088]
- [1659509320.721242][3165:3170] CHIP:DMG: Header Flags =
- [1659509320.721298][3165:3170] CHIP:DMG: {
- [1659509320.721381][3165:3170] CHIP:DMG: Exchange (0x03) =
- [1659509320.721434][3165:3170] CHIP:DMG: {
- [1659509320.721505][3165:3170] CHIP:DMG: Initiator = true
- [1659509320.721562][3165:3170] CHIP:DMG: AckMsg = 148943591
- [1659509320.721634][3165:3170] CHIP:DMG: }
- [1659509320.721706][3165:3170] CHIP:DMG: }
- [1659509320.721759][3165:3170] CHIP:DMG:
- [1659509320.721846][3165:3170] CHIP:DMG: Encrypted Payload (34 bytes) =
- [1659509320.721901][3165:3170] CHIP:DMG: {
- [1659509320.721972][3165:3170] CHIP:DMG: data = 009373000cd02d05ff4214e467b1c7a3664b8d8c5628c4e291f833b9f2f35d953235
- [1659509320.722027][3165:3170] CHIP:DMG: buffer_ptr = 281472627939824
- [1659509320.722077][3165:3170] CHIP:DMG: }
- [1659509320.722125][3165:3170] CHIP:DMG:
- [1659509320.722485][3165:3170] CHIP:EM: Flushed pending ack for MessageCounter:148943591 on exchange 17088i
- [1659509320.724260][3165:3170] CHIP:DMG: << from UDP:[fe80::e65f:1ff:fe0f:2753%eth0]:5540 | 148943592 | [Interaction Model (1) / InvokeCommandResponse (0x09) / Session = 49327 / Exchange = 17089]
- [1659509320.724362][3165:3170] CHIP:DMG: Header Flags =
- [1659509320.724417][3165:3170] CHIP:DMG: {
- [1659509320.724503][3165:3170] CHIP:DMG: Exchange (0x06) =
- [1659509320.724558][3165:3170] CHIP:DMG: {
- [1659509320.724647][3165:3170] CHIP:DMG: AckMsg = 86888459
- [1659509320.724704][3165:3170] CHIP:DMG: NeedsAck = true
- [1659509320.724756][3165:3170] CHIP:DMG: }
- [1659509320.724827][3165:3170] CHIP:DMG: }
- [1659509320.724879][3165:3170] CHIP:DMG:
- [1659509320.724950][3165:3170] CHIP:DMG: Encrypted Payload (559 bytes) =
- [1659509320.725003][3165:3170] CHIP:DMG: {
- [1659509320.725056][3165:3170] CHIP:DMG: data = 00afc000e8b2e008b40e7ea031654ba52d0e71f9a877ec233377ef9eef00611412271b31992e30753df53f0bfac6b5f9a30217f67d03a17653c5ee991a0266f3ef286188e3f977d3dd94fbbb60323a74c2b685309d607af14c0b4c7214c7579cf43e9ed90d4256382e5d40bc46796e06fdb6b220bbc5e7b6fc812f2c5bc357fcbda79d6dcb464f42d04ab1708fdfb5ea8b90c3720257e9da78ba877b24b99d7f104c4ee199923c876d8c07903beab5f93a784f226d1e82f8d5f001f23457965c9ddbcc8661d00b7202a9932b1ae92ff36d80b8e5ac2d18d65e8a3957486ef86ca4f056218677958f9be17ab6c54d3dedb7e88a144ef607f692d3131276dbb2803e6e93dc5d330ef13b0e00289e6a9186e1f1c0e5b9615ace2c1d544f4b6bc58f700b47a11fc2278977b2a1595c96532daefe44db899e3f75f473ffbf4ac1e93ba76033dfa562beedf4b9a5fe9b985e6a0227efdcf5ced1b966bd78addb1ad5950c6378dc149a6372888683a8539a4d59958c7460b1968b0d8dcfa2d3660dc07c4e0e44095ef14c4cdd249727caad086e8630f9df296d8fa426f01f58f532ac1a91cb1da874055711edd4f13c722a0e66f850d0f455c09fbc2c049852ec936545b2bf2798f9c614e4488707a1f38fee8c08fe3c886fd89d9e3578fad68077133c7e086d5ba7df2a7323d10f03602d46c1e172e993fd3b6d5d468b7da8dc315711d53ded3ab7f38f7517f23394c7c9438ce5726449cca510956add995f76140fe3bd0a63ea024058898635373e68e9e3
- [1659509320.725163][3165:3170] CHIP:DMG: buffer_ptr = 281472627931376
- [1659509320.725214][3165:3170] CHIP:DMG: }
- [1659509320.725263][3165:3170] CHIP:DMG:
- [1659509320.725501][3165:3170] CHIP:DMG: DAC/PAI (491) =
- [1659509320.725616][3165:3170] CHIP:DMG: {
- -----BEGIN CERTIFICATE-----
- MIIB5zCCAY6gAwIBAgIIac3xDenlTtEwCgYIKoZIzj0EAwIwPTElMCMGA1UEAwwc
- TWF0dGVyIERldiBQQUkgMHhGRkYxIG5vIFBJRDEUMBIGCisGAQQBgqJ8AgEMBEZG
- RjEwIBcNMjIwMjA1MDAwMDAwWhgPOTk5OTEyMzEyMzU5NTlaMFMxJTAjBgNVBAMM
- HE1hdHRlciBEZXYgREFDIDB4RkZGMS8weDgwMDExFDASBgorBgEEAYKifAIBDARG
- RkYxMRQwEgYKKwYBBAGConwCAgwEODAwMTBZMBMGByqGSM49AgEGCCqGSM49AwEH
- A0IABEY6xpNCkQoOVYj8b/Vrtj5i7M7LFI99TrA+5VJgFBV2fRalxmP3k+SRIyYL
- gpenzX58/HsxaznZjpDSk3dzjoKjYDBeMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/
- BAQDAgeAMB0GA1UdDgQWBBSI3eezADgpMs/3NMBGJIEPRBaKbzAfBgNVHSMEGDAW
- gBRjVA5H9kscONE4hKRi0WwZXY/7PDAKBggqhkjOPQQDAgNHADBEAiABJ6J7S0Rh
- DuL83E0reIVWNmC8D3bxchntagjfsrPBzQIga1ngr0Xz6yqFuRnTVzFSjGAoxBUj
- lUXhCOTlTnCXE1M=
- -----END CERTIFICATE-----
- [1659509320.725847][3165:3170] CHIP:DMG: }
- [1659509320.725898][3165:3170] CHIP:DMG:
- [1659509320.725961][3165:3170] CHIP:DMG:
- [1659509320.726043][3165:3170] CHIP:DMG: Additional Fields =
- [1659509320.726099][3165:3170] CHIP:DMG: {
- [1659509320.726158][3165:3170] CHIP:DMG: peer_address = UDP:[fe80::e65f:1ff:fe0f:2753%eth0]:5540
- [1659509320.726215][3165:3170] CHIP:DMG: }
- [1659509320.726265][3165:3170] CHIP:DMG:
- [1659509320.726334][3165:3170] CHIP:EM: Received message of type 0x9 with protocolId (0, 1) and MessageCounter:148943592 on exchange 17089i
- [1659509320.726446][3165:3170] CHIP:EM: Found matching exchange: 17089i, Delegate: 0xffff74009c78
- [1659509320.726534][3165:3170] CHIP:EM: Rxd Ack; Removing MessageCounter:86888459 from Retrans Table on exchange 17089i
- [1659509320.726594][3165:3170] CHIP:EM: Removed CHIP MessageCounter:86888459 from RetransTable on exchange 17089i
- [1659509320.726669][3165:3170] CHIP:DMG: ICR moving to [ResponseRe]
- [1659509320.726761][3165:3170] CHIP:DMG: InvokeResponseMessage =
- [1659509320.726818][3165:3170] CHIP:DMG: {
- [1659509320.726876][3165:3170] CHIP:DMG: suppressResponse = false,
- [1659509320.726934][3165:3170] CHIP:DMG: InvokeResponseIBs =
- [1659509320.727010][3165:3170] CHIP:DMG: [
- [1659509320.727068][3165:3170] CHIP:DMG: InvokeResponseIB =
- [1659509320.727154][3165:3170] CHIP:DMG: {
- [1659509320.727217][3165:3170] CHIP:DMG: CommandDataIB =
- [1659509320.727291][3165:3170] CHIP:DMG: {
- [1659509320.727362][3165:3170] CHIP:DMG: CommandPathIB =
- [1659509320.727442][3165:3170] CHIP:DMG: {
- [1659509320.727523][3165:3170] CHIP:DMG: EndpointId = 0x0,
- [1659509320.727607][3165:3170] CHIP:DMG: ClusterId = 0x3e,
- [1659509320.727698][3165:3170] CHIP:DMG: CommandId = 0x3,
- [1659509320.727777][3165:3170] CHIP:DMG: },
- [1659509320.727857][3165:3170] CHIP:DMG:
- [1659509320.727928][3165:3170] CHIP:DMG: CommandFields =
- [1659509320.728004][3165:3170] CHIP:DMG: {
- [1659509320.728081][3165:3170] CHIP:DMG: 0x0 = [
- [1659509320.728404][3165:3170] CHIP:DMG: 0x30, 0x82, 0x1, 0xe7, 0x30, 0x82, 0x1, 0x8e, 0xa0, 0x3, 0x2, 0x1, 0x2, 0x2, 0x8, 0x69, 0xcd, 0xf1, 0xd, 0xe9, 0xe5, 0x4e, 0xd1, 0x30, 0xa, 0x6, 0x8, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x4, 0x3, 0x2, 0x30, 0x3d, 0x31, 0x25, 0x30, 0x23, 0x6, 0x3, 0x55, 0x4, 0x3, 0xc, 0x1c, 0x4d, 0x61, 0x74, 0x74, 0x65, 0x72, 0x20, 0x44, 0x65, 0x76, 0x20, 0x50, 0x41, 0x49, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x31, 0x20, 0x6e, 0x6f, 0x20, 0x50, 0x49, 0x44, 0x31, 0x14, 0x30, 0x12, 0x6, 0xa, 0x2b, 0x6, 0x1, 0x4, 0x1, 0x82, 0xa2, 0x7c, 0x2, 0x1, 0xc, 0x4, 0x46, 0x46, 0x46, 0x31, 0x30, 0x20, 0x17, 0xd, 0x32, 0x32, 0x30, 0x32, 0x30, 0x35, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a, 0x18, 0xf, 0x39, 0x39, 0x39, 0x39, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5a, 0x30, 0x53, 0x31, 0x25, 0x30, 0x23, 0x6, 0x3, 0x55, 0x4, 0x3, 0xc, 0x1c, 0x4d, 0x61, 0x74, 0x74, 0x65, 0x72, 0x20, 0x44, 0x65, 0x76, 0x20, 0x44, 0x41, 0x43, 0x20, 0x30, 0x78, 0x46, 0x46, 0x46, 0x31, 0x2f, 0x30, 0x78, 0x38, 0x30, 0x30, 0x31, 0x31, 0x14, 0x30, 0x12, 0x6, 0xa, 0x2b, 0x6, 0x1, 0x4, 0x1, 0x82, 0xa2, 0x7c, 0x2, 0x1, 0xc, 0x4, 0x46, 0x46, 0x46, 0x31, 0x31, 0x14, 0x30, 0x12, 0x6, 0xa, 0x2b, 0x6, 0x1, 0x4, 0x1, 0x82, 0xa2, 0x7c, 0x2, 0x2, 0xc, 0x4, 0x38, 0x30, 0x30, 0x31, 0x30, 0x59, 0x30, 0x13, 0x6, 0x7, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x2, 0x1, 0x6, 0x8, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x3, 0x1, 0x7, 0x3, 0x42, 0x0, 0x4, 0x46, 0x3a, 0xc6, 0x93, 0x42, 0x91, 0xa, 0xe, 0x55, 0x88, 0xfc, 0x6f, 0xf5, 0x6b, 0xb6, 0x3e, 0x62, 0xec, 0xce, 0xcb, 0x14, 0x8f, 0x7d, 0x4e, 0xb0, 0x3e, 0xe5, 0x52, 0x60, 0x14, 0x15, 0x76, 0x7d, 0x16, 0xa5, 0xc6, 0x63, 0xf7, 0x93, 0xe4, 0x91, 0x23, 0x26, 0xb, 0x82, 0x97, 0xa7, 0xcd, 0x7e, 0x7c, 0xfc, 0x
- [1659509320.728579][3165:3170] CHIP:DMG: ] (491 bytes)
- [1659509320.728664][3165:3170] CHIP:DMG: },
- [1659509320.728738][3165:3170] CHIP:DMG: },
- [1659509320.728818][3165:3170] CHIP:DMG:
- [1659509320.728879][3165:3170] CHIP:DMG: },
- [1659509320.728952][3165:3170] CHIP:DMG:
- [1659509320.729010][3165:3170] CHIP:DMG: ],
- [1659509320.729082][3165:3170] CHIP:DMG:
- [1659509320.729140][3165:3170] CHIP:DMG: InteractionModelRevision = 1
- [1659509320.729197][3165:3170] CHIP:DMG: },
- [1659509320.729335][3165:3170] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0003
- [1659509320.729409][3165:3170] CHIP:CTL: Received certificate chain from the device
- [1659509320.729476][3165:3170] CHIP:CTL: Successfully finished commissioning step "SendDACCertificateRequest"
-
-
-
-
-
- "1. Save the DAC value from commissioning log of TH in the file as below
- vi dac.pem
+ 1. From the dac.pem file saved above step, print the contents on the console using "openssl x509 -in dac.pem -text" as shown below.
- 2. Give the below command to extract the Authority key ID
+ 2. extract the Authority key ID and save the public key as pk1
openssl x509 -in dac.pem -text
Below certificate has been extracted using the sample DUT, hence the Authority key ID is same as SDK"s test PAA
@@ -656,6 +423,7 @@ tests:
[1659415377.223908][2666:2671] CHIP:CTL: Received certificate chain from the device
[1659415377.224018][2666:2671] CHIP:CTL: Successfully finished commissioning step "SendPAICertificateRequest"
+ To extract public key follow the below procedure and save the public key as pk2, make sure the pk2 doesn"t match pk1 in step 5
"1. Save the PAI value from commissioning log of TH in the file as below
vi pai_6.pem
@@ -663,7 +431,11 @@ tests:
2. Give the below command to extract the Authority key ID
openssl x509 -in pai_6.pem -text
- Below certificate has been extracted using the sample DUT, hence the Authority key ID is same as SDK"s test PAA
+ Below certificate has been extracted using the sample DUT, hence the Authority key ID is same as in SDK"s test PAA certs
+
+ 3. Extract the public key Public-Key: (256 bit) from the below cert
+
+ 4. Verify that pk_1 does not match with the pk_2
grl@grl-ThinkPad-L480:~/jul14_2ndcntrl/connectedhomeip$ openssl x509 -in pai_6.pem -text
Certificate:
@@ -715,10 +487,3 @@ tests:
i+oDPOUDAiAlVJQ75X1T1sR199I+v8/CA2zSm6Y5PsfvrYcUq3GCGQ==
-----END CERTIFICATE-----
disabled: true
-
- - label:
- "Repeat Step 1 to 4 with DUT2, saving the PAI, DAC and public key as
- pk_2"
- verification: |
- verification step to be updated.
- disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_1_11.yaml b/src/app/tests/suites/certification/Test_TC_DD_1_11.yaml
index 6d20dadb458d99..fbc359456faba2 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_1_11.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_1_11.yaml
@@ -19,6 +19,7 @@ name:
PICS:
- MCORE.ROLE.COMMISSIONER
+ - MCORE.DD.QR_COMMISSIONING
config:
nodeId: 0x12344321
diff --git a/src/app/tests/suites/certification/Test_TC_DD_1_12.yaml b/src/app/tests/suites/certification/Test_TC_DD_1_12.yaml
index 78dfc1daa202ef..a71ae7c5d1d491 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_1_12.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_1_12.yaml
@@ -28,6 +28,11 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.1.3 - QR code/ Manual Pairing Code is printed on the device or in additional provided materials (ex: manual)
+ disabled: true
+
- label: "Scan the DUTs QR code using the TH."
verification: |
1. Run DUT. Example for DUT=all-clusters-app
@@ -47,6 +52,9 @@ tests:
2. Parse onboarding payload using TH=chip-tool
$ ./chip-tool payload parse-setup-payload MT:-24J0AFN00KA0648G00
+
+ Verify in TH as commissioner side:
+
[1657214153060] [29000:16610528] CHIP: [SPL] Parsing base38Representation: MT:-24J0AFN00KA0648G00
[1657214153060] [29000:16610528] CHIP: [SPL] Version: 0
[1657214153060] [29000:16610528] CHIP: [SPL] VendorID: 65521
@@ -57,25 +65,17 @@ tests:
[1657214153060] [29000:16610528] CHIP: [SPL] Passcode: 20202021
disabled: true
- - label:
- "Verify that the TH presents the user with a pairing hint in the
- CommissioningModeInitialStepsHint field of the DCL. Verify that the
- CommissioningCustomFlow field is set to a value = 0"
- verification: |
- 1. Verify CommissioningCustomFlow=0
- 2. Verify CommissioningModeInitialStepsHint contains a valid, non-zero integer = 1 for Standard Commissioning flow
- disabled: true
-
- - label:
- "If CommissioningCustomFlow field in Step 2 = 0 (Standard
- Commissioning Flow), reboot the DUT device"
+ - label: "Reboot the DUT device."
verification: |
1. Verify DUT is advertising in commissioning mode. On DUT, verify through commissioning
+ Verify in TH as commissioner side:
+
$ ./chip-tool pairing code 1 MT:-24J0AFN00KA0648G00
...
[1657214364908] [29006:16612760] CHIP: [CTL] Starting commissioning discovery over DNS-SD
- [1657214364908] [29006:16612760] CHIP: [DL] Browsing for: _matterc._udp,_L3840 [1657214365080] [29006:16612761] CHIP: [DL] Mdns: OnBrowseAdd name: E5EFE5FB9DC494B9, type: _matterc._udp., domain: local., interface: 7 [1657214365080] [29006:16612761] CHIP: [DL] Resolve type=_matterc._udp name=E5EFE5FB9DC494B9 interface=7
+ [1657214364908] [29006:16612760] CHIP: [DL] Browsing for: _matterc._udp,_L3840
+ [1657214365080] [29006:16612761] CHIP: [DL] Mdns: OnBrowseAdd name: E5EFE5FB9DC494B9, type: _matterc._udp., domain: local., interface: 7 [1657214365080] [29006:16612761] CHIP: [DL] Resolve type=_matterc._udp name=E5EFE5FB9DC494B9 interface=7
[1657214365080] [29006:16612761] CHIP: [DL] Mdns : OnNewInterface hostname:DCA6328D2B9F0000.local. fullname:E5EFE5FB9DC494B9._matterc._udp.local. interface: 7 [1657214365082] [29006:16612761] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:fd54:23a1:c6de:4637:4c4:ee82:2a0f:b5e2
[1657214365082] [29006:16612761] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:fe80::1e81:3e0:3865:2d29
[1657214365082] [29006:16612761] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:192.168.1.10
diff --git a/src/app/tests/suites/certification/Test_TC_DD_1_13.yaml b/src/app/tests/suites/certification/Test_TC_DD_1_13.yaml
index ad93647feb9eb4..f0422326fb99a3 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_1_13.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_1_13.yaml
@@ -28,11 +28,17 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.1.3 - QR code/ Manual Pairing Code is printed on the device or in additional provided materials (ex: manual)
+ disabled: true
+
- label: "Power on the DUT device."
verification: |
1. Verify DUT is NOT advertising in commissioning mode. On DUT, the DUT should not show up
$ ./chip-tool discover commissionables
+ TH Commissioner should not discover the DUT here
disabled: true
- label: "Scan the DUTs QR code from the previous step using the TH."
@@ -42,6 +48,8 @@ tests:
2. Parse onboarding payload using TH=chip-tool
$ ./chip-tool payload parse-setup-payload MT:-24J0AFN00KA0648G00
+
+ Verify in TH as commissioner side:
[1651193251086] [15494:447566] CHIP: [SPL] Parsing base38Representation: MT:-24J0AFN00KA0648G00
[1651193251087] [15494:447566] CHIP: [SPL] CommissioningFlow: 1
[1651193251087] [15494:447566] CHIP: [SPL] VendorID: 65521
@@ -53,23 +61,16 @@ tests:
disabled: true
- label:
- "Verify that the TH presents the user with a pairing hint in the
- CommissioningModeInitialStepsHint field of the DCL. Verify that the
- CommissioningCustomFlow field is set to a value = 1"
- verification: |
- 1. Verify CommissioningCustomFlow=1
- 2. Verify CommissioningModeInitialStepsHint contains a valid, non-zero integer
- disabled: true
-
- - label:
- "Follow any steps from the resources provided by the pairing hint for
- putting the DUT Commissionee into commissioning mode"
+ "Follow any DUT-specific steps for putting the DUT Commissionee into
+ commissioning mode"
verification: |
1. Follow vendor-specific steps from the pairing hint to put DUT into commissioning mode
2. Verify DUT is advertising in commissioning mode. On DUT,
$ ./chip-tool discover commissionables
+ Verify in TH as commissioner side:
+
[1651192893436] [15304:442604] CHIP: [DL] Mdns: OnNewAddress interface: 24 ip:fe80::dea6:32ff:fe8d:6e32
[1651192893436] [15304:442604] CHIP: [DIS] Vendor ID: 65521
[1651192893436] [15304:442604] CHIP: [DIS] Product ID: 32769
diff --git a/src/app/tests/suites/certification/Test_TC_DD_1_14.yaml b/src/app/tests/suites/certification/Test_TC_DD_1_14.yaml
index 5635299f36e5ac..37dea4cf954852 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_1_14.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_1_14.yaml
@@ -28,11 +28,17 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.1.3 - QR code/ Manual Pairing Code is printed on the device or in additional provided materials (ex: manual)
+ disabled: true
+
- label: "Power on the DUT device."
verification: |
1. Verify DUT is NOT advertising in commissioning mode. On DUT, the DUT should not show up
$ ./chip-tool discover commissionables
+ TH Commissioner should not discover the DUT here
disabled: true
- label: "Scan the DUTs QR code from the previous step using the TH."
@@ -42,6 +48,8 @@ tests:
2. Parse onboarding payload using TH=chip-tool
$ ./chip-tool payload parse-setup-payload MT:-24J0AFN00KA0648G00
+ Verify in TH as commissioner side:
+
[1651193251086] [15494:447566] CHIP: [SPL] Parsing base38Representation: MT:-24J0AFN00KA0648G00
[1651193251087] [15494:447566] CHIP: [SPL] CommissioningFlow: 2
[1651193251087] [15494:447566] CHIP: [SPL] VendorID: 65521
@@ -53,24 +61,17 @@ tests:
disabled: true
- label:
- "Verify that the TH presents User with a URL in the
- CommissioningCustomFlowUrl field of the DCL. Verify that the
- CommissioningCustomFlow field is set to a value = 2"
+ "Follow any DUT-specific steps, guided by a service provided by the
+ DUTs manufacturer for initial device setup, then place the DUT
+ Commissionee into commissioning mode."
verification: |
- 1. Verify CommissioningCustomFlow=2
- 2. Verify CommissioningModeInitialStepsHint has bit 0 (Power Cycle) set to 0 and bit 1 (Device Manufacturer URL) set to 1
- 3. Verify CommissioningModeInitialStepsHint contains a valid, non-zero integer
- disabled: true
-
- - label:
- "Follow any steps from the URL provided by the pairing hint in the DCL
- for putting the DUT Commissionee into commissioning mode"
- verification: |
- 1. Follow vendor-specific steps from the pairing hint to put DUT into commissioning mode
+ 1. Follow DUT vendor-specific steps to put DUT into commissioning mode
2. Verify DUT is advertising in commissioning mode. On DUT,
$ ./chip-tool discover commissionables
+ Verify in TH as commissioner side:
+
[1651192893436] [15304:442604] CHIP: [DL] Mdns: OnNewAddress interface: 24 ip:fe80::dea6:32ff:fe8d:6e32
[1651192893436] [15304:442604] CHIP: [DIS] Vendor ID: 65521
[1651192893436] [15304:442604] CHIP: [DIS] Product ID: 32769
diff --git a/src/app/tests/suites/certification/Test_TC_DD_1_15.yaml b/src/app/tests/suites/certification/Test_TC_DD_1_15.yaml
index 7733f987ba9128..35e8f4f6d594e2 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_1_15.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_1_15.yaml
@@ -26,6 +26,11 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.1 - Onboarding payload is printed on the device or in additional provided materials (ex: manual) through a QR Code, a manually entered code or as content in an NFC tag.
+ disabled: true
+
- label:
"Using the TH Onboarding payload reader, scan or read the Onboarding
payload from DUT1"
@@ -33,6 +38,8 @@ tests:
1. Parse payload for DUT1
$ ./chip-tool payload parse-setup-payload MT:-24J0AFN00KA0648G00
+ Verify in TH as commissioner side:
+
[1651194471211] [16050:465158] CHIP: [SPL] Parsing base38Representation: MT:-24J0AFN00KA0648G00
[1651194471211] [16050:465158] CHIP: [SPL] CommissioningFlow: 0
[1651194471211] [16050:465158] CHIP: [SPL] VendorID: 65521
@@ -58,6 +65,8 @@ tests:
1. Parse payload for DUT2
$ ./chip-tool payload parse-setup-payload MT:-24J0IRV01WCCN68G00
+ Verify in TH as commissioner side:
+
[1651194577916] [16053:466154] CHIP: [SPL] Parsing base38Representation: MT:-24J0IRV01WCCN68G00
[1651194577916] [16053:466154] CHIP: [SPL] CommissioningFlow: 0
[1651194577916] [16053:466154] CHIP: [SPL] VendorID: 65521
diff --git a/src/app/tests/suites/certification/Test_TC_DD_1_5.yaml b/src/app/tests/suites/certification/Test_TC_DD_1_5.yaml
index f2b6606fc1ce17..ef616a60cd51e5 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_1_5.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_1_5.yaml
@@ -27,11 +27,23 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.1.7 - NFC Spec Requirements: NFC tags SHALL use the NFC Data Exchange Format (NDEF) as defined by NFC ForumTM in [NDEF 1.0 NFCForum-TS-NDEF 1.0]
+
+ An NDEF message is defined as a group of individual NDEF records as defined by NFC ForumTM in NFC Record Type Definition (RTD) RTD 1.0 [NFCForum-TS-RTD 1.0]
+
+ Onboarding Payload for NFC tags SHALL use NDEF URI Record Type Definition as defined by NFC ForumTM in URI Record Type Definition RTD-URI 1.0 [NFCForum-TS-RTD URI 1.0]. The URI for defined in section 3.3 Format
+ disabled: true
+
- label:
"Keep the DUT in packaging and bring in TH NFC scanner close to the
DUT packaging."
verification: |
- Vendor specific field verification
+ 1. Using an NFC Scanner, physically bring the scanner close to the DUT in it"s packaging.
+ 2. NFC Scanner should not be able to read the Onboarding Payload from the DUT"s NFC tag.
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label:
@@ -39,7 +51,10 @@ tests:
not put the DUT in pairing mode. Bring in TH NFC scanner close to the
DUTs NFC tag"
verification: |
- Vendor specific field verification
+ 1. Using an NFC Scanner, physically bring the scanner close to the DUT that is out of it"s packaging.
+ 2. NFC Scanner should not be able to read the Onboarding Payload from the DUT"s NFC tag.
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label:
@@ -47,13 +62,19 @@ tests:
scanner close to the DUTs NFC tag"
PICS: MCORE.DD.PHYSICAL_TAMPERING
verification: |
- Vendor specific field verification
+ 1. Power on the DUT.
+ 2. Using an NFC Scanner, physically bring the scanner close to the DUT.
+ 3. NFC Scanner should not be able to read the Onboarding Payload from the DUT"s NFC tag.
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label: "DUT must have an explicit trigger of the the NFC pairing mode"
PICS: MCORE.DD.PHYSICAL_TAMPERING
verification: |
- Vendor specific field verification
+ 1. Manually verify that the DUT has an explicit trigger (a physical action that enables the NFC pairing flow).
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label:
@@ -61,40 +82,68 @@ tests:
close to NFC tag"
PICS: MCORE.DD.PHYSICAL_TAMPERING
verification: |
- Vendor specific field verification
+ 1. Power on the DUT.
+ 2. Put the DUT into pairing mode.
+ 2. Using an NFC Scanner, physically bring the scanner close to the DUT
+ 3. NFC Scanner should be able to read the Onboarding Payload from the DUT"s NFC tag.
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label: "Power on DUT. Bring in NFC scanner close to NFC tag"
PICS: MCORE.DD.PHYSICAL_TAMPERING
verification: |
- Vendor specific field verification
+ 1. Power on the DUT.
+ 2. Using an NFC Scanner, physically bring the scanner close to the DUT.
+ 3. NFC Scanner should be able to read the Onboarding Payload from the DUT"s NFC tag.
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label: "Wait for the pairing mode to expire on device"
verification: |
- Vendor specific field verification
+ 1. After pairing mode expires on the DUT, verify that the NFC Scanner cannot read advertisements from the DUT.
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label: "For Read only Tags, try to write using NFC tool a payload to DUT"
verification: |
- Vendor specific field verification
+ 1. Using an NFC-programmer tool, attempt to write a payload to the DUT"s NFC tag
+ 2. DUT should reject the attempt and the NFC tag should not have been written to.
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label:
"For Programmable Tag, NFC tag must be read only OTA. Try to write a
payload to DUT using NFC tool"
verification: |
- Vendor specific field verification
+ 1. Using an NFC-programmer tool, attempt to write a payload to the DUT"s NFC tag
+ 2. DUT should reject the attempt and the NFC tag should not have been written to.
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label:
"Optional For Programmable Tag, NFC tag may be reconfigured using
wired means"
verification: |
- Vendor specific field verification
+ 1. This is vendor-specific, attempt to write a payload to the DUT"s NFC tag by way of a physical wired connection.
+ 2. DUT"s NFC tag should have been written to.
+
+ Note: chip-tool does not support physically scanning an NFC tag
disabled: true
- label: "Using TH NFC scanner - read NFC tag Reader type"
verification: |
- Vendor specific field verification
+ 1. Using an NFC Scanner, physically bring the scanner close to the DUT
+ 2. DUT"s NFC tag should have a Reader type equal to 2 or greater
+
+ Note: chip-tool does not support physically scanning an NFC tag
+ disabled: true
+
+ - label: ""
+ verification: |
+ verification step to be updated.
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_1_6.yaml b/src/app/tests/suites/certification/Test_TC_DD_1_6.yaml
index b1de25771fb85c..721c334cf07c80 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_1_6.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_1_6.yaml
@@ -25,12 +25,26 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ Final label of DUT is ready to be scanned
+ disabled: true
+
- label: "Scan the DUTs QR code using the TH QR code reader"
verification: |
- Vendor specific field testcase
+ 1. Scan the QR code with a QR Code scanning device.
+ 2. Vendor specific field testcase that should be manually verified using the requirements in the Expected Outcome.
disabled: true
- label: "Verify QR code version"
verification: |
- Vendor specific field verification
+ 1. Manually verify the QR code version by referring to section 5.1.3.2 "QR Code Format" of the spec document to ensure it follows the ISO/IEC 18004:2015 (https://www.iso.org/standard/62021.html) specifications with accurate:
+ - Module size
+ - ECC Level
+ - Alphanumeric capacity
+ - Total available payload, excluding prefix (bits)
+ - Available payload for TLV data (bits)
+ 2. Vendor specific field test case that should be manually verified using the requirements in the Expected Outcome.
+
+ Note: chip-tool is not used to verify this test step
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_1_7.yaml b/src/app/tests/suites/certification/Test_TC_DD_1_7.yaml
index 6bfb9187288b34..9f2689fe3b10bb 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_1_7.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_1_7.yaml
@@ -25,7 +25,12 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.1.4.2 - Manual Pairing Code is printed on the device or in additional provided materials (ex: manual)"
+ disabled: true
+
- label: "Verify using instruments"
verification: |
- Vendor specific field testcase
+ Vendor specific field testcase that should be manually verified using the requirements in the Expected Outcome.
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_1_8.yaml b/src/app/tests/suites/certification/Test_TC_DD_1_8.yaml
index 26a0b7563571df..7f8cc8a2de63d2 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_1_8.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_1_8.yaml
@@ -27,11 +27,41 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.1.3 - QR code is printed on the device or in additional provided materials (ex: manual). Device also has additional TLV data with a non-zero length appended to the end of the QR code.
+
+ An example onboarding QR code could be "MT:-24J029Q00KA064IJ3P0IXZB0DK5N1K8SQ1RYCU1-A40" (following 5.1.3 "QR Code", Table 34 "Packed Binary Data Structure for Onboarding Payload") which includes:
+
+ - 3-bit Version String=000
+
+ - 16-bit Vendor ID=0xFFF1 (as defined in section 2.5.2. "Vendor Identifier")
+
+ - 16-bit Product ID=0x8001 (as defined in section 2.5.3. "Product Identifier")
+
+ - 2-bit Custom Flow=10 (Custom Commissioning Flow = 2)
+
+ - 8-bit Discovery Capabilities Bitmask=00000100 (OnNetwork)
+
+ - 12-bit Discriminator=0xF00
+
+ - 27-bit Passcode=20202021
+
+ - 4-bit Padding=0000
+
+ - TLV Data=0x152C000A3132333435363738393018 included (as defined in section 5.1.3.1. "Payload", subsection "TLV Data")
+ disabled: true
+
- label: "Scan the TH Devices QR code using DUT"
PICS: MCORE.DD.SCAN_QR_CODE
verification: |
1. Get the QR code from the TH
- ubuntu@matter-7:~/Apr18_dut/connectedhomeip/examples/all-clusters-app/linux/out/all-clusters-app$ sudo ./chip-all-clusters-app --wifi
+ $ sudo ./chip-all-clusters-app --wifi
[13293:13293] CHIP:DL: Device Configuration:
[1653306603.740569][13293:13293] CHIP:DL: Serial Number: TEST_SN
@@ -67,9 +97,9 @@ tests:
2. Parse the DUT"s QR Code using the TH commissioner: chip-tool
- ubuntu@matter-7:~/Apr18_cntrl/connectedhomeip/examples/chip-tool/out/debug$ ./chip-tool payload parse-setup-payload MT:-24J048N01KA0648G00
+ $ ./chip-tool payload parse-setup-payload MT:-24J048N01KA0648G00
- Verify in DUT as client side:
+ Verify in DUT as commissioner side:
[1650266365.939678][10146:10146] CHIP:SPL: CommissioningFlow: 2
[1650266365.939704][10146:10146] CHIP:SPL: VendorID: 65521
[1650266365.939724][10146:10146] CHIP:SPL: Version: 0
@@ -84,8 +114,8 @@ tests:
the Matter network."
verification: |
./chip-tool pairing code 1 MT:-24J042C00KA0648G00
-
- Verify in DUT as client side:
+ No applicable TH logs.
+ Verify in DUT as commissioner side:
CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0005
CHIP:CTL: Received CommissioningComplete response, errorCode=0
CHIP:CTL: Successfully finished commissioning step "SendComplete"
@@ -102,14 +132,16 @@ tests:
MT:-24J029Q00KA064IJ3P0IXZB0DK5N1K8SQ1RYCU1-A40."
PICS: MCORE.DD.SCAN_QR_CODE
verification: |
- 1. Get QR code from TH as server side:
+ 1. Launch the TH commissionee app and get QR code from TH side
+ Verify in TH as commissionee side:
+
$ ./out/all-clusters-app/chip-all-clusters-app
...
[1657211128.302755][365927:365927] CHIP:SVR: SetupQRCode: [MT:-24J029Q00KA0648G00]
[1657211128.302783][365927:365927] CHIP:SVR: Copy/paste the below URL in a browser to see the QR Code:
[1657211128.302804][365927:365927] CHIP:SVR: https://dhrishi.github.io/connectedhomeip/qrcode.html?data=MT%3A-24J029Q00KA0648G00
- 2. Build TLV Data into TH"s QR code
+ 2. Build TLV Data into TH"s QR code using chip-tool"s generate-qrcode command
$ ./chip-tool payload generate-qrcode --existing-payload MT:-24J029Q00KA0648G00 --tlvBytes hex:152C000A3132333435363738393018
[1657211213125] [28612:16578643] CHIP: [TOO] QR Code: MT:-24J029Q00KA064IJ3P0IXZB0DK5N1K8SQ1RYCU1-A40
disabled: true
@@ -120,7 +152,7 @@ tests:
verification: |
./chip-tool pairing code 1 MT:-24J0AFN00KA064IJ3P0IXZB0DK5N1K8SQ1RYCU1-A40
- Verify in DUT as client side:
+ Verify in DUT as commissioner side:
[1657210956708] [28601:16575811] CHIP: [CTL] Received CommissioningComplete response, errorCode=0
[1657210956708] [28601:16575811] CHIP: [CTL] Successfully finished commissioning step "SendComplete"
[1657210956708] [28601:16575811] CHIP: [CTL] Commissioning stage next step: "SendComplete" -> "Cleanup"
@@ -139,9 +171,13 @@ tests:
tag 0x82, length 0x03e8)"
PICS: MCORE.DD.SCAN_QR_CODE
verification: |
+ No applicable TH logs.
+
+ 1. Launch the TH commissionee app and get QR code from TH side
$ ./out/all-clusters-app/chip-all-clusters-app
- 1. To generate the QR code containing the 1000-byte TLV data, use the following command and piece together the 2 log lines of output. NOTE: The finished QR code is in the Test step already.
+ 2. Build TLV Data into TH"s QR code using chip-tool"s generate-qrcode command. To generate the QR code containing the 1000-byte TLV data, use the following command and piece together the 2 log lines of output.
+ NOTE: The finished QR code is in the verification step already.
./chip-tool payload generate-qrcode --existing-payload MT:-24J0AFN00KA0648G00 --tlvBytes hex:152d82e8033132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393018
[1659491902.799305][3965:3965] CHIP:TOO: QR Code: MT:-24J0AFN00KA064IJ3P0JFQB7TZZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1Z
@@ -155,10 +191,20 @@ tests:
verification: |
./chip-tool pairing code 1 MT:-24J0AFN00KA064IJ3P0JFQB7TZZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T1VFSK1S3DO1ZTZR1UNMJ1DK5N1K8SQ1RYCU1--ZL15PKP1CD5T11UXS0
- Verify in TH as server side:
+ Verify in TH as commissionee side:
[1659491845.473705][3953:3953] CHIP:SVR: Commissioning completed successfully
- Verify on the DUT as client side:
+ Verify in DUT as commissioner side:
[1659491845308] [14021:5374393] CHIP: [TOO] Device commissioning completed with success
disabled: true
+
+ - label: ""
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: ""
+ verification: |
+ verification step to be updated.
+ disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_2_1.yaml b/src/app/tests/suites/certification/Test_TC_DD_2_1.yaml
index be9a358ee1bb8f..389197ac1e2d81 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_2_1.yaml
@@ -25,12 +25,18 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - The DUT is switched on and the DUT is transport-connected (BLE, Wi-Fi or Ethernet)
+ disabled: true
+
- label:
"If TH knows the DUTs Discovery Capability Bitmask, it starts the
commissioning process in any order of priority on all of the
networking technologies that are supported by both the TH and the DUT"
verification: |
TH selects the DUT"s capability bitmask and start the commissiong process accordingly
+ No applicable TH or DUT logs.
disabled: true
- label:
@@ -42,6 +48,7 @@ tests:
verification: |
If (PICS_CHIP_DEV) BLE discovery tool should discover the DUT else it should not
If !(PICS_CHIP_DEV) instruct DUT to start Advertising and scan again for commissionale devices using the BLE discovery tool
+ No applicable TH or DUT logs.
1. Discover commissionables over BLE using a BLE discovery tool of choice.
Try NRF Connect app (https://www.nordicsemi.com/Products/Development-tools/nrf-connect-for-desktop)
@@ -52,12 +59,16 @@ tests:
- label: "TH does not respond to DUT and DUT keeps sending ADVs"
PICS: MCORE.COM.BLE
verification: |
+ Verify in DUT as commissionee side:
+
[5855][P][DIS]Advertise commission parameter vendorID=65521 productID=32773 discriminator=3840/15
disabled: true
- label: "TH does not respond to DUT and DUT keeps sending ADVs"
PICS: MCORE.COM.BLE
verification: |
+ No applicable TH or DUT logs.
+
This step can be verified using a BLE discovery tool of choice.
Try NRF Connect app (https://www.nordicsemi.com/Products/Development-tools/nrf-connect-for-desktop)
OR
@@ -67,9 +78,10 @@ tests:
- label: "TH does not respond to DUT and DUT keeps sending ADVs"
PICS: MCORE.COM.BLE
verification: |
- This step can be verified using BLE discovery tool of choice (Try NRF Connect OR HCIDump)
+ This BLE advertisements can be verified using BLE discovery tool of choice (Try NRF Connect OR HCIDump)
->For T0 and 30s we have to get advertisement range between 20ms to 60ms
->For 30s and 15mins we have to get advertisement range between 150ms to 1200ms
+ Verify in DUT as commissionee side:
I: 3242 [DL]CHIPoBLE advertising started
I: 3279 [DL]NFC Tag emulation started
@@ -86,6 +98,7 @@ tests:
After 900s (that is 15min) advertisement stops
+ Verify in DUT as commissionee side:
D: 903154 [DIS]Scheduling extended discovery timeout in 900s
E: 903160 [DIS]Failed to finalize service update: Error CHIP:0x0000001C
@@ -97,6 +110,8 @@ tests:
- label: "TH does not respond to DUT. User power cycles the DUT"
PICS: MCORE.COM.BLE
verification: |
+ 1. Reboot the DUT commissionee
+
sudo reboot
disabled: true
@@ -106,6 +121,7 @@ tests:
PICS: MCORE.COM.BLE
verification: |
Check timestamp, ADV stop after 15 mins
+ Verify in DUT as commissionee side:
D: 903154 [DIS]Scheduling extended discovery timeout in 900s
E: 903160 [DIS]Failed to finalize service update: Error CHIP:0x0000001C
@@ -140,6 +156,7 @@ tests:
mandatory Commissionable Node Discovery service records over DNS-SD."
verification: |
$ ./chip-tool discover commissionables
+ Verify in TH as commissioner side:
Example output using all-clusters-app"s advertisements:
[1651256405894] [18453:593886] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:192.168.1.2
@@ -166,8 +183,9 @@ tests:
MCORE.DD.TXT_KEY_RI && MCORE.DD.TXT_KEY_PH && MCORE.DD.TXT_KEY_PI
verification: |
$ ./chip-tool discover commissionables
+ Verify in TH as commissioner side:
- Example output using all-clusters-app"s advertisements:
+ Example output using all-clusters-app"s advertisements found on the TH commissioner:
[1657218902314] [29617:16663220] CHIP: [DL] Browsing for: _matterc._udp
[1657218902488] [29617:16663220] CHIP: [DL] Mdns: OnBrowseAdd name: 5B4185091B6CAD28, type: _matterc._udp., domain: local., interface: 7 [1657218902488] [29617:16663220] CHIP: [DL] Resolve type=_matterc._udp name=5B4185091B6CAD28 interface=7
[1657218902489] [29617:16663220] CHIP: [DL] Mdns : OnNewInterface hostname:DCA6328D2B9F0000.local. fullname:5B4185091B6CAD28._matterc._udp.local. interface: 7 [1657218902490] [29617:16663220] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:fd54:23a1:c6de:4637:4c4:ee82:2a0f:b5e2
@@ -217,8 +235,9 @@ tests:
Commissionable Node Discovery service record over DNS-SD."
verification: |
$ ./chip-tool discover commissionables
+ Verify in TH as commissioner side:
- Example output using all-clusters-app"s advertisements:
+ Example output using all-clusters-app"s advertisements found on the TH commissioner:
[1651256405894] [18453:593886] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:192.168.1.2
[1651256405894] [18453:593886] CHIP: [DIS] Vendor ID: 65521
[1651256405894] [18453:593886] CHIP: [DIS] Product ID: 32769
@@ -258,15 +277,16 @@ tests:
verification: |
$ dns-sd -B _services._dns-sd._udp
- Example output using all-clusters-app"s advertisements:
+ Example output using all-clusters-app"s advertisements found on the TH commissioner:
11:56:29.770 Add 3 7 . _sub.local. _V65521
disabled: true
- label: "Place the DUT device into Commissioning mode"
verification: |
$ ./chip-tool discover commissionables
+ Verify in TH as commissioner side:
- Example output using all-clusters-app"s advertisements:
+ Example output using all-clusters-app"s advertisements found on the TH commissioner:
[1651256405894] [18453:593886] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:192.168.1.2
[1651256405894] [18453:593886] CHIP: [DIS] Vendor ID: 65521
[1651256405894] [18453:593886] CHIP: [DIS] Product ID: 32769
@@ -289,6 +309,7 @@ tests:
_matterc._udp -r)"
verification: |
$ ./chip-tool discover commissionables
+ Verify in TH as commissioner side:
[1657220492275] [29906:16679893] CHIP: [DL] Browsing for: _matterc._udp
[1657220492275] [29906:16679893] CHIP: [DL] Mdns: OnBrowseAdd name: 74AFA51731B2E373, type: _matterc._udp., domain: local., interface: 7 [1657220492275] [29906:16679893] CHIP: [DL] Resolve type=_matterc._udp name=74AFA51731B2E373 interface=7
diff --git a/src/app/tests/suites/certification/Test_TC_DD_2_2.yaml b/src/app/tests/suites/certification/Test_TC_DD_2_2.yaml
index f81a32a10543fd..c02101c86ed49e 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_2_2.yaml
@@ -26,10 +26,23 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.4.3. Discovery by Commissioner - DUT supports BLE (central role), Wi-Fi and IP connectivity - Wi-Fi certified n client
+
+ 2 - Test Harness must support all discovery transport technologies as the DUT (i.e. BLE, Wi-Fi and IP connectivity)
+ disabled: true
+
- label: "TH starts matter announcement procedure using BLE transport"
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
$ ./out/ble/chip-all-clusters-app --ble-device 1 --discriminator 3841
+ Verify in TH as commissionee side:
[1657221603.350406][368108:368108] CHIP:DL: Device Configuration:
[1657221603.350445][368108:368108] CHIP:DL: Serial Number: TEST_SN
@@ -56,14 +69,14 @@ tests:
verification: |
1. Discover commissionables over BLE using DUT=chip-tool pairing
- Verify in TH as server side
+ Verify in TH as commissionee side:
$ ./chip-tool pairing ble-wifi 1 zigbeehome matter123 20202021 3841
[1651743342.299897][3461:3464] CHIP:BLE: New device scanned: E4:5F:01:0F:1A:02
[1651743342.299951][3461:3464] CHIP:BLE: Device discriminator match. Attempting to connect.
[1651743342.303783][3461:3464] CHIP:BLE: Scan complete notification without an active scan.
[1651743346.244175][3461:3464] CHIP:DL: ConnectDevice complete
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
[1651743346.152716][5072:5075] CHIP:DL: Device E4:5F:01:0F:3B:B1 (Path: /org/bluez/hci0/dev_E4_5F_01_0F_3B_B1) Connected
[1651743347.908807][5072:5075] CHIP:DL: BluezCharacteristicAcquireWrite is called, conn: 0xffffa0043700
[1651743347.911151][5072:5075] CHIP:DL: c1 BluezCharacteristicWriteFD mtu, 517
@@ -114,14 +127,14 @@ tests:
verification: |
1. Discover commissionables over BLE using DUT=chip-tool pairing command
- Verify in TH as server side
+ Verify in TH as commissionee side:
$ ./chip-tool pairing ble-wifi 1 zigbeehome matter123 20202021 3841
[1651743342.299897][3461:3464] CHIP:BLE: New device scanned: E4:5F:01:0F:1A:02
[1651743342.299951][3461:3464] CHIP:BLE: Device discriminator match. Attempting to connect.
[1651743342.303783][3461:3464] CHIP:BLE: Scan complete notification without an active scan.
[1651743346.244175][3461:3464] CHIP:DL: ConnectDevice complete
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
[1651743346.152716][5072:5075] CHIP:DL: Device E4:5F:01:0F:3B:B1 (Path: /org/bluez/hci0/dev_E4_5F_01_0F_3B_B1) Connected
[1651743347.908807][5072:5075] CHIP:DL: BluezCharacteristicAcquireWrite is called, conn: 0xffffa0043700
[1651743347.911151][5072:5075] CHIP:DL: c1 BluezCharacteristicWriteFD mtu, 517
@@ -172,7 +185,7 @@ tests:
verification: |
$ ./out/all-clusters-app/chip-all-clusters-app --wifi --discriminator 3841
- Verify in TH as server side
+ Verify in TH as commissionee side
[1653087913.247229][8083:8083] CHIP:SVR: Server Listening...
[1653087913.247636][8083:8083] CHIP:DL: Device Configuration:
[1653087913.248094][8083:8083] CHIP:DL: Serial Number: TEST_SN
@@ -190,19 +203,19 @@ tests:
[1653087913.254268][8083:8083] CHIP:DMG: Endpoint 0, Cluster 0x0000_001D update version to 29f72814
disabled: true
- - label: "DUT must find TH and provide onboarding data for validation."
+ - label: ""
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
1. Discover commissionables over BLE using DUT=chip-tool pairing command
- Verify in TH as server side
+ Verify in TH as commissionee side:
$ ./chip-tool pairing ble-wifi 1 zigbeehome matter123 20202021 3841
[1651743342.299897][3461:3464] CHIP:BLE: New device scanned: E4:5F:01:0F:1A:02
[1651743342.299951][3461:3464] CHIP:BLE: Device discriminator match. Attempting to connect.
[1651743342.303783][3461:3464] CHIP:BLE: Scan complete notification without an active scan.
[1651743346.244175][3461:3464] CHIP:DL: ConnectDevice complete
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
[1651743346.152716][5072:5075] CHIP:DL: Device E4:5F:01:0F:3B:B1 (Path: /org/bluez/hci0/dev_E4_5F_01_0F_3B_B1) Connected
[1651743347.908807][5072:5075] CHIP:DL: BluezCharacteristicAcquireWrite is called, conn: 0xffffa0043700
[1651743347.911151][5072:5075] CHIP:DL: c1 BluezCharacteristicWriteFD mtu, 517
@@ -291,22 +304,40 @@ tests:
"With DUT and TH connected to the same network over IP, DUT performs
service discovery using DNS-SD"
verification: |
- 1. TH is in commissioning mode and discoverable by DUT over IP through DNS-SD advertisements
+ 1. TH is in commissioning mode and discoverable by DUT over IP through DNS-SD advertisements. This can also be verified using through the DUT"s pairing command over IP.
+
+ Verify in TH as commissionee side:
+ $ ./out/all-clusters-app/chip-all-clusters-app
+ [1660154789.496930][7968:7968] CHIP:DIS: CHIP minimal mDNS started advertising.
+ [1660154789.499623][7968:7968] CHIP:DL: Using wifi MAC for hostname
+ [1660154789.499743][7968:7968] CHIP:DIS: Advertise commission parameter vendorID=65521 productID=32769 discriminator=3840/15 cm=1
+ [1660154789.501718][7968:7968] CHIP:DIS: Responding with _matterc._udp.local
+ [1660154789.501757][7968:7968] CHIP:DIS: Responding with 092C5C8AE5285458._matterc._udp.local
+ [1660154789.501780][7968:7968] CHIP:DIS: Responding with DCA632A849EA0000.local
+ [1660154789.501802][7968:7968] CHIP:DIS: Responding with DCA632A849EA0000.local
+ [1660154789.501830][7968:7968] CHIP:DIS: Responding with _V65521._sub._matterc._udp.local
+ [1660154789.501858][7968:7968] CHIP:DIS: Responding with _S15._sub._matterc._udp.local
+ [1660154789.501882][7968:7968] CHIP:DIS: Responding with _L3840._sub._matterc._udp.local
+ [1660154789.501907][7968:7968] CHIP:DIS: Responding with _CM._sub._matterc._udp.local
+ [1660154789.501945][7968:7968] CHIP:DIS: Responding with 092C5C8AE5285458._matterc._udp.local
+ [1660154789.501966][7968:7968] CHIP:DIS: CHIP minimal mDNS configured as "Commissionable node device".
+
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
$ ./chip-tool discover commissionables
- [1651256405894] [18453:593886] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:192.168.1.2
- [1651256405894] [18453:593886] CHIP: [DIS] Vendor ID: 65521
- [1651256405894] [18453:593886] CHIP: [DIS] Product ID: 32769
- [1651256405894] [18453:593886] CHIP: [DIS] Long Discriminator: 3840
- [1651256405894] [18453:593886] CHIP: [DIS] Pairing Hint: 33
- [1651256405894] [18453:593886] CHIP: [DIS] Hostname: DCA6328D2B9F0000 [1651256405894] [18453:593886] CHIP: [DIS] Instance Name: 8FFEE04E82830E26
- [1651256405894] [18453:593886] CHIP: [DIS] IP Address #1: fd54:23a1:c6de:4637:dea6:32ff:fe8d:2b9f
- [1651256405894] [18453:593886] CHIP: [DIS] IP Address #2: fe80::dea6:32ff:fe8d:2b9f
- [1651256405894] [18453:593886] CHIP: [DIS] IP Address #3: fe80::dea6:32ff:fe8d:2ba0
- [1651256405894] [18453:593886] CHIP: [DIS] IP Address #4: 192.168.1.2
- [1651256405894] [18453:593886] CHIP: [DIS] Port: 5540
- [1651256405894] [18453:593886] CHIP: [DIS] Commissioning Mode: 1
- [1651256405894] [18453:593886] CHIP: [DIS] Mrp Interval idle: 5000 ms
- [1651256405894] [18453:593886] CHIP: [DIS] Mrp Interval active: 300 ms
+ OR
+ $ ./chip-tool pairing code 1 MT:-24J029Q00KA0648G00
+ [1660155158954] [99591:10441026] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:fe80::e5d0:7f0d:7aad:d736
+ [1660155158954] [99591:10441026] CHIP: [DIS] Hostname: DCA632A849EA0000 [1660155158954] [99591:10441026] CHIP: [DIS] IP Address #1: fd54:23a1:c6de:4637:1fac:42fd:dd74:dcc5
+ [1660155158954] [99591:10441026] CHIP: [DIS] IP Address #2: 2603:8001:7e00:e001:d669:2a30:7e9e:7121
+ [1660155158954] [99591:10441026] CHIP: [DIS] IP Address #3: fe80::e5d0:7f0d:7aad:d736
+ [1660155158954] [99591:10441026] CHIP: [DIS] Port: 5540
+ [1660155158954] [99591:10441026] CHIP: [DIS] Mrp Interval idle: 5000 ms
+ [1660155158954] [99591:10441026] CHIP: [DIS] Mrp Interval active: 300 ms
+ [1660155158954] [99591:10441026] CHIP: [DIS] Vendor ID: 65521
+ [1660155158954] [99591:10441026] CHIP: [DIS] Product ID: 32769
+ [1660155158954] [99591:10441026] CHIP: [DIS] Long Discriminator: 3840
+ [1660155158954] [99591:10441026] CHIP: [DIS] Pairing Hint: 33
+ [1660155158954] [99591:10441026] CHIP: [DIS] Instance Name: 8BA2031BFBF2BCDE
+ [1660155158954] [99591:10441026] CHIP: [DIS] Commissioning Mode: 1
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_1.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_1.yaml
index 7d21c8276e1f1e..a745aae5ad4ba0 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_1.yaml
@@ -24,11 +24,16 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.5 - Commissioner is on a network. - The network can either be IP-based(Ethernet or WiFi) or Thread. Commissioner can either be a Matter device which is already on a network or the test harness connected to the network.
+ disabled: true
+
- label:
"Commissioner and Commissionee discover each other and connect via the
discovery mode applicable for the DUT."
verification: |
- Verify in TH as server side: sudo ./chip-all-clusters-app --wifi --discriminator 3841
+ Verify in DUT as commissionee side: sudo ./chip-all-clusters-app --wifi --discriminator 3841
[1653471956.966855][10713:10713] CHIP:SPT: PASE PBKDF iterations set to 1000
[1653471956.966887][10713:10713] CHIP:SPT: LinuxCommissionableDataProvider didn"t get a PASE salt, generating one.
@@ -52,7 +57,7 @@ tests:
[1653471956.972769][10713:10713] CHIP:SVR: https://dhrishi.github.io/connectedhomeip/qrcode.html?data=MT%3A-24J048N01KA0648G00
[1653471956.972803][10713:10713] CHIP:SVR: Manual pairing code: [749701123365521327694]
-
+ Verify on TH as commissioner side:
connectedhomeip/examples/chip-tool/out/debug$ ./chip-tool discover commissionables
Waiting for device responses...
CHIP:CTL: Generating ICAC
@@ -202,7 +207,7 @@ tests:
verification: |
Verify that the responder receives the PBKDFParamRequest message
- Verify in TH as server side
+ Verify in DUT as commissionee side
CHIP:SC: Received PBKDF param request
CHIP:SC: Peer assigned session ID 18450
CHIP:SC: Found MRP parameters in the message
@@ -212,7 +217,7 @@ tests:
CHIP:IN: Sending unauthenticated msg 0xaaaaad340560 with MessageCounter:1341084110 to 0x0000000000000000 at monotonic time: 0000000000FBA380 msec
CHIP:SC: Sent PBKDF param response
- Verify in DUT as client side
+ Verify in TH as commissioner side
Sent PBKDF param request
[1653471961.364996][30157:30162] CHIP:CTL: Setting wifi credentials from parameters
[1653471961.365051][30157:30162] CHIP:CTL: Setting attestation nonce to random value
@@ -230,11 +235,11 @@ tests:
"Commissioner SHALL re-arm Fail-safe timer on Commissionee within 60s
(the autonomously Fail-safe timer length set by Commissionee)"
verification: |
- Verify in TH as server side
+ Verify in DUT as commissionee side
CHIP:DL: NVS set: chip-config/fail-safe-armed = true
- Verify in DUT as client side
+ Verify in TH as commissioner side
: Performing next commissioning step "ArmFailSafe"
[1653471968.064493][30157:30162] CHIP:CTL: Arming failsafe (60 seconds)
@@ -245,13 +250,13 @@ tests:
Commissionee."
PICS: MCORE.COM.WIRELESS
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
Performing next commissioning step "ConfigRegulatory"
[1653471968.202645][30157:30162] CHIP:CTL: Setting Regulatory Config
[1653471968.202666][30157:30162] CHIP:CTL: No regulatory config supplied by controller, leaving as device default (0)
- Verify in TH as server side
+ Verify in DUT as commissionee side
NVS set: chip-config/regulatory-location = 0 (0x0)
disabled: true
@@ -259,13 +264,13 @@ tests:
"Commissioner requests operational CSR from Commissionee with
OperationalCSRRequest command"
verification: |
- Verify in DUT as client side after commissioning
+ Verify in TH as commissioner side after commissioning
[1646909537.102263][3145:3150] CHIP:CTL: Received Attestation Information from the device
[1646909537.102418][3145:3150] CHIP:CTL: Verifying attestation
[1646909537.115081][3145:3150] CHIP:CTL: Successfully validated "Attestation Information" command received from the device.
- Verify in TH as server side
+ Verify in DUT as commissionee side
OpCreds: Received a CSRRequest command
CHIP:ZCL: OpCreds: NewCertificateSigningRequest succeeded
disabled: true
@@ -274,11 +279,11 @@ tests:
"Commissioner configures operational credentials on DUT if not
previously installed"
verification: |
- Verify in TH as server side
+ Verify in DUT as commissionee side
OpCreds: Received an AddTrustedRootCertificate command
- Verify in DUT as client side
+ Verify in TH as commissioner side
Sending root certificate to the device
CHIP:DMG: ICR moving to [AddingComm]
@@ -293,7 +298,7 @@ tests:
"Commissioner configures itself as administrator in ACL on DUT if
needed"
verification: |
- Verify in DUT as client side after commissioning
+ Verify in TH as commissioner side after commissioning
CHIP:CTL: Commissioning stage next step: "SendTrustedRootCert" -> "SendNOC"
[1653471969.812357][30157:30162] CHIP:CTL: Performing next commissioning step "SendNOC"
@@ -347,7 +352,7 @@ tests:
[1653471970.347439][30157:30162] CHIP:TOO: Secure Pairing Success
[1653471970.347485][30157:30162] CHIP:CTL: Successfully finished commissioning step "SendNOC"
- Verify in TH as server side
+ Verify in DUT as commissionee side
OpCreds: Received an AddNOC command
disabled: true
@@ -356,7 +361,7 @@ tests:
"Commissioner configures operational network on DUT if DUT both
supports and requires"
verification: |
- Verify in DUT as client side after commissioning
+ Verify in TH as commissioner side after commissioning
[1646909537.345068][3145:3150] CHIP:CTL: Received certificate signing request from the device
disabled: true
@@ -365,7 +370,7 @@ tests:
"Commissioner instructs Commissionee to connect to operational network
if not already connected"
verification: |
- Verify in DUT as client side after commissioning
+ Verify in TH as commissioner side after commissioning
[1646909537.976592][3145:3150] CHIP:CTL: Operational credentials provisioned on device 0xffffac001730
[1646909537.976664][3145:3150] CHIP:TOO: Secure Pairing Success
@@ -373,7 +378,7 @@ tests:
- label: "Commissioner starts discovery of DUT using Operational Discovery"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:CTL: Commissioning stage next step: "SendNOC" -> "FindOperational"
[1653471976.344532][30157:30162] CHIP:CTL: Performing next commissioning step "FindOperational"
@@ -395,18 +400,22 @@ tests:
- label:
"Commissioner opens a CASE session with DUT over operational network"
verification: |
- Verify in TH as server side
+ Verify in DUT as commissionee side
+
+ [1660154789.690124][7968:7968] CHIP:IN: CASE Server enabling CASE session setups
+ [1660154789.690208][7968:7968] CHIP:IN: SecureSession[0xaaaab75fae10]: Allocated Type:2 LSID:55651
+ [1660154789.690248][7968:7968] CHIP:SC: Allocated SecureSession (0xaaaab75fae10) - waiting for Sigma1 msg
+ [1660154789.690276][7968:7968] CHIP:SVR: Joining Multicast groups
+ [1660154789.690304][7968:7968] CHIP:ZCL: Emitting StartUp event
+ [1660154789.690395][7968:7968] CHIP:EVL: LogEvent event number: 0x0000000000000002 priority: 2, endpoint id: 0x0 cluster id: 0x0000_0028 event id: 0x0 Sys timestamp: 0x00000000001D1D86
- CASE Server enabling CASE session setups
- [1653471957.713139][10713:10713] CHIP:SVR: Joining Multicast groups
- [1653471957.713654][10713:10713] CHIP:ZCL: Emitting StartUp event
- [1653471957.714762][10713:10713] CHIP:EVL: LogEvent event number: 0x0000000000000000 priority: 2, endpoint id: 0x0 cluster id: 0x0000_0028 event id: 0x0 Sys timestamp: 0x000000000059AC88
- [1653471957.715456][10713:10713] CHIP:ZCL: GeneralDiagnosticsDelegate: OnDeviceRebooted
+ Verify in TH as commissioner side
+ [1660154794132] [99576:10438621] CHIP: [TOO] CASE establishment successful
disabled: true
- label: "Commissioner sends CommissioningComplete command"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:CTL: Received CommissioningComplete response
disabled: true
@@ -415,7 +424,7 @@ tests:
"Commissioning channel between the Commissioner and Commissionee is
terminated."
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:CTL: Successfully finished commissioning step "SendComplete"
CHIP:CTL: Commissioning stage next step: "SendComplete" -> "Cleanup"
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_10.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_10.yaml
index fd3cd615e01ac3..b81143cb4ce851 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_10.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_10.yaml
@@ -27,6 +27,16 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 -DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+ disabled: true
+
- label:
"DUT receives Onboarding Payload from the TH with Custom Flow field
set to value 2"
@@ -48,26 +58,25 @@ tests:
disabled: true
- label:
- "DUT fetches commissioning data from DCL using VID and PID from
- Onboarding Payload"
- PICS: MCORE.DD.FETCH_DCL
+ "User follows any TH-specific steps to place the TH Commissionee into
+ commissioning mode."
verification: |
- 1. Observe the TH"s DCL on the DUT
- disabled: true
-
- - label:
- "Using the instructions located at the CommissioningCustomFlowURL from
- the DCL, DUT guides the user in next steps to prepare the commissionee
- (TH) for commissioning"
- PICS: MCORE.DD.FETCH_DCL
- verification: |
- 1. Follow instructions for commissioning using the URL contained in the DCL
+ 1. Launch the TH commissionee all-clusters-app:
+ $ ./chip-all-clusters-app
+ Verifiy on TH as commissionee side:
+ [1660152729.426029][648909:648909] CHIP:-: ==== Onboarding payload for Custom Commissioning Flows ====
+ [1660152729.426076][648909:648909] CHIP:SVR: SetupQRCode: [MT:-24J029Q00KA0648G00]
+ [1660152729.426103][648909:648909] CHIP:SVR: Copy/paste the below URL in a browser to see the QR Code:
+ [1660152729.426123][648909:648909] CHIP:SVR: https://project-chip.github.io/connectedhomeip/qrcode.html?data=MT%3A-24J029Q00KA0648G00
disabled: true
- label: "DUT commissions TH"
verification: |
$ ./chip-tool pairing code 1 MT:-24J029Q00KA0648G00
- [1657578523795] [9610:351965] CHIP: [CTL] Successfully finished commissioning step "Cleanup"
- [1657578523795] [9610:351965] CHIP: [TOO] Device commissioning completed with success
+ Verify in DUT as commissioner side:
+ CHIP:CTL: Received CommissioningComplete response
+
+ Verifiy on TH as commissionee side:
+ [1660154248.898113][7143:7143] CHIP:SVR: Commissioning completed successfully
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_11.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_11.yaml
index a2f62b1675d2bf..82ab752313d6d3 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_11.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_11.yaml
@@ -28,6 +28,38 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+
+ 2 - 5.1.3 - QR code is printed on the device or in additional provided materials (ex: manual).
+
+ An example onboarding QR code could be "MT:-24J029Q00KA0648G00" (following 5.1.3 "QR Code", Table 34 "Packed Binary Data Structure for Onboarding Payload") which includes:
+
+ - 3-bit Version String=000
+
+ - 16-bit Vendor ID=0xFFF1 (as defined in section 2.5.2. "Vendor Identifier")
+
+ - 16-bit Product ID=0x8001 (as defined in section 2.5.3. "Product Identifier")
+
+ - 2-bit Custom Flow=10 (Custom Commissioning Flow = 2)
+
+ - 8-bit Discovery Capabilities Bitmask=00000100 (OnNetwork)
+
+ - 12-bit Discriminator=0xF00
+
+ - 27-bit Passcode=20202021
+
+ - 4-bit Padding=0000
+
+ - no variable-length TLV Data included (as defined in section 5.1.3.1. "Payload", subsection "TLV Data")
+ disabled: true
+
- label:
"Standard Commissioning Flow: Use a Commissionee with a QR code that
has the Custom Flow field set to 0 and supports BLE for its Discovery
@@ -35,6 +67,8 @@ tests:
spec. documentation."
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
+ Verify on the TH as commissionee side:
+
$ ./out/ble/all-clusters-app/chip-all-clusters-app --capabilities 2 --ble-device 1
...
[1657232267.387816][370320:370320] CHIP:DL: Device Configuration:
@@ -65,13 +99,13 @@ tests:
using BLE"
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
- TH Commissionee:
+ Verify on the TH as commissionee side:
[1657232374.956508][370357:370357] CHIP:DL: HandlePlatformSpecificBLEEvent 32784
[1657232374.956534][370357:370357] CHIP:SVR: Commissioning completed successfully
[1657232374.956577][370357:370357] CHIP:DIS: Updating services using commissioning mode 0
- DUT Commissioner:
+ Verify on the DUT Commissioner side:
$ ./chip-tool pairing code 1 MT:-24J0YXE00KA0648G00
[1657232374820] [31379:16804218] CHIP: [CTL] Received CommissioningComplete response, errorCode=0
@@ -92,6 +126,7 @@ tests:
verification: |
$ ./out/all-clusters-app/chip-all-clusters-app --custom-flow 0 --capabilities 4
+ Verify on the TH as commissionee side:
[1651105420.610637][27312:27312] CHIP:DL: Device Configuration:
[1651105420.610695][27312:27312] CHIP:DL: Serial Number: TEST_SN
[1651105420.610727][27312:27312] CHIP:DL: Vendor Id: 65521 (0xFFF1)
@@ -108,7 +143,9 @@ tests:
- label: "Scan the QR code from the previous step using the DUT."
PICS: MCORE.DD.SCAN_QR_CODE
verification: |
- 1. Verify the QR code is scanned by DUT, chip-tool does not support physically scanning QR codes
+ 1. Verify the QR code is scanned by DUT
+
+ Note: chip-tool does not support physically scanning QR codes
disabled: true
- label:
@@ -117,12 +154,12 @@ tests:
using IP Network"
PICS: MCORE.DD.DISCOVERY_IP
verification: |
- TH Commissionee:
+ Verify on the TH Commissionee side:
[1651105530.973166][27371:27371] CHIP:SVR: Commissioning completed successfully
[1651105530.973215][27371:27371] CHIP:DIS: Updating services using commissioning mode 0
- DUT Commissioner:
+ Verify on the DUT Commissioner:
$ ./chip-tool pairing code 1 MT:-24J0AFN00KA0648G00
[1651105530854] [95067:65607294] CHIP: [CTL] Received CommissioningComplete response
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_12.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_12.yaml
index c4d4b2ed7e5fed..9adbd5d30f2adf 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_12.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_12.yaml
@@ -28,6 +28,38 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+
+ 2 - 5.1.3 - QR code is printed on the device or in additional provided materials (ex: manual).
+
+ An example onboarding QR code could be "MT:-24J029Q00KA0648G00" (following 5.1.3 "QR Code", Table 34 "Packed Binary Data Structure for Onboarding Payload") which includes:
+
+ - 3-bit Version String=000
+
+ - 16-bit Vendor ID=0xFFF1 (as defined in section 2.5.2. "Vendor Identifier")
+
+ - 16-bit Product ID=0x8001 (as defined in section 2.5.3. "Product Identifier")
+
+ - 2-bit Custom Flow=10 (Custom Commissioning Flow = 2)
+
+ - 8-bit Discovery Capabilities Bitmask=00000100 (OnNetwork)
+
+ - 12-bit Discriminator=0xF00
+
+ - 27-bit Passcode=20202021
+
+ - 4-bit Padding=0000
+
+ - no variable-length TLV Data included (as defined in section 5.1.3.1. "Payload", subsection "TLV Data")
+ disabled: true
+
- label:
"User-Intent Commissioning Flow: Use a Commissionee with a QR code
that has the Custom Flow field set to 1 and supports BLE for its
@@ -36,9 +68,10 @@ tests:
documentation."
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
+ Verify on the TH as commissionee side:
+
$ ./out/ble/all-clusters-app/chip-all-clusters-app --capabilities 2 --custom-flow 1 --ble-device 1
...
- [1657234110.765139][370717:370717] CHIP:-: ==== Onboarding payload for Custom Commissioning Flows ====
[1657234110.765249][370717:370717] CHIP:SVR: SetupQRCode: [MT:-24J0YXE00KA0648G00]
[1657234110.765314][370717:370717] CHIP:SVR: Copy/paste the below URL in a browser to see the QR Code:
[1657234110.765364][370717:370717] CHIP:SVR: https://dhrishi.github.io/connectedhomeip/qrcode.html?data=MT%3A-24J0YXE00KA0648G00
@@ -48,36 +81,32 @@ tests:
PICS: MCORE.DD.SCAN_QR_CODE
verification: |
1. Verify the QR code is scanned by DUT
+
Note: chip-tool does not support physically scanning QR codes
disabled: true
- label: "DUT parses QR code."
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
- 1. Follow the steps given in the TH"s pairing hint to allow for commissioning to happen. TH should not be commissioned until these steps were followed and indicate DUT can proceed with commissioning the TH to the Matter network
+ 1. Parse the payload of the TH commissionee
- On DUT=chip-tool:
- ./chip-tool pairing code 1 MT:-24J0YXE00KA0648G00
- [1657234147237] [31454:16822562] CHIP: [CTL] Successfully finished commissioning step "SendComplete"
- [1657234147237] [31454:16822562] CHIP: [CTL] Commissioning stage next step: "SendComplete" -> "Cleanup"
- [1657234147237] [31454:16822562] CHIP: [CTL] Performing next commissioning step "Cleanup"
- [1657234147237] [31454:16822562] CHIP: [CTL] Successfully finished commissioning step "Cleanup"
- [1657234147237] [31454:16822562] CHIP: [TOO] Device commissioning completed with success
+ Verify on the DUT Commissioner side:
+ $ ./chip-tool payload parse-setup-payload MT:-24J0YXE00KA0648G00
+
+ 2. Verify that TH logs do not show the commissionee being commissioned by the DUT.
disabled: true
- label:
- "Follow any steps from the resources provided by the pairing hint or
- by the THs manufacturer for putting the TH Commissionee device into
- commissioning mode and to complete the commissioning process using
- BLE."
+ "User should follow any TH-specific steps for putting the TH
+ Commissionee device into commissioning mode and to complete the
+ commissioning process using BLE."
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
- TH Commissionee:
+ Verify on the TH Commissionee side:
[1651101988.943015][23212:23212] CHIP:SVR: Commissioning completed successfully
[1651101988.943058][23212:23212] CHIP:DIS: Updating services using commissioning mode 0
-
- On DUT Commissioner=chip-tool:
+ Verify on the DUT Commissioner side:
./chip-tool pairing code 1 MT:-24J0YXE00KA0648G00
[1657234147237] [31454:16822562] CHIP: [CTL] Successfully finished commissioning step "SendComplete"
[1657234147237] [31454:16822562] CHIP: [CTL] Commissioning stage next step: "SendComplete" -> "Cleanup"
@@ -94,47 +123,43 @@ tests:
documentation."
PICS: MCORE.DD.DISCOVERY_IP
verification: |
+ Verify on the TH Commissionee side:
$ ./out/all-clusters-app/chip-all-clusters-app --custom-flow 1 --capabilities 4
- [1657234233.898170][370755:370755] CHIP:-: ==== Onboarding payload for Custom Commissioning Flows ====
- [1657234233.898195][370755:370755] CHIP:SVR: SetupQRCode: [MT:-24J029Q00KA0648G00]
- [1657234233.898227][370755:370755] CHIP:SVR: Copy/paste the below URL in a browser to see the QR Code:
- [1657234233.898248][370755:370755] CHIP:SVR: https://dhrishi.github.io/connectedhomeip/qrcode.html?data=MT%3A-24J029Q00KA0648G00
+ [1660353382.200125][249074:249074] CHIP:SVR: SetupQRCode: [MT:-24J029Q00KA0648G00]
+ [1660353382.200152][249074:249074] CHIP:SVR: Copy/paste the below URL in a browser to see the QR Code:
+ [1660353382.200173][249074:249074] CHIP:SVR: https://project-chip.github.io/connectedhomeip/qrcode.html?data=MT%3A-24J029Q00KA0648G00
disabled: true
- label: "Scan the QR code from the previous step using the DUT."
PICS: MCORE.DD.SCAN_QR_CODE
verification: |
1. Verify the QR code is scanned by DUT
+
Note: chip-tool does not support physically scanning QR codes
disabled: true
- label: "DUT parses QR code."
PICS: MCORE.DD.DISCOVERY_IP
verification: |
- 1. Follow the steps given in the TH"s pairing hint to allow for commissioning to happen. TH should not be commissioned until these steps were followed and indicate DUT can proceed with commissioning the TH to the Matter network
+ 1. Parse the payload of the TH commissionee
+ Verify on the DUT Commissioner side:
+ $ ./chip-tool payload parse-setup-payload MT:-24J029Q00KA0648G00
- On DUT=chip-tool:
- ./chip-tool pairing code 1 MT:-24J029Q00KA0648G00
- [1657234324847] [31475:16824564] CHIP: [CTL] Successfully finished commissioning step "SendComplete"
- [1657234324847] [31475:16824564] CHIP: [CTL] Commissioning stage next step: "SendComplete" -> "Cleanup"
- [1657234324847] [31475:16824564] CHIP: [CTL] Performing next commissioning step "Cleanup"
- [1657234324847] [31475:16824564] CHIP: [CTL] Successfully finished commissioning step "Cleanup"
- [1657234324847] [31475:16824564] CHIP: [TOO] Device commissioning completed with success
+ 2. Verify that TH logs do not show the commissionee being commissioned by the DUT.
disabled: true
- label:
- "Follow any steps from the resources provided by the pairing hint or
- by the THs manufacturer for putting the TH Commissionee device into
- commissioning mode and to complete the commissioning process using IP
- Network."
+ "User should follow any TH-specific steps for putting the TH
+ Commissionee device into commissioning mode and to complete the
+ commissioning process using IP Network."
PICS: MCORE.DD.DISCOVERY_IP
verification: |
- TH all-clusters-app:
+ Verify on the TH Commissionee side:
[1657234324.992098][370755:370755] CHIP:SVR: Commissioning completed successfully
[1657234324.992146][370755:370755] CHIP:DIS: Updating services using commissioning mode 0
- On DUT=chip-tool:
+ Verify on the DUT Commissioner side:
./chip-tool pairing code 1 MT:-24J029Q00KA0648G00
[1657234324847] [31475:16824564] CHIP: [CTL] Successfully finished commissioning step "SendComplete"
[1657234324847] [31475:16824564] CHIP: [CTL] Commissioning stage next step: "SendComplete" -> "Cleanup"
@@ -170,10 +195,9 @@ tests:
disabled: true
- label:
- "Follow any steps from the resources provided by the pairing hint or
- by the THs manufacturer for putting the TH Commissionee device into
- commissioning mode and to complete the commissioning process using
- SoftAP."
+ "User should follow any TH-specific steps for putting the TH
+ Commissionee device into commissioning mode and to complete the
+ commissioning process using SoftAP."
PICS: MCORE.DD.DISCOVERY_SOFTAP
verification: |
Out of Scope for V1.0
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_13.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_13.yaml
index ce576dad278dd9..462dce0ec17513 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_13.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_13.yaml
@@ -28,6 +28,38 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+
+ 2 - 5.1.3 - QR code is printed on the device or in additional provided materials (ex: manual).
+
+ An example onboarding QR code could be "MT:-24J029Q00KA0648G00" (following 5.1.3 "QR Code", Table 34 "Packed Binary Data Structure for Onboarding Payload") which includes:
+
+ - 3-bit Version String=000
+
+ - 16-bit Vendor ID=0xFFF1 (as defined in section 2.5.2. "Vendor Identifier")
+
+ - 16-bit Product ID=0x8001 (as defined in section 2.5.3. "Product Identifier")
+
+ - 2-bit Custom Flow=10 (Custom Commissioning Flow = 2)
+
+ - 8-bit Discovery Capabilities Bitmask=00000100 (OnNetwork)
+
+ - 12-bit Discriminator=0xF00
+
+ - 27-bit Passcode=20202021
+
+ - 4-bit Padding=0000
+
+ - no variable-length TLV Data included (as defined in section 5.1.3.1. "Payload", subsection "TLV Data")
+ disabled: true
+
- label:
"Custom Commissioning Flow: Use a Commissionee with a QR code that has
the Custom Flow field set to 2 and supports BLE for its Discovery
@@ -35,6 +67,7 @@ tests:
Version bit string follows the current Matter spec. documentation."
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
+ Verify on the TH Commissionee side:
$ ./out/ble/all-clusters-app/chip-all-clusters-app --custom-flow 2 --capabilities 2
[1657235055.253604][370941:370941] CHIP:-: ==== Onboarding payload for Custom Commissioning Flows ====
@@ -53,27 +86,36 @@ tests:
- label: "DUT parses QR code."
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
- 1. Follow the steps given in the TH"s URL to allow for commissioning to happen. TH should not be commissioned until these steps were followed and indicate DUT can proceed with commissioning the TH to the Matter network
-
- On DUT=chip-tool:
- ./chip-tool pairing code 1 MT:-24J0YXE00KA0648G00
- [1657235087918] [31502:16832693] CHIP: [CTL] Successfully finished commissioning step "Cleanup"
- [1657235087918] [31502:16832693] CHIP: [TOO] Device commissioning completed with success
+ 1. Parse the payload of the TH commissionee
+
+ Verify on the DUT Commissioner side:
+ $ ./chip-tool payload parse-setup-payload MT:-24J0YXE00KA0648G00
+ [1660352364702] [20244:11810896] CHIP: [SPL] Parsing base38Representation: MT:-24J0YXE00KA0648G00
+ [1660352364702] [20244:11810896] CHIP: [SPL] Version: 0
+ [1660352364702] [20244:11810896] CHIP: [SPL] VendorID: 65521
+ [1660352364702] [20244:11810896] CHIP: [SPL] ProductID: 32769
+ [1660352364702] [20244:11810896] CHIP: [SPL] Custom flow: 2 (CUSTOM)
+ [1660352364702] [20244:11810896] CHIP: [SPL] Capabilities: 0x02 (BLE)
+ [1660352364702] [20244:11810896] CHIP: [SPL] Discriminator: 3840
+ [1660352364702] [20244:11810896] CHIP: [SPL] Passcode: 20202021
+
+ 2. Verify that TH logs do not show the commissionee being commissioned by the DUT.
disabled: true
- label:
- "User should follow any steps from the CommissioningCustomFlowUrl
- within the THs DCL, unless the DUT has alternative means to guide the
- user to successful commissioning, for putting the TH Commissionee into
- commissioning mode, for triggering the DUT Commissioner for
- commissioning, and for completing the commissioning process using BLE."
+ "User should follow any TH-specific steps, unless the DUT has
+ alternative means to guide the user to successful commissioning, for
+ putting the TH Commissionee into commissioning mode, for triggering
+ the DUT Commissioner for commissioning, and for completing the
+ commissioning process using BLE."
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
- TH all-clusters-app:
+ Verify on the TH Commissionee side:
[1657235088.040328][370941:370941] CHIP:SVR: Commissioning completed successfully
[1657235088.040371][370941:370941] CHIP:DIS: Updating services using commissioning mode 0
- DUT chip-tool: $ ./chip-tool pairing code 1 MT:-24J0YXE00KA0648G00
+ Verify on the DUT Commissioner side:
+ $ ./chip-tool pairing code 1 MT:-24J0YXE00KA0648G00
[1657235087918] [31502:16832693] CHIP: [CTL] Successfully finished commissioning step "Cleanup"
[1657235087918] [31502:16832693] CHIP: [TOO] Device commissioning completed with success
disabled: true
@@ -86,6 +128,7 @@ tests:
documentation."
PICS: MCORE.DD.DISCOVERY_IP
verification: |
+ Verify on the TH Commissionee side:
$ ./out/all-clusters-app/chip-all-clusters-app --custom-flow 2 --capabilities 4
[1657235141.663008][370963:370963] CHIP:-: ==== Onboarding payload for Custom Commissioning Flows ====
@@ -104,28 +147,35 @@ tests:
- label: "DUT parses QR code."
PICS: MCORE.DD.DISCOVERY_IP
verification: |
- 1. Follow the steps given in the TH"s URL to allow for commissioning to happen. TH should not be commissioned until these steps were followed and indicate DUT can proceed with commissioning the TH to the Matter network
-
- On DUT=chip-tool:
- ./chip-tool pairing code 1 MT:-24J029Q00KA0648G00
- [1657235198856] [31506:16834043] CHIP: [CTL] Successfully finished commissioning step "Cleanup"
- [1657235198856] [31506:16834043] CHIP: [TOO] Device commissioning completed with success
+ 1. Parse the payload of the TH commissionee
+
+ Verify on the DUT Commissioner side:
+ $ ./chip-tool payload parse-setup-payload MT:-24J029Q00KA0648G00
+ [1660352541112] [20246:11812333] CHIP: [SPL] Parsing base38Representation: MT:-24J029Q00KA0648G00
+ [1660352541113] [20246:11812333] CHIP: [SPL] Version: 0
+ [1660352541113] [20246:11812333] CHIP: [SPL] VendorID: 65521
+ [1660352541113] [20246:11812333] CHIP: [SPL] ProductID: 32769
+ [1660352541114] [20246:11812333] CHIP: [SPL] Custom flow: 2 (CUSTOM)
+ [1660352541114] [20246:11812333] CHIP: [SPL] Capabilities: 0x04 (On IP network)
+ [1660352541114] [20246:11812333] CHIP: [SPL] Discriminator: 3840
+ [1660352541114] [20246:11812333] CHIP: [SPL] Passcode: 20202021
+
+ 2. Verify that TH logs do not show the commissionee being commissioned by the DUT.
disabled: true
- label:
- "User should follow any steps from the CommissioningCustomFlowUrl
- within the THs DCL, unless the DUT has alternative means to guide the
- user to successful commissioning, for putting the TH Commissionee into
- commissioning mode, for triggering the DUT Commissioner for
- commissioning, and for completing the commissioning process using IP
- Network."
+ "User should follow any TH-specific steps, unless the DUT has
+ alternative means to guide the user to successful commissioning, for
+ putting the TH Commissionee into commissioning mode, for triggering
+ the DUT Commissioner for commissioning, and for completing the
+ commissioning process using IP Network."
PICS: MCORE.DD.DISCOVERY_IP
verification: |
- TH all-clusters-app:
+ Verify on the TH Commissionee side:
[1657235198.977848][370963:370963] CHIP:SVR: Commissioning completed successfully
[1657235198.977943][370963:370963] CHIP:DIS: Updating services using commissioning mode 0
- DUT chip-tool:
+ Verify on the DUT Commissioner side:
$ ./chip-tool pairing code 1 MT:-24J029Q00KA0648G00
[1657235198856] [31506:16834043] CHIP: [CTL] Successfully finished commissioning step "Cleanup"
[1657235198856] [31506:16834043] CHIP: [TOO] Device commissioning completed with success
@@ -157,12 +207,11 @@ tests:
disabled: true
- label:
- "User should follow any steps from the CommissioningCustomFlowUrl
- within the THs DCL, unless the DUT has alternative means to guide the
- user to successful commissioning, for putting the TH Commissionee into
- commissioning mode, for triggering the DUT Commissioner for
- commissioning, and for completing the commissioning process using
- SoftAP."
+ "User should follow any TH-specific steps, unless the DUT has
+ alternative means to guide the user to successful commissioning, for
+ putting the TH Commissionee into commissioning mode, for triggering
+ the DUT Commissioner for commissioning, and for completing the
+ commissioning process using SoftAP."
PICS: MCORE.DD.DISCOVERY_SOFTAP
verification: |
Out of Scope for V1.0
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_14.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_14.yaml
index 42fa580bc34c8a..e09184f8560eeb 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_14.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_14.yaml
@@ -27,8 +27,41 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+
+ 2 - 5.1.3 - QR code is printed on the device or in additional provided materials (ex: manual).
+
+ An example onboarding QR code could be "MT:-24J029Q00KA0648G00" (following 5.1.3 "QR Code", Table 34 "Packed Binary Data Structure for Onboarding Payload") which includes:
+
+ - 3-bit Version String=000
+
+ - 16-bit Vendor ID=0xFFF1 (as defined in section 2.5.2. "Vendor Identifier")
+
+ - 16-bit Product ID=0x8001 (as defined in section 2.5.3. "Product Identifier")
+
+ - 2-bit Custom Flow=10 (Custom Commissioning Flow = 2)
+
+ - 8-bit Discovery Capabilities Bitmask=00000100 (OnNetwork)
+
+ - 12-bit Discriminator=0xF00
+
+ - 27-bit Passcode=20202021
+
+ - 4-bit Padding=0000
+
+ - no variable-length TLV Data included (as defined in section 5.1.3.1. "Payload", subsection "TLV Data")
+ disabled: true
+
- label: "Locate and scan/read the Commissionees QR code using DUT"
verification: |
+ Verify on the TH Commissionee side:
$ ./out/all-clusters-app/chip-all-clusters-app --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --custom-flow 2 --capabilities 4 --discriminator 3840 --passcode 20202021
[1657235470.970680][371041:371041] CHIP:DL: Device Configuration:
@@ -52,6 +85,7 @@ tests:
Version String (i.e. 010 or any non-zero 3-bit value)"
verification: |
1. Use chip-tool"s "payload generate-qrcode" command to help generate the new, invalid QR code
+ Verify on the TH Commissionee side:
$ ./chip-tool payload generate-qrcode --existing-payload MT:-24J029Q00KA0648G00 --allow-invalid-payload 1 --version 2
[1657235626568] [31698:16839018] CHIP: [TOO] QR Code: MT:034J029Q00KA0648G00
disabled: true
@@ -59,8 +93,10 @@ tests:
- label:
"Scan/read the QR code, generated in the previous step, using the DUT"
verification: |
- TH all-clusters-app:
+ Verify on the DUT Commissioner side:
Run command failure: ../../third_party/connectedhomeip/src/controller/SetUpCodePairer.cpp:50: CHIP Error 0x0000002F: Invalid argument
+
+ No applicable TH Logs
disabled: true
- label:
@@ -70,13 +106,18 @@ tests:
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
1. Use chip-tool"s "payload generate-qrcode" command to help generate the new, invalid QR code
+ Verify on the TH Commissionee side:
$ ./chip-tool payload generate-qrcode --existing-payload MT:-24J029Q00KA0648G00 --allow-invalid-payload 1 --rendezvous 4
[1657235754393] [31702:16840391] CHIP: [TOO] QR Code: MT:-24J029Q00KA0648G00
+
+ Verify on the DUT Commissioner side:
+ No applicable logs on the DUT side
disabled: true
- label: "Scan/read the QR code of the TH device using the DUT"
PICS: MCORE.DD.DISCOVERY_BLE
verification: |
+ Verify on the DUT Commissioner side:
./chip-tool pairing code 1 MT:-24J029Q00KA0648G00
[1657235905214] [31706:16841970] CHIP: [CTL] Discovered device to be commissioned over DNS-SD
...
@@ -92,6 +133,7 @@ tests:
00000000, 11111111, 22222222, 33333333, 44444444, 55555555, 66666666,
77777777, 88888888, 99999999, 12345678, 87654321"
verification: |
+ No applicable TH or DUT Logs
"MT:-24J029Q00OC0000000" (00000000),
"MT:-24J029Q00KMSP0Z800" (11111111),
"MT:-24J029Q00GWID1WH00" (22222222),
@@ -109,7 +151,8 @@ tests:
- label:
"Scan each of the generated QR codes from the previous step using DUT"
verification: |
- TH chip-all-clusters-app Commissionee:
+ Verify on the DUT Commissioner side:
+ No applicable TH Logs
./chip-tool pairing code 1 MT:-24J029Q00OC0000000
@@ -170,11 +213,17 @@ tests:
MT: (i.e. Prefix=AB:)"
verification: |
AB:-24J029Q00KA0648G00
+
+ No applicable TH or DUT Logs
disabled: true
- label:
"Scan/read the QR code, generated in the previous step, using the DUT"
verification: |
+ Verify on the DUT Commissioner side:
+
$ ./chip-tool pairing code 1 AB:-24J029Q00KA0648G00
[1657236169984] [31732:16844455] CHIP: [TOO] Run command failure: ../../examples/chip-tool/third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:50: CHIP Error 0x00000013: Integrity check failed
+
+ No applicable TH Logs
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_15.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_15.yaml
index 039487b9d39579..30475e9ee7f05e 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_15.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_15.yaml
@@ -27,13 +27,42 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ Preconditions
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+
+ 2 - 5.1.4.2 - Manual Pairing Code is printed on the Commissionee device or in additional provided materials (ex: manual).
+
+ An example onboarding payload could be "34970112332" (11-digit) or could be "749701123365521327694" (21-digit) (following 5.1.4. Table 37. "Manual Pairing Code Elements") which each include:
+
+ - 1-bit VID_PID_PRESENT = 0 (11-digit) or = 1 (21-digit)
+
+ - 1-bit VERSION=0
+
+ - 4-bit SHORT DISCRIMINATOR=0xF00 (4 Most-significant bits of the 12-bits Discriminator value)
+
+ - 27-bit PASSCODE=20202021 (see section 5.1.6. Generation of the Passcode)
+
+ - 16-bit VENDOR_ID=0xFFF1 (as defined in section 2.5.2. "Vendor Identifier", for 21-digit Manual Pairing Code only)
+
+ - 16-bit PRODUCT_ID=0x8001 (as defined in section 2.5.3. "Product Identifier", present if and only if VID is present)
+
+ - A generated CHECK_DIGIT (see section 5.1.4. Manual Pairing Code, subsection "Check Digit")
+ disabled: true
+
- label:
"Verify the THs 11-digit Manual Pairing Code meets the following
criteria: - VERSION bit string string up to date with the current
Matter spec. documentation - VID_PID_PRESENT bit string set to 0"
PICS: MCORE.DD.11_MANUAL_PC
verification: |
- On TH Commissionee:
+ Verify on the TH Commissionee side:
$ ./out/ble/all-clusters-app/chip-all-clusters-app
[1651108891.390266][30833:30833] CHIP:DL: Device Configuration:
[1651108891.390455][30833:30833] CHIP:DL: Serial Number: TEST_SN
@@ -58,11 +87,11 @@ tests:
process."
PICS: MCORE.DD.11_MANUAL_PC
verification: |
- On TH Commissionee:
+ Verify on the TH Commissionee side:
[1651109112.909458][30833:30833] CHIP:SVR: Commissioning completed successfully
[1651109112.909503][30833:30833] CHIP:DIS: Updating services using commissioning mode 0
- On DUT Commissioner:
+ Verify on the DUT Commissioner side:
$ ./chip-tool pairing code 1 34970112332
[1651109112823] [95528:65650355] CHIP: [CTL] Received CommissioningComplete response
@@ -81,7 +110,7 @@ tests:
PRODUCT_ID present (as defined in section 2.5.3. Product Identifier)"
PICS: MCORE.DD.21_MANUAL_PC
verification: |
- On TH Commissionee:
+ Verify on the TH Commissionee side:
$ ./out/ble/all-clusters-app/chip-all-clusters-app
[1651109167.022364][30980:30980] CHIP:DL: Device Configuration:
@@ -116,7 +145,7 @@ tests:
[1651109219.100167][30980:30980] CHIP:SVR: Commissioning completed successfully
[1651109219.100213][30980:30980] CHIP:DIS: Updating services using commissioning mode 0
- On DUT Commissioner:
+ Verify on the DUT Commissioner side:
$ ./chip-tool pairing code 1 749701123365521327694
[1651109219028] [95536:65652322] CHIP: [CTL] Received CommissioningComplete response
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_16.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_16.yaml
index 3b34bd354eea56..6e9dd0f317e56b 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_16.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_16.yaml
@@ -27,11 +27,39 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+
+ 2 - 5.1.4.2 - 11-digit Manual Pairing Code is printed on the Commissionee device or in additional provided materials (ex: manual).
+
+ An example onboarding payload could be "34970112332" (following 5.1.4. Table 37. "Manual Pairing Code Elements") which each include:
+
+ - 1-bit VID_PID_PRESENT = 0 (11-digit only)
+
+ - 1-bit VERSION=0
+
+ - 4-bit SHORT DISCRIMINATOR=0xF00 (4 Most-significant bits of the 12-bits Discriminator value)
+
+ - 27-bit PASSCODE=20202021 (see section 5.1.6. Generation of the Passcode)
+
+ - 16-bit VENDOR_ID=0xFFF1 (as defined in section 2.5.2. "Vendor Identifier", for 21-digit Manual Pairing Code only)
+
+ - 16-bit PRODUCT_ID=0x8001 (as defined in section 2.5.3. "Product Identifier", present if and only if VID is present)
+
+ - A generated CHECK_DIGIT (see section 5.1.4. Manual Pairing Code, subsection "Check Digit")
+ disabled: true
+
- label:
"Provide the 11-digit Manual Pairing Code from the Commissionee to the
DUT in any format supported by DUT"
verification: |
- Verify in TH as server side
+ Verify on the TH Commissionee side:
$ ./out/all-clusters-app/chip-all-clusters-app --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --custom-flow 0 --capabilities 4 --discriminator 3840 --passcode 20202021
[1651180718.960383][13218:13218] CHIP:DL: Device Configuration:
@@ -56,10 +84,10 @@ tests:
2"
verification: |
1. Use chip-tool"s "payload verhoeff-generate" command to help generate the new, invalid Manual code
+ No applicable DUT or TH logs
$ ./chip-tool payload verhoeff-generate 8497011233
- Verify in DUT as client side
[1651186243492] [13415:349553] CHIP: [SPL] Generating Character for: 84970112331
[1651186243492] [13415:349553] CHIP: [SPL] Generated Char: 1
Manual Code: 84970112331
@@ -71,7 +99,7 @@ tests:
verification: |
$ ./chip-tool pairing code 1 84970112331
- Verify in DUT as client side
+ Verify in DUT Commissioner side
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
disabled: true
@@ -81,9 +109,11 @@ tests:
manual code but substituting out the current VID_PID_PRESENT with an
invalid VID_PID_PRESENT set to 1"
verification: |
+ 1. Use chip-tool"s "payload generate-manualcode" command to help generate the new, invalid Manual code
+ No applicable DUT or TH logs
+
$ ./chip-tool payload generate-manualcode --discriminator 0xF00 --setup-pin-code 20202021 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 2 --force-short-code 1
- Verify in DUT as client side
[1651181048462] [11611:269469] CHIP: [TOO] Manual Code: 74970112334
disabled: true
@@ -93,7 +123,7 @@ tests:
verification: |
$ ./chip-tool pairing code 1 74970112334
- Verify in DUT as client side
+ Verify on the DUT Commissioner side:
[1651184274318] [12512:321250] CHIP: [SPL] Failed decoding base10. Input length 10 was not expected length 20
...
[1651184274321] [12512:321244] CHIP: [TOO] Run command failure: ../../examples/chip-tool/third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:63: CHIP Error 0x0000001E: Invalid string length
@@ -109,11 +139,11 @@ tests:
Discriminator value)"
verification: |
1. Use chip-tool"s "payload generate-manualcode" command to help generate the new, invalid Manual code
+ No applicable DUT or TH logs
$ ./chip-tool payload generate-manualcode --existing-payload 34970112332 --discriminator 0xE00
[1657236763262] [31784:16850989] CHIP: [TOO] Manual Code: 33331712336
- Verify in DUT as client side
Manual Code: 33331712336
disabled: true
@@ -121,7 +151,7 @@ tests:
"Provide the Manual Pairing Code, generated in the previous step, to
the DUT in any format supported by the DUT"
verification: |
- On DUT=chip-tool:
+ Verify on the DUT Commissioner side:
$ ./chip-tool pairing code 1 33331712336
[1654001605.517505][3200:3205] CHIP:-: ../../third_party/connectedhomeip/src/platform/Linux/BLEManagerImpl.cpp:748: CHIP Error 0x0000002D: Not Implemented at ../../third_party/connectedhomeip/src/controller/SetUpCodePairer.cpp:450
@@ -139,8 +169,7 @@ tests:
55555555, 66666666, 77777777, 88888888, 99999999, 12345678, 87654321"
verification: |
1. Use these as examples of how to generate manual codes with invalid passcodes
-
- Verify in DUT as client side
+ No applicable DUT or TH logs
"34915200008" (00000000),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 00000000
@@ -195,7 +224,8 @@ tests:
"Provide each of the Manual Pairing Codes, generated in the previous
step, to the DUT in any format supported by the DUT"
verification: |
- Verify in DUT as client side
+ Verify on the DUT Commissioner side:
+ No applicable TH logs
(00000000)
$ ./chip-tool pairing code 1 34915200008
@@ -253,7 +283,8 @@ tests:
CHECK_DIGIT while following Table 38. Encoding Method without Vendor
and Product IDs (VID_PID_Present == 0))"
verification: |
- 1. Change the last digit of the manual pairing code to a different digit
+ 1. Manually change the last digit of the manual pairing code to a different digit
+ No applicable DUT or TH logs
Manual Code: 34970112331
disabled: true
@@ -262,7 +293,7 @@ tests:
"Provide the Manual Pairing Code, generated in the previous step, to
the DUT in any format supported by the DUT"
verification: |
- On DUT=chip-tool:
+ Verify on the DUT Commissioner side:
$ ./chip-tool pairing code 1 34970112331
[1657586218401] [10710:465838] CHIP: [TOO] Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:50: CHIP Error 0x00000013: Integrity check failed
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_17.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_17.yaml
index 36730301d3760f..5f5987a38855cf 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_17.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_17.yaml
@@ -27,11 +27,40 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ Preconditions
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+
+ 2 - 5.1.4.2 - 21-digit Manual Pairing Code is printed on the Commissionee device or in additional provided materials (ex: manual).
+
+ An example onboarding payload could be "749701123365521327694" (21-digit) (following 5.1.4. Table 37. "Manual Pairing Code Elements") which each include:
+
+ - 1-bit VID_PID_PRESENT = 1 (21-digit only)
+
+ - 1-bit VERSION=0
+
+ - 4-bit SHORT DISCRIMINATOR=0xF00 (4 Most-significant bits of the 12-bits Discriminator value)
+
+ - 27-bit PASSCODE=20202021 (see section 5.1.6. Generation of the Passcode)
+
+ - 16-bit VENDOR_ID=0xFFF1 (as defined in section 2.5.2. "Vendor Identifier", for 21-digit Manual Pairing Code only)
+
+ - 16-bit PRODUCT_ID=0x8001 (as defined in section 2.5.3. "Product Identifier", present if and only if VID is present)
+
+ - A generated CHECK_DIGIT (see section 5.1.4. Manual Pairing Code, subsection "Check Digit")
+ disabled: true
+
- label:
"Provide the 21-digit Manual Pairing Code from the Commissionee to the
DUT in any format supported by DUT"
verification: |
- Verify in TH as server side
+ Verify in TH Commissionee side:
$ ./out/all-clusters-app/chip-all-clusters-app
[1657203632.334400][13827:13827] CHIP:DL: Device Configuration:
@@ -61,10 +90,10 @@ tests:
2"
verification: |
1. Use chip-tool"s "payload verhoeff-generate" command to help generate the new, invalid Manual code
+ No applicable TH or DUT logs.
$ ./chip-tool payload verhoeff-generate 84970112336552132769
- Verify in DUT as client side
[1657238290868] [31968:16868160] CHIP: [SPL] Generating Character for: 84970112336552132769
[1657238290868] [31968:16868160] CHIP: [SPL] Generated Char: 3
@@ -77,7 +106,7 @@ tests:
verification: |
$ ./chip-tool pairing code 1 849701123365521327693
- Verify in DUT as client side
+ Verify in DUT Commissioner side:
[1657238348848] [31971:16868925] CHIP: [TOO] Run command failure: ../../examples/chip-tool/third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
disabled: true
@@ -87,9 +116,10 @@ tests:
invalid VID_PID_PRESENT set to 0"
verification: |
1. Use chip-tool"s "payload verhoeff-generate" command to help generate the new, invalid Manual code
+ No applicable TH or DUT logs.
+
$ ./chip-tool payload verhoeff-generate 34970112336552132769
- Verify in DUT as client side
[1651186492744] [13434:353094] CHIP: [SPL] Generating Character for: 34970112336552132769
[1651186492744] [13434:353094] CHIP: [SPL] Generated Char: 6
@@ -102,7 +132,7 @@ tests:
verification: |
$ ./chip-tool pairing code 1 349701123365521327696
- Verify in DUT as client side
+ Verify in DUT Commissioner side:
[1657238541643] [31975:16871084] CHIP: [SPL] Failed decoding base10. Input length 20 was not expected length 10
...
[1657238541644] [31975:16871079] CHIP: [TOO] Run command failure: ../../examples/chip-tool/third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:63: CHIP Error 0x0000001E: Invalid string length
@@ -118,8 +148,8 @@ tests:
Discriminator value)"
verification: |
1. Use chip-tool"s "payload generate-manualcode" command to help generate the new, invalid Manual code
+ No applicable TH or DUT logs.
- Verify in DUT as client side
$ ./chip-tool payload generate-manualcode --existing-payload 749701123365521327694 --allow-invalid-payload 1 --discriminator 3584
[1657238783501] [31989:16873588] CHIP: [TOO] Manual Code: 733317123365521327692
disabled: true
@@ -130,7 +160,7 @@ tests:
verification: |
$ ./chip-tool pairing code 1 733317123365521327692
- Verify in DUT as client side
+ Verify in DUT Commissioner side:
[1655814152.716988][3723:3726] CHIP:CTL: Commissioning discovery over BLE failed: ../../third_party/connectedhomeip/src/platform/Linux/BLEManagerImpl.cpp:829: CHIP Error 0x00000032: Timeout
[1655814152.717099][3723:3726] CHIP:-: ../../third_party/connectedhomeip/src/platform/Linux/BLEManagerImpl.cpp:829: CHIP Error 0x00000032: Timeout at ../../third_party/connectedhomeip/src/controller/SetUpCodePairer.cpp:270
[1655814172.703455][3723:3728] CHIP:CTL: Discovery timed out
@@ -148,10 +178,10 @@ tests:
55555555, 66666666, 77777777, 88888888, 99999999, 12345678, 87654321"
verification: |
1. Use this as an example of how to generate a manual code with an invalid passcode. In this example the invalid passcode=00000000
+ No applicable TH or DUT logs.
Use chip-tool"s "payload generate-manualcode" command to help generate the new, invalid Manual code
- Verify in DUT as client side
$ ./chip-tool payload generate-manualcode --existing-payload 749701123365521327694 --allow-invalid-payload 1 --setup-pin-code 00000000
[1657239062245] [32164:16876812] CHIP: [TOO] Manual Code: 749152000065521327698
disabled: true
@@ -160,7 +190,8 @@ tests:
"Provide each of the Manual Pairing Codes, generated in the previous
step, to the DUT in any format supported by the DUT"
verification: |
- Verify in DUT as client side
+ Verify in DUT Commissioner side:
+ No applicable TH logs.
(00000000)
$ ./chip-tool pairing code 1 749152000065521327698
@@ -230,8 +261,8 @@ tests:
Test VENDOR_ID from the list: 0xFFF1, 0xFFF2, 0xFFF3, 0xFFF4"
verification: |
1. Use this as an example of how to generate a manual code with an invalid vendor IDs
+ No applicable TH or DUT logs.
- Verify in DUT as client side
$ ./chip-tool payload generate-manualcode --discriminator 3840 --setup-pin-code 20202021 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 1
[1651189120686] [14218:398626] CHIP: [TOO] Manual Code: 749701123365521327694
disabled: true
@@ -241,7 +272,7 @@ tests:
step, to the DUT in any format supported by the DUT"
verification: |
1. Run each of the following DUT commands below containing invalid Vendor IDs.
- 2. Verify that the TH commissionee=all-cluserters-app does not get commissioned -or- the DUT make the user fully aware of the security risks of providing an uncertified device with operational and networking credentials
+ 2. Verify that the TH commissionee=all-cluserters-app does not get commissioned -OR- the DUT Commissioner make the user fully aware of the security risks of providing an uncertified device with operational and networking credentials
(0xFFF1)
$ ./chip-tool pairing code 1 749701123365521327694
@@ -249,11 +280,9 @@ tests:
(0xFFF2)
$ ./chip-tool pairing code 1 749701123365522327692
-
(0xFFF3)
$ ./chip-tool pairing code 1 749701123365523327697
-
(0xFFF4)
$ ./chip-tool pairing code 1 749701123365524327693
disabled: true
@@ -265,8 +294,8 @@ tests:
Identifier)"
verification: |
1. Use chip-tool"s "payload generate-manualcode" command to help generate the new, invalid Manual code
+ No applicable TH or DUT logs.
- Verify in DUT as client side
$ ./chip-tool payload generate-manualcode --existing-payload 749701123365521327694 --allow-invalid-payload 1 --product-id 0x0000
[1657239418656] [32180:16880488] CHIP: [TOO] Manual Code: 749701123365521000006
disabled: true
@@ -275,7 +304,7 @@ tests:
"Provide the Manual Pairing Code, generated in the previous step, to
the DUT in any format supported by the DUT"
verification: |
- Verify in DUT as client side
+ Verify in DUT Commissioner side:
$ ./chip-tool pairing code 1 749701123365521000006
[1657239565895] [32193:16881922] CHIP: [TOO] Run command failure: ../../examples/chip-tool/third_party/connectedhomeip/src/controller/SetUpCodePairer.cpp:55: CHIP Error 0x0000002F: Invalid argument
@@ -289,10 +318,10 @@ tests:
Product IDs included (VID_PID_Present == 1))"
verification: |
1. Use chip-tool"s "payload verhoeff-verify" command to help verify that the check-digit is invalid
+ No applicable TH or DUT logs.
$ ./chip-tool payload verhoeff-verify 749701123365521327693 20
- Verify in DUT as client side
[1651187504088] [13629:367627] CHIP: [SPL] Verifying Manual Code: 74970112336552132769
[1651187504088] [13629:367627] CHIP: [SPL] 749701123365521327693 is INVALID at position 20
disabled: true
@@ -303,6 +332,16 @@ tests:
verification: |
$ ./chip-tool pairing code 1 749701123365521327693
- Verify in DUT as client side
+ Verify in DUT Commissioner side:
[1651187528666] [13631:367920] CHIP: [TOO] Run command failure: ../../examples/chip-tool/third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:50: CHIP Error 0x00000013: Integrity check failed
disabled: true
+
+ - label: ""
+ verification: |
+ verification step to be updated.
+ disabled: true
+
+ - label: ""
+ verification: |
+ verification step to be updated.
+ disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_18.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_18.yaml
index aeee0bd664f89b..2531691ed693f2 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_18.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_18.yaml
@@ -27,12 +27,24 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+ 2 - 5.1.3 - QR code is printed on the Commissionee devices or in additional provided materials (ex: manual).
+ disabled: true
+
- label:
"Place TH1 into commissioning mode using the TH manufacturers means to
be discovered by a commissioner"
verification: |
1. After launching all-clusters-app using discriminator 3841 using below command
$ ./out/all-clusters-app/chip-all-clusters-app --wifi --discriminator 3841
+ No applicable TH or DUT logs.
$ dns-sd -B _matterc._udp,_L3841
Browsing for _matterc._udp,_L3841
@@ -48,6 +60,7 @@ tests:
verification: |
1. After launching all-clusters-app using discriminator 3844 using below command
sudo ./chip-all-clusters-app --wifi --discriminator 3844
+ No applicable TH or DUT logs.
$ dns-sd -B _matterc._udp,_L3844
Browsing for _matterc._udp,_L3844
@@ -69,11 +82,11 @@ tests:
Commissioner/Commissionee to complete the commissioning process over
the TH Commissionees method of device discovery"
verification: |
- TH1 Commissionee:
+ Verify on the TH1 Commissionee:
[1657240914.891250][372173:372173] CHIP:SVR: Commissioning completed successfully
[1657240914.891297][372173:372173] CHIP:DIS: Updating services using commissioning mode 0
- DUT Commissioner:
+ Verify on the DUT Commissioner:
$ ./chip-tool pairing code 1 MT:-24J0IRV01KA0648G00
[1657240914764] [32262:16895870] CHIP: [CTL] Successfully finished commissioning step "Cleanup"
@@ -92,11 +105,11 @@ tests:
Commissioner/Commissionee to complete the commissioning process over
the TH Commissionees method of device discovery"
verification: |
- TH2 Commissionee:
+ Verify on the TH2 Commissionee:
[1657240985.801360][112581:112581] CHIP:SVR: Commissioning completed successfully
[1657240985.801406][112581:112581] CHIP:DIS: Updating services using commissioning mode 0
- DUT Commissioner:
+ Verify on the DUT Commissioner:
$ ./chip-tool pairing code 2 MT:-24J04QI14KA0648G00
[1657240985682] [32264:16896797] CHIP: [CTL] Successfully finished commissioning step "Cleanup"
@@ -109,7 +122,7 @@ tests:
verification: |
$ ./chip-tool basic read reachable 1 0
- Verify in DUT as client side
+ Verify in DUT Commissioner side:
[1657241043430] [32266:16897416] CHIP: [TOO] Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0011 DataVersion: 131004400
[1657241043432] [32266:16897416] CHIP: [TOO] Reachable: TRUE
@@ -121,7 +134,7 @@ tests:
verification: |
$ ./chip-tool basic read reachable 2 0
- Verify in DUT as client side
+ Verify in DUT Commissioner side:
[1657241066927] [32267:16897671] CHIP: [TOO] Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0011 DataVersion: 2450774961
[1657241066927] [32267:16897671] CHIP: [TOO] Reachable: TRUE
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_19.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_19.yaml
index 4920069bae4662..d7dc97a42dd086 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_19.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_19.yaml
@@ -27,11 +27,17 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - Commissioner is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+ 2 - 5.1.3 - QR code is printed on the Commissionee device or in additional provided materials (ex: manual).
+ disabled: true
+
- label:
"Place DUT into commissioning mode using the DUTs manufacturers means
to be discovered by the TH Commissioner"
verification: |
- DUT Commissionee:
+ Verify on DUT Commissionee side:
$ ./out/all-clusters-app/chip-all-clusters-app --discriminator 3841
[1651111142.369356][32024:32024] CHIP:DL: Device Configuration:
@@ -45,7 +51,7 @@ tests:
[1651111142.369573][32024:32024] CHIP:DL: Device Type: 65535 (0xFFFF)
[1651111142.370760][32024:32024] CHIP:SVR: SetupQRCode: [MT:-24J0ALY01KA0648G00]
- TH Commissioner:
+ Verify on TH Commissioner side:
$ ./chip-tool discover commissionables
[1651111150395] [95835:65674062] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:192.168.1.2
@@ -68,11 +74,11 @@ tests:
for the Commissioner/Commissionee to complete the commissioning
process over the DUT Commissionees method of device discovery"
verification: |
- DUT Commissionee:
+ Verify on DUT Commissionee side:
[1651111335.475159][32130:32130] CHIP:SVR: Commissioning completed successfully
[1651111335.475204][32130:32130] CHIP:DIS: Updating services using commissioning mode 0
- TH Commissioner:
+ Verify on TH Commissioner side:
$ ./chip-tool pairing code 1 MT:-24J0ALY01KA0648G00
[1651111335378] [95843:65675989] CHIP: [CTL] Received CommissioningComplete response
@@ -106,7 +112,7 @@ tests:
1. On RasPi DUT $ rm -rf /tmp/chip*
2. On RasPi DUT $ ./out/all-clusters-app/chip-all-clusters-app --discriminator 3841
- On TH chip-tool:
+ Verify on TH Commissioner side:
$ ./chip-tool discover commissionables
[1651111576350] [95850:65678872] CHIP: [DL] Mdns: OnNewAddress interface: 7 ip:192.168.1.2
[1651111576350] [95850:65678872] CHIP: [DIS] Vendor ID: 65521
@@ -128,11 +134,11 @@ tests:
for the Commissioner/Commissionee to complete the commissioning
process over the DUT Commissionees method of device discovery"
verification: |
- DUT Commissionee:
+ Verify on DUT Commissionee side:
[1651111614.006849][32259:32259] CHIP:SVR: Commissioning completed successfully
[1651111614.006893][32259:32259] CHIP:DIS: Updating services using commissioning mode 0
- TH Commissioner:
+ Verify on TH Commissioner side:
$ ./chip-tool pairing code 1 MT:-24J0ALY01KA0648G00
[1651111613912] [95856:65679504] CHIP: [CTL] Received CommissioningComplete response
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_2.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_2.yaml
index 33a3be710bcd09..27b21af3206274 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_2.yaml
@@ -25,13 +25,18 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.5 - Commissioner is on a network. - The network can either be IP-based(Ethernet or WiFi) or Thread. Commissioner can either be a Matter device which is already on a network or the test harness connected to the network.
+ disabled: true
+
- label:
"Commissioner and Commissionee discover each other and connect via the
discovery mode applicable for the DUT."
verification: |
- Verify in TH as server side: start BLE Advertising by specific DUT implementation
+ Verify in DUT as commissionee side: start BLE Advertising by specific DUT implementation
- Verify in DUT as client side: start commissioning process(need to obtain the Thread dataset first)
+ Verify in TH as commissioner side: start commissioning process(need to obtain the Thread dataset first)
./chip-tool pairing ble-thread 1 hex:0e080000000000010000000300000f35060004001fffe0020811111111222222220708fd27e57b1b1e22d9051000112233445566778899aabbccddeeff030e4f70656e54687265616444656d6f01021234041061e1206d2c2b46e079eb775f41fc72190c0402a0fff8 20202021 3840
,,
@@ -41,7 +46,7 @@ tests:
"Establish encryption keys with Password Authenticated Session
Establishment on the commissioning channel"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:SC: Received PBKDF param response
disabled: true
@@ -50,7 +55,7 @@ tests:
"Commissioner SHALL re-arm Fail-safe timer on Commissionee within 60s
(the autonomously Fail-safe timer length set by Commissionee)"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:CTL: Arming failsafe (60 seconds)
disabled: true
@@ -60,7 +65,7 @@ tests:
Commissionee."
PICS: MCORE.COM.WIRELESS
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:CTL: Setting Regulatory Config
disabled: true
@@ -69,7 +74,7 @@ tests:
"Commissioner requests operational CSR from Commissionee with
OperationalCSRRequest command"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:CTL: Sending CSR request to 0xffffa4001730 device
CHIP:DMG: ICR moving to [AddingComm]
@@ -133,7 +138,7 @@ tests:
"Commissioner configures operational credentials on DUT if not
previously installed"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
[1651218829.220063][3273:3278] CHIP:CTL: Sending root certificate to the device
[1651218829.220201][3273:3278] CHIP:DMG: ICR moving to [AddingComm]
@@ -187,7 +192,7 @@ tests:
"Commissioner configures itself as administrator in ACL on DUT if
needed"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
[1651218829.457248][3273:3278] CHIP:CTL: Sending operational certificate chain to the device
[1651218829.457372][3273:3278] CHIP:DMG: ICR moving to [AddingComm]
@@ -243,7 +248,7 @@ tests:
"Commissioner configures operational network on DUT if DUT both
supports and requires"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
[1651218833.995054][3273:3278] CHIP:CTL: Adding thread network
[1651218833.995176][3273:3278] CHIP:DMG: ICR moving to [AddingComm]
@@ -295,7 +300,7 @@ tests:
"Commissioner instructs Commissionee to connect to operational network
if not already connected"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
[1651218834.137891][3273:3278] CHIP:CTL: Enabling thread network
[1651218834.138014][3273:3278] CHIP:DMG: ICR moving to [AddingComm]
@@ -353,7 +358,7 @@ tests:
- label: "Commissioner starts discovery of DUT using Operational Discovery"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:DL: Avahi resolve found
CHIP:DIS: Node ID resolved for 0x0000000000000001
@@ -364,7 +369,7 @@ tests:
- label:
"Commissioner opens a CASE session with DUT over operational network"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:SC: Sent Sigma1 msg
CHIP:CTL: Address resolved for node: 0x0000000000000001
@@ -403,7 +408,7 @@ tests:
- label: "Commissioner sends CommissioningComplete command"
verification: |
- Verify in DUT as client side
+ Verify in TH as commissioner side
CHIP:CTL: Received CommissioningComplete response
CHIP:CTL: Rendezvous cleanup
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_20.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_20.yaml
index e1b52070927b42..d78e3ffc11e3be 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_20.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_20.yaml
@@ -27,11 +27,23 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+ 2 - 5.1.3 - QR code is printed on the Commissionee device or in additional provided materials (ex: manual).
+ disabled: true
+
- label:
"Place TH into commissioning mode using the TH manufacturers means to
be discovered by the DUT Commissioner"
verification: |
$ ./out/all-clusters-app/chip-all-clusters-app --discriminator 3840
+ Verify on TH Commissionee side:
[1651109580.413197][31207:31207] CHIP:DL: Device Configuration:
[1651109580.413259][31207:31207] CHIP:DL: Serial Number: TEST_SN
@@ -58,11 +70,11 @@ tests:
Commissioner/Commissionee to complete the commissioning process over
the TH Commissionees method of device discovery"
verification: |
- TH Commissionee:
+ Verify on TH Commissionee side:
[1651109784.452770][31207:31207] CHIP:SVR: Commissioning completed successfully
[1651109784.452813][31207:31207] CHIP:DIS: Updating services using commissioning mode 0
- DUT Commissioner:
+ Verify on DUT Commissioner side:
$ ./chip-tool pairing code 1 MT:-24J0AFN00KA0648G00
[1651109784376] [95553:65657838] CHIP: [CTL] Received CommissioningComplete response
@@ -78,6 +90,7 @@ tests:
network."
verification: |
./chip-tool operationalcredentials remove-fabric 1 1 0
+ Verify on DUT Commissioner side:
CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0008
CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0008
@@ -92,7 +105,10 @@ tests:
"Place TH Commissionee back into commissioning mode using the TH
manufacturers means to be discovered by the DUT Commissioner"
verification: |
+ 1. Place the TH into commissioning mode by launching the app again
+
$ ./out/all-clusters-app/chip-all-clusters-app --discriminator 3840
+ Verify on TH Commissionee side:
[1651110721.112368][31791:31791] CHIP:DL: Device Configuration:
[1651110721.112448][31791:31791] CHIP:DL: Serial Number: TEST_SN
@@ -119,11 +135,11 @@ tests:
Commissioner/Commissionee to complete the commissioning process over
the TH Commissionees method of device discovery"
verification: |
- TH Commissionee:
+ Verify on TH Commissionee side:
[1651110724.759825][31791:31791] CHIP:SVR: Commissioning completed successfully
[1651110724.759869][31791:31791] CHIP:DIS: Updating services using commissioning mode 0
- DUT Commissioner:
+ Verify on DUT Commissioner side:
$ ./chip-tool pairing code 1 MT:-24J0AFN00KA0648G00
[1651110724689] [95810:65669790] CHIP: [CTL] Received CommissioningComplete response
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_21.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_21.yaml
index ad4ea586253bbf..a860d0ddbf32f1 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_21.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_21.yaml
@@ -27,13 +27,24 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+ 2 - 5.1.3 - QR code is printed on the Commissionee device or in additional provided materials (ex: manual).
+ disabled: true
+
- label:
"Place TH into commissioning mode using the TH manufacturers means to
be discovered by the DUT Commissioner"
verification: |
$ ./out/all-clusters-app/chip-all-clusters-app --discriminator 3840
- Verify in TH as server side
+ Verify on TH Commissionee side:
[1651109580.413197][31207:31207] CHIP:DL: Device Configuration:
[1651109580.413259][31207:31207] CHIP:DL: Serial Number: TEST_SN
[1651109580.413294][31207:31207] CHIP:DL: Vendor Id: 65521 (0xFFF1)
@@ -59,11 +70,11 @@ tests:
Commissioner/Commissionee to complete the commissioning process over
the TH Commissionees method of device discovery"
verification: |
- TH Commissionee:
+ Verify on TH Commissionee side:
[1651109784.452770][31207:31207] CHIP:SVR: Commissioning completed successfully
[1651109784.452813][31207:31207] CHIP:DIS: Updating services using commissioning mode 0
- DUT Commissioner:
+ Verify on DUT Commissioner side:
$ ./chip-tool pairing code 1 MT:-24J0AFN00KA0648G00
[1651109784376] [95553:65657838] CHIP: [CTL] Received CommissioningComplete response
@@ -81,12 +92,12 @@ tests:
user action to trigger such command)."
verification: |
1. Send "on" command from Commissioner to TH Endpoint 1
- On DUT=chip-tool:
+ Verify on DUT Commissioner side:
$ ./chip-tool onoff on 1 1
[...]
[1657930715416] [56399:2451384] CHIP: [DMG] Received Command Response Status for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0001 Status=0x0
- On TH=all-clusters-app:
+ Verify on TH Commissionee side:
[...]
[1657930715.432295][2911:2911] CHIP:ZCL: On/Off set value: 1 1
[1657930715.432341][2911:2911] CHIP:ZCL: Toggle on/off from 0 to 1
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_3.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_3.yaml
index cb0031d272db29..d57af20dbf9a61 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_3.yaml
@@ -26,6 +26,13 @@ config:
endpoint: 0
tests:
+ - label: ""
+ verification: |
+ Preconditions
+ 1 - User must indicate the intention for commissioning using a display or other UI elements.
+ 2 - TH is not advertising Commissioner Discovery Service at start
+ disabled: true
+
- label:
"DUT start scanning for available commissioners using Commissioner
Discovery"
@@ -35,6 +42,8 @@ tests:
- label: "TH is instructed to advertise Commissioner Discovery service"
verification: |
+ chip-tv-app is used as TH
+
ubuntu@ubuntu:~/may23_DUT/connectedhomeip/examples/tv-app/linux/out/tv-app$ sudo ./chip-tv-app
Verify in tv-app side
@@ -49,10 +58,11 @@ tests:
"DUT start scanning for available commissioners using Commissioner
Discovery"
verification: |
- connectedhomeip/examples/tv-casting-app/linux/out/tv-casting-app$ sudo ./chip-tv-casting-app
+ In certification QA we are using chip-tv-casting-app as a reference app, In case of certification testing, DUT (app) vendor to provide instructions on how to scan for commissioners
+ connectedhomeip/examples/tv-casting-app/linux/out/tv-casting-app$ sudo ./chip-tv-casting-app
- Verify in tv-casting-app side
+ Verify for the commissioner advertisements from the TH in tv-casting-app side
CHIP:SVR: Discovered Commissioner #0
[1653478433.097515][3785:3785] CHIP:DIS: Hostname: E45F010F19FF0000 [1653478433.097546][3785:3785] CHIP:DIS: IP Address #1: fe80::d83a:21ff:fe24:b6d6
@@ -96,15 +106,28 @@ tests:
- label: "TH start the commissioning procedure with DUT"
verification: |
- ./chip-tool pairing ethernet 1 20202021 3840 fe80::e65f:1ff:fe0f:2755 5640
+ Into the shell, enter "cast request 0" to send a user-directed-commissioning request to the DUT on tv-casting-app side
+
+ > cast request 0
+ [1653179218011] [47890:1899175] CHIP: [DL] request
+ [1653179218011] [47890:1899175] CHIP: [SVR] ------- PrepareForCommissioning
+ [1653179218011] [47890:1899175] CHIP: [SVR] Server initializing...
+
+
+ UX will vary by product maker. The following is the tv-app shell output:
+
+ [1653179219087] [89108:1898759] CHIP: [CTL] ------PROMPT USER: Test TV casting app is requesting permission to cast to this TV, approve? [0x0000_FFF1,0x0000_8001,E0707BB1AFFA6F23,020096D16895275F1B49A07221F0E588E06B]
+
+ [1653179219087] [89108:1898759] CHIP: [CTL] ------Via Shell Enter: controller ux ok|cancel
+
+
+ Into the DUT UX, accept request for commissioning. Manufacturer may utilize a custom method for obtaining user consent other than an on-screen prompt.
+
+ The following is the tv-app shell command to accept the request
+
+ > controller ux ok
- Verify in TH log:
+ The commissioning success completion is indicated in the TH with the following shell output:
- [1653559159.021348][4240:4246] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0005
- [1653559159.021432][4240:4246] CHIP:CTL: Received CommissioningComplete response, errorCode=0
- [1653559159.021499][4240:4246] CHIP:CTL: Successfully finished commissioning step "SendComplete"
- [1653559159.021554][4240:4246] CHIP:CTL: Commissioning stage next step: "SendComplete" -> "Cleanup"
- [1653559159.021611][4240:4246] CHIP:CTL: Performing next commissioning step "Cleanup"
- [1653559159.021725][4240:4246] CHIP:CTL: Successfully finished commissioning step "Cleanup"
- [1653559159.021790][4240:4246] CHIP:TOO: Device commissioning completed with success
+ [1653088463910] [86837:1122544] CHIP: [SVR] Commissioning completed successfully
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_4.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_4.yaml
index 202705aee928d1..de3bb357ac2a44 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_4.yaml
@@ -26,11 +26,25 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - User must indicate the intention for commissioning using a display or other UI elements."
+ disabled: true
+
- label: "DUT is instructed to advertise Commissioner Discovery service"
verification: |
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner) or tv-casting-app (when DUT is a commissionee):
+
+ chip-tv-app is used as TH
+
ubuntu@ubuntu:~/may23_DUT/connectedhomeip/examples/tv-app/linux/out/tv-app$ sudo ./chip-tv-app
- Verify in tv-app side:
+ Verify in tv-app side
CHIP:DL: Using wifi MAC for hostname
CHIP:DIS: Advertise operational node DFC28FF9FE811EF2-FFFFFFEFFFFFFFFF
@@ -42,54 +56,105 @@ tests:
"TH starts scanning for available commissioners using Commissioner
Discovery"
verification: |
- ubuntu@ubuntu:~/may23_cntrl/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matterd._udp
-
- + eth0 IPv6 A0BF4D00BE973DEC _matterd._udp local
- + eth0 IPv6 252FB62C79E2724B _matterd._udp local
- = eth0 IPv6 A0BF4D00BE973DEC _matterd._udp local
- hostname = [E45F010F27530000.local]
- address = [fe80::e65f:1ff:fe0f:2755]
- port = [5650]
- txt = ["T=1" "SAI=300" "SII=5000" "DN=Test TV" "DT=35" "VP=65521+32769"]
- = eth0 IPv6 252FB62C79E2724B _matterd._udp local
- hostname = [E45F010F27530000.local]
- address = [fe80::e65f:1ff:fe0f:2755]
- port = [5650]
- txt = ["T=1" "SAI=300" "SII=5000" "DN=Test TV" "DT=35" "VP=65521+32769"]
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner) or tv-casting-app (when DUT is a commissionee):
+
+ In certification QA we are using chip-tv-casting-app as a reference app, In case of certification testing, DUT (app) vendor to provide instructions on how to scan for commissioners
+
+ connectedhomeip/examples/tv-casting-app/linux/out/tv-casting-app$ sudo ./chip-tv-casting-app
+
+ Verify for the commissioner advertisements from the TH in tv-casting-app side
+
+ [1660758661.643392][2867:2867] CHIP:SVR: Discovered Commissioner #0
+ [1660758661.643469][2867:2867] CHIP:DIS: Discovered node:
+ [1660758661.643506][2867:2867] CHIP:DIS: Hostname: E45F010F3BAF0000 [1660758661.643561][2867:2867] CHIP:DIS: IP Address #1: fe80::9052:32ff:fe00:92c4
+ [1660758661.643606][2867:2867] CHIP:DIS: Port: 5540
+ [1660758661.643648][2867:2867] CHIP:DIS: Mrp Interval idle: 5000 ms
+ [1660758661.643691][2867:2867] CHIP:DIS: Mrp Interval active: 300 ms
+ [1660758661.643733][2867:2867] CHIP:DIS: TCP Supported: 1
+ [1660758661.643779][2867:2867] CHIP:DIS: Rotating ID: 0000406E4D7073744BF234AD391DAE869837
+ [1660758661.643832][2867:2867] CHIP:DIS: Device Name: Test TV casting app
+ [1660758661.643876][2867:2867] CHIP:DIS: Vendor ID: 65521
+ [1660758661.643918][2867:2867] CHIP:DIS: Product ID: 32769
+ [1660758661.643960][2867:2867] CHIP:DIS: Device Type: 35
+ [1660758661.644117][2867:2867] CHIP:DIS: Pairing Hint: 33
+ [1660758661.644170][2867:2867] CHIP:DIS: Instance Name: 742273AB254EDCE1
+ [1660758661.644212][2867:2867] CHIP:DIS: Commissioning Mode: 0
+ [1660758661.644256][2867:2867] CHIP:SVR: Discovered Commissioner #1
+ [1660758661.644294][2867:2867] CHIP:DIS: Discovered node:
+ [1660758661.644329][2867:2867] CHIP:DIS: Hostname: E45F010F27530000 [1660758661.644378][2867:2867] CHIP:DIS: IP Address #1: fe80::e65f:1ff:fe0f:2753
+ [1660758661.644426][2867:2867] CHIP:DIS: IP Address #2: fe80::e65f:1ff:fe0f:2753
+ [1660758661.644468][2867:2867] CHIP:DIS: Port: 5640
+ [1660758661.644510][2867:2867] CHIP:DIS: Mrp Interval idle: 5000 ms
+ [1660758661.644552][2867:2867] CHIP:DIS: Mrp Interval active: 300 ms
+ [1660758661.644594][2867:2867] CHIP:DIS: TCP Supported: 1
+ [1660758661.644638][2867:2867] CHIP:DIS: Rotating ID: 01005FDB39737473FB22B819CEBB1084AFD5
+ [1660758661.644680][2867:2867] CHIP:DIS: Device Name: Test TV
+ [1660758661.644721][2867:2867] CHIP:DIS: Vendor ID: 65521
+ [1660758661.644762][2867:2867] CHIP:DIS: Product ID: 32769
+ [1660758661.644803][2867:2867] CHIP:DIS: Device Type: 35
+ [1660758661.644844][2867:2867] CHIP:DIS: Long Discriminator: 3840
+ [1660758661.644886][2867:2867] CHIP:DIS: Pairing Hint: 33
+ [1660758661.644927][2867:2867] CHIP:DIS: Instance Name: 38D0A5D1137B8FF4
+ [1660758661.644968][2867:2867] CHIP:DIS: Commissioning Mode: 1
+ [1660758661.645010][2867:2867] CHIP:SVR: Discovered Commissioner #2
+ [1660758661.645046][2867:2867] CHIP:DIS: Discovered node:
+ [1660758661.645082][2867:2867] CHIP:DIS: Hostname: E45F010F27530000 [1660758661.645128][2867:2867] CHIP:DIS: IP Address #1: fe80::e65f:1ff:fe0f:2753
+ [1660758661.645174][2867:2867] CHIP:DIS: IP Address #2: fe80::e65f:1ff:fe0f:2753
+ [1660758661.645217][2867:2867] CHIP:DIS: Port: 5650
+ [1660758661.645258][2867:2867] CHIP:DIS: Mrp Interval idle: 5000 ms
+ [1660758661.645299][2867:2867] CHIP:DIS: Mrp Interval active: 300 ms
+ [1660758661.645340][2867:2867] CHIP:DIS: TCP Supported: 1
+ [1660758661.645382][2867:2867] CHIP:DIS: Device Name: Test TV
+ [1660758661.645424][2867:2867] CHIP:DIS: Vendor ID: 65521
+ [1660758661.645465][2867:2867] CHIP:DIS: Product ID: 32769
+ [1660758661.645506][2867:2867] CHIP:DIS: Device Type: 35
+ [1660758661.645548][2867:2867] CHIP:DIS: Instance Name: 38D0A5D1137B8FF4
+ [1660758661.645589][2867:2867] CHIP:DIS: Commissioning Mode: 0
+ [1660758661.645633][2867:2867] CHIP:SVR: 3 commissioner(s) discovered. Select one (by number# above) to request commissioning from:
+ [1660758661.645672][2867:2867] CHIP:SVR: Example: cast request 0
disabled: true
- label:
"TH is instructed to start the commissioning procedure with the DUT
found at Step 2"
verification: |
- Out of scope for V1.0 - IDM functionality
-
- https://github.com/project-chip/connectedhomeip/issues/11004
+ Out of scope for V1.0
disabled: true
- label: "DUT verifies the Identification Declaration message"
verification: |
- Out of scope for V1.0 - IDM functionality
-
- https://github.com/project-chip/connectedhomeip/issues/11004
+ Out of scope for V1.0
disabled: true
- label: "By any means, DUT prompts user for onboarding payload"
verification: |
- verification step to be updated.
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner) or tv-casting-app (when DUT is a commissionee):
+
+
+ Into the shell, enter "cast request 0" to send a user-directed-commissioning request to the DUT on tv-casting-app side
+ > cast request 0 [1653179218011] [47890:1899175] CHIP: [DL] request [1653179218011] [47890:1899175] CHIP: [SVR] ------- PrepareForCommissioning [1653179218011] [47890:1899175] CHIP: [SVR] Server initializing...
disabled: true
- label: "DUT starts the commissioning procedure with TH"
verification: |
- ./chip-tool pairing ethernet 1 20202021 3840 fe80::e65f:1ff:fe0f:2755 5640
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner) or tv-casting-app (when DUT is a commissionee):
+
+
+
+ UX will vary by product maker. The following is the tv-app shell output:
+
+ [1653179219087] [89108:1898759] CHIP: [CTL] ------PROMPT USER: Test TV casting app is requesting permission to cast to this TV, approve? [0x0000_FFF1,0x0000_8001,E0707BB1AFFA6F23,020096D16895275F1B49A07221F0E588E06B]
+
+ [1653179219087] [89108:1898759] CHIP: [CTL] ------Via Shell Enter: controller ux ok|cancel
+
+
+ Into the DUT UX, accept request for commissioning. Manufacturer may utilize a custom method for obtaining user consent other than an on-screen prompt.
+
+ The following is the tv-app shell command to accept the request
+
+ > controller ux ok
- Verify in DUT as commissioner side Log:
+ The commissioning success completion is indicated in the TH with the following shell output:
- [1653559159.021348][4240:4246] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0005
- [1653559159.021432][4240:4246] CHIP:CTL: Received CommissioningComplete response, errorCode=0
- [1653559159.021499][4240:4246] CHIP:CTL: Successfully finished commissioning step "SendComplete"
- [1653559159.021554][4240:4246] CHIP:CTL: Commissioning stage next step: "SendComplete" -> "Cleanup"
- [1653559159.021611][4240:4246] CHIP:CTL: Performing next commissioning step "Cleanup"
- [1653559159.021725][4240:4246] CHIP:CTL: Successfully finished commissioning step "Cleanup"
- [1653559159.021790][4240:4246] CHIP:TOO: Device commissioning completed with success
+ [1653088463910] [86837:1122544] CHIP: [SVR] Commissioning completed successfully
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_5.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_5.yaml
index 92c0210c262910..8bb958ed534822 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_5.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_5.yaml
@@ -24,13 +24,25 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.5 - Commissioner is on a network. - The network can either be WiFi or Thread.
+
+ 2 - 5.5 - Commissionee can either be a Matter device which is already on a network or the test harness connected to the network.
+ disabled: true
+
- label:
"Commissioner has regulatory and fabric information available and has
accurate date, time and timezone"
verification: |
sudo ./chip-all-clusters-app --wifi --discriminator 3841
- Verify in TH as server side
+ Verify in TH as commissionee side:
[1653471956.966855][10713:10713] CHIP:SPT: PASE PBKDF iterations set to 1000
[1653471956.966887][10713:10713] CHIP:SPT: LinuxCommissionableDataProvider didn"t get a PASE salt, generating one.
@@ -56,7 +68,7 @@ tests:
./chip-tool pairing code 1 MT:-24J0CEK01KA0648G00
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
[1657226543861] [30621:16744161] CHIP: [IN] SecureSession[0x6000007cc000]: Activated - Type:1 LSID:47293
[1657226543861] [30621:16744161] CHIP: [IN] New secure session activated for device , LSID:47293 PSID:201!
@@ -74,7 +86,7 @@ tests:
(DNS-SD)"
PICS: MCORE.DD.DISCOVERY_IP
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
./chip-tool pairing code 1 MT:-24J0AFN00KA0648G00
...
[1657226543861] [30621:16744161] CHIP: [IN] SecureSession[0x6000007cc000]: Activated - Type:1 LSID:47293
@@ -86,7 +98,7 @@ tests:
[1657226543861] [30621:16744161] CHIP: [CTL] Commissioning stage next step: "SecurePairing" -> "ReadCommissioningInfo"
- Verify in TH as server side
+ Verify in TH as commissionee side:
$ ./out/all-clusters-app/chip-all-clusters-app
...
[1657226543.948995][369114:369114] CHIP:IN: SecureSession[0xaaaab60788e0]: Activated - Type:1 LSID:201
@@ -100,7 +112,7 @@ tests:
verification: |
Verify that the responder receives the PBKDFParamRequest message
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
CHIP:SC: Received PBKDF param request
CHIP:SC: Peer assigned session ID 18450
CHIP:SC: Found MRP parameters in the message
@@ -110,7 +122,7 @@ tests:
CHIP:IN: Sending unauthenticated msg 0xaaaaad340560 with MessageCounter:1341084110 to 0x0000000000000000 at monotonic time: 0000000000FBA380 msec
CHIP:SC: Sent PBKDF param response
- Verify in TH as server side
+ Verify in TH as commissionee side:
Sent PBKDF param request
[1653471961.364996][30157:30162] CHIP:CTL: Setting wifi credentials from parameters
[1653471961.365051][30157:30162] CHIP:CTL: Setting attestation nonce to random value
@@ -128,10 +140,10 @@ tests:
"Commissioner SHALL re-arm Fail-safe timer on Commissionee within 60s
(the autonomously Fail-safe timer length set by Commissionee)"
verification: |
- Verify in TH as server side
+ Verify in TH as commissionee side:
CHIP:DL: NVS set: chip-config/fail-safe-armed = true
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
: Performing next commissioning step "ArmFailSafe"
[1653471968.064493][30157:30162] CHIP:CTL: Arming failsafe (60 seconds)
@@ -142,12 +154,12 @@ tests:
Commissionee."
PICS: MCORE.COM.WIRELESS
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
Performing next commissioning step "ConfigRegulatory"
[1653471968.202645][30157:30162] CHIP:CTL: Setting Regulatory Config
[1653471968.202666][30157:30162] CHIP:CTL: No regulatory config supplied by controller, leaving as device default (0)
- Verify in TH as server side
+ Verify in TH as commissionee side
NVS set: chip-config/regulatory-location = 0 (0x0)
disabled: true
@@ -155,14 +167,14 @@ tests:
"Commissioner requests operational CSR from Commissionee with
OperationalCSRRequest command"
verification: |
- Verify the following on DUT after commissioning
+ 1. Verify the following on DUT after commissioning
- Verify in TH as server side
+ Verify in TH as commissionee side:
[1646909537.102263][3145:3150] CHIP:CTL: Received Attestation Information from the device
[1646909537.102418][3145:3150] CHIP:CTL: Verifying attestation
[1646909537.115081][3145:3150] CHIP:CTL: Successfully validated "Attestation Information" command received from the device.
- Verify in DUT as client side
+ Verify in DUT as commissioner side
CHIP:ZCL: OpCreds: commissioner has requested a CSR
CHIP:ZCL: OpCreds: NewCertificateSigningRequest returned ../../third_party/connectedhomeip/src/crypto/CHIPCryptoPALOpenSSL.cpp:1114: Success
disabled: true
@@ -171,11 +183,11 @@ tests:
"Commissioner configures operational credentials on DUT if not
previously installed"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
OpCreds: Received an AddTrustedRootCertificate command
- Verify in TH as server side
+ Verify in TH as commissionee side:
Sending root certificate to the device
CHIP:DMG: ICR moving to [AddingComm]
@@ -190,7 +202,7 @@ tests:
"Commissioner configures itself as administrator in ACL on TH if
needed"
verification: |
- Verify in DUT as client side after commissioning
+ Verify in DUT as commissioner side after commissioning:
CHIP:CTL: Commissioning stage next step: "SendTrustedRootCert" -> "SendNOC"
[1653471969.812357][30157:30162] CHIP:CTL: Performing next commissioning step "SendNOC"
@@ -244,7 +256,7 @@ tests:
[1653471970.347439][30157:30162] CHIP:TOO: Secure Pairing Success
[1653471970.347485][30157:30162] CHIP:CTL: Successfully finished commissioning step "SendNOC"
- Verify in DUT as client side
+ Verify in TH as commissionee side:
OpCreds: Received an AddNOC command
disabled: true
@@ -253,24 +265,29 @@ tests:
"Commissioner configures operational network on TH if TH both supports
and requires"
verification: |
- Verify in DUT as client side after commissioning
-
+ Verify in DUT as commissioner side after commissioning:
[1646909537.345068][3145:3150] CHIP:CTL: Received certificate signing request from the device
+
+ Verifiy on TH as commissionee side:
+ [1660151567834] [99153:10411339] CHIP: [CTL] Received certificate signing request from the device
+ [1660151567834] [99153:10411339] CHIP: [CTL] Successfully finished commissioning step "SendOpCertSigningRequest"
disabled: true
- label:
"Commissioner instructs Commissionee to connect to operational network
if not already connected"
verification: |
- Verify in DUT as client side after commissioning
-
+ Verify in DUT as commissioner side after commissioning:
[1646909537.976592][3145:3150] CHIP:CTL: Operational credentials provisioned on device 0xffffac001730
[1646909537.976664][3145:3150] CHIP:TOO: Secure Pairing Success
+
+ Verifiy on TH as commissionee side:
+ [1660152735.835717][648909:648909] CHIP:ZCL: OpCreds: successfully created fabric index 0x1 via AddNOC
disabled: true
- label: "Commissioner starts discovery of TH using Operational Discovery"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
Commissioning stage next step: "WiFiNetworkEnable" -> "FindOperational"
[1653471976.344532][30157:30162] CHIP:CTL: Performing next commissioning step "FindOperational"
@@ -287,12 +304,18 @@ tests:
[1653471976.348732][30157:30162] CHIP:DIS: Mrp Interval idle: 5000 ms
[1653471976.348762][30157:30162] CHIP:DIS: Mrp Interval active: 300 ms
[1653471976.349059][30157:30162] CHIP:DIS: UDP:[fe80::e65f:1ff:fe0f:2753%eth0]:5540: new best score: 3
+
+ Verifiy on TH as commissionee side:
+ [1660152735.835315][648909:648909] CHIP:DIS: Broadcasting mDns reply for query from fe80::808c:7ff:fefd:3b1
+ [1660152735.835522][648909:648909] CHIP:DIS: mDNS service published: _matter._tcp
+ [1660152735.835565][648909:648909] CHIP:DMG: Endpoint 0, Cluster 0x0000_003E update version to 553aae1
+ [1660152735.835594][648909:648909] CHIP:DMG: Endpoint 0, Cluster 0x0000_003E update version to 553aae2
disabled: true
- label:
"Commissioner opens a CASE session with TH over operational network"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
CASE Server enabling CASE session setups
[1653471957.713139][10713:10713] CHIP:SVR: Joining Multicast groups
@@ -303,16 +326,18 @@ tests:
- label: "Commissioner sends CommissioningComplete command"
verification: |
- Received CommissioningComplete response
-
+ Verify in DUT as commissioner side:
CHIP:CTL: Received CommissioningComplete response
+
+ Verifiy on TH as commissionee side:
+ [1660154248.898113][7143:7143] CHIP:SVR: Commissioning completed successfully
disabled: true
- label:
"Commissioning channel between the Commissioner and Commissionee is
terminated."
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side:
CHIP:CTL: Successfully finished commissioning step "SendComplete"
CHIP:CTL: Commissioning stage next step: "SendComplete" -> "Cleanup"
@@ -326,4 +351,9 @@ tests:
CHIP:DL: Closing BLE GATT connection (con 0xffff9c04df70)
CHIP:CTL: Successfully finished commissioning step "Cleanup"
CHIP:TOO: Device commissioning completed with success
+
+ Verify on TH as commissionee side:
+ [1660154249.008047][7143:7143] CHIP:IN: Expiring all PASE sessions
+ [1660154249.008069][7143:7143] CHIP:IN: SecureSession[0xaaab09155000]: MarkForEviction Type:1 LSID:5786
+ [1660154249.008090][7143:7143] CHIP:SC: SecureSession[0xaaab09155000]: Moving from state "kActive" --> "kPendingEviction"
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_6.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_6.yaml
index dbd0be9c671393..8a641bdd92815e 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_6.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_6.yaml
@@ -25,6 +25,18 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.5 - Commissioner is on a network. - The network can either be WiFi or Thread.
+
+ 2 - 5.5 - Commissionee is not connected to an operational network
+ disabled: true
+
- label:
"Commissioner has regulatory and fabric information available and has
accurate date, time and timezone"
@@ -36,9 +48,9 @@ tests:
"Commissioner and Commissionee discover each other and connect via the
discovery mode applicable for the DUT."
verification: |
- Verify in TH as server side: start BLE Advertising by specific DUT implementation
+ Verify in TH as commissionee side: start BLE Advertising by specific DUT implementation
- Verify in DUT as client side: start commissioning process(need to obtain the Thread dataset first)
+ Verify in DUT as commissioner side: start commissioning process(need to obtain the Thread dataset first)
./chip-tool pairing ble-thread 1 hex:0e080000000000010000000300000f35060004001fffe0020811111111222222220708fd27e57b1b1e22d9051000112233445566778899aabbccddeeff030e4f70656e54687265616444656d6f01021234041061e1206d2c2b46e079eb775f41fc72190c0402a0fff8 20202021 3840
disabled: true
@@ -47,7 +59,7 @@ tests:
"Establish encryption keys with Password Authenticated Session
Establishment on the commissioning channel"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
CHIP:SC: Received PBKDF param response
disabled: true
@@ -56,7 +68,7 @@ tests:
"Commissioner SHALL re-arm Fail-safe timer on Commissionee within 60s
(the autonomously Fail-safe timer length set by Commissionee)"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
CHIP:CTL: Arming failsafe (60 seconds)
disabled: true
@@ -66,13 +78,13 @@ tests:
Commissionee."
PICS: MCORE.COM.WIRELESS
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
Performing next commissioning step "ConfigRegulatory"
[1653471968.202645][30157:30162] CHIP:CTL: Setting Regulatory Config
[1653471968.202666][30157:30162] CHIP:CTL: No regulatory config supplied by controller, leaving as device default (0)
- Verify in TH as server side
+ Verify in TH as commissionee side
NVS set: chip-config/regulatory-location = 0 (0x0)
disabled: true
@@ -80,7 +92,7 @@ tests:
"Commissioner requests operational CSR from Commissionee with
OperationalCSRRequest command"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
CHIP:CTL: Sending CSR request to 0xffffa4001730 device
CHIP:DMG: ICR moving to [AddingComm]
@@ -144,7 +156,7 @@ tests:
"Commissioner configures operational credentials on DUT if not
previously installed"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
[1651218829.220063][3273:3278] CHIP:CTL: Sending root certificate to the device
[1651218829.220201][3273:3278] CHIP:DMG: ICR moving to [AddingComm]
@@ -198,7 +210,7 @@ tests:
"Commissioner configures itself as administrator in ACL on TH if
needed"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
[1651218829.457248][3273:3278] CHIP:CTL: Sending operational certificate chain to the device
[1651218829.457372][3273:3278] CHIP:DMG: ICR moving to [AddingComm]
@@ -254,7 +266,7 @@ tests:
"Commissioner configures operational network on TH if TH both supports
and requires"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
[1651218833.995054][3273:3278] CHIP:CTL: Adding thread network
[1651218833.995176][3273:3278] CHIP:DMG: ICR moving to [AddingComm]
@@ -306,7 +318,7 @@ tests:
"Commissioner instructs Commissionee to connect to operational network
if not already connected"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
[1651218834.137891][3273:3278] CHIP:CTL: Enabling thread network
[1651218834.138014][3273:3278] CHIP:DMG: ICR moving to [AddingComm]
@@ -359,7 +371,7 @@ tests:
"Commissioning channel between the Commissioner and Commissionee is
terminated."
verification: |
- 1. Verify the channel was terminated on DUT=chip-tool
+ Verify the channel was terminated on DUT as commissioner side:
[1651271753284] [23287:743790] CHIP: [CTL] Received CommissioningComplete response
[1651271753284] [23287:743790] CHIP: [CTL] Successfully finished commissioning step "SendComplete"
[1651271753284] [23287:743790] CHIP: [CTL] Commissioning stage next step: "SendComplete" -> "Cleanup"
@@ -370,7 +382,7 @@ tests:
- label: "Commissioner starts discovery of TH using Operational Discovery"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
CHIP:DL: Avahi resolve found
CHIP:DIS: Node ID resolved for 0x0000000000000001
@@ -381,7 +393,7 @@ tests:
- label:
"Commissioner opens a CASE session with TH over operational network"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
CHIP:SC: Sent Sigma1 msg
CHIP:CTL: Address resolved for node: 0x0000000000000001
@@ -420,7 +432,7 @@ tests:
- label: "Commissioner sends CommissioningComplete command"
verification: |
- Verify in DUT as client side
+ Verify in DUT as commissioner side
CHIP:CTL: Received CommissioningComplete response
CHIP:CTL: Rendezvous cleanup
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_7.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_7.yaml
index cbf22f85473687..b6ba6b2d73b862 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_7.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_7.yaml
@@ -26,6 +26,17 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.5 - Commissioner is on a network. - The network can either be WiFi or Thread.
+ 2 - 5.5 - Commissionee can either be a Matter device which is already on a network or the test harness connected to the network.
+ disabled: true
+
- label:
"Commissioner has regulatory and fabric information available and has
accurate date, time and timezone"
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_8.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_8.yaml
index 18bea24ee8c4f2..95b80018c71c01 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_8.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_8.yaml
@@ -26,6 +26,17 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Preconditions"
+ verification: |
+ 1 - 5.5 - Commissioner is on a network. - The network can either be WiFi or Thread.
+ 2 - 5.5 - Commissionee is not connected to an operational network
+ disabled: true
+
- label:
"Commissioner has regulatory and fabric information available and has
accurate date, time and timezone"
@@ -758,3 +769,8 @@ tests:
CHIP:CTL: Rendezvous cleanup
CHIP:TOO: Device commissioning completed with success
disabled: true
+
+ - label: ""
+ verification: |
+ verification step to be updated.
+ disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_9.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_9.yaml
index 98ceb571b3902a..7e181f2c075a3d 100644
--- a/src/app/tests/suites/certification/Test_TC_DD_3_9.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DD_3_9.yaml
@@ -26,9 +26,14 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions"
+ verification: |
+ 1 - Commissioner is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
+ disabled: true
+
- label: "TH receives Onboarding Payload from the DUT"
verification: |
- 1. Parse the DUT"s QR Code using the TH commissioner: chip-tool
+ 1. Parse the DUT commissionee QR Code using the TH commissioner: chip-tool
$ ./chip-tool payload parse-setup-payload MT:-24J029Q00KA0648G00
[1657230447725] [31078:16782733] CHIP: [SPL] Parsing base38Representation: MT:-24J029Q00KA0648G00
[1657230447725] [31078:16782733] CHIP: [SPL] Version: 0
@@ -43,24 +48,36 @@ tests:
disabled: true
- label:
- "TH fetches commissioning data from Distributed Compliance Ledger
- (DCL)"
+ "Follow any custom steps, guided by a service provided by the DUTs
+ manufacturer for initial device setup, then place the DUT Commissionee
+ into commissioning mode."
verification: |
- 1. TH fetches the DCL from DUT"s DCL
- 2. Verify that DCL contains the criteria:
- - CommissioningCustomFlow field = 2
- - CommissioningModeInitialStepsHint bit 0 (Power Cycle) = 0 and bit 1 (Device Manufacturer URL) = 1
- - CommissioningCustomFlowURL populated with a URL that uses https schema
- disabled: true
+ 1. Follow DUT vendor-specific steps to put DUT into commissioning mode
- - label:
- "TH uses the provided URL to guide user on how to put DUT in a state
- that allows commissioning"
- verification: |
- 1. Follow steps from DCL"s URL given
+ 2. Verify DUT is advertising in commissioning mode. On DUT,
+
+ $ ./chip-tool discover commissionables
+ Verify in TH as commissioner side:
+
+ [1651192893436] [15304:442604] CHIP: [DL] Mdns: OnNewAddress interface: 24 ip:fe80::dea6:32ff:fe8d:6e32
+ [1651192893436] [15304:442604] CHIP: [DIS] Vendor ID: 65521
+ [1651192893436] [15304:442604] CHIP: [DIS] Product ID: 32769
+ [1651192893436] [15304:442604] CHIP: [DIS] Long Discriminator: 3840
+ [1651192893436] [15304:442604] CHIP: [DIS] Pairing Hint: 33
+ [1651192893436] [15304:442604] CHIP: [DIS] Hostname: DCA6328D6E320000 [1651192893436] [15304:442604] CHIP: [DIS] Instance Name: 914762134DA8E7D1
+ [1651192893436] [15304:442604] CHIP: [DIS] IP Address #1: fe80::dea6:32ff:fe8d:6e32
+ [1651192893436] [15304:442604] CHIP: [DIS] Port: 5540
+ [1651192893436] [15304:442604] CHIP: [DIS] Commissioning Mode: 1
+ [1651192893436] [15304:442604] CHIP: [DIS] Mrp Interval idle: 5000 ms
+ [1651192893436] [15304:442604] CHIP: [DIS] Mrp Interval active: 300 ms
disabled: true
- label: "DUT is commissioned by the TH"
verification: |
1. Verify that the DUT is commissioned to the TH commissioner successfully
+
+ Verify on the TH as commissioner side:
+ CHIP:CTL: Received CommissioningComplete response
+ CHIP:CTL: Rendezvous cleanup
+ CHIP:TOO: Device commissioning completed with success
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DESC_2_1.yaml b/src/app/tests/suites/certification/Test_TC_DESC_2_1.yaml
index 206342e67e963a..c2c35d4ac70359 100644
--- a/src/app/tests/suites/certification/Test_TC_DESC_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DESC_2_1.yaml
@@ -24,11 +24,37 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Mandatory cluster requirements for each device type can be found here.
+ github link
+ Use the correct json required for the DUT, this file is PIXIT.DESC.DeviceTypeConformanceList.
+ disabled: true
+
+ - label: "Precondition"
+ verification: |
+ TH and DUT are commissioned
+ disabled: true
+
- label:
"TH reads DeviceTypeList and PartsList attributes from DUT for
Endpoint 0"
PICS: DESC.S.A0000 && DESC.S.A0003
verification: |
+ Send a read request to the DUT using chip-tool to read the partsList attribute in the descriptor cluster on Endpoint 0.
+ Make a note of all the items(Endpoint id’s) in the list. In the below example there are 2 endpoint id"s listed [1,2]
+
+ ./chip-tool descriptor read parts-list 1 0
+
+ Verify PartsList response on the TH (Chip-tool) Log:
+
+ [1641456769.777217][16238:16244] CHIP:DMG: SuppressResponse = true,
+ [1641456769.777267][16238:16244] CHIP:DMG: }
+ [1641456769.777839][16238:16244] CHIP:TOO: Descriptor.PartsList response: 2 entries
+ [1641456769.777925][16238:16244] CHIP:TOO: [1]: 1
+ [1641456769.777978][16238:16244] CHIP:TOO: [2]: 2
+ [1641456769.778080][16238:16244] CHIP:EM: Sending Standalone Ack for MessageCounter:2830202 on exchange 38042i
+
./chip-tool descriptor read device-list 1 0
Verify DeviceList response on the TH (Chip-tool) Log:
@@ -46,6 +72,19 @@ tests:
Endpoint supported by DUT (except Endpoint 0)."
PICS: DESC.S.A0000 && DESC.S.A0003
verification: |
+ For all the Endpoint id’s listed from the previous step run the following steps. The device type should correspond to the id value in the device_type.json
+ Chip tool outputs all values in integer, convert to hex before comparing.
+
+
+ ./chip-tool descriptor read parts-list 1 1
+
+ Verify parts-list response on the TH(Chip-tool) Log:
+
+ [1660127331.634565][46437:46442] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 934889243
+ [1660127331.634631][46437:46442] CHIP:TOO: parts list: 0 entries
+
+
+
./chip-tool descriptor read device-list 1 1
Verify DeviceList response on the TH(Chip-tool) Log:
@@ -57,54 +96,114 @@ tests:
[1657200303.724594][2509:2514] CHIP:TOO: Type: 256
[1657200303.724621][2509:2514] CHIP:TOO: Revision: 1
[1657200303.724647][2509:2514] CHIP:TOO: }
+
+
+
+ ./chip-tool descriptor read parts-list 1 2
+
+ Verify parts-list response on the TH(Chip-tool) Log:
+
+ [1660127879.565330][46472:46477] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 1237610137
+ [1660127879.565473][46472:46477] CHIP:TOO: parts list: 0 entries
+
+ ./chip-tool descriptor read device-list 1 2
+
+ Verify DeviceList response on the TH(Chip-tool) Log:
+
+ [1660127725.802512][46460:46465] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 1237610137
+ [1660127725.802614][46460:46465] CHIP:TOO: device list: 1 entries
+ [1660127725.802669][46460:46465] CHIP:TOO: [1]: {
+ [1660127725.802707][46460:46465] CHIP:TOO: Type: 256
+ [1660127725.802745][46460:46465] CHIP:TOO: Revision: 1
+ [1660127725.802781][46460:46465] CHIP:TOO: }
disabled: true
- label: "TH reads ServerList attribute."
PICS: DESC.S.A0001
verification: |
- ./chip-tool descriptor read server-list 1 0
+ For all the Endpoint id’s listed in step 1a run the following steps. For all the server list entries listed in the output - Convert them to Hex values. For example 29 is 0x001D. Verify that these are also present in the device_type.json. Every server cluster listed in the JSON should correspond to a number here in the output.
+
+ ./chip-tool descriptor read server-list 1 1
Verify server list on the TH (Chip-tool) Log:
- [1654155402.956829][3701:3706] CHIP:TOO: server list: 26 entries
- [1654155402.956863][3701:3706] CHIP:TOO: [1]: 3
- [1654155402.956889][3701:3706] CHIP:TOO: [2]: 4
- [1654155402.956914][3701:3706] CHIP:TOO: [3]: 29
- [1654155402.956939][3701:3706] CHIP:TOO: [4]: 30
- [1654155402.956963][3701:3706] CHIP:TOO: [5]: 31
- [1654155402.956988][3701:3706] CHIP:TOO: [6]: 40
- [1654155402.957012][3701:3706] CHIP:TOO: [7]: 42
- [1654155402.957037][3701:3706] CHIP:TOO: [8]: 43
- [1654155402.957061][3701:3706] CHIP:TOO: [9]: 44
- [1654155402.957086][3701:3706] CHIP:TOO: [10]: 45
- [1654155402.957110][3701:3706] CHIP:TOO: [11]: 46
- [1654155402.957135][3701:3706] CHIP:TOO: [12]: 47
- [1654155402.957159][3701:3706] CHIP:TOO: [13]: 48
- [1654155402.957183][3701:3706] CHIP:TOO: [14]: 49
- [1654155402.957207][3701:3706] CHIP:TOO: [15]: 50
- [1654155402.957231][3701:3706] CHIP:TOO: [16]: 51
- [1654155402.957256][3701:3706] CHIP:TOO: [17]: 52
- [1654155402.957280][3701:3706] CHIP:TOO: [18]: 53
- [1654155402.957304][3701:3706] CHIP:TOO: [19]: 54
- [1654155402.957328][3701:3706] CHIP:TOO: [20]: 55
- [1654155402.957352][3701:3706] CHIP:TOO: [21]: 60
- [1654155402.957376][3701:3706] CHIP:TOO: [22]: 62
- [1654155402.957400][3701:3706] CHIP:TOO: [23]: 63
- [1654155402.957424][3701:3706] CHIP:TOO: [24]: 64
- [1654155402.957449][3701:3706] CHIP:TOO: [25]: 65
- [1654155402.957473][3701:3706] CHIP:TOO: [26]: 1029
+ [1660149731.921734][49539:49544] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_001D Attribute 0x0000_0001 DataVersion: 2312399478
+ [1660149731.921749][49539:49544] CHIP:TOO: server list: 44 entries
+ [1660149731.921753][49539:49544] CHIP:TOO: [1]: 3
+ [1660149731.921755][49539:49544] CHIP:TOO: [2]: 4
+ [1660149731.921758][49539:49544] CHIP:TOO: [3]: 5
+ [1660149731.921760][49539:49544] CHIP:TOO: [4]: 6
+ [1660149731.921762][49539:49544] CHIP:TOO: [5]: 7
+ [1660149731.921765][49539:49544] CHIP:TOO: [6]: 8
+ [1660149731.921767][49539:49544] CHIP:TOO: [7]: 15
+ [1660149731.921769][49539:49544] CHIP:TOO: [8]: 29
+ [1660149731.921772][49539:49544] CHIP:TOO: [9]: 30
+ [1660149731.921774][49539:49544] CHIP:TOO: [10]: 37
+ [1660149731.921776][49539:49544] CHIP:TOO: [11]: 47
+ [1660149731.921779][49539:49544] CHIP:TOO: [12]: 59
+ [1660149731.921781][49539:49544] CHIP:TOO: [13]: 64
+ [1660149731.921783][49539:49544] CHIP:TOO: [14]: 65
+ [1660149731.921785][49539:49544] CHIP:TOO: [15]: 69
+ [1660149731.921787][49539:49544] CHIP:TOO: [16]: 80
+ [1660149731.921790][49539:49544] CHIP:TOO: [17]: 257
+ [1660149731.921792][49539:49544] CHIP:TOO: [18]: 258
+ [1660149731.921795][49539:49544] CHIP:TOO: [19]: 259
+ [1660149731.921797][49539:49544] CHIP:TOO: [20]: 512
+ [1660149731.921799][49539:49544] CHIP:TOO: [21]: 513
+ [1660149731.921801][49539:49544] CHIP:TOO: [22]: 514
+ [1660149731.921804][49539:49544] CHIP:TOO: [23]: 516
+ [1660149731.921806][49539:49544] CHIP:TOO: [24]: 768
+ [1660149731.921808][49539:49544] CHIP:TOO: [25]: 1024
+ [1660149731.921810][49539:49544] CHIP:TOO: [26]: 1026
+ [1660149731.921812][49539:49544] CHIP:TOO: [27]: 1027
+ [1660149731.921814][49539:49544] CHIP:TOO: [28]: 1028
+ [1660149731.921817][49539:49544] CHIP:TOO: [29]: 1029
+ [1660149731.921819][49539:49544] CHIP:TOO: [30]: 1030
+ [1660149731.921821][49539:49544] CHIP:TOO: [31]: 1283
+ [1660149731.921824][49539:49544] CHIP:TOO: [32]: 1284
+ [1660149731.921826][49539:49544] CHIP:TOO: [33]: 1285
+ [1660149731.921828][49539:49544] CHIP:TOO: [34]: 1286
+ [1660149731.921830][49539:49544] CHIP:TOO: [35]: 1287
+ [1660149731.921832][49539:49544] CHIP:TOO: [36]: 1288
+ [1660149731.921835][49539:49544] CHIP:TOO: [37]: 1289
+ [1660149731.921837][49539:49544] CHIP:TOO: [38]: 1290
+ [1660149731.921839][49539:49544] CHIP:TOO: [39]: 1291
+ [1660149731.921841][49539:49544] CHIP:TOO: [40]: 1292
+ [1660149731.921844][49539:49544] CHIP:TOO: [41]: 1293
+ [1660149731.921846][49539:49544] CHIP:TOO: [42]: 1294
+ [1660149731.921848][49539:49544] CHIP:TOO: [43]: 2820
+ [1660149731.921851][49539:49544] CHIP:TOO: [44]: 4294048773
+
+
+ ./chip-tool descriptor read server-list 1 2
+
+ [1660146145.982691][46811:46816] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_001D Attribute 0x0000_0001 DataVersion: 1051414887
+ [1660146145.982733][46811:46816] CHIP:TOO: server list: 5 entries
+ [1660146145.982744][46811:46816] CHIP:TOO: [1]: 4
+ [1660146145.982752][46811:46816] CHIP:TOO: [2]: 6
+ [1660146145.982759][46811:46816] CHIP:TOO: [3]: 29
+ [1660146145.982771][46811:46816] CHIP:TOO: [4]: 47
+ [1660146145.982778][46811:46816] CHIP:TOO: [5]: 1030
disabled: true
- label: "TH reads ClientList attribute"
PICS: DESC.S.A0002
verification: |
- ./chip-tool descriptor read client-list 1 0
+ For all the Endpoint id’s listed in step 1a run the following steps. For all the client list entries listed in the output - Convert them to Hex values. For example 29 is 0x001D. Verify that these are also present in the device_type.json. Every server cluster listed in the JSON should correspond to a number here in the output.
+
+
+ ./chip-tool descriptor read client-list 1 1
Verify client list on the TH (Chip-tool) Log:
+ [1660195618.042544][2905:2910] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_001D Attribute 0x0000_0002 DataVersion: 2955150741
+ [1660195618.042605][2905:2910] CHIP:TOO: client list: 0 entries
- [1650281818.533446][9679:9684] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0002 DataVersion: 1976976904
- [1650281818.533514][9679:9684] CHIP:TOO: client list: 1 entries
- [1650281818.533563][9679:9684] CHIP:TOO: [1]: 41
+ ./chip-tool descriptor read client-list 1 2
+
+ Verify client list on the TH (Chip-tool) Log:
+
+ [1660146160.390200][46818:46823] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_001D Attribute 0x0000_0002 DataVersion: 1051414887
+ [1660146160.390211][46818:46823] CHIP:TOO: client list: 0 entries
disabled: true
- label: "TH reads PartsList attribute."
@@ -127,5 +226,43 @@ tests:
to make sure all mandatory (and applicable optional)
attributes/commands are implemented."
verification: |
- verification step to be updated.
+ FOR ENDPOINTS 2
+
+
+ ./chip-tool descriptor read parts-list 1 2
+
+ Verify parts-list response on the TH(Chip-tool) Log:
+
+ [1660127879.565330][46472:46477] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 1237610137
+ [1660127879.565473][46472:46477] CHIP:TOO: parts list: 0 entries
+
+ ./chip-tool descriptor read device-list 1 2
+
+ Verify DeviceList response on the TH(Chip-tool) Log:
+
+ [1660127725.802512][46460:46465] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 1237610137
+ [1660127725.802614][46460:46465] CHIP:TOO: device list: 1 entries
+ [1660127725.802669][46460:46465] CHIP:TOO: [1]: {
+ [1660127725.802707][46460:46465] CHIP:TOO: Type: 256
+ [1660127725.802745][46460:46465] CHIP:TOO: Revision: 1
+ [1660127725.802781][46460:46465] CHIP:TOO: }
+
+ ./chip-tool descriptor read server-list 1 2
+
+ Verify server list on the TH (Chip-tool) Log:
+
+ [1660146145.982691][46811:46816] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_001D Attribute 0x0000_0001 DataVersion: 1051414887
+ [1660146145.982733][46811:46816] CHIP:TOO: server list: 5 entries
+ [1660146145.982744][46811:46816] CHIP:TOO: [1]: 4
+ [1660146145.982752][46811:46816] CHIP:TOO: [2]: 6
+ [1660146145.982759][46811:46816] CHIP:TOO: [3]: 29
+ [1660146145.982771][46811:46816] CHIP:TOO: [4]: 47
+ [1660146145.982778][46811:46816] CHIP:TOO: [5]: 1030
+
+ ./chip-tool descriptor read client-list 1 2
+
+ Verify client list on the TH (Chip-tool) Log:
+
+ [1660146160.390200][46818:46823] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_001D Attribute 0x0000_0002 DataVersion: 1051414887
+ [1660146160.390211][46818:46823] CHIP:TOO: client list: 0 entries
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DGGEN_1_1.yaml b/src/app/tests/suites/certification/Test_TC_DGGEN_1_1.yaml
index 95de56495d2c2a..44ea9c363205c6 100644
--- a/src/app/tests/suites/certification/Test_TC_DGGEN_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DGGEN_1_1.yaml
@@ -54,7 +54,7 @@ tests:
response:
constraints:
type: list
- contains: [0, 1, 8, 65528, 65529, 65531, 65533]
+ contains: [0, 1, 8, 65528, 65529, 65531, 65532, 65533]
- label: "Read the global attribute: AcceptedCommandList"
command: "readAttribute"
diff --git a/src/app/tests/suites/certification/Test_TC_DGGEN_2_2.yaml b/src/app/tests/suites/certification/Test_TC_DGGEN_2_2.yaml
index 91486a9f19c52f..e9426841124b86 100644
--- a/src/app/tests/suites/certification/Test_TC_DGGEN_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DGGEN_2_2.yaml
@@ -25,9 +25,23 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ "NOTE: https://github.com/project-chip/connectedhomeip/tree/master/examples/all-clusters-app/linux#readme
+ Events to be executed as following
+ 1. Compile app using below command in connectedhomeip folder
+ a. ./scripts/run_in_build_env.sh ""./scripts/build/build_examples.py --target linux-arm64-all-clusters-no-ble-asan-clang build""
+ b. ./scripts/run_in_build_env.sh ""./scripts/build/build_examples.py --target linux-arm64-all-clusters-no-ble-asan-libfuzzer-clang build""
+ 2. Build respective app (all-clusters-app)
+ 3. Commission DUT to TH
+ 4. Open 2nd terminal of DUT and provide the below command to obtain PID of DUT
+ ps -aef|grep all-clusters-app
+ 5. Follow the Verification step below to generate the event in 2nd terminal of DUT "
+ disabled: true
+
- label: "Commission DUT to TH"
verification: |
- verification step to be updated.
+
disabled: true
- label:
@@ -133,52 +147,3 @@ tests:
[1659530352.583789][4993:4998] CHIP:TOO: BootReason: 0
[1659530352.583813][4993:4998] CHIP:TOO: }
disabled: true
-
- - label: "TH initiates the subscription of NetworkFault event from DUT."
- PICS: DGGEN.S.E02
- verification: |
- On Raspi platform the event is triggered with below command, Pls use equivalent command on the respective DUT
-
- "echo "{"Name":"NetworkFaultChange"}" > /tmp/chip_all_clusters_fifo- (PID of all-clusters-app)"
-
-
- sudo ./chip-tool generaldiagnostics subscribe-event network-fault-change 100 1000 1 0
- On TH(chip-tool) verify that subscription response of NetworkFault event shows subscrition ID
-
- [1653659901.757441][242605:242610] CHIP:EM: Received message of type 0x4 with protocolId (0, 1) and MessageCounter:11933575 on exchange 20223i
- [1653659901.757513][242605:242610] CHIP:EM: Found matching exchange: 20223i, Delegate: 0x7fd058003950
- [1653659901.757544][242605:242610] CHIP:EM: Rxd Ack; Removing MessageCounter:3369789 from Retrans Table on exchange 20223i
- [1653659901.757564][242605:242610] CHIP:EM: Removed CHIP MessageCounter:3369789 from RetransTable on exchange 20223i
- [1653659901.757618][242605:242610] CHIP:DMG: SubscribeResponseMessage =
- [1653659901.757638][242605:242610] CHIP:DMG: {
- [1653659901.757658][242605:242610] CHIP:DMG: SubscriptionId = 0x17dc072d1130a3bd,
- [1653659901.757676][242605:242610] CHIP:DMG: MinIntervalFloorSeconds = 0x64,
- [1653659901.757690][242605:242610] CHIP:DMG: MaxIntervalCeilingSeconds = 0x3e8,
- [1653659901.757708][242605:242610] CHIP:DMG: InteractionModelRevision = 1
- [1653659901.757721][242605:242610] CHIP:DMG: }
- [1653659901.757746][242605:242610] CHIP:DMG: Subscription established with SubscriptionID = 0x17DC072D1130A3BD MinInterval = 100s MaxInterval = 1000s Peer = 01:0000000000000002
- disabled: true
-
- - label:
- "Reboot DUT with a normal reboot process. Rejoin DUT back to previous
- TH fabric."
- PICS: DGGEN.S.E03
- verification: |
- On Raspi platform the event is triggered with below command, Pls use equivalent command on the respective DUT
-
- "echo "{"Name":""}" > /tmp/chip_all_clusters_fifo- (PID of all-clusters-app)"
-
-
- 1. Reboot DUT with a normal reboot process
- 2. ./chip-tool generaldiagnostics read-event boot-reason 1 0
- On TH(chip-tool) verify that the event data of BootReason specified by Table 103 BootReason ENUM table.
-
- CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0033 Event 0x0000_0003
- [1651562139.644134][7873:7878] CHIP:TOO: Event number: 1
- [1651562139.644157][7873:7878] CHIP:TOO: Priority: Critical
- [1651562139.644179][7873:7878] CHIP:TOO: Timestamp: 8347991
- [1651562139.644273][7873:7878] CHIP:TOO: BootReason: {
- [1651562139.644317][7873:7878] CHIP:TOO: BootReason: 0
- [1651562139.644343][7873:7878] CHIP:TOO: }
- [1651562139.644431][7873:7878] CHIP:EM: Sending Standalone Ack for MessageCounter:9685408 on exchange 6383i
- disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DGSW_3_1.yaml b/src/app/tests/suites/certification/Test_TC_DGSW_3_1.yaml
index a30e6eafd57456..9771f051c5759c 100644
--- a/src/app/tests/suites/certification/Test_TC_DGSW_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DGSW_3_1.yaml
@@ -26,12 +26,12 @@ config:
tests:
- label: "Note"
verification: |
- Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
- label: "Commission TH to DUT"
verification: |
- verification step to be updated.
+
disabled: true
- label: "DUT reads a list of ThreadMetrics struct attribute from TH."
@@ -107,19 +107,19 @@ tests:
[1659972063.411625][3458:3458] CHIP:IM: Received Read request
[1659972063.411702][3458:3458] CHIP:DMG: ReadRequestMessage =
[1659972063.411740][3458:3458] CHIP:DMG: {
- [1659972063.411763][3458:3458] CHIP:DMG: AttributePathIBs =
- [1659972063.411789][3458:3458] CHIP:DMG: [
- [1659972063.411822][3458:3458] CHIP:DMG: AttributePathIB =
- [1659972063.411852][3458:3458] CHIP:DMG: {
- [1659972063.411892][3458:3458] CHIP:DMG: Endpoint = 0x0,
- [1659972063.411932][3458:3458] CHIP:DMG: Cluster = 0x34,
- [1659972063.411964][3458:3458] CHIP:DMG: Attribute = 0x0000_0002,
- [1659972063.412003][3458:3458] CHIP:DMG: }
+ [1659972063.411763][3458:3458] CHIP:DMG: AttributePathIBs =
+ [1659972063.411789][3458:3458] CHIP:DMG: [
+ [1659972063.411822][3458:3458] CHIP:DMG: AttributePathIB =
+ [1659972063.411852][3458:3458] CHIP:DMG: {
+ [1659972063.411892][3458:3458] CHIP:DMG: Endpoint = 0x0,
+ [1659972063.411932][3458:3458] CHIP:DMG: Cluster = 0x34,
+ [1659972063.411964][3458:3458] CHIP:DMG: Attribute = 0x0000_0002,
+ [1659972063.412003][3458:3458] CHIP:DMG: }
[1659972063.412032][3458:3458] CHIP:DMG:
- [1659972063.412069][3458:3458] CHIP:DMG: ],
+ [1659972063.412069][3458:3458] CHIP:DMG: ],
[1659972063.412106][3458:3458] CHIP:DMG:
- [1659972063.412133][3458:3458] CHIP:DMG: isFabricFiltered = true,
- [1659972063.412165][3458:3458] CHIP:DMG: InteractionModelRevision = 1
+ [1659972063.412133][3458:3458] CHIP:DMG: isFabricFiltered = true,
+ [1659972063.412165][3458:3458] CHIP:DMG: InteractionModelRevision = 1
[1659972063.412191][3458:3458] CHIP:DMG: },
[1659972063.412273][3458:3458] CHIP:DMG: IM RH moving to [GeneratingReports]
[1659972063.412375][3458:3458] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
@@ -139,19 +139,19 @@ tests:
[1659972088.497642][3458:3458] CHIP:IM: Received Read request
[1659972088.497747][3458:3458] CHIP:DMG: ReadRequestMessage =
[1659972088.497787][3458:3458] CHIP:DMG: {
- [1659972088.497816][3458:3458] CHIP:DMG: AttributePathIBs =
- [1659972088.497854][3458:3458] CHIP:DMG: [
- [1659972088.497889][3458:3458] CHIP:DMG: AttributePathIB =
- [1659972088.497928][3458:3458] CHIP:DMG: {
- [1659972088.497970][3458:3458] CHIP:DMG: Endpoint = 0x0,
- [1659972088.498016][3458:3458] CHIP:DMG: Cluster = 0x34,
- [1659972088.498061][3458:3458] CHIP:DMG: Attribute = 0x0000_0003,
- [1659972088.498103][3458:3458] CHIP:DMG: }
+ [1659972088.497816][3458:3458] CHIP:DMG: AttributePathIBs =
+ [1659972088.497854][3458:3458] CHIP:DMG: [
+ [1659972088.497889][3458:3458] CHIP:DMG: AttributePathIB =
+ [1659972088.497928][3458:3458] CHIP:DMG: {
+ [1659972088.497970][3458:3458] CHIP:DMG: Endpoint = 0x0,
+ [1659972088.498016][3458:3458] CHIP:DMG: Cluster = 0x34,
+ [1659972088.498061][3458:3458] CHIP:DMG: Attribute = 0x0000_0003,
+ [1659972088.498103][3458:3458] CHIP:DMG: }
[1659972088.498144][3458:3458] CHIP:DMG:
- [1659972088.498180][3458:3458] CHIP:DMG: ],
+ [1659972088.498180][3458:3458] CHIP:DMG: ],
[1659972088.498219][3458:3458] CHIP:DMG:
- [1659972088.498257][3458:3458] CHIP:DMG: isFabricFiltered = true,
- [1659972088.498294][3458:3458] CHIP:DMG: InteractionModelRevision = 1
+ [1659972088.498257][3458:3458] CHIP:DMG: isFabricFiltered = true,
+ [1659972088.498294][3458:3458] CHIP:DMG: InteractionModelRevision = 1
[1659972088.498328][3458:3458] CHIP:DMG: },
[1659972088.498431][3458:3458] CHIP:DMG: IM RH moving to [GeneratingReports]
[1659972088.498545][3458:3458] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
diff --git a/src/app/tests/suites/certification/Test_TC_DGTHREAD_1_1.yaml b/src/app/tests/suites/certification/Test_TC_DGTHREAD_1_1.yaml
index 5f8fee8d8262a9..a48e928599b156 100644
--- a/src/app/tests/suites/certification/Test_TC_DGTHREAD_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DGTHREAD_1_1.yaml
@@ -41,7 +41,6 @@ tests:
type: int16u
- label: "TH reads the FeatureMap from DUT"
- PICS: DGTHREAD.S.F00 || DGTHREAD.S.F01 || DGTHREAD.S.F02 || DGTHREAD.S.F03
command: "readAttribute"
attribute: "FeatureMap"
response:
diff --git a/src/app/tests/suites/certification/Test_TC_DGWIFI_1_1.yaml b/src/app/tests/suites/certification/Test_TC_DGWIFI_1_1.yaml
index 3f6060a6721936..5e1e29e4de2037 100644
--- a/src/app/tests/suites/certification/Test_TC_DGWIFI_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DGWIFI_1_1.yaml
@@ -11,94 +11,133 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 3.1.1. [TC-DGWIFI-1.1] Global Attributes [DUT as Server]
+name: 53.1.1. [TC-DGWIFI-1.1] Global Attributes [DUT as Server]
PICS:
- DGWIFI.S
config:
nodeId: 0x12344321
- cluster: "Basic"
+ cluster: "WiFi Network Diagnostics"
endpoint: 0
tests:
- - label: "Commission DUT to TH"
- verification: |
- ./chip-tool pairing ble-wifi NODEID SSID PASSWD 20202021 3840 (commissioner side)
- disabled: true
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
- label: "TH reads the ClusterRevision from DUT"
- verification: |
- ./chip-tool wifinetworkdiagnostics read cluster-revision 1 0
-
- Verify " ClusterRevision " on the TH(Chip-tool) Log:
-
- [1651834623.658618][3910:3916] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0036 Attribute 0x0000_FFFD DataVersion: 2858283115
- [1651834623.658776][3910:3916] CHIP:TOO: ClusterRevision: 1
- disabled: true
+ command: "readAttribute"
+ attribute: "ClusterRevision"
+ response:
+ value: 1
+ constraints:
+ type: int16u
- label: "TH reads the FeatureMap from DUT"
- verification: |
- ./chip-tool wifinetworkdiagnostics read feature-map 1 0
-
- Verify " Featuremap " on the TH(Chip-tool) Log:
-
- [1651834671.432383][3919:3924] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0036 Attribute 0x0000_FFFC DataVersion: 2858283115
- [1651834671.432466][3919:3924] CHIP:TOO: FeatureMap: 3
- disabled: true
-
- - label: "TH reads AttribubteList from DUT"
- verification: |
- ./chip-tool wifinetworkdiagnostics read attribute-list 1 0
-
- Verify " AttributeList " on the TH(Chip-tool) Log:
+ PICS: ( !DGWIFI.S.F00 && !DGWIFI.S.F01 )
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
- [1651834734.844051][3928:3933] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0036 Attribute 0x0000_FFFB DataVersion: 2858283115
- [1651834734.844159][3928:3933] CHIP:TOO: AttributeList: 18 entries
- [1651834734.844193][3928:3933] CHIP:TOO: [1]: 0
- [1651834734.844218][3928:3933] CHIP:TOO: [2]: 1
- [1651834734.844240][3928:3933] CHIP:TOO: [3]: 2
- [1651834734.844264][3928:3933] CHIP:TOO: [4]: 3
- [1651834734.844287][3928:3933] CHIP:TOO: [5]: 4
- [1651834734.844311][3928:3933] CHIP:TOO: [6]: 5
- [1651834734.844335][3928:3933] CHIP:TOO: [7]: 6
- [1651834734.844358][3928:3933] CHIP:TOO: [8]: 7
- [1651834734.844382][3928:3933] CHIP:TOO: [9]: 8
- [1651834734.844403][3928:3933] CHIP:TOO: [10]: 9
- [1651834734.844427][3928:3933] CHIP:TOO: [11]: 10
- [1651834734.844451][3928:3933] CHIP:TOO: [12]: 11
- [1651834734.844475][3928:3933] CHIP:TOO: [13]: 12
- [1651834734.844499][3928:3933] CHIP:TOO: [14]: 65528
- [1651834734.844523][3928:3933] CHIP:TOO: [15]: 65529
- [1651834734.844548][3928:3933] CHIP:TOO: [16]: 65531
- [1651834734.844571][3928:3933] CHIP:TOO: [17]: 65532
- [1651834734.844596][3928:3933] CHIP:TOO: [18]: 65533
- disabled: true
+ - label: "TH reads the FeatureMap from DUT"
+ PICS: DGWIFI.S.F00 || DGWIFI.S.F01
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ constraints:
+ type: bitmap32
+ minValue: 1
+ maxValue: 3
+
+ - label: "TH reads AttributeList from DUT"
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [0, 1, 2, 3, 4, 65528, 65529, 65531, 65532, 65533]
+
+ - label:
+ "TH reads Feature dependent(DGWIFI.S.F00) attributes in attributeList
+ from DUT"
+ PICS: DGWIFI.S.F00
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [6, 7, 8, 9, 10]
+
+ - label:
+ "TH reads Feature dependent(DGWIFI.S.F01) attributes in attributeList
+ from DUT"
+ PICS: DGWIFI.S.F01
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [5, 12]
+
+ - label:
+ "TH reads optional attribute (CurrentMaxRate) in AttributeList from
+ DUT"
+ PICS: DGWIFI.S.A000b
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [11]
- label: "TH reads AcceptedCommandList from DUT"
- verification: |
- ./chip-tool wifinetworkdiagnostics read accepted-command-list 1 0
-
- Verify " AcceptedCommandList " on the TH(Chip-tool) Log:
-
- [1651788161.332422][241228:241233] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0036 Attribute 0x0000_FFF9 DataVersion: 3097381936
- [1651788161.332475][241228:241233] CHIP:TOO: AcceptedCommandList: 1 entries
- [1651788161.332500][241228:241233] CHIP:TOO: [1]: 0
- disabled: true
+ PICS: " !DGWIFI.S.F01 "
+ command: "readAttribute"
+ attribute: "AcceptedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
+
+ - label:
+ "TH reads Feature dependent(DGWIFI.S.F01) command in
+ AcceptedCommandList from DUT"
+ PICS: DGWIFI.S.F01
+ command: "readAttribute"
+ attribute: "AcceptedCommandList"
+ response:
+ constraints:
+ type: list
+ contains: [0]
- label: "TH reads GeneratedCommandList from DUT"
- verification: |
- ./chip-tool wifinetworkdiagnostics read generated-command-list 1 0
-
- Verify " GeneratedCommandList " on the TH(Chip-tool) Log:
-
- [1651788208.608429][241239:241244] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0036 Attribute 0x0000_FFF8 DataVersion: 3097381936
- [1651788208.608490][241239:241244] CHIP:TOO: GeneratedCommandList: 0 entries
- disabled: true
-
- - label: "TH reads EventList from DUT"
- verification: |
- (Out of scope for v1.0)
- disabled: true
+ command: "readAttribute"
+ attribute: "GeneratedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
+ #Commenting out the step EventList attribute which is out of scope for matter V1.0
+ #- label:
+ # "Read EventList attribute from the DUT and Verify that the DUT
+ # response provides a list of supported events."
+ # verification: |
+ # Not implemented in chip-tool
+ # cluster: "LogCommands"
+ # command: "UserPrompt"
+ # PICS: PICS_USER_PROMPT
+ # arguments:
+ # values:
+ # - name: "message"
+ # value: "Please enter 'y' for success"
+ # - name: "expectedValue"
+ # value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_DLOG_1_1.yaml b/src/app/tests/suites/certification/Test_TC_DLOG_1_1.yaml
index 3b8eb6eb42cf96..76dbc6c3572ba7 100644
--- a/src/app/tests/suites/certification/Test_TC_DLOG_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DLOG_1_1.yaml
@@ -11,7 +11,6 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name: 56.1.1. [TC-DLOG-1.1] Global Attributes [DUT-Server]
@@ -20,82 +19,69 @@ PICS:
config:
nodeId: 0x12344321
- cluster: "Basic"
+ cluster: "Diagnostic Logs"
endpoint: 0
tests:
- - label: "Commission DUT to TH"
- verification: |
-
- disabled: true
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
- label: "TH reads the ClusterRevision from DUT"
- verification: |
- sudo ./chip-tool diagnosticlogs read cluster-revision 1 0
-
- Verify on the TH Log:
-
- [1653983972.206171][5186:5191] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0032 Attribute 0x0000_FFFD DataVersion: 2389393200
- [1653983972.206236][5186:5191] CHIP:TOO: ClusterRevision: 1
- disabled: true
+ command: "readAttribute"
+ attribute: "ClusterRevision"
+ response:
+ value: 1
+ constraints:
+ type: int16u
- label: "TH reads the FeatureMap from DUT"
- verification: |
- sudo ./chip-tool diagnosticlogs read feature-map 1 0
-
- Verify on the TH Log:
-
- [1653983676.882544][5166:5171] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0032 Attribute 0x0000_FFFC DataVersion: 2389393200
- [1653983676.882637][5166:5171] CHIP:TOO: FeatureMap: 0
- disabled: true
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
- label: "TH reads AttributeList from DUT"
- verification: |
- sudo ./chip-tool diagnosticlogs read attribute-list 1 0
-
- Verify on the TH Log:
-
- [1649670392.536999][3576:3581] CHIP:DMG:
- [1649670392.537040][3576:3581] CHIP:DMG: SuppressResponse = true,
- [1649670392.537081][3576:3581] CHIP:DMG: InteractionModelRevision = 1
- [1649670392.537119][3576:3581] CHIP:DMG: }
- [1649670392.537695][3576:3581] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0032 Attribute 0x0000_FFFB DataVersion: 1216963889
- [1649670392.537917][3576:3581] CHIP:TOO: AttributeList: 3 entries
- [1649670392.537985][3576:3581] CHIP:TOO: [1]: 65528
- [1649670392.538030][3576:3581] CHIP:TOO: [2]: 65529
- [1649670392.538071][3576:3581] CHIP:TOO: [3]: 65531
- disabled: true
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [65528, 65529, 65531, 65532, 65533]
- label: "TH reads AcceptedCommandList from DUT"
- verification: |
- sudo ./chip-tool diagnosticlogs read accepted-command-list 1 0
-
- Verify on the TH Log:
-
- [1649670700.139000][3624:3629] CHIP:DMG:
- [1649670700.139033][3624:3629] CHIP:DMG: SuppressResponse = true,
- [1649670700.139066][3624:3629] CHIP:DMG: InteractionModelRevision = 1
- [1649670700.139097][3624:3629] CHIP:DMG: }
- [1649670700.139387][3624:3629] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0032 Attribute 0x0000_FFF9 DataVersion: 1216963889
- [1649670700.139473][3624:3629] CHIP:TOO: AcceptedCommandList: 1 entries
- [1649670700.139528][3624:3629] CHIP:TOO: [1]: 0
- disabled: true
+ command: "readAttribute"
+ attribute: "AcceptedCommandList"
+ response:
+ value: [0]
+ constraints:
+ type: list
- label: "TH reads GeneratedCommandList from DUT"
- verification: |
- sudo ./chip-tool diagnosticlogs read generated-command-list 1 0
-
- Verify on the TH Log:
-
- [1649670576.965898][3602:3607] CHIP:DMG:
- [1649670576.965927][3602:3607] CHIP:DMG: SuppressResponse = true,
- [1649670576.965955][3602:3607] CHIP:DMG: InteractionModelRevision = 1
- [1649670576.965987][3602:3607] CHIP:DMG: }
- [1649670576.966225][3602:3607] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0032 Attribute 0x0000_FFF8 DataVersion: 1216963889
- [1649670576.966330][3602:3607] CHIP:TOO: GeneratedCommandList: 0 entries
- disabled: true
-
- - label: "TH reads EventList from DUT"
- verification: |
- Event-list is not implemented
- disabled: true
+ command: "readAttribute"
+ attribute: "GeneratedCommandList"
+ response:
+ value: [1]
+ constraints:
+ type: list
+ #Commenting out the step EventList attribute which is out of scope for matter V1.0
+ #- label:
+ # "Read EventList attribute from the DUT and Verify that the DUT
+ # response provides a list of supported events."
+ # verification: |
+ # Not implemented in chip-tool
+ # cluster: "LogCommands"
+ # command: "UserPrompt"
+ # PICS: PICS_USER_PROMPT
+ # arguments:
+ # values:
+ # - name: "message"
+ # value: "Please enter 'y' for success"
+ # - name: "expectedValue"
+ # value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_1_1.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_1_1.yaml
index 4789c9736d130d..e83ad337d61a7e 100644
--- a/src/app/tests/suites/certification/Test_TC_DRLK_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DRLK_1_1.yaml
@@ -40,6 +40,18 @@ tests:
constraints:
type: int16u
+ - label: "TH reads the FeatureMap from DUT"
+ PICS:
+ " !DRLK.S.F00 && !DRLK.S.F01 && !DRLK.S.F02 && !DRLK.S.F04 &&
+ !DRLK.S.F05 && !DRLK.S.F06 && !DRLK.S.F07 && !DRLK.S.F08 &&
+ !DRLK.S.F10 && !DRLK.S.F11 "
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
+
- label: "TH reads the FeatureMap from DUT"
PICS:
DRLK.S.F00 || DRLK.S.F01 || DRLK.S.F02 || DRLK.S.F04 || DRLK.S.F05 ||
@@ -49,7 +61,7 @@ tests:
response:
constraints:
type: bitmap32
- minValue: 0
+ minValue: 1
maxValue: 4095
- label: "TH reads AttributeList from DUT"
diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_2_10.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_2_10.yaml
index 86a6beb3e9b8b4..fd9b809155774e 100644
--- a/src/app/tests/suites/certification/Test_TC_DRLK_2_10.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DRLK_2_10.yaml
@@ -44,12 +44,16 @@ tests:
scenario)"
PICS: DRLK.S.E00 && DRLK.S.DetectLockJammed
verification: |
- To trigger the event give below command in another terminal of DUT
+ To trigger the event give below command by opening an another terminal of DUT
echo "{"Cmd": "SendDoorLockAlarm", "Params": { "EndpointId": 1, "AlarmCode": 0 } }" > /tmp/chip_lock_app_fifo- (PID of lock-app)
For example :
echo "{"Cmd": "SendDoorLockAlarm", "Params": { "EndpointId": 1, "AlarmCode": 0 } }" > /tmp/chip_lock_app_fifo-3940
+ disabled: true
+ - label: "TH reads the DoorLockAlarm event from DUT"
+ PICS: DRLK.S.E00
+ verification: |
./chip-tool doorlock read-event door-lock-alarm 1 1
Verify "TH receives the DoorLockAlarm event and AlarmCode is set to LockJammed " on the TH(Chip-tool) Log:
@@ -63,37 +67,16 @@ tests:
[1659521453.110591][4098:4103] CHIP:TOO: }
disabled: true
- - label: "TH reads the DoorLockAlarm event from DUT"
- PICS: DRLK.S.E00
- verification: |
- verification step to be updated.
- disabled: true
-
- label: "Trigger the DUT to generate DoorStateChange Event"
PICS: DRLK.S.F05 && DRLK.S.E01
verification: |
To trigger the event give below command in another terminal of DUT
echo "{"Cmd": "SetDoorState", "Params": { "EndpointId": 1, "DoorState": 1 } }" > /tmp/chip_lock_app_fifo-4055 (4055 - value changes)
-
- ./chip-tool doorlock read-event door-state-change 1 1
-
- Verify "TH recieve the DoorLockAlaram event and DoorState set to DoorClosed " on the TH(Chip-tool) Log:
-
- [1659521576.156075][4109:4114] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0101 Event 0x0000_0001
- [1659521576.156118][4109:4114] CHIP:TOO: Event number: 1
- [1659521576.156150][4109:4114] CHIP:TOO: Priority: Critical
- [1659521576.156181][4109:4114] CHIP:TOO: Timestamp: 23466089
- [1659521576.156277][4109:4114] CHIP:TOO: DoorStateChange: {
- [1659521576.156331][4109:4114] CHIP:TOO: DoorState: 1
- [1659521576.156368][4109:4114] CHIP:TOO: }
disabled: true
- label: "TH reads the DoorStateChange event from DUT"
PICS: DRLK.S.F05 && DRLK.S.E01
verification: |
- To trigger the event give below command in another terminal of DUT
- echo "{"Cmd": "SetDoorState", "Params": { "EndpointId": 1, "DoorState": 1 } }" > /tmp/chip_lock_app_fifo-4055 (4055 - value changes)
-
./chip-tool doorlock read-event door-state-change 1 1
Verify "TH recieve the DoorLockAlaram event and DoorState set to DoorClosed " on the TH(Chip-tool) Log:
diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_2_2.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_2_2.yaml
index 18eacd39f1aae0..82e79debbf4c59 100644
--- a/src/app/tests/suites/certification/Test_TC_DRLK_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DRLK_2_2.yaml
@@ -14,6 +14,9 @@
name: 111.2.2. [TC-DRLK-2.2] Verification for Door lock command[DUT-Server]
+PICS:
+ - DRLK.S
+
config:
nodeId: 0x12344321
cluster: "Door Lock"
diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_2_3.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_2_3.yaml
index 3f4e53638ed919..b0b2097a8e1d47 100644
--- a/src/app/tests/suites/certification/Test_TC_DRLK_2_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DRLK_2_3.yaml
@@ -14,6 +14,9 @@
name: 111.2.3. [TC-DRLK-2.3] Verification for Unlock Door command [DUT-Server]
+PICS:
+ - DRLK.S
+
config:
nodeId: 0x12344321
cluster: "Door Lock"
diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_2_6.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_2_6.yaml
index caa3ac7574991a..30977190efa2a7 100644
--- a/src/app/tests/suites/certification/Test_TC_DRLK_2_6.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DRLK_2_6.yaml
@@ -27,9 +27,14 @@ config:
endpoint: 0
tests:
+ - label: "Pre-Conditions"
+ verification: |
+ DUT as server
+ disabled: true
+
- label:
"TH reads NumberOfHoliday SchedulesSupported and saves for future use."
- PICS: DRLK.S.F04 && DRLK.S.A0016
+ PICS: DRLK.S.F11 && DRLK.S.A0016
verification: |
./chip-tool doorlock read number-of-holiday-schedules-supported 1 1
Verify " NumberOfHoliDay SchedulesSuppored" on the TH(Chip-tool) Log:
@@ -46,7 +51,7 @@ tests:
"TH sends Set Holiday Schedule Command to DUT with the following
values: HolidayIndex as 1 LocalStartTime as 20 Seconds LocalEndTime as
30 Seconds OperatingMode as 0"
- PICS: DRLK.S.F04 && DRLK.S.C11.Rsp
+ PICS: DRLK.S.F11 && DRLK.S.C11.Rsp
verification: |
./chip-tool doorlock set-holiday-schedule 1 20 30 0 1 1
Verify " DUT send SUCCESS response." on the TH(Chip-tool) Log:
@@ -68,7 +73,7 @@ tests:
- label:
"TH sends Get Holiday Schedule Command to DUT with HolidayIndex as 1"
- PICS: DRLK.S.F04 && DRLK.S.C12.Rsp && DRLK.S.C12.Tx
+ PICS: DRLK.S.F11 && DRLK.S.C12.Rsp && DRLK.S.C12.Tx
verification: |
./chip-tool doorlock get-holiday-schedule 1 1 1
Verify " DUT responds with Get Holiday Schedule Response" on the TH(Chip-tool) Log:
@@ -126,7 +131,7 @@ tests:
- label:
"TH sends Get Holiday Schedule Command to DUT with Invalid
HolidayIndex as 15."
- PICS: DRLK.S.F04 && DRLK.S.C12.Rsp && DRLK.S.C12.Tx
+ PICS: DRLK.S.F11 && DRLK.S.C12.Rsp && DRLK.S.C12.Tx
verification: |
./chip-tool doorlock get-holiday-schedule 15 1 1
Verify " DUT sends INVALID_COMMAND response" on the TH(Chip-tool) Log:
@@ -148,7 +153,7 @@ tests:
"TH sends Get Holiday Schedule Command to DUT with the HolidayIndex as
10 (value is in the the range of step 1 but Holiday Schedule entry not
available)"
- PICS: DRLK.S.F04 && DRLK.S.C12.Rsp && DRLK.S.C12.Tx
+ PICS: DRLK.S.F11 && DRLK.S.C12.Rsp && DRLK.S.C12.Tx
verification: |
./chip-tool doorlock get-holiday-schedule 10 1 1
Verify " DUT sends a NOT_FOUND status" on the TH(Chip-tool) Log:
@@ -164,7 +169,7 @@ tests:
- label:
"TH send Clear Holiday Schedule Command to DUT with HolidayIndex as 1"
- PICS: DRLK.S.F04 && DRLK.S.C13.Rsp
+ PICS: DRLK.S.F11 && DRLK.S.C13.Rsp
verification: |
./chip-tool doorlock clear-holiday-schedule 1 1 1
Verify " DUT sends SUCCESS response" on the TH(Chip-tool) Log:
@@ -186,7 +191,7 @@ tests:
- label:
"TH sends Get Holiday Schedule Command to DUT with HolidayIndex as 1."
- PICS: DRLK.S.F04 && DRLK.S.C12.Rsp && DRLK.S.C12.Tx
+ PICS: DRLK.S.F11 && DRLK.S.C12.Rsp && DRLK.S.C12.Tx
verification: |
./chip-tool doorlock get-holiday-schedule 1 1 1
Verify " DUT sends a NOT_FOUND status" on the TH(Chip-tool) Log:
diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_3_1.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_3_1.yaml
index 6dc3140f82faf5..e0dba94eac3990 100644
--- a/src/app/tests/suites/certification/Test_TC_DRLK_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DRLK_3_1.yaml
@@ -24,6 +24,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label: "DUT reads LockState from the TH."
PICS: DRLK.C.A0000
verification: |
diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_3_2.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_3_2.yaml
index 652cf20cf02915..9913e84fb2f000 100644
--- a/src/app/tests/suites/certification/Test_TC_DRLK_3_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DRLK_3_2.yaml
@@ -24,6 +24,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label: "DUT sends Lock Door command to TH."
PICS: DRLK.C.C00.Tx
verification: |
@@ -864,3 +869,35 @@ tests:
[1657115878.585752][8804:8804] CHIP:ZCL: Found unoccupied credential [endpoint=1,index=1]
[1657115878.585802][8804:8804] CHIP:ZCL: [clearCredential] Ignored attempt to clear unoccupied credential slot [endpointId=1,credentialType=1,credentialIndex=1,modifier=1]
disabled: true
+
+ - label: ""
+ verification: |
+ ./chip-tool doorlock clear-user 1 1 1 --timedInteractionTimeoutMs 1000
+
+ Verify the " clear-user command response" on TH(lock-app):
+
+
+ [1658399779.246157][2474:2474] CHIP:DMG: CommandDataIB =
+ [1658399779.246193][2474:2474] CHIP:DMG: {
+ [1658399779.246219][2474:2474] CHIP:DMG: CommandPathIB =
+ [1658399779.246258][2474:2474] CHIP:DMG: {
+ [1658399779.246301][2474:2474] CHIP:DMG: EndpointId = 0x1,
+ [1658399779.246336][2474:2474] CHIP:DMG: ClusterId = 0x101,
+ [1658399779.246381][2474:2474] CHIP:DMG: CommandId = 0x1d,
+ [1658399779.246411][2474:2474] CHIP:DMG: },
+ [1658399779.246452][2474:2474] CHIP:DMG:
+ [1658399779.246480][2474:2474] CHIP:DMG: CommandFields =
+ [1658399779.246519][2474:2474] CHIP:DMG: {
+ [1658399779.246562][2474:2474] CHIP:DMG: 0x0 = 1,
+ [1658399779.246595][2474:2474] CHIP:DMG: },
+ [1658399779.246631][2474:2474] CHIP:DMG: },
+ [1658399779.246662][2474:2474] CHIP:DMG:
+ [1658399779.246694][2474:2474] CHIP:DMG: ],
+ [1658399779.246732][2474:2474] CHIP:DMG:
+ [1658399779.246757][2474:2474] CHIP:DMG: InteractionModelRevision = 1
+ [1658399779.246788][2474:2474] CHIP:DMG: },
+ [1658399779.246862][2474:2474] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0101 e=1 p=a
+ [1658399779.246899][2474:2474] CHIP:DMG: AccessControl: allowed
+ [1658399779.246926][2474:2474] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0101 Command=0x0000_001D
+ [1658399779.246958][2474:2474] CHIP:ZCL: [ClearUser] Incoming command [endpointId=1,userIndex=1]
+ disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_3_3.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_3_3.yaml
index 749d10874e91d8..b909f1aea6b7d7 100644
--- a/src/app/tests/suites/certification/Test_TC_DRLK_3_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_DRLK_3_3.yaml
@@ -27,24 +27,54 @@ config:
tests:
- label: "Note"
verification: |
- Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
+ - label: "Note"
+ verification: |
+ "NOTE: https://github.com/project-chip/connectedhomeip/tree/master/examples/lock-app/linux#readme
+ Events to be executed as following
+ 1. Compile app using below command in connectedhomeip folder
+ a. ./scripts/run_in_build_env.sh ./scripts/build/build_examples.py --target linux-arm64-all-clusters-no-ble-asan-clang build
+ b. ./scripts/run_in_build_env.sh ./scripts/build/build_examples.py --target linux-arm64-all-clusters-no-ble-asan-libfuzzer-clang build
+ 2. Build respective app (lock-app)
+ 3. Commission DUT to TH
+ 4. Open 2nd terminal of DUT and provide the below command to obtain PID of DUT
+ ps -aef|grep lock-app
+ 5. Follow the Verification step below to generate the event in 2nd terminal of DUT "
disabled: true
- label: "TH will initiate DoorLockAlarm Event (LockJammed scenario)"
PICS: DRLK.C.E00
verification: |
+ To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in lock-app to generate the event, Vendor Dut should have capability to generate this event)
+
+
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner) and TH as lock-app.
+
+ To generate the event give below command
+ echo "{"Cmd": "SendDoorLockAlarm", "Params": { "EndpointId": 1, "AlarmCode": 0 } }" > /tmp/chip_lock_app_fifo- (PID of lock app)
+
./chip-tool doorlock read-event door-lock-alarm 1 1
Verify "DUT receives the DoorLockAlarm event " on the TH(Lock-app) Log:
- [1659520755.536021][3987:3992] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0101 Event 0x0000_0000
- [1659520755.536048][3987:3992] CHIP:TOO: Event number: 4
- [1659520755.536069][3987:3992] CHIP:TOO: Priority: Critical
- [1659520755.536089][3987:3992] CHIP:TOO: Timestamp: 22818908
- [1659520755.536198][3987:3992] CHIP:TOO: DoorLockAlarm: {
- [1659520755.536234][3987:3992] CHIP:TOO: AlarmCode: 0
- [1659520755.536259][3987:3992] CHIP:TOO: }
- [1659520755.536347][3987:3992] CHIP:EM: Sending Standalone Ack for MessageCounter:229373286 on exchange 22555i
+ [1660933624.278924][18319:18319] CHIP:DMG: ReadRequestMessage =
+ [1660933624.278964][18319:18319] CHIP:DMG: {
+ [1660933624.278987][18319:18319] CHIP:DMG: EventPathIBs =
+ [1660933624.279023][18319:18319] CHIP:DMG: [
+ [1660933624.279116][18319:18319] CHIP:DMG: EventPath =
+ [1660933624.279155][18319:18319] CHIP:DMG: {
+ [1660933624.279192][18319:18319] CHIP:DMG: Endpoint = 0x1,
+ [1660933624.279232][18319:18319] CHIP:DMG: Cluster = 0x101,
+ [1660933624.279271][18319:18319] CHIP:DMG: Event = 0x0,
+ [1660933624.279300][18319:18319] CHIP:DMG: },
+ [1660933624.279337][18319:18319] CHIP:DMG:
+ [1660933624.279360][18319:18319] CHIP:DMG: ],
+ [1660933624.279397][18319:18319] CHIP:DMG:
+ [1660933624.279422][18319:18319] CHIP:DMG: isFabricFiltered = true,
+ [1660933624.279455][18319:18319] CHIP:DMG: InteractionModelRevision = 1
+ [1660933624.279478][18319:18319] CHIP:DMG: },
disabled: true
- label: "DUT sends the Unlock Door command to the TH with valid PINCode"
@@ -75,35 +105,47 @@ tests:
[1658399917.775273][2474:2474] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0101 Command=0x0000_001A
[1658399917.775327][2474:2474] CHIP:ZCL: [SetUser] Incoming command [endpointId=1,userIndex=1]
- ./chip-tool doorlock set-credential 0 "{ "credentialType" : 1 , "credentialIndex" : 1 }" 123456 1 0 0 1 1 --timedInteractionTimeoutMs 1000
+ ./chip-tool doorlock set-credential 0 "{ "credentialType" : 1 , "credentialIndex" : 1 }" 123456 1 null null 1 1 --timedInteractionTimeoutMs 1000
Verify "DUT receives the set-credential response " on the TH(Lock-app) Log:
- [1658400025.688730][2474:2474] CHIP:DMG: CommandFields =
- [1658400025.688777][2474:2474] CHIP:DMG: {
- [1658400025.688822][2474:2474] CHIP:DMG: 0x0 = 0,
- [1658400025.688873][2474:2474] CHIP:DMG: 0x1 =
- [1658400025.688922][2474:2474] CHIP:DMG: {
- [1658400025.688964][2474:2474] CHIP:DMG: 0x0 = 1,
- [1658400025.689016][2474:2474] CHIP:DMG: 0x1 = 1,
- [1658400025.689058][2474:2474] CHIP:DMG: },
- [1658400025.689110][2474:2474] CHIP:DMG: 0x2 = [
- [1658400025.689161][2474:2474] CHIP:DMG: 0x31, 0x32, 0x33, 0x34, 0x35, 0x36,
- [1658400025.689209][2474:2474] CHIP:DMG: ]
- [1658400025.689261][2474:2474] CHIP:DMG: 0x3 = 1,
- [1658400025.689312][2474:2474] CHIP:DMG: 0x4 = 0,
- [1658400025.689353][2474:2474] CHIP:DMG: 0x5 = 0,
- [1658400025.689403][2474:2474] CHIP:DMG: },
- [1658400025.689436][2474:2474] CHIP:DMG: },
- [1658400025.689477][2474:2474] CHIP:DMG:
- [1658400025.689529][2474:2474] CHIP:DMG: ],
- [1658400025.689575][2474:2474] CHIP:DMG:
- [1658400025.689619][2474:2474] CHIP:DMG: InteractionModelRevision = 1
- [1658400025.689648][2474:2474] CHIP:DMG: },
- [1658400025.689747][2474:2474] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0101 e=1 p=a
- [1658400025.689802][2474:2474] CHIP:DMG: AccessControl: allowed
- [1658400025.689836][2474:2474] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0101 Command=0x0000_0022
- [1658400025.689909][2474:2474] CHIP:ZCL: [SetCredential] Incoming command [endpointId=1]
+ [1660931208.583139][18319:18319] CHIP:DMG: InvokeRequestMessage =
+ [1660931208.583184][18319:18319] CHIP:DMG: {
+ [1660931208.583226][18319:18319] CHIP:DMG: suppressResponse = false,
+ [1660931208.583275][18319:18319] CHIP:DMG: timedRequest = true,
+ [1660931208.583319][18319:18319] CHIP:DMG: InvokeRequests =
+ [1660931208.583381][18319:18319] CHIP:DMG: [
+ [1660931208.583426][18319:18319] CHIP:DMG: CommandDataIB =
+ [1660931208.583475][18319:18319] CHIP:DMG: {
+ [1660931208.583522][18319:18319] CHIP:DMG: CommandPathIB =
+ [1660931208.583579][18319:18319] CHIP:DMG: {
+ [1660931208.583636][18319:18319] CHIP:DMG: EndpointId = 0x1,
+ [1660931208.583698][18319:18319] CHIP:DMG: ClusterId = 0x101,
+ [1660931208.583757][18319:18319] CHIP:DMG: CommandId = 0x22,
+ [1660931208.583813][18319:18319] CHIP:DMG: },
+ [1660931208.583871][18319:18319] CHIP:DMG:
+ [1660931208.583923][18319:18319] CHIP:DMG: CommandFields =
+ [1660931208.583979][18319:18319] CHIP:DMG: {
+ [1660931208.584037][18319:18319] CHIP:DMG: 0x0 = 0,
+ [1660931208.584100][18319:18319] CHIP:DMG: 0x1 =
+ [1660931208.584158][18319:18319] CHIP:DMG: {
+ [1660931208.584220][18319:18319] CHIP:DMG: 0x0 = 1,
+ [1660931208.584289][18319:18319] CHIP:DMG: 0x1 = 1,
+ [1660931208.584353][18319:18319] CHIP:DMG: },
+ [1660931208.584413][18319:18319] CHIP:DMG: 0x2 = [
+ [1660931208.584473][18319:18319] CHIP:DMG: 0x31, 0x32, 0x33, 0x34, 0x35, 0x36,
+ [1660931208.584540][18319:18319] CHIP:DMG: ] (6 bytes)
+ [1660931208.584596][18319:18319] CHIP:DMG: 0x3 = 1,
+ [1660931208.584662][18319:18319] CHIP:DMG: 0x4 = NULL
+ [1660931208.584722][18319:18319] CHIP:DMG: 0x5 = NULL
+ [1660931208.584781][18319:18319] CHIP:DMG: },
+ [1660931208.584834][18319:18319] CHIP:DMG: },
+ [1660931208.584895][18319:18319] CHIP:DMG:
+ [1660931208.584938][18319:18319] CHIP:DMG: ],
+ [1660931208.584999][18319:18319] CHIP:DMG:
+ [1660931208.585043][18319:18319] CHIP:DMG: InteractionModelRevision = 1
+ [1660931208.585086][18319:18319] CHIP:DMG: },
+
./chip-tool doorlock unlock-door 1 1 --timedInteractionTimeoutMs 1000 --PinCode 123456
@@ -163,18 +205,30 @@ tests:
- label: "TH initiates DoorStateChange event with Doorstate set to DoorOpen"
PICS: DRLK.C.F05 && DRLK.C.E01
verification: |
+ To trigger the event give below command in another terminal of DUT
+ echo "{"Cmd": "SetDoorState", "Params": { "EndpointId": 1, "DoorState": 1 } }" > /tmp/chip_lock_app_fifo- (PID of lock-app)
+
./chip-tool doorlock read-event door-state-change 1 1
Verify "DUT receives DoorStateChange Event" on the TH(Lock-app) Log:
- [1659521149.394340][4046:4051] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0101 Event 0x0000_0001
- [1659521149.394391][4046:4051] CHIP:TOO: Event number: 1
- [1659521149.394412][4046:4051] CHIP:TOO: Priority: Critical
- [1659521149.394433][4046:4051] CHIP:TOO: Timestamp: 22783568
- [1659521149.394503][4046:4051] CHIP:TOO: DoorStateChange: {
- [1659521149.394539][4046:4051] CHIP:TOO: DoorState: 1
- [1659521149.394564][4046:4051] CHIP:TOO: }
- [1659521149.394654][4046:4051] CHIP:EM: Sending Standalone Ack for MessageCounter:231120057 on exchange 10153i
+ [1660933582.187791][18319:18319] CHIP:DMG: ReadRequestMessage =
+ [1660933582.187819][18319:18319] CHIP:DMG: {
+ [1660933582.187851][18319:18319] CHIP:DMG: EventPathIBs =
+ [1660933582.187877][18319:18319] CHIP:DMG: [
+ [1660933582.187901][18319:18319] CHIP:DMG: EventPath =
+ [1660933582.187937][18319:18319] CHIP:DMG: {
+ [1660933582.187966][18319:18319] CHIP:DMG: Endpoint = 0x1,
+ [1660933582.188006][18319:18319] CHIP:DMG: Cluster = 0x101,
+ [1660933582.188035][18319:18319] CHIP:DMG: Event = 0x1,
+ [1660933582.188069][18319:18319] CHIP:DMG: },
+ [1660933582.188100][18319:18319] CHIP:DMG:
+ [1660933582.188132][18319:18319] CHIP:DMG: ],
+ [1660933582.188159][18319:18319] CHIP:DMG:
+ [1660933582.188193][18319:18319] CHIP:DMG: isFabricFiltered = true,
+ [1660933582.188218][18319:18319] CHIP:DMG: InteractionModelRevision = 1
+ [1660933582.188250][18319:18319] CHIP:DMG: },
+ [1660933582.188328][18319:18319] CHIP:DMG: IM RH moving to [GeneratingReports]
disabled: true
- label: "DUT sends the Lock Door command to the TH with valid PINCode"
diff --git a/src/app/tests/suites/certification/Test_TC_FLABEL_1_1.yaml b/src/app/tests/suites/certification/Test_TC_FLABEL_1_1.yaml
index 67c2cffc2bd61a..11a5dfb3d8af40 100644
--- a/src/app/tests/suites/certification/Test_TC_FLABEL_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_FLABEL_1_1.yaml
@@ -11,7 +11,6 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name: 98.1.1. [TC-FLABEL-1.1] Global Attributes [DUT-server]
@@ -20,77 +19,69 @@ PICS:
config:
nodeId: 0x12344321
- cluster: "Basic"
- endpoint: 0
+ cluster: "Fixed Label"
+ endpoint: 1
tests:
- - label: "Commission DUT to TH"
- verification: |
- verification step to be updated.
- disabled: true
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
- label: "TH reads the ClusterRevision from DUT"
- verification: |
- ./chip-tool fixedlabel read cluster-revision 1 0
-
- On TH(chip-tool), verify that the DUT responsds ClusterRevision attribute as the value 1
-
- [1651124058.497301][2367:2372] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0040 Attribute 0x0000_FFFD DataVersion: 3688229931
- [1651124058.498753][2367:2372] CHIP:TOO: ClusterRevision: 1
- [1651124058.498906][2367:2372] CHIP:EM: Sending Standalone Ack for MessageCounter:8872582 on exchange 60871i
- disabled: true
+ command: "readAttribute"
+ attribute: "ClusterRevision"
+ response:
+ value: 1
+ constraints:
+ type: int16u
- label: "TH reads the FeatureMap from DUT"
- verification: |
- ./chip-tool fixedlabel read feature-map 1 0
-
- On TH(chip-tool), verify that DUT responds the Featuremap value as 0
-
- [1653459204.749193][24610:24615] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0040 Attribute 0x0000_FFFC DataVersion: 4022759920
- [1653459204.749266][24610:24615] CHIP:TOO: FeatureMap: 0
- [1653459204.749410][24610:24615] CHIP:EM: Sending Standalone Ack for MessageCounter:7681110 on exchange 50174i
- disabled: true
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
- label: "TH reads AttributeList from DUT"
- verification: |
- ./chip-tool fixedlabel read attribute-list 1 0
-
- On TH(chip-tool), verify that DUT responds as list of supported attributes as 6 entries
-
- [1656929388.949001][6141:6146] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0040 Attribute 0x0000_FFFB DataVersion: 2146772891
- [1656929388.949100][6141:6146] CHIP:TOO: AttributeList: 6 entries
- [1656929388.949135][6141:6146] CHIP:TOO: [1]: 0
- [1656929388.949165][6141:6146] CHIP:TOO: [2]: 65528
- [1656929388.949193][6141:6146] CHIP:TOO: [3]: 65529
- [1656929388.949221][6141:6146] CHIP:TOO: [4]: 65531
- [1656929388.949249][6141:6146] CHIP:TOO: [5]: 65532
- [1656929388.949277][6141:6146] CHIP:TOO: [6]: 65533
- [1656929388.949395][6141:6146] CHIP:EM: Sending Standalone Ack for MessageCounter:111128598 on exchange 9716i
- disabled: true
-
- - label: "TH reads EventList from DUT"
- verification: |
- Out of scope for V1.0
- disabled: true
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [0, 65528, 65529, 65531, 65532, 65533]
- label: "TH reads AcceptedCommandList from DUT"
- verification: |
- ./chip-tool fixedlabel read accepted-command-list 1 0
-
- On TH(chip-tool), verify that DUT responds as list of Accepted Commands as 0 entries
-
- [1651124239.450485][2392:2397] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0040 Attribute 0x0000_FFF9 DataVersion: 3688229931
- [1651124239.450576][2392:2397] CHIP:TOO: AcceptedCommandList: 0 entries
- [1651124239.450713][2392:2397] CHIP:EM: Sending Standalone Ack for MessageCounter:5032784 on exchange 23524i
- disabled: true
+ command: "readAttribute"
+ attribute: "AcceptedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
- label: "TH reads GeneratedCommandList from DUT"
- verification: |
- ./chip-tool fixedlabel read generated-command-list 1 0
-
- On TH(chip-tool), verify that DUT responds as list of GeneratedCommands as 0 entries
-
- [1651124266.980698][2527:2532] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0040 Attribute 0x0000_FFF8 DataVersion: 3688229931
- [1651124266.980776][2527:2532] CHIP:TOO: GeneratedCommandList: 0 entries
- [1651124266.980897][2527:2532] CHIP:EM: Sending Standalone Ack for MessageCounter:11345894 on exchange 5110i
- disabled: true
+ command: "readAttribute"
+ attribute: "GeneratedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
+ #Commenting out the step EventList attribute which is out of scope for matter V1.0
+ #- label:
+ # "Read EventList attribute from the DUT and Verify that the DUT
+ # response provides a list of supported events."
+ # verification: |
+ # Not implemented in chip-tool
+ # cluster: "LogCommands"
+ # command: "UserPrompt"
+ # PICS: PICS_USER_PROMPT
+ # arguments:
+ # values:
+ # - name: "message"
+ # value: "Please enter 'y' for success"
+ # - name: "expectedValue"
+ # value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_FLABEL_2_1.yaml b/src/app/tests/suites/certification/Test_TC_FLABEL_2_1.yaml
index 8eba3aa38999a5..7f42572cfa428c 100644
--- a/src/app/tests/suites/certification/Test_TC_FLABEL_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_FLABEL_2_1.yaml
@@ -13,84 +13,45 @@
# limitations under the License.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 3.2.1. [TC-FLABEL-2.1] Fixed Label cluster [DUT-server]
+name: 98.2.1. [TC-FLABEL-2.1] Fixed Label cluster [DUT-server]
PICS:
- FLABEL.S
config:
nodeId: 0x12344321
- cluster: "Basic"
- endpoint: 0
+ cluster: "Fixed Label"
+ endpoint: 1
tests:
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
+
- label: "TH reads LabelList from the DUT"
PICS: FLABEL.S.A0000
- verification: |
- ./chip-tool fixedlabel read label-list 1 0
-
- On TH(chip-tool), verify that DUT responds with labellist empty or has one or more entries, each entry should contain label and value field
-
- [1651124649.820293][2819:2824] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0040 Attribute 0x0000_0000 DataVersion: 3688229931
- [1651124649.820478][2819:2824] CHIP:TOO: label list: 4 entries
- [1651124649.820534][2819:2824] CHIP:TOO: [1]: {
- [1651124649.820570][2819:2824] CHIP:TOO: Label: room
- [1651124649.820602][2819:2824] CHIP:TOO: Value: bedroom 2
- [1651124649.820636][2819:2824] CHIP:TOO: }
- [1651124649.820676][2819:2824] CHIP:TOO: [2]: {
- [1651124649.820709][2819:2824] CHIP:TOO: Label: orientation
- [1651124649.820741][2819:2824] CHIP:TOO: Value: North
- [1651124649.820773][2819:2824] CHIP:TOO: }
- [1651124649.820812][2819:2824] CHIP:TOO: [3]: {
- [1651124649.820845][2819:2824] CHIP:TOO: Label: floor
- [1651124649.820875][2819:2824] CHIP:TOO: Value: 2
- [1651124649.820906][2819:2824] CHIP:TOO: }
- [1651124649.820945][2819:2824] CHIP:TOO: [4]: {
- [1651124649.820977][2819:2824] CHIP:TOO: Label: direction
- [1651124649.821008][2819:2824] CHIP:TOO: Value: up
- [1651124649.821039][2819:2824] CHIP:TOO: }
- [1651124649.821193][2819:2824] CHIP:EM: Sending Standalone Ack for MessageCounter:2439070 on exchange 10798i
- disabled: true
+ command: "readAttribute"
+ attribute: "label list"
+ response:
+ constraints:
+ type: list
- label:
"TH tries to write LabelList attribute of the DUT by setting Label =
Test_Label, Value= Test_Value"
PICS: FLABEL.S.A0000
- verification: |
- ./chip-tool fixedlabel write-by-id 0x00 "["label","Testlabel", "value","testvalue"]" 1 0
-
- On TH(chip-tool), Verify the status code as UNSUPPORTED_WRITE
-
- [1657629968.892879][2505:2510] CHIP:DMG: WriteResponseMessage =
- [1657629968.892909][2505:2510] CHIP:DMG: {
- [1657629968.892937][2505:2510] CHIP:DMG: AttributeStatusIBs =
- [1657629968.892975][2505:2510] CHIP:DMG: [
- [1657629968.893005][2505:2510] CHIP:DMG: AttributeStatusIB =
- [1657629968.893043][2505:2510] CHIP:DMG: {
- [1657629968.893077][2505:2510] CHIP:DMG: AttributePathIB =
- [1657629968.893119][2505:2510] CHIP:DMG: {
- [1657629968.893160][2505:2510] CHIP:DMG: Endpoint = 0x0,
- [1657629968.893205][2505:2510] CHIP:DMG: Cluster = 0x40,
- [1657629968.893247][2505:2510] CHIP:DMG: Attribute = 0x0000_0000,
- [1657629968.893286][2505:2510] CHIP:DMG: }
- [1657629968.893329][2505:2510] CHIP:DMG:
- [1657629968.893370][2505:2510] CHIP:DMG: StatusIB =
- [1657629968.893412][2505:2510] CHIP:DMG: {
- [1657629968.893454][2505:2510] CHIP:DMG: status = 0x88 (UNSUPPORTED_WRITE),
- [1657629968.893554][2505:2510] CHIP:DMG: },
- [1657629968.893594][2505:2510] CHIP:DMG:
- [1657629968.893626][2505:2510] CHIP:DMG: },
- [1657629968.893662][2505:2510] CHIP:DMG:
- [1657629968.893692][2505:2510] CHIP:DMG: ],
- [1657629968.893729][2505:2510] CHIP:DMG:
- [1657629968.893758][2505:2510] CHIP:DMG: InteractionModelRevision = 1
- [1657629968.893787][2505:2510] CHIP:DMG: }
- [1657629968.893871][2505:2510] CHIP:DMG: WriteClient moving to [AwaitingDe]
- [1657629968.893911][2505:2510] CHIP:TOO: Response Failure: IM Error 0x00000588: General error: 0x88 (UNSUPPORTED_WRITE)
- disabled: true
+ command: "writeAttribute"
+ attribute: "label list"
+ arguments:
+ value: [{ label: "Test_Label", value: "Test_Value" }]
+ response:
+ error: UNSUPPORTED_WRITE
- label: "TH reads LabelList from the DUT"
- PICS: FLABEL.S.A0000
verification: |
./chip-tool fixedlabel read label-list 1 0
@@ -115,4 +76,12 @@ tests:
[1651124649.821008][2819:2824] CHIP:TOO: Value: up
[1651124649.821039][2819:2824] CHIP:TOO: }
[1651124649.821193][2819:2824] CHIP:EM: Sending Standalone Ack for MessageCounter:2439070 on exchange 10798i
- disabled: true
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_SKIP_SAMPLE_APP && FLABEL.S.A0000
+ arguments:
+ values:
+ - name: "message"
+ value: "Enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_G_1_1.yaml b/src/app/tests/suites/certification/Test_TC_G_1_1.yaml
index 2e2c1d967e2aac..dc5149bf85842e 100644
--- a/src/app/tests/suites/certification/Test_TC_G_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_G_1_1.yaml
@@ -11,7 +11,6 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name: 121.1.1. [TC-G-1.1] Global Attributes [DUT-Server]
@@ -20,80 +19,79 @@ PICS:
config:
nodeId: 0x12344321
- cluster: "Basic"
- endpoint: 0
+ cluster: "Groups"
+ endpoint: 1
tests:
- - label: "Commission DUT to TH"
- verification: |
- verification step to be updated.
- disabled: true
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
- label: "TH reads the ClusterRevision from DUT"
- verification: |
- ./chip-tool groups read cluster-revision 1 1
-
- Verify the "clusterrevision value" on the TH(Chip-tool) Log:
-
- [1651216621.203474][2391:2396] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Attribute 0x0000_FFFD DataVersion: 745654550
- [1651216621.204919][2391:2396] CHIP:TOO: ClusterRevision: 4
- disabled: true
+ command: "readAttribute"
+ attribute: "ClusterRevision"
+ response:
+ value: 4
+ constraints:
+ type: int16u
- label: "TH reads the FeatureMap from DUT"
- verification: |
- ./chip-tool groups read feature-map 1 1
-
- Verify the "featuremap value" on the TH(Chip-tool) Log:
+ PICS: " !G.S.F00 "
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
- [1653556224.547920][18764:18769] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Attribute 0x0000_FFFC DataVersion: 3409054639
- [1653556224.548038][18764:18769] CHIP:TOO: FeatureMap: 1
- disabled: true
+ - label: "TH reads the FeatureMap from DUT"
+ PICS: G.S.F00
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 1
+ constraints:
+ type: bitmap32
- label: "TH reads AttributeList from DUT"
- verification: |
- ./chip-tool groups read attribute-list 1 1
-
- Verify the "attibute list contains the mandatory attributes and global attributes" on the TH(Chip-tool) Log:
-
- [1653556295.417734][18773:18779] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Attribute 0x0000_FFFB DataVersion: 3409054639
- [1653556295.417900][18773:18779] CHIP:TOO: AttributeList: 6 entries
- [1653556295.417971][18773:18779] CHIP:TOO: [1]: 0
- [1653556295.418015][18773:18779] CHIP:TOO: [2]: 65528
- [1653556295.418057][18773:18779] CHIP:TOO: [3]: 65529
- [1653556295.418098][18773:18779] CHIP:TOO: [4]: 65531
- [1653556295.418138][18773:18779] CHIP:TOO: [5]: 65532
- [1653556295.418179][18773:18779] CHIP:TOO: [6]: 65533
- disabled: true
-
- - label: "TH reads EventList from DUT"
- verification: |
- Out of scope for V1.0
- disabled: true
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [0, 65528, 65529, 65531, 65532, 65533]
- label: "TH reads AcceptedCommandList from DUT"
- verification: |
- ./chip-tool groups read accepted-command-list 1 1
-
- Verify the "AcceptedCommands" on the TH(Chip-tool) Log:
-
- [1651217107.034926][2435:2440] CHIP:TOO: AcceptedCommandList: 6 entries
- [1651217107.034984][2435:2440] CHIP:TOO: [1]: 0
- [1651217107.035028][2435:2440] CHIP:TOO: [2]: 1
- [1651217107.035070][2435:2440] CHIP:TOO: [3]: 2
- [1651217107.035112][2435:2440] CHIP:TOO: [4]: 3
- [1651217107.035153][2435:2440] CHIP:TOO: [5]: 4
- [1651217107.035194][2435:2440] CHIP:TOO: [6]: 5
- disabled: true
+ command: "readAttribute"
+ attribute: "AcceptedCommandList"
+ response:
+ constraints:
+ type: list
+ contains: [0, 1, 2, 3, 4, 5]
- label: "TH reads GeneratedCommandList from DUT"
- verification: |
- ./chip-tool groups read generated-command-list 1 1
-
- Verify the "GeneratedCommands" on the TH(Chip-tool) Log:
-
- [1651217152.020233][2444:2449] CHIP:TOO: GeneratedCommandList: 4 entries
- [1651217152.020276][2444:2449] CHIP:TOO: [1]: 0
- [1651217152.020312][2444:2449] CHIP:TOO: [2]: 1
- [1651217152.020346][2444:2449] CHIP:TOO: [3]: 2
- [1651217152.020380][2444:2449] CHIP:TOO: [4]: 3
- disabled: true
+ command: "readAttribute"
+ attribute: "GeneratedCommandList"
+ response:
+ constraints:
+ type: list
+ contains: [0, 1, 2, 3]
+ #Commenting out the step EventList attribute which is out of scope for matter V1.0
+ #- label:
+ # "Read EventList attribute from the DUT and Verify that the DUT
+ # response provides a list of supported events."
+ # verification: |
+ # Not implemented in chip-tool
+ # cluster: "LogCommands"
+ # command: "UserPrompt"
+ # PICS: PICS_USER_PROMPT
+ # arguments:
+ # values:
+ # - name: "message"
+ # value: "Please enter 'y' for success"
+ # - name: "expectedValue"
+ # value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_G_2_1.yaml b/src/app/tests/suites/certification/Test_TC_G_2_1.yaml
index d7ea24c455cbbe..555c3c9b6dfe26 100644
--- a/src/app/tests/suites/certification/Test_TC_G_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_G_2_1.yaml
@@ -13,46 +13,62 @@
# limitations under the License.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 125.2.1. [TC-G-2.1] Attributes [DUT-Server]
+name: 120.2.1. [TC-G-2.1] Attributes [DUT-Server]
PICS:
- G.S
config:
nodeId: 0x12344321
- cluster: "Basic"
- endpoint: 0
+ cluster: "Groups"
+ endpoint: 1
tests:
- - label: "TH reads NameSupport attribute from DUT"
- PICS: G.S.A0000
- verification: |
- ./chip-tool groups read name-support 1 1
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
- Verify the "name support value" on the TH(Chip-tool) Log:
+ - label: "TH reads NameSupport attribute from DUT"
+ PICS: G.S.A0000 && G.S.F00
+ command: "readAttribute"
+ attribute: "name support"
+ response:
+ value: 128
+ saveAs: NameSupportFeatureSupportedValue
- [1651217306.461810][2457:2462] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Attribute 0x0000_0000 DataVersion: 745654550
- [1651217306.461894][2457:2462] CHIP:TOO: name support: 128(binary:10000000)
- disabled: true
+ - label: "TH reads NameSupport attribute from DUT"
+ PICS: G.S.A0000 && !G.S.F00
+ command: "readAttribute"
+ attribute: "name support"
+ response:
+ value: 0
+ saveAs: NameSupportValue
- label:
"TH writes NameSupport attribute as 0x80 EXOR the value as read in
step 1"
- verification: |
- ./chip-tool groups write-by-id 0x0000 126 1 1
-
- Verify the "response is UNSUPPORTED_WRITE" on the TH(Chip-tool) Log:
-
- [1651217949.041814][2514:2519] CHIP:DMG: }
- [1651217949.041889][2514:2519] CHIP:TOO: Response Failure: IM Error 0x00000588: General error: 0x88 (UNSUPPORTED_WRITE)
- disabled: true
+ PICS: G.S.A0000
+ command: "writeAttribute"
+ attribute: "name support"
+ arguments:
+ value: 128
+ response:
+ error: UNSUPPORTED_WRITE
- label: "TH reads NameSupport attribute from DUT"
- verification: |
- ./chip-tool groups read name-support 1 1
+ PICS: G.S.A0000 && G.S.F00
+ command: "readAttribute"
+ attribute: "name support"
+ response:
+ value: NameSupportFeatureSupportedValue
- Verify the "name support value" on the TH(Chip-tool) Log:
-
- [1651217306.461810][2457:2462] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Attribute 0x0000_0000 DataVersion: 745654550
- [1651217306.461894][2457:2462] CHIP:TOO: name support: 128
- disabled: true
+ - label: "TH reads NameSupport attribute from DUT"
+ PICS: G.S.A0000 && !G.S.F00
+ command: "readAttribute"
+ attribute: "name support"
+ response:
+ value: NameSupportValue
diff --git a/src/app/tests/suites/certification/Test_TC_IDM_2_2.yaml b/src/app/tests/suites/certification/Test_TC_IDM_2_2.yaml
index f5dedc2c4d6f11..398e1590e5bbaf 100644
--- a/src/app/tests/suites/certification/Test_TC_IDM_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_IDM_2_2.yaml
@@ -1197,7 +1197,8 @@ tests:
from the DUT."
verification: |
In case of chip tool, here is an example command to use
- sudo ./chip-tool any read-all 1 0xFFFF --timeout 50
- Verify on TH , DUT is responds right attributes and events for above command
+ ./chip-tool any read-all 0xFFFFFFFF,0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 1 0xFFFF,0xFFFF
+
+ on TH verify that DUT sends back data of all attributes and events that the TH has access to
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_IDM_3_1.yaml b/src/app/tests/suites/certification/Test_TC_IDM_3_1.yaml
index 8109e78a529115..f7a6ebbc7eeb10 100644
--- a/src/app/tests/suites/certification/Test_TC_IDM_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_IDM_3_1.yaml
@@ -15,20 +15,22 @@
name: 3.3.1. [TC-IDM-3.1] Write Request Action from DUT to TH. [{DUT_Client}]
-PICS:
- - MCORE.IDM.C.WriteRequest
-
config:
nodeId: 0x12344321
cluster: "Basic"
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT sends the WriteRequestMessage to the TH to modify one attribute
data"
verification: |
- In case of chip tool, here is an example command to use
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
sudo ./chip-tool levelcontrol write on-level 2 1 1
@@ -62,7 +64,7 @@ tests:
[1655795552.552647][7331:7331] CHIP:DMG: InteractionModelRevision = 1
[1655795552.552686][7331:7331] CHIP:DMG: },
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs,, verify that TH all-clusters-app sent success response
[1657883782.721742][2796:2801] CHIP:DMG: WriteResponseMessage =
[1657883782.721783][2796:2801] CHIP:DMG: {
[1657883782.721819][2796:2801] CHIP:DMG: AttributeStatusIBs =
@@ -112,7 +114,7 @@ tests:
[1657883808.063295][2457:2457] CHIP:DMG: },
[1657883808.063369][2457:2457] CHIP:DMG: IM RH moving to [GeneratingReports]
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs,, verify that TH all-clusters-app sent success response
[1655795604.755214][6880:6885] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0011 DataVersion: 737039636
[1655795604.755363][6880:6885] CHIP:TOO: on level: 2
[1655795604.755460][6880:6885] CHIP:EM: Sending Standalone Ack for MessageCounter:83198098 on exchange 53763i
@@ -127,10 +129,11 @@ tests:
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type bool."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type bool."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_Bool
verification: |
- In case of chip tool, here is an example command to use
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
./chip-tool basic write local-config-disabled 1 1 0
@@ -166,7 +169,7 @@ tests:
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1657883938.394965][2822:2827] CHIP:DMG: WriteResponseMessage =
[1657883938.394995][2822:2827] CHIP:DMG: {
@@ -218,23 +221,21 @@ tests:
[1657884119.523280][2748:2748] CHIP:DMG: },
-
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1655795843.336042][6902:6907] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 1263909562
[1655795843.336093][6902:6907] CHIP:TOO: LocalConfigDisabled: TRUE
[1655795843.336251][6902:6907] CHIP:EM: Sending Standalone Ack for MessageCounter:108030495 on exchange 43207i
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type string."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type string."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_String
verification: |
- In case of chip tool, here is an example command to use
-
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
./chip-tool basic write node-label node 1 0
-
verify on TH(reference app) receives the right write Request Message for the data sent in the above command
[1655796035.022296][7331:7331] CHIP:EM: Handling via exchange: 64908r, Delegate: 0xaaaad9aed418
@@ -265,8 +266,7 @@ tests:
[1655796035.023656][7331:7331] CHIP:DMG: },
[1655796035.023791][7331:7331] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0028 e=0 p=m
[1655796035.023851][7331:7331] CHIP:DMG: AccessControl: allowed
-
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1657884155.221193][2865:2870] CHIP:DMG: WriteResponseMessage =
[1657884155.221246][2865:2870] CHIP:DMG: {
[1657884155.221292][2865:2870] CHIP:DMG: AttributeStatusIBs =
@@ -315,8 +315,7 @@ tests:
[1657884173.739288][2748:2748] CHIP:DMG: },
-
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1655796082.079468][6918:6923] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 1263909563
[1655796082.079509][6918:6923] CHIP:TOO: NodeLabel: node
@@ -324,11 +323,11 @@ tests:
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type unsigned integer."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type unsigned integer."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_UnsignedInteger
verification: |
- In case of chip tool, here is an example command to use
-
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
./chip-tool any write-by-id 0x0008 0x0010 1 1 1
@@ -362,7 +361,8 @@ tests:
[1655796141.168253][7331:7331] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0008 e=1 p=o
[1655796141.168313][7331:7331] CHIP:DMG: AccessControl: allowed
- On DUT as a client side, verify that TH all-clusters-app sent success response
+
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1657884204.951658][2878:2883] CHIP:DMG: WriteResponseMessage =
[1657884204.951700][2878:2883] CHIP:DMG: {
[1657884204.951736][2878:2883] CHIP:DMG: AttributeStatusIBs =
@@ -413,53 +413,58 @@ tests:
[1657884227.860339][2748:2748] CHIP:DMG: },
[1657884227.860413][2748:2748] CHIP:DMG: IM RH moving to [GeneratingReports]
-
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1655796192.032715][6931:6936] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0010 DataVersion: 737039637
[1655796192.032807][6931:6936] CHIP:TOO: on off transition time: 1
[1655796192.032908][6931:6936] CHIP:EM: Sending Standalone Ack for MessageCounter:249349258 on exchange 7433i
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type signed integer."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type signed integer."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_SignedInteger
verification: |
DUT implementation required to verify write an attribute of data type signed integer.
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type floating point."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type floating point."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_FloatingPoint
verification: |
DUT implementation required to verify write an attribute of data type float
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type Octet String."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type Octet String."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_OctetString
verification: |
DUT implementation required to verify write an attribute of data type Octet String
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type Struct."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type Struct."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_Struct
verification: |
DUT implementation required to verify write an attribute ofdata type Struct
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type List."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type List."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_List
verification: |
DUT implementation required to verify write an attribute of data type List
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type enum."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type enum."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_Enum
verification: |
- In case of chip tool, here is an example command to use
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
./chip-tool any write-by-id 0x0204 0 1 1 1
@@ -494,7 +499,7 @@ tests:
[1655796297.609342][7331:7331] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0204 e=1 p=o
[1655796297.609403][7331:7331] CHIP:DMG: AccessControl: allowed
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1657884258.383116][2892:2897] CHIP:DMG: WriteResponseMessage =
[1657884258.383157][2892:2897] CHIP:DMG: {
[1657884258.383192][2892:2897] CHIP:DMG: AttributeStatusIBs =
@@ -530,19 +535,18 @@ tests:
[1657884282.303778][2898:2903] CHIP:TOO: temperature display mode: 1
[1657884282.303862][2898:2903] CHIP:EM: Sending Standalone Ack for MessageCounter:147756485 on exchange 42871i
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs,, verify that TH all-clusters-app sent success response
[1655796341.132655][6946:6951] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0204 Attribute 0x0000_0000 DataVersion: 3165945391
[1655796341.132864][6946:6951] CHIP:TOO: temperature display mode: 1
[1655796341.132973][6946:6951] CHIP:EM: Sending Standalone Ack for MessageCounter:245498041 on exchange 51992i
disabled: true
- label:
- "[Optional] DUT sends the WriteRequestMessage to the TH to write an
- attribute of data type bitmap."
+ "DUT sends the WriteRequestMessage to the TH to write an attribute of
+ data type bitmap."
+ PICS: MCORE.IDM.C.WriteRequest.Attribute.DataType_Bitmap
verification: |
- In case of chip tool, here is an example command to use
-
-
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
./chip-tool colorcontrol write-by-id 0x000f 1 1 1
@@ -577,7 +581,7 @@ tests:
[1655796429.698446][7331:7331] CHIP:DMG: AccessControl: allowed
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1657884309.994598][2907:2912] CHIP:DMG: WriteResponseMessage =
[1657884309.994627][2907:2912] CHIP:DMG: {
@@ -630,8 +634,7 @@ tests:
[1657884334.614053][2748:2748] CHIP:DMG: },
[1657884334.614128][2748:2748] CHIP:DMG: IM RH moving to [GeneratingReports]
-
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1655796493.233673][6961:6966] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0300 Attribute 0x0000_000F DataVersion: 2788050502
[1655796493.233761][6961:6966] CHIP:TOO: Options: 1
[1655796493.233865][6961:6966] CHIP:EM: Sending Standalone Ack for MessageCounter:185730221 on exchange 37136i
@@ -639,7 +642,8 @@ tests:
- label:
"DUT sends a WriteRequestMessage to the TH with a large list of
- attribute data which has to be sent in multiple messages."
+ attribute data, which is larger than 1 MTU(1280 bytes), that has to be
+ sent in multiple messages."
verification: |
DUT implementation required to verify write an attribute which is is larger than 1 MTU(1280 bytes)
Here is an example command to verify the write functionality. User must choose an attribute which has large list of attribute data.
@@ -650,7 +654,7 @@ tests:
"DUT sends the WriteRequestMessage to the TH to write one attribute on
a given cluster and endpoint. Repeat the above steps 3 times."
verification: |
- In case of chip tool, here is an example command to use
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
./chip-tool any write-by-id 0x0204 0 1 1 1
@@ -685,7 +689,7 @@ tests:
[1655796724.512195][7331:7331] CHIP:DMG: },
[1655796724.512344][7331:7331] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0204 e=1 p=o
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1657884369.932192][2923:2928] CHIP:DMG: WriteResponseMessage =
[1657884369.932226][2923:2928] CHIP:DMG: {
[1657884369.932255][2923:2928] CHIP:DMG: AttributeStatusIBs =
@@ -737,8 +741,7 @@ tests:
[1657884399.502907][2748:2748] CHIP:DMG: },
[1657884399.502989][2748:2748] CHIP:DMG: IM RH moving to [GeneratingReports]
-
- On DUT as a client side, verify that TH all-clusters-app sent success response
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent success response
[1655796786.513406][6976:6981] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0204 Attribute 0x0000_0000 DataVersion: 3165945392
[1655796786.513496][6976:6981] CHIP:TOO: temperature display mode: 1
[1655796786.513593][6976:6981] CHIP:EM: Sending Standalone Ack for MessageCounter:190446058 on exchange 28240i
@@ -749,9 +752,9 @@ tests:
disabled: true
- label:
- "[Optional] DUT sends a ReadRequest message to the TH to read any
- attribute on two clusters. TH returns with a report data action with
- the attribute values and the dataversions of the clusters. DUT sends a
+ "DUT sends a ReadRequest message to the TH to read any attribute on
+ two clusters. TH returns with a report data action with the attribute
+ values and the dataversions of the clusters. DUT sends a
WriteRequestMessage to the DUT to both the clusters with the
appropriate dataversions(received in the previous step) to modify the
value of an attribute"
diff --git a/src/app/tests/suites/certification/Test_TC_IDM_4_1.yaml b/src/app/tests/suites/certification/Test_TC_IDM_4_1.yaml
index f22a140b6cf067..a27bf4593c59d0 100644
--- a/src/app/tests/suites/certification/Test_TC_IDM_4_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_IDM_4_1.yaml
@@ -26,11 +26,26 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Please use Interactive mode to Verify subscription test cases
+ Here the command to enter interactive mode:-- ./chip-tool interactive start
+ disabled: true
+
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT sends a subscription request message to the target node/reference
device for a single attribute of any data type supported."
+ PICS: MCORE.IDM.C.SubscribeRequest
verification: |
- In the case of chip tool as a client, here is an example command the client can subscribe to the TH
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
+
+ Please use Interactive mode to Verify subscription test cases
+ Here the command to enter interactive mode:-- ./chip-tool interactive start
onoff subscribe on-off 10 80 1 1
@@ -60,7 +75,7 @@ tests:
[1657446108.598559][11525:11525] CHIP:DMG: IM RH moving to [GeneratingReports]
- On DUT as a client side, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
[1657884469.617473][2938:2943] CHIP:DMG: ReportDataMessage =
[1657884469.617508][2938:2943] CHIP:DMG: {
[1657884469.617538][2938:2943] CHIP:DMG: SubscriptionId = 0x2d030a2b,
@@ -109,8 +124,12 @@ tests:
- label:
"DUT sends the subscription request message to TH TH sends a report
data DUT sends the status response back to TH"
+ PICS: MCORE.IDM.C.SubscribeRequest
verification: |
- In the case of chip tool as a client, here is an example command the client can subscribe to the TH
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
+
+ Please use Interactive mode to Verify subscription test cases
+ Here the command to enter interactive mode:-- ./chip-tool interactive start
onoff subscribe on-off 10 80 1 1
@@ -126,7 +145,8 @@ tests:
[1657446108.604672][11525:11525] CHIP:IM: Received status response, status is 0x00 (SUCCESS)
[1657446108.604755][11525:11525] CHIP:DMG: Refresh Subscribe Sync Timer with max 80 seconds
- On DUT as a client side, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
+
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
[1657884569.751004][2938:2943] CHIP:DMG: ReportDataMessage =
[1657884569.751034][2938:2943] CHIP:DMG: {
[1657884569.751059][2938:2943] CHIP:DMG: SubscriptionId = 0x47cd6fdb,
@@ -177,8 +197,13 @@ tests:
an attribute of data type boolean. Modify that attribute on the TH. TH
should send the modified data to the DUT. Modify the attribute
multiple times (3 times)."
+ PICS: MCORE.IDM.C.SubscribeRequest.Attribute.DataType_Bool
verification: |
- In the case of chip tool as a client, here is an example command the client can subscribe to the TH
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
+
+
+ Please use Interactive mode to Verify subscription test cases
+ Here the command to enter interactive mode:-- ./chip-tool interactive start
basic subscribe local-config-disabled 10 100 1 0
@@ -206,7 +231,8 @@ tests:
- On DUT as a client side, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
+
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
[1657884643.152038][2938:2943] CHIP:DMG: ReportDataMessage =
[1657884643.152141][2938:2943] CHIP:DMG: {
[1657884643.152206][2938:2943] CHIP:DMG: SubscriptionId = 0x2e0592e3,
@@ -257,8 +283,12 @@ tests:
an attribute of data type string. Modify that attribute on the TH. TH
should send the modified data to the DUT. Modify the attribute
multiple times (3 times)."
+ PICS: MCORE.IDM.C.SubscribeRequest.Attribute.DataType_String
verification: |
- In the case of chip tool as a client, here is an example command the client can subscribe to the TH
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
+
+ Please use Interactive mode to Verify subscription test cases
+ Here the command to enter interactive mode:-- ./chip-tool interactive start
basic subscribe node-label 30 200 1 0
@@ -290,7 +320,8 @@ tests:
[1657446721.226711][11525:11525] CHIP:DMG: OnReportConfirm: NumReports = 0
[1657446721.226773][11525:11525] CHIP:DMG: IM RH moving to [GeneratingReports]
- On DUT as a client side, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
+
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
[1657884902.175205][2938:2943] CHIP:DMG: ReportDataMessage =
[1657884902.175255][2938:2943] CHIP:DMG: {
[1657884902.175299][2938:2943] CHIP:DMG: SubscriptionId = 0x6a6457a1,
@@ -327,9 +358,12 @@ tests:
an attribute of data type unsigned integer. Modify that attribute on
the TH. TH should send the modified data to the DUT. Modify the
attribute multiple times (3 times)."
+ PICS: MCORE.IDM.C.SubscribeRequest.Attribute.DataType_UnsignedInteger
verification: |
- In the case of chip tool as a client, here is an example command the client can subscribe to the TH
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
+ Please use Interactive mode to Verify subscription test cases
+ Here the command to enter interactive mode:-- ./chip-tool interactive start
any subscribe-by-id 0x0008 0x0010 10 100 1 1
On TH (On the reference app) Verify if DUT is responding with the below status response for the above command
@@ -404,7 +438,8 @@ tests:
[1657448453.234577][11525:11525] CHIP:DMG: OnReportConfirm: NumReports = 0
- On DUT as a client side, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
+
+ If the DUT has to provision to verify the logs, , verify that TH all-clusters-app sent Subscription report with unic subscriptionID
[1657884955.073466][2938:2943] CHIP:DMG: ReportDataMessage =
[1657884955.073516][2938:2943] CHIP:DMG: {
[1657884955.073562][2938:2943] CHIP:DMG: SubscriptionId = 0x6cee9660,
@@ -444,6 +479,7 @@ tests:
an attribute of data type signed integer. Modify that attribute on the
TH. TH should send the modified data to the DUT. Modify the attribute
multiple times (3 times)"
+ PICS: MCORE.IDM.C.SubscribeRequest.Attribute.DataType_Integer
verification: |
DUT implementation required to verify subscribe an attribute of data type signed integer
disabled: true
@@ -453,6 +489,7 @@ tests:
an attribute of data type Floating Point. Modify that attribute on the
TH. TH should send the modified data to the DUT. Modify the attribute
multiple times (3 times)"
+ PICS: MCORE.IDM.C.SubscribeRequest.Attribute.DataType_FloatingPoint
verification: |
DUT implementation required to verify subscribe an attribute of data type floating point
disabled: true
@@ -462,6 +499,7 @@ tests:
an attribute of data type list. Modify that attribute on the TH. TH
should send the modified data to the DUT. Modify the attribute
multiple times (3 times)"
+ PICS: MCORE.IDM.C.SubscribeRequest.Attribute.DataType_List
verification: |
DUT implementation required to verify subscribe and list an attribute of data type list
disabled: true
@@ -472,6 +510,7 @@ tests:
of the maximum interval. After the maximum interval, TH sends a report
data with the subscription id created during the subscription
activation."
+ PICS: MCORE.IDM.C.SubscribeRequest
verification: |
This is not testable in normal scenario, and needs to be tested as part of Unit test.
disabled: true
@@ -479,8 +518,12 @@ tests:
- label:
"DUT sends a subscription request message to the target node/reference
device for multiple attributes(3 attributes)."
+ PICS: MCORE.IDM.C.SubscribeRequest.MultipleAttributes
verification: |
- In the case of chip tool as a client, here is an example command the client can subscribe to the TH
+ Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)
+
+ Please use Interactive mode to Verify subscription test cases
+ Here the command to enter interactive mode:-- ./chip-tool interactive start
any subscribe-by-id "6,8,3" "0,1,0" 10 100 "1" "1,1,1"
@@ -534,7 +577,8 @@ tests:
[1657449168.674365][11525:11525] CHIP:DMG: Refresh Subscribe Sync Timer with max 100 seconds
- On DUT as a client side, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
+
+ If the DUT has to provision to verify the logs, verify that TH all-clusters-app sent Subscription report with unic subscriptionID
884990.165955][2938:2943] CHIP:DMG: },
[1657884990.166021][2938:2943] CHIP:DMG:
[1657884990.166072][2938:2943] CHIP:DMG: ],
diff --git a/src/app/tests/suites/certification/Test_TC_IDM_6_2.yaml b/src/app/tests/suites/certification/Test_TC_IDM_6_2.yaml
index 5ebd36b33d7d77..1fd77cd9e875d5 100644
--- a/src/app/tests/suites/certification/Test_TC_IDM_6_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_IDM_6_2.yaml
@@ -32,11 +32,6 @@ tests:
Here the command to enter interactive mode:-- ./chip-tool interactive start
disabled: true
- - label: "Note"
- verification: |
- Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
- disabled: true
-
- label:
"TH sends Subscribe Request Message to DUT with EventRequests set to a
specific event from a specific cluster on a specific endpoint on a
diff --git a/src/app/tests/suites/certification/Test_TC_IDM_6_3.yaml b/src/app/tests/suites/certification/Test_TC_IDM_6_3.yaml
index f9c15459f0130c..ab5421f1ded75d 100644
--- a/src/app/tests/suites/certification/Test_TC_IDM_6_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_IDM_6_3.yaml
@@ -24,6 +24,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label: "DUT sends Read Request Message to the TH for a supported event."
verification: |
The cluster used in the below command is an example, User can use any supported chip cluster.
diff --git a/src/app/tests/suites/certification/Test_TC_IDM_7_1.yaml b/src/app/tests/suites/certification/Test_TC_IDM_7_1.yaml
index 0f47f5bb1ddd97..b38f5ee35f2ef1 100644
--- a/src/app/tests/suites/certification/Test_TC_IDM_7_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_IDM_7_1.yaml
@@ -40,609 +40,693 @@ tests:
verification: |
Please run this test in chip tool interactive mode ./chip-tool interactive start
+ Example commands given below are using 5 reference devices (User can use 5 reference devices and send the below command in from each reference device)
- Send 3 Subscriptionrequest message from each Reference Device(Eg. RD1...) to DUT
- and verify all the subscription requests are succes, and change the value of
- all the attributes by sending write command, after sending write commanfd
- verify on each of these Reference Devices that the appropriate attribute
+ Send 3 Subscriptionrequest messages from each Reference Device(Eg. RD1...) to DUT and verify all the subscription requests are success and change the value of
+ all the attributes by sending a write command, after sending a write command verify on each of these Reference Devices that the appropriate attribute
value has been received.
- Example commands given below are using 3 reference device (User can use 5 reference device and send the below command in from each reference device)
-
-
- on the first reference deice enter:
-
- onoff subscribe on-time 10 100 1 1
- [1657715218.149357][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715218.149399][5956:5961] CHIP:DMG: {
- [1657715218.149432][5956:5961] CHIP:DMG: SubscriptionId = 0xea8e5b3b,
- [1657715218.149465][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715218.149504][5956:5961] CHIP:DMG: [
- [1657715218.149535][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715218.149581][5956:5961] CHIP:DMG: {
- [1657715218.149619][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715218.149663][5956:5961] CHIP:DMG: {
- [1657715218.149711][5956:5961] CHIP:DMG: DataVersion = 0x734a2d83,
- [1657715218.149755][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715218.149802][5956:5961] CHIP:DMG: {
- [1657715218.149849][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715218.149895][5956:5961] CHIP:DMG: Cluster = 0x6,
- [1657715218.149942][5956:5961] CHIP:DMG: Attribute = 0x0000_4001,
- [1657715218.149983][5956:5961] CHIP:DMG: }
- [1657715218.150027][5956:5961] CHIP:DMG:
- [1657715218.150075][5956:5961] CHIP:DMG: Data = 0,
- [1657715218.150118][5956:5961] CHIP:DMG: },
- [1657715218.150165][5956:5961] CHIP:DMG:
- [1657715218.150201][5956:5961] CHIP:DMG: },
- [1657715218.150245][5956:5961] CHIP:DMG:
- [1657715218.150275][5956:5961] CHIP:DMG: ],
- [1657715218.150313][5956:5961] CHIP:DMG:
- [1657715218.150343][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715218.150372][5956:5961] CHIP:DMG: }
- [1657715218.150529][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4001 DataVersion: 1934241155
- [1657715218.150599][5956:5961] CHIP:TOO: OnTime: 0
- [1657715218.150646][5956:5961] CHIP:DMG: MoveToState ReadClient[0xffff94008e40]: Moving to [AwaitingSu]
-
-
- levelcontrol subscribe on-level 100 1000 1 1
- [1657715273.668717][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715273.668784][5956:5961] CHIP:DMG: {
- [1657715273.668846][5956:5961] CHIP:DMG: SubscriptionId = 0xb6497be6,
- [1657715273.668908][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715273.668984][5956:5961] CHIP:DMG: [
- [1657715273.669046][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715273.669126][5956:5961] CHIP:DMG: {
- [1657715273.669190][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715273.669261][5956:5961] CHIP:DMG: {
- [1657715273.669378][5956:5961] CHIP:DMG: DataVersion = 0x319eeda7,
- [1657715273.669460][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715273.669540][5956:5961] CHIP:DMG: {
- [1657715273.669620][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715273.669706][5956:5961] CHIP:DMG: Cluster = 0x8,
- [1657715273.669792][5956:5961] CHIP:DMG: Attribute = 0x0000_0011,
- [1657715273.669875][5956:5961] CHIP:DMG: }
- [1657715273.669961][5956:5961] CHIP:DMG:
- [1657715273.670043][5956:5961] CHIP:DMG: Data = NULL
- [1657715273.670119][5956:5961] CHIP:DMG: },
- [1657715273.670199][5956:5961] CHIP:DMG:
- [1657715273.670267][5956:5961] CHIP:DMG: },
- [1657715273.670341][5956:5961] CHIP:DMG:
- [1657715273.670400][5956:5961] CHIP:DMG: ],
- [1657715273.670474][5956:5961] CHIP:DMG:
- [1657715273.670533][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715273.670591][5956:5961] CHIP:DMG: }
- [1657715273.670803][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0011 DataVersion: 832499111
- [1657715273.670879][5956:5961] CHIP:TOO: on level: null
- [1657715273.670967][5956:5961] CHIP:DMG: MoveToState ReadClient[0xffff94008f30]: Moving to [AwaitingSu]
-
-
- onoff subscribe start-up-on-off 100 1000 1 1
- [1657715343.924200][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715343.924269][5956:5961] CHIP:DMG: {
- [1657715343.924330][5956:5961] CHIP:DMG: SubscriptionId = 0x9fce63ae,
- [1657715343.924392][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715343.924470][5956:5961] CHIP:DMG: [
- [1657715343.924532][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715343.924612][5956:5961] CHIP:DMG: {
- [1657715343.924678][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715343.924750][5956:5961] CHIP:DMG: {
- [1657715343.924833][5956:5961] CHIP:DMG: DataVersion = 0x734a2d84,
- [1657715343.924909][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715343.924992][5956:5961] CHIP:DMG: {
- [1657715343.925074][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715343.925159][5956:5961] CHIP:DMG: Cluster = 0x6,
- [1657715343.925245][5956:5961] CHIP:DMG: Attribute = 0x0000_4003,
- [1657715343.925382][5956:5961] CHIP:DMG: }
- [1657715343.925470][5956:5961] CHIP:DMG:
- [1657715343.925561][5956:5961] CHIP:DMG: Data = NULL
- [1657715343.925631][5956:5961] CHIP:DMG: },
- [1657715343.925713][5956:5961] CHIP:DMG:
- [1657715343.925776][5956:5961] CHIP:DMG: },
- [1657715343.925851][5956:5961] CHIP:DMG:
- [1657715343.925910][5956:5961] CHIP:DMG: ],
- [1657715343.925985][5956:5961] CHIP:DMG:
- [1657715343.926046][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715343.926104][5956:5961] CHIP:DMG: }
- [1657715343.926315][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4003 DataVersion: 1934241156
- [1657715343.926395][5956:5961] CHIP:TOO: StartUpOnOff: null
- [1657715343.926485][5956:5961] CHIP:DMG: MoveToState ReadClient[0xffff94008c80]: Moving to [AwaitingSu]
-
-
-
- on the 2nd reference deice enter:
-
- any subscribe-by-id 0x0008 0x0010 10 100 1 1
- [1657715407.685574][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715407.685644][5956:5961] CHIP:DMG: {
- [1657715407.685705][5956:5961] CHIP:DMG: SubscriptionId = 0x9c90104c,
- [1657715407.685767][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715407.685844][5956:5961] CHIP:DMG: [
- [1657715407.685906][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715407.685985][5956:5961] CHIP:DMG: {
- [1657715407.686049][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715407.686122][5956:5961] CHIP:DMG: {
- [1657715407.686197][5956:5961] CHIP:DMG: DataVersion = 0x319eeda8,
- [1657715407.686271][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715407.686347][5956:5961] CHIP:DMG: {
- [1657715407.686424][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715407.686505][5956:5961] CHIP:DMG: Cluster = 0x8,
- [1657715407.686586][5956:5961] CHIP:DMG: Attribute = 0x0000_0010,
- [1657715407.686661][5956:5961] CHIP:DMG: }
- [1657715407.686739][5956:5961] CHIP:DMG:
- [1657715407.686817][5956:5961] CHIP:DMG: Data = 0,
- [1657715407.686888][5956:5961] CHIP:DMG: },
- [1657715407.686965][5956:5961] CHIP:DMG:
- [1657715407.687029][5956:5961] CHIP:DMG: },
- [1657715407.687105][5956:5961] CHIP:DMG:
- [1657715407.687164][5956:5961] CHIP:DMG: ],
- [1657715407.687238][5956:5961] CHIP:DMG:
- [1657715407.687299][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715407.687358][5956:5961] CHIP:DMG: }
- [1657715407.687564][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0010 DataVersion: 832499112
- [1657715407.687645][5956:5961] CHIP:TOO: on off transition time: 0
- [1657715407.687735][5956:5961] CHIP:DMG: MoveToState ReadClient[0xffff94008e40]: Moving to [AwaitingSu]
-
-
-
- basic subscribe node-label 10 100 1 0
- [1657715505.138806][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715505.138881][5956:5961] CHIP:DMG: {
- [1657715505.138943][5956:5961] CHIP:DMG: SubscriptionId = 0xd002abb6,
- [1657715505.139045][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715505.139128][5956:5961] CHIP:DMG: [
- [1657715505.139190][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715505.139498][5956:5961] CHIP:DMG: {
- [1657715505.139600][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715505.139713][5956:5961] CHIP:DMG: {
- [1657715505.139824][5956:5961] CHIP:DMG: DataVersion = 0x1b93dc30,
- [1657715505.139932][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715505.140020][5956:5961] CHIP:DMG: {
- [1657715505.140112][5956:5961] CHIP:DMG: Endpoint = 0x0,
- [1657715505.140202][5956:5961] CHIP:DMG: Cluster = 0x28,
- [1657715505.140289][5956:5961] CHIP:DMG: Attribute = 0x0000_0005,
- [1657715505.140370][5956:5961] CHIP:DMG: }
- [1657715505.140560][5956:5961] CHIP:DMG:
- [1657715505.140657][5956:5961] CHIP:DMG: Data = "",
- [1657715505.140741][5956:5961] CHIP:DMG: },
- [1657715505.140825][5956:5961] CHIP:DMG:
- [1657715505.140893][5956:5961] CHIP:DMG: },
- [1657715505.140972][5956:5961] CHIP:DMG:
- [1657715505.141031][5956:5961] CHIP:DMG: ],
- [1657715505.141105][5956:5961] CHIP:DMG:
- [1657715505.141165][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715505.141223][5956:5961] CHIP:DMG: }
- [1657715505.141471][5956:5961] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 462674992
- [1657715505.141554][5956:5961] CHIP:TOO: NodeLabel:
- [1657715505.141643][5956:5961] CHIP:DMG: MoveToState ReadClient[0xffff94008c80]: Moving to [AwaitingSu]
-
-
- levelcontrol subscribe options 100 1000 1 1
- [1657715610.399441][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715610.399538][5956:5961] CHIP:DMG: {
- [1657715610.399602][5956:5961] CHIP:DMG: SubscriptionId = 0x96289376,
- [1657715610.399685][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715610.399763][5956:5961] CHIP:DMG: [
- [1657715610.399845][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715610.399928][5956:5961] CHIP:DMG: {
- [1657715610.399992][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715610.400094][5956:5961] CHIP:DMG: {
- [1657715610.400195][5956:5961] CHIP:DMG: DataVersion = 0x319eedaa,
- [1657715610.400285][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715610.400385][5956:5961] CHIP:DMG: {
- [1657715610.400467][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715610.400583][5956:5961] CHIP:DMG: Cluster = 0x8,
- [1657715610.400688][5956:5961] CHIP:DMG: Attribute = 0x0000_000F,
- [1657715610.400770][5956:5961] CHIP:DMG: }
- [1657715610.400873][5956:5961] CHIP:DMG:
- [1657715610.400985][5956:5961] CHIP:DMG: Data = 0,
- [1657715610.401063][5956:5961] CHIP:DMG: },
- [1657715610.401162][5956:5961] CHIP:DMG:
- [1657715610.401226][5956:5961] CHIP:DMG: },
- [1657715610.401356][5956:5961] CHIP:DMG:
- [1657715610.401410][5956:5961] CHIP:DMG: ],
- [1657715610.401506][5956:5961] CHIP:DMG:
- [1657715610.401571][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715610.401629][5956:5961] CHIP:DMG: }
- [1657715610.401887][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_000F DataVersion: 832499114
- [1657715610.401968][5956:5961] CHIP:TOO: options: 0
- [1657715610.402081][5956:5961] CHIP:DMG: MoveToState ReadClient[0xffff94003070]: Moving to [AwaitingSu]
-
-
-
-
- on the 3rd reference deice enter:
-
- basic subscribe local-config-disabled 10 100 1 0
- [1657715779.644677][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715779.644720][5956:5961] CHIP:DMG: {
- [1657715779.644758][5956:5961] CHIP:DMG: SubscriptionId = 0xe65b5e5,
- [1657715779.644795][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715779.644842][5956:5961] CHIP:DMG: [
- [1657715779.644879][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715779.644927][5956:5961] CHIP:DMG: {
- [1657715779.644966][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715779.645013][5956:5961] CHIP:DMG: {
- [1657715779.645062][5956:5961] CHIP:DMG: DataVersion = 0x1b93dc35,
- [1657715779.645114][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715779.645165][5956:5961] CHIP:DMG: {
- [1657715779.645216][5956:5961] CHIP:DMG: Endpoint = 0x0,
- [1657715779.645268][5956:5961] CHIP:DMG: Cluster = 0x28,
- [1657715779.645362][5956:5961] CHIP:DMG: Attribute = 0x0000_0010,
- [1657715779.645411][5956:5961] CHIP:DMG: }
- [1657715779.645464][5956:5961] CHIP:DMG:
- [1657715779.645516][5956:5961] CHIP:DMG: Data = false,
- [1657715779.645562][5956:5961] CHIP:DMG: },
- [1657715779.645612][5956:5961] CHIP:DMG:
- [1657715779.645653][5956:5961] CHIP:DMG: },
- [1657715779.645701][5956:5961] CHIP:DMG:
- [1657715779.645740][5956:5961] CHIP:DMG: ],
- [1657715779.645785][5956:5961] CHIP:DMG:
- [1657715779.645821][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715779.645856][5956:5961] CHIP:DMG: }
- [1657715779.645989][5956:5961] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 462674997
- [1657715779.646067][5956:5961] CHIP:TOO: LocalConfigDisabled: FALSE
- [1657715779.646124][5956:5961] CHIP:DMG: MoveToState ReadClient[0xffff94003070]: Moving to [AwaitingSu]
-
-
-
-
- colorcontrol subscribe start-up-color-temperature-mireds 10 100 1 1
- [1657715983.658378][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715983.658409][5956:5961] CHIP:DMG: {
- [1657715983.658434][5956:5961] CHIP:DMG: SubscriptionId = 0x71492e8f,
- [1657715983.658460][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715983.658492][5956:5961] CHIP:DMG: [
- [1657715983.658517][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715983.658551][5956:5961] CHIP:DMG: {
- [1657715983.658577][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715983.658612][5956:5961] CHIP:DMG: {
- [1657715983.658647][5956:5961] CHIP:DMG: DataVersion = 0x30f1c30e,
- [1657715983.658683][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715983.658718][5956:5961] CHIP:DMG: {
- [1657715983.658752][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715983.658794][5956:5961] CHIP:DMG: Cluster = 0x300,
- [1657715983.658834][5956:5961] CHIP:DMG: Attribute = 0x0000_4010,
- [1657715983.658871][5956:5961] CHIP:DMG: }
- [1657715983.658910][5956:5961] CHIP:DMG:
- [1657715983.658945][5956:5961] CHIP:DMG: Data = 0,
- [1657715983.658976][5956:5961] CHIP:DMG: },
- [1657715983.659011][5956:5961] CHIP:DMG:
- [1657715983.659037][5956:5961] CHIP:DMG: },
- [1657715983.659068][5956:5961] CHIP:DMG:
- [1657715983.659092][5956:5961] CHIP:DMG: ],
- [1657715983.659122][5956:5961] CHIP:DMG:
- [1657715983.659147][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715983.659171][5956:5961] CHIP:DMG: }
- [1657715983.659266][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0300 Attribute 0x0000_4010 DataVersion: 821150478
- [1657715983.661975][5956:5961] CHIP:TOO: StartUpColorTemperatureMireds: 0
- [1657715983.662048][5956:5961] CHIP:DMG: MoveToState ReadClient[0xffff94002740]: Moving to [AwaitingSu]
-
-
-
- identify subscribe identify-time 10 100 1 1
- [1657716084.847650][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657716084.847702][5956:5961] CHIP:DMG: {
- [1657716084.847748][5956:5961] CHIP:DMG: SubscriptionId = 0xd5e59a1a,
- [1657716084.847795][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657716084.847853][5956:5961] CHIP:DMG: [
- [1657716084.847900][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657716084.847965][5956:5961] CHIP:DMG: {
- [1657716084.848013][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657716084.848071][5956:5961] CHIP:DMG: {
- [1657716084.848130][5956:5961] CHIP:DMG: DataVersion = 0xdefea11c,
- [1657716084.848194][5956:5961] CHIP:DMG: AttributePathIB =
- [1657716084.848257][5956:5961] CHIP:DMG: {
- [1657716084.848319][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657716084.848387][5956:5961] CHIP:DMG: Cluster = 0x3,
- [1657716084.848459][5956:5961] CHIP:DMG: Attribute = 0x0000_0000,
- [1657716084.848525][5956:5961] CHIP:DMG: }
- [1657716084.848591][5956:5961] CHIP:DMG:
- [1657716084.848655][5956:5961] CHIP:DMG: Data = 0,
- [1657716084.848713][5956:5961] CHIP:DMG: },
- [1657716084.848772][5956:5961] CHIP:DMG:
- [1657716084.848821][5956:5961] CHIP:DMG: },
- [1657716084.848884][5956:5961] CHIP:DMG:
- [1657716084.848930][5956:5961] CHIP:DMG: ],
- [1657716084.848986][5956:5961] CHIP:DMG:
- [1657716084.849032][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657716084.849075][5956:5961] CHIP:DMG: }
- [1657716084.849237][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0003 Attribute 0x0000_0000 DataVersion: 3741229340
- [1657716084.849338][5956:5961] CHIP:TOO: identify time: 0
- [1657716084.849410][5956:5961] CHIP:DMG: MoveToState ReadClient[0xffff94003070]: Moving to [AwaitingSu]
-
-
-
-
- on the first reference deice enter below mentioned commands to change the attribute values
-
- onoff write on-time 1 1 1
- [1657715232.758666][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715232.758698][5956:5961] CHIP:DMG: {
- [1657715232.758724][5956:5961] CHIP:DMG: SubscriptionId = 0xea8e5b3b,
- [1657715232.758753][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715232.758782][5956:5961] CHIP:DMG: [
- [1657715232.758803][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715232.758832][5956:5961] CHIP:DMG: {
- [1657715232.758854][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715232.758880][5956:5961] CHIP:DMG: {
- [1657715232.758911][5956:5961] CHIP:DMG: DataVersion = 0x734a2d84,
- [1657715232.758936][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715232.758962][5956:5961] CHIP:DMG: {
- [1657715232.758989][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715232.759030][5956:5961] CHIP:DMG: Cluster = 0x6,
- [1657715232.759071][5956:5961] CHIP:DMG: Attribute = 0x0000_4001,
- [1657715232.759104][5956:5961] CHIP:DMG: }
- [1657715232.759140][5956:5961] CHIP:DMG:
- [1657715232.759174][5956:5961] CHIP:DMG: Data = 1,
- [1657715232.759203][5956:5961] CHIP:DMG: },
- [1657715232.759235][5956:5961] CHIP:DMG:
- [1657715232.759261][5956:5961] CHIP:DMG: },
- [1657715232.759292][5956:5961] CHIP:DMG:
- [1657715232.759317][5956:5961] CHIP:DMG: ],
- [1657715232.759348][5956:5961] CHIP:DMG:
- [1657715232.759373][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715232.759398][5956:5961] CHIP:DMG: }
- [1657715232.759493][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4001 DataVersion: 1934241156
- [1657715232.759530][5956:5961] CHIP:TOO: OnTime: 1
- [1657715232.759576][5956:5961] CHIP:DMG: Refresh LivenessCheckTime for 125000 milliseconds with SubscriptionId = 0xea8e5b3b
-
-
-
- levelcontrol write on-level 1 1 1
- [1657715287.200431][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715287.200491][5956:5961] CHIP:DMG: {
- [1657715287.200557][5956:5961] CHIP:DMG: SubscriptionId = 0xb6497be6,
- [1657715287.200622][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715287.200701][5956:5961] CHIP:DMG: [
- [1657715287.200765][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715287.200848][5956:5961] CHIP:DMG: {
- [1657715287.200921][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715287.201012][5956:5961] CHIP:DMG: {
- [1657715287.201094][5956:5961] CHIP:DMG: DataVersion = 0x319eeda8,
- [1657715287.201180][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715287.201263][5956:5961] CHIP:DMG: {
- [1657715287.201403][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715287.201501][5956:5961] CHIP:DMG: Cluster = 0x8,
- [1657715287.201596][5956:5961] CHIP:DMG: Attribute = 0x0000_0011,
- [1657715287.201686][5956:5961] CHIP:DMG: }
- [1657715287.201889][5956:5961] CHIP:DMG:
- [1657715287.201987][5956:5961] CHIP:DMG: Data = 1,
- [1657715287.202074][5956:5961] CHIP:DMG: },
- [1657715287.202157][5956:5961] CHIP:DMG:
- [1657715287.202221][5956:5961] CHIP:DMG: },
- [1657715287.202296][5956:5961] CHIP:DMG:
- [1657715287.202354][5956:5961] CHIP:DMG: ],
- [1657715287.202429][5956:5961] CHIP:DMG:
- [1657715287.202488][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715287.202546][5956:5961] CHIP:DMG: }
- [1657715287.202754][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0011 DataVersion: 832499112
- [1657715287.202838][5956:5961] CHIP:TOO: on level: 1
- [1657715287.202937][5956:5961] CHIP:DMG: Refresh LivenessCheckTime for 125000 milliseconds with SubscriptionId = 0xb6497be6 Peer = 01:0000000000000001
-
- onoff write start-up-on-off 1 1 1
- [1657715357.628508][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715357.628536][5956:5961] CHIP:DMG: {
- [1657715357.628561][5956:5961] CHIP:DMG: SubscriptionId = 0x9fce63ae,
- [1657715357.628586][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715357.628618][5956:5961] CHIP:DMG: [
- [1657715357.628643][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715357.628676][5956:5961] CHIP:DMG: {
- [1657715357.628702][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715357.628735][5956:5961] CHIP:DMG: {
- [1657715357.628763][5956:5961] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657715357.628791][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715357.628822][5956:5961] CHIP:DMG: {
- [1657715357.628853][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715357.628882][5956:5961] CHIP:DMG: Cluster = 0x6,
- [1657715357.628914][5956:5961] CHIP:DMG: Attribute = 0x0000_4003,
- [1657715357.628944][5956:5961] CHIP:DMG: }
- [1657715357.628977][5956:5961] CHIP:DMG:
- [1657715357.629009][5956:5961] CHIP:DMG: Data = 1,
- [1657715357.629037][5956:5961] CHIP:DMG: },
- [1657715357.629068][5956:5961] CHIP:DMG:
- [1657715357.629093][5956:5961] CHIP:DMG: },
- [1657715357.629123][5956:5961] CHIP:DMG:
- [1657715357.629147][5956:5961] CHIP:DMG: ],
- [1657715357.629177][5956:5961] CHIP:DMG:
- [1657715357.629201][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715357.629225][5956:5961] CHIP:DMG: }
- [1657715357.629340][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4003 DataVersion: 1934241157
- [1657715357.629432][5956:5961] CHIP:TOO: StartUpOnOff: 1
- [1657715357.629480][5956:5961] CHIP:DMG: Refresh LivenessCheckTime for 125000 milliseconds with SubscriptionId = 0x9fce63ae Peer = 01:0000000000000001
-
-
- on the 2nd reference deice enter below mentioned commands to change the attribute values
- any write-by-id 0x0008 0x0010 1 1 1
- [1657715446.002084][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715446.002120][5956:5961] CHIP:DMG: {
- [1657715446.002151][5956:5961] CHIP:DMG: SubscriptionId = 0x9c90104c,
- [1657715446.002200][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715446.002242][5956:5961] CHIP:DMG: [
- [1657715446.002273][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715446.002332][5956:5961] CHIP:DMG: {
- [1657715446.002379][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715446.002434][5956:5961] CHIP:DMG: {
- [1657715446.002489][5956:5961] CHIP:DMG: DataVersion = 0x319eeda9,
- [1657715446.002542][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715446.002598][5956:5961] CHIP:DMG: {
- [1657715446.002654][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715446.002703][5956:5961] CHIP:DMG: Cluster = 0x8,
- [1657715446.002752][5956:5961] CHIP:DMG: Attribute = 0x0000_0010,
- [1657715446.002795][5956:5961] CHIP:DMG: }
- [1657715446.002838][5956:5961] CHIP:DMG:
- [1657715446.002881][5956:5961] CHIP:DMG: Data = 1,
- [1657715446.002921][5956:5961] CHIP:DMG: },
- [1657715446.002963][5956:5961] CHIP:DMG:
- [1657715446.002996][5956:5961] CHIP:DMG: },
- [1657715446.003039][5956:5961] CHIP:DMG:
- [1657715446.003069][5956:5961] CHIP:DMG: ],
- [1657715446.003107][5956:5961] CHIP:DMG:
- [1657715446.003138][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715446.003169][5956:5961] CHIP:DMG: }
- [1657715446.003278][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0010 DataVersion: 832499113
- [1657715446.003322][5956:5961] CHIP:TOO: on off transition time: 1
- [1657715446.003375][5956:5961] CHIP:DMG: Refresh LivenessCheckTime for 125000 milliseconds with SubscriptionId = 0x9c90104c Peer = 01:0000000000000001
-
- basic write node-label 1 1 0
- [1657715530.832949][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715530.832977][5956:5961] CHIP:DMG: {
- [1657715530.833000][5956:5961] CHIP:DMG: SubscriptionId = 0xfd355fe5,
- [1657715530.833024][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715530.833063][5956:5961] CHIP:DMG: [
- [1657715530.833091][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715530.833133][5956:5961] CHIP:DMG: {
- [1657715530.833165][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715530.833205][5956:5961] CHIP:DMG: {
- [1657715530.833243][5956:5961] CHIP:DMG: DataVersion = 0x1b93dc31,
- [1657715530.833279][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715530.833342][5956:5961] CHIP:DMG: {
- [1657715530.833382][5956:5961] CHIP:DMG: Endpoint = 0x0,
- [1657715530.833422][5956:5961] CHIP:DMG: Cluster = 0x28,
- [1657715530.833466][5956:5961] CHIP:DMG: Attribute = 0x0000_0005,
- [1657715530.833505][5956:5961] CHIP:DMG: }
- [1657715530.833546][5956:5961] CHIP:DMG:
- [1657715530.833587][5956:5961] CHIP:DMG: Data = "1",
- [1657715530.833623][5956:5961] CHIP:DMG: },
- [1657715530.833662][5956:5961] CHIP:DMG:
- [1657715530.833693][5956:5961] CHIP:DMG: },
- [1657715530.833730][5956:5961] CHIP:DMG:
- [1657715530.833760][5956:5961] CHIP:DMG: ],
- [1657715530.833794][5956:5961] CHIP:DMG:
- [1657715530.833822][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715530.833851][5956:5961] CHIP:DMG: }
- [1657715530.833959][5956:5961] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 462674993
- [1657715530.833999][5956:5961] CHIP:TOO: NodeLabel: 1
- [1657715530.834171][5956:5961] CHIP:DMG: Refresh LivenessCheckTime for 125000 milliseconds with SubscriptionId = 0xfd355fe5 Peer = 01:0000000000000001
-
-
-
- levelcontrol write options 1 1 1
- [1657715624.029906][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715624.029977][5956:5961] CHIP:DMG: {
- [1657715624.030039][5956:5961] CHIP:DMG: SubscriptionId = 0x96289376,
- [1657715624.030101][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715624.030179][5956:5961] CHIP:DMG: [
- [1657715624.030241][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715624.030321][5956:5961] CHIP:DMG: {
- [1657715624.030377][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715624.030438][5956:5961] CHIP:DMG: {
- [1657715624.030501][5956:5961] CHIP:DMG: DataVersion = 0x319eedab,
- [1657715624.030580][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715624.030673][5956:5961] CHIP:DMG: {
- [1657715624.030757][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715624.030843][5956:5961] CHIP:DMG: Cluster = 0x8,
- [1657715624.030937][5956:5961] CHIP:DMG: Attribute = 0x0000_000F,
- [1657715624.031017][5956:5961] CHIP:DMG: }
- [1657715624.031103][5956:5961] CHIP:DMG:
- [1657715624.031177][5956:5961] CHIP:DMG: Data = 1,
- [1657715624.031214][5956:5961] CHIP:DMG: },
- [1657715624.031252][5956:5961] CHIP:DMG:
- [1657715624.031339][5956:5961] CHIP:DMG: },
- [1657715624.031378][5956:5961] CHIP:DMG:
- [1657715624.031406][5956:5961] CHIP:DMG: ],
- [1657715624.031438][5956:5961] CHIP:DMG:
- [1657715624.031461][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715624.031484][5956:5961] CHIP:DMG: }
- [1657715624.031584][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_000F DataVersion: 832499115
- [1657715624.031621][5956:5961] CHIP:TOO: options: 1
- [1657715624.031667][5956:5961] CHIP:DMG: Refresh LivenessCheckTime for 125000 milliseconds with SubscriptionId = 0x96289376 Peer = 01:0000000000000001
-
-
- on the 3rd reference deice enter below mentioned commands to change the attribute values
- basic write local-config-disabled 1 1 0
- [1657715793.400009][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715793.400035][5956:5961] CHIP:DMG: {
- [1657715793.400059][5956:5961] CHIP:DMG: SubscriptionId = 0xe65b5e5,
- [1657715793.400083][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715793.400114][5956:5961] CHIP:DMG: [
- [1657715793.400138][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715793.400170][5956:5961] CHIP:DMG: {
- [1657715793.400195][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715793.400223][5956:5961] CHIP:DMG: {
- [1657715793.400252][5956:5961] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657715793.400280][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715793.400310][5956:5961] CHIP:DMG: {
- [1657715793.400340][5956:5961] CHIP:DMG: Endpoint = 0x0,
- [1657715793.400372][5956:5961] CHIP:DMG: Cluster = 0x28,
- [1657715793.400403][5956:5961] CHIP:DMG: Attribute = 0x0000_0010,
- [1657715793.400432][5956:5961] CHIP:DMG: }
- [1657715793.400464][5956:5961] CHIP:DMG:
- [1657715793.400495][5956:5961] CHIP:DMG: Data = true,
- [1657715793.400522][5956:5961] CHIP:DMG: },
- [1657715793.400553][5956:5961] CHIP:DMG:
- [1657715793.400578][5956:5961] CHIP:DMG: },
- [1657715793.400607][5956:5961] CHIP:DMG:
- [1657715793.400630][5956:5961] CHIP:DMG: ],
- [1657715793.400659][5956:5961] CHIP:DMG:
- [1657715793.400681][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715793.400703][5956:5961] CHIP:DMG: }
- [1657715793.400800][5956:5961] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 462674998
- [1657715793.400834][5956:5961] CHIP:TOO: LocalConfigDisabled: TRUE
- [1657715793.400875][5956:5961] CHIP:DMG: Refresh LivenessCheckTime for 125000 milliseconds with SubscriptionId = 0x0e65b5e5 Peer = 01:0000000000000001
-
-
- colorcontrol write start-up-color-temperature-mireds 1 1 1
- [1657715994.727404][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657715994.727477][5956:5961] CHIP:DMG: {
- [1657715994.727539][5956:5961] CHIP:DMG: SubscriptionId = 0x71492e8f,
- [1657715994.727600][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657715994.727676][5956:5961] CHIP:DMG: [
- [1657715994.727737][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657715994.727815][5956:5961] CHIP:DMG: {
- [1657715994.727878][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657715994.727977][5956:5961] CHIP:DMG: {
- [1657715994.728062][5956:5961] CHIP:DMG: DataVersion = 0x30f1c30f,
- [1657715994.728141][5956:5961] CHIP:DMG: AttributePathIB =
- [1657715994.728224][5956:5961] CHIP:DMG: {
- [1657715994.728309][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657715994.728398][5956:5961] CHIP:DMG: Cluster = 0x300,
- [1657715994.728486][5956:5961] CHIP:DMG: Attribute = 0x0000_4010,
- [1657715994.728574][5956:5961] CHIP:DMG: }
- [1657715994.728777][5956:5961] CHIP:DMG:
- [1657715994.728874][5956:5961] CHIP:DMG: Data = 1,
- [1657715994.728952][5956:5961] CHIP:DMG: },
- [1657715994.729042][5956:5961] CHIP:DMG:
- [1657715994.729110][5956:5961] CHIP:DMG: },
- [1657715994.729185][5956:5961] CHIP:DMG:
- [1657715994.729246][5956:5961] CHIP:DMG: ],
- [1657715994.729383][5956:5961] CHIP:DMG:
- [1657715994.729445][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657715994.729504][5956:5961] CHIP:DMG: }
- [1657715994.729713][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0300 Attribute 0x0000_4010 DataVersion: 821150479
- [1657715994.729796][5956:5961] CHIP:TOO: StartUpColorTemperatureMireds: 1
- [1657715994.729895][5956:5961] CHIP:DMG: Refresh LivenessCheckTime for 125000 milliseconds with SubscriptionId = 0x71492e8f Peer = 01:0000000000000001
-
-
- identify write identify-time 1 1 1
- [1657716094.853203][5956:5961] CHIP:DMG: ReportDataMessage =
- [1657716094.853245][5956:5961] CHIP:DMG: {
- [1657716094.853364][5956:5961] CHIP:DMG: SubscriptionId = 0xd5e59a1a,
- [1657716094.853415][5956:5961] CHIP:DMG: AttributeReportIBs =
- [1657716094.853517][5956:5961] CHIP:DMG: [
- [1657716094.853578][5956:5961] CHIP:DMG: AttributeReportIB =
- [1657716094.853658][5956:5961] CHIP:DMG: {
- [1657716094.853743][5956:5961] CHIP:DMG: AttributeDataIB =
- [1657716094.853825][5956:5961] CHIP:DMG: {
- [1657716094.853905][5956:5961] CHIP:DMG: DataVersion = 0xdefea11d,
- [1657716094.854010][5956:5961] CHIP:DMG: AttributePathIB =
- [1657716094.854093][5956:5961] CHIP:DMG: {
- [1657716094.854197][5956:5961] CHIP:DMG: Endpoint = 0x1,
- [1657716094.854307][5956:5961] CHIP:DMG: Cluster = 0x3,
- [1657716094.854394][5956:5961] CHIP:DMG: Attribute = 0x0000_0000,
- [1657716094.854495][5956:5961] CHIP:DMG: }
- [1657716094.854599][5956:5961] CHIP:DMG:
- [1657716094.854685][5956:5961] CHIP:DMG: Data = 1,
- [1657716094.854789][5956:5961] CHIP:DMG: },
- [1657716094.854891][5956:5961] CHIP:DMG:
- [1657716094.854960][5956:5961] CHIP:DMG: },
- [1657716094.855035][5956:5961] CHIP:DMG:
- [1657716094.855094][5956:5961] CHIP:DMG: ],
- [1657716094.855168][5956:5961] CHIP:DMG:
- [1657716094.855227][5956:5961] CHIP:DMG: InteractionModelRevision = 1
- [1657716094.855284][5956:5961] CHIP:DMG: }
- [1657716094.855493][5956:5961] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0003 Attribute 0x0000_0000 DataVersion: 3741229341
- [1657716094.855573][5956:5961] CHIP:TOO: identify time: 1
- [1657716094.855675][5956:5961] CHIP:DMG: Refresh LivenessCheckTime for 125000 milliseconds with SubscriptionId = 0xd5e59a1a Peer = 01:0000000000000001
+
+
+ on the first reference device send 3 Subscribe Request Messages to DUT
+ basic subscribe node-label 100 1000 1 0 --keepSubscriptions 1
+ [1660652952.537644][58131:58136] CHIP:EM: Removed CHIP MessageCounter:11153878 from RetransTable on exchange 57366i
+ [1660652952.537721][58131:58136] CHIP:DMG: ReportDataMessage =
+ [1660652952.537759][58131:58136] CHIP:DMG: {
+ [1660652952.537794][58131:58136] CHIP:DMG: SubscriptionId = 0x50d4243c,
+ [1660652952.537829][58131:58136] CHIP:DMG: AttributeReportIBs =
+ [1660652952.537873][58131:58136] CHIP:DMG: [
+ [1660652952.537907][58131:58136] CHIP:DMG: AttributeReportIB =
+ [1660652952.537964][58131:58136] CHIP:DMG: {
+ [1660652952.538008][58131:58136] CHIP:DMG: AttributeDataIB =
+ [1660652952.538055][58131:58136] CHIP:DMG: {
+ [1660652952.538106][58131:58136] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660652952.538152][58131:58136] CHIP:DMG: AttributePathIB =
+ [1660652952.538205][58131:58136] CHIP:DMG: {
+ [1660652952.538254][58131:58136] CHIP:DMG: Endpoint = 0x0,
+ [1660652952.538308][58131:58136] CHIP:DMG: Cluster = 0x28,
+ [1660652952.538358][58131:58136] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660652952.538409][58131:58136] CHIP:DMG: }
+ [1660652952.538465][58131:58136] CHIP:DMG:
+ [1660652952.538517][58131:58136] CHIP:DMG: Data = "" (0 chars),
+ [1660652952.538562][58131:58136] CHIP:DMG: },
+ [1660652952.538615][58131:58136] CHIP:DMG:
+ [1660652952.538654][58131:58136] CHIP:DMG: },
+ [1660652952.538700][58131:58136] CHIP:DMG:
+ [1660652952.538734][58131:58136] CHIP:DMG: ],
+ [1660652952.538777][58131:58136] CHIP:DMG:
+ [1660652952.538811][58131:58136] CHIP:DMG: InteractionModelRevision = 1
+ [1660652952.538844][58131:58136] CHIP:DMG: }
+ [1660652952.539010][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660652952.539073][58131:58136] CHIP:TOO: NodeLabel:
+ [1660652952.539140][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0004bc0]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 1 0 --keepSubscriptions 1
+ [1660653005.341371][58131:58136] CHIP:DMG: ReportDataMessage =
+ [1660653005.341441][58131:58136] CHIP:DMG: {
+ [1660653005.341503][58131:58136] CHIP:DMG: SubscriptionId = 0xea4facb0,
+ [1660653005.341568][58131:58136] CHIP:DMG: AttributeReportIBs =
+ [1660653005.341648][58131:58136] CHIP:DMG: [
+ [1660653005.341711][58131:58136] CHIP:DMG: AttributeReportIB =
+ [1660653005.341808][58131:58136] CHIP:DMG: {
+ [1660653005.341881][58131:58136] CHIP:DMG: AttributeDataIB =
+ [1660653005.341972][58131:58136] CHIP:DMG: {
+ [1660653005.342065][58131:58136] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653005.342148][58131:58136] CHIP:DMG: AttributePathIB =
+ [1660653005.342244][58131:58136] CHIP:DMG: {
+ [1660653005.342340][58131:58136] CHIP:DMG: Endpoint = 0x0,
+ [1660653005.342436][58131:58136] CHIP:DMG: Cluster = 0x28,
+ [1660653005.342528][58131:58136] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653005.342616][58131:58136] CHIP:DMG: }
+ [1660653005.342708][58131:58136] CHIP:DMG:
+ [1660653005.342801][58131:58136] CHIP:DMG: Data = "XX" (2 chars),
+ [1660653005.342883][58131:58136] CHIP:DMG: },
+ [1660653005.342972][58131:58136] CHIP:DMG:
+ [1660653005.343045][58131:58136] CHIP:DMG: },
+ [1660653005.343129][58131:58136] CHIP:DMG:
+ [1660653005.343191][58131:58136] CHIP:DMG: ],
+ [1660653005.343270][58131:58136] CHIP:DMG:
+ [1660653005.343331][58131:58136] CHIP:DMG: InteractionModelRevision = 1
+ [1660653005.343392][58131:58136] CHIP:DMG: }
+ [1660653005.343616][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653005.343884][58131:58136] CHIP:TOO: Location: XX
+ [1660653005.343983][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa00129b0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 1 0 --keepSubscriptions 1
+ [1660653043.575397][58131:58136] CHIP:DMG: ReportDataMessage =
+ [1660653043.575423][58131:58136] CHIP:DMG: {
+ [1660653043.575445][58131:58136] CHIP:DMG: SubscriptionId = 0x1ff9dbc5,
+ [1660653043.575467][58131:58136] CHIP:DMG: AttributeReportIBs =
+ [1660653043.575504][58131:58136] CHIP:DMG: [
+ [1660653043.575526][58131:58136] CHIP:DMG: AttributeReportIB =
+ [1660653043.575556][58131:58136] CHIP:DMG: {
+ [1660653043.575579][58131:58136] CHIP:DMG: AttributeDataIB =
+ [1660653043.575605][58131:58136] CHIP:DMG: {
+ [1660653043.575633][58131:58136] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653043.575658][58131:58136] CHIP:DMG: AttributePathIB =
+ [1660653043.575686][58131:58136] CHIP:DMG: {
+ [1660653043.575713][58131:58136] CHIP:DMG: Endpoint = 0x0,
+ [1660653043.575743][58131:58136] CHIP:DMG: Cluster = 0x28,
+ [1660653043.575806][58131:58136] CHIP:DMG: Attribute = 0x0000_0010,
+ [1660653043.575833][58131:58136] CHIP:DMG: }
+ [1660653043.575863][58131:58136] CHIP:DMG:
+ [1660653043.575892][58131:58136] CHIP:DMG: Data = false,
+ [1660653043.575917][58131:58136] CHIP:DMG: },
+ [1660653043.575944][58131:58136] CHIP:DMG:
+ [1660653043.575966][58131:58136] CHIP:DMG: },
+ [1660653043.575993][58131:58136] CHIP:DMG:
+ [1660653043.576013][58131:58136] CHIP:DMG: ],
+ [1660653043.576041][58131:58136] CHIP:DMG:
+ [1660653043.576063][58131:58136] CHIP:DMG: InteractionModelRevision = 1
+ [1660653043.576084][58131:58136] CHIP:DMG: }
+ [1660653043.576169][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653043.576207][58131:58136] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653043.576240][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0012b40]: Moving to [AwaitingSu]
+
+
+
+ on the 2nd reference device send 3 Subscribe Request Messages to DUT
+ basic subscribe node-label 100 1000 2 0 --commissioner-name beta --keepSubscriptions 1
+ [1660653125.592268][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653125.592310][58143:58148] CHIP:DMG: {
+ [1660653125.592348][58143:58148] CHIP:DMG: SubscriptionId = 0xc15110c4,
+ [1660653125.592387][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653125.592435][58143:58148] CHIP:DMG: [
+ [1660653125.592472][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653125.592527][58143:58148] CHIP:DMG: {
+ [1660653125.592568][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653125.592618][58143:58148] CHIP:DMG: {
+ [1660653125.592675][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653125.592726][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653125.592785][58143:58148] CHIP:DMG: {
+ [1660653125.592839][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653125.592896][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653125.592946][58143:58148] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660653125.592997][58143:58148] CHIP:DMG: }
+ [1660653125.593051][58143:58148] CHIP:DMG:
+ [1660653125.593109][58143:58148] CHIP:DMG: Data = "" (0 chars),
+ [1660653125.593158][58143:58148] CHIP:DMG: },
+ [1660653125.593212][58143:58148] CHIP:DMG:
+ [1660653125.593255][58143:58148] CHIP:DMG: },
+ [1660653125.593305][58143:58148] CHIP:DMG:
+ [1660653125.593342][58143:58148] CHIP:DMG: ],
+ [1660653125.593390][58143:58148] CHIP:DMG:
+ [1660653125.593428][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653125.593464][58143:58148] CHIP:DMG: }
+ [1660653125.593640][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660653125.593706][58143:58148] CHIP:TOO: NodeLabel:
+ [1660653125.593776][58143:58148] CHIP:DMG: MoveToState ReadClient[0xffff6800df30]: Moving to [AwaitingSu]
+
+
+
+
+ basic subscribe location 100 1000 2 0 --commissioner-name beta --keepSubscriptions 1
+ [1660653198.460290][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653198.460359][58143:58148] CHIP:DMG: {
+ [1660653198.460423][58143:58148] CHIP:DMG: SubscriptionId = 0xfed77bda,
+ [1660653198.460487][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653198.460567][58143:58148] CHIP:DMG: [
+ [1660653198.460630][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653198.460718][58143:58148] CHIP:DMG: {
+ [1660653198.460786][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653198.460871][58143:58148] CHIP:DMG: {
+ [1660653198.460966][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653198.461058][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653198.461147][58143:58148] CHIP:DMG: {
+ [1660653198.461244][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653198.461335][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653198.461427][58143:58148] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653198.461513][58143:58148] CHIP:DMG: }
+ [1660653198.461604][58143:58148] CHIP:DMG:
+ [1660653198.461699][58143:58148] CHIP:DMG: Data = "XX" (2 chars),
+ [1660653198.461782][58143:58148] CHIP:DMG: },
+ [1660653198.461880][58143:58148] CHIP:DMG:
+ [1660653198.461952][58143:58148] CHIP:DMG: },
+ [1660653198.462037][58143:58148] CHIP:DMG:
+ [1660653198.462099][58143:58148] CHIP:DMG: ],
+ [1660653198.462176][58143:58148] CHIP:DMG:
+ [1660653198.462241][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653198.462303][58143:58148] CHIP:DMG: }
+ [1660653198.462524][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653198.462606][58143:58148] CHIP:TOO: Location: XX
+ [1660653198.462695][58143:58148] CHIP:DMG: MoveToState ReadClient[0xffff68010fa0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 2 0 --commissioner-name beta --keepSubscriptions 1
+ [1660653260.633215][58143:58148] CHIP:EM: Removed CHIP MessageCounter:178377836 from RetransTable on exchange 25360i
+ [1660653260.633327][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653260.633387][58143:58148] CHIP:DMG: {
+ [1660653260.633442][58143:58148] CHIP:DMG: SubscriptionId = 0x60feee4d,
+ [1660653260.633493][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653260.633560][58143:58148] CHIP:DMG: [
+ [1660653260.633615][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653260.633691][58143:58148] CHIP:DMG: {
+ [1660653260.633755][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653260.633820][58143:58148] CHIP:DMG: {
+ [1660653260.633891][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653260.633964][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653260.634046][58143:58148] CHIP:DMG: {
+ [1660653260.634130][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653260.634212][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653260.634292][58143:58148] CHIP:DMG: Attribute = 0x0000_0010,
+ [1660653260.634366][58143:58148] CHIP:DMG: }
+ [1660653260.634445][58143:58148] CHIP:DMG:
+ [1660653260.634523][58143:58148] CHIP:DMG: Data = false,
+ [1660653260.634600][58143:58148] CHIP:DMG: },
+ [1660653260.634674][58143:58148] CHIP:DMG:
+ [1660653260.634736][58143:58148] CHIP:DMG: },
+ [1660653260.634802][58143:58148] CHIP:DMG:
+ [1660653260.634855][58143:58148] CHIP:DMG: ],
+ [1660653260.635066][58143:58148] CHIP:DMG:
+ [1660653260.635128][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653260.635181][58143:58148] CHIP:DMG: }
+ [1660653260.635371][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653260.635446][58143:58148] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653260.635523][58143:58148] CHIP:DMG: MoveToState ReadClient[0xffff68011170]: Moving to [AwaitingSu]
+
+
+
+
+ on the 3rd reference device send 3 Subscribe Request Messages to DUT
+ basic subscribe node-label 100 1000 3 0 --commissioner-name 4 --keepSubscriptions 1
+ [1660653438.741061][58149:58154] CHIP:EM: Removed CHIP MessageCounter:141916359 from RetransTable on exchange 34400i
+ [1660653438.741116][58149:58154] CHIP:DMG: ReportDataMessage =
+ [1660653438.741143][58149:58154] CHIP:DMG: {
+ [1660653438.741236][58149:58154] CHIP:DMG: SubscriptionId = 0xff93c648,
+ [1660653438.741262][58149:58154] CHIP:DMG: AttributeReportIBs =
+ [1660653438.741294][58149:58154] CHIP:DMG: [
+ [1660653438.741318][58149:58154] CHIP:DMG: AttributeReportIB =
+ [1660653438.741352][58149:58154] CHIP:DMG: {
+ [1660653438.741380][58149:58154] CHIP:DMG: AttributeDataIB =
+ [1660653438.741415][58149:58154] CHIP:DMG: {
+ [1660653438.741448][58149:58154] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653438.741479][58149:58154] CHIP:DMG: AttributePathIB =
+ [1660653438.741517][58149:58154] CHIP:DMG: {
+ [1660653438.741553][58149:58154] CHIP:DMG: Endpoint = 0x0,
+ [1660653438.741592][58149:58154] CHIP:DMG: Cluster = 0x28,
+ [1660653438.741627][58149:58154] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660653438.741660][58149:58154] CHIP:DMG: }
+ [1660653438.741695][58149:58154] CHIP:DMG:
+ [1660653438.741732][58149:58154] CHIP:DMG: Data = "" (0 chars),
+ [1660653438.741764][58149:58154] CHIP:DMG: },
+ [1660653438.741800][58149:58154] CHIP:DMG:
+ [1660653438.741828][58149:58154] CHIP:DMG: },
+ [1660653438.741859][58149:58154] CHIP:DMG:
+ [1660653438.741883][58149:58154] CHIP:DMG: ],
+ [1660653438.741913][58149:58154] CHIP:DMG:
+ [1660653438.741938][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653438.741961][58149:58154] CHIP:DMG: }
+ [1660653438.742081][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660653438.742125][58149:58154] CHIP:TOO: NodeLabel:
+ [1660653438.742171][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff740129e0]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 3 0 --commissioner-name 4 --keepSubscriptions 1
+ [1660653500.501007][58149:58154] CHIP:DMG: {
+ [1660653500.501077][58149:58154] CHIP:DMG: SubscriptionId = 0xb129bd8c,
+ [1660653500.501126][58149:58154] CHIP:DMG: AttributeReportIBs =
+ [1660653500.501204][58149:58154] CHIP:DMG: [
+ [1660653500.501253][58149:58154] CHIP:DMG: AttributeReportIB =
+ [1660653500.501323][58149:58154] CHIP:DMG: {
+ [1660653500.501397][58149:58154] CHIP:DMG: AttributeDataIB =
+ [1660653500.501466][58149:58154] CHIP:DMG: {
+ [1660653500.501550][58149:58154] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653500.501615][58149:58154] CHIP:DMG: AttributePathIB =
+ [1660653500.501698][58149:58154] CHIP:DMG: {
+ [1660653500.501765][58149:58154] CHIP:DMG: Endpoint = 0x0,
+ [1660653500.501835][58149:58154] CHIP:DMG: Cluster = 0x28,
+ [1660653500.501905][58149:58154] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653500.501971][58149:58154] CHIP:DMG: }
+ [1660653500.502041][58149:58154] CHIP:DMG:
+ [1660653500.502111][58149:58154] CHIP:DMG: Data = "XX" (2 chars),
+ [1660653500.502176][58149:58154] CHIP:DMG: },
+ [1660653500.502249][58149:58154] CHIP:DMG:
+ [1660653500.502303][58149:58154] CHIP:DMG: },
+ [1660653500.502367][58149:58154] CHIP:DMG:
+ [1660653500.502414][58149:58154] CHIP:DMG: ],
+ [1660653500.502473][58149:58154] CHIP:DMG:
+ [1660653500.502520][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653500.502567][58149:58154] CHIP:DMG: }
+ [1660653500.502738][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653500.502801][58149:58154] CHIP:TOO: Location: XX
+ [1660653500.502870][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff7400adb0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 3 0 --commissioner-name 4 --keepSubscriptions 1
+ [1660653545.650817][58149:58154] CHIP:DMG: ReportDataMessage =
+ [1660653545.650842][58149:58154] CHIP:DMG: {
+ [1660653545.650864][58149:58154] CHIP:DMG: SubscriptionId = 0x5310d542,
+ [1660653545.650901][58149:58154] CHIP:DMG: AttributeReportIBs =
+ [1660653545.650929][58149:58154] CHIP:DMG: [
+ [1660653545.650950][58149:58154] CHIP:DMG: AttributeReportIB =
+ [1660653545.650999][58149:58154] CHIP:DMG: {
+ [1660653545.651032][58149:58154] CHIP:DMG: AttributeDataIB =
+ [1660653545.651060][58149:58154] CHIP:DMG: {
+ [1660653545.651088][58149:58154] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653545.651123][58149:58154] CHIP:DMG: AttributePathIB =
+ [1660653545.651151][58149:58154] CHIP:DMG: {
+ [1660653545.651179][58149:58154] CHIP:DMG: Endpoint = 0x0,
+ [1660653545.651209][58149:58154] CHIP:DMG: Cluster = 0x28,
+ [1660653545.651238][58149:58154] CHIP:DMG: Attribute = 0x0000_0010,
+ [1660653545.651265][58149:58154] CHIP:DMG: }
+ [1660653545.651294][58149:58154] CHIP:DMG:
+ [1660653545.651323][58149:58154] CHIP:DMG: Data = false,
+ [1660653545.651349][58149:58154] CHIP:DMG: },
+ [1660653545.651377][58149:58154] CHIP:DMG:
+ [1660653545.651399][58149:58154] CHIP:DMG: },
+ [1660653545.651425][58149:58154] CHIP:DMG:
+ [1660653545.651446][58149:58154] CHIP:DMG: ],
+ [1660653545.651473][58149:58154] CHIP:DMG:
+ [1660653545.651494][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653545.651514][58149:58154] CHIP:DMG: }
+ [1660653545.651601][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653545.651636][58149:58154] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653545.651669][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff74009a20]: Moving to [AwaitingSu]
+
+
+
+ on the 4th reference device send 3 Subscribe Request Messages to DUT
+ basic subscribe node-label 100 1000 4 0 --commissioner-name 5 --keepSubscriptions 1
+
+ [1660652952.539010][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660652952.539073][58131:58136] CHIP:TOO: NodeLabel:
+ [1660652952.539140][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0004bc0]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 4 0 --commissioner-name 5 --keepSubscriptions 1
+
+ [1660653500.502738][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653500.502801][58149:58154] CHIP:TOO: Location: XX
+ [1660653500.502870][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff7400adb0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 4 0 --commissioner-name 5 --keepSubscriptions 1
+ : }
+ [1660653545.651601][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653545.651636][58149:58154] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653545.651669][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff74009a20]: Moving to [AwaitingSu]
+
+
+
+ on the 5th reference device send 3 Subscribe Request Messages to DUT
+ basic subscribe node-label 100 1000 5 0 --commissioner-name 6 --keepSubscriptions 1
+
+ [1660652952.539010][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660652952.539073][58131:58136] CHIP:TOO: NodeLabel:
+ [1660652952.539140][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0004bc0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe location 100 1000 5 0 --commissioner-name 6 --keepSubscriptions 1
+
+ [1660653500.502738][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653500.502801][58149:58154] CHIP:TOO: Location: XX
+ [1660653500.502870][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff7400adb0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 5 0 --commissioner-name beta --keepSubscriptions 1
+ : }
+ [1660653545.651601][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653545.651636][58149:58154] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653545.651669][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff74009a20]: Moving to [AwaitingSu]
+
+
+
+ once all the subscription is active, on the first reference device enter below mentioned commands to change the attribute values in RD1
+
+ basic write node-label ""newnode"" 1 0
+ ReportDataMessage =
+ [1660653595.180285][58131:58136] CHIP:DMG: {
+ [1660653595.180335][58131:58136] CHIP:DMG: SubscriptionId = 0x50d4243c,
+ [1660653595.180388][58131:58136] CHIP:DMG: AttributeReportIBs =
+ [1660653595.180456][58131:58136] CHIP:DMG: [
+ [1660653595.180508][58131:58136] CHIP:DMG: AttributeReportIB =
+ [1660653595.180579][58131:58136] CHIP:DMG: {
+ [1660653595.180640][58131:58136] CHIP:DMG: AttributeDataIB =
+ [1660653595.180707][58131:58136] CHIP:DMG: {
+ [1660653595.180794][58131:58136] CHIP:DMG: DataVersion = 0xe16fa6f7,
+ [1660653595.180874][58131:58136] CHIP:DMG: AttributePathIB =
+ [1660653595.180958][58131:58136] CHIP:DMG: {
+ [1660653595.181042][58131:58136] CHIP:DMG: Endpoint = 0x0,
+ [1660653595.181131][58131:58136] CHIP:DMG: Cluster = 0x28,
+ [1660653595.181214][58131:58136] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660653595.181281][58131:58136] CHIP:DMG: }
+ [1660653595.181353][58131:58136] CHIP:DMG:
+ [1660653595.181426][58131:58136] CHIP:DMG: Data = ""newnode"" (9 chars),
+ [1660653595.181491][58131:58136] CHIP:DMG: },
+ [1660653595.181564][58131:58136] CHIP:DMG:
+ [1660653595.181638][58131:58136] CHIP:DMG: },
+ [1660653595.181706][58131:58136] CHIP:DMG:
+ [1660653595.181772][58131:58136] CHIP:DMG: ],
+ [1660653595.181858][58131:58136] CHIP:DMG:
+ [1660653595.181924][58131:58136] CHIP:DMG: InteractionModelRevision = 1
+ [1660653595.181987][58131:58136] CHIP:DMG: }
+ [1660653595.182209][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190839
+ [1660653595.182295][58131:58136] CHIP:TOO: NodeLabel: "newnode"
+ [1660653595.182400][58131:58136] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0x50d4243c Peer = 01:0000000000000001
+
+ basic write location in 1 0
+ ReportDataMessage =
+ [1660653646.567396][58131:58136] CHIP:DMG: {
+ [1660653646.567414][58131:58136] CHIP:DMG: SubscriptionId = 0xea4facb0,
+ [1660653646.567432][58131:58136] CHIP:DMG: AttributeReportIBs =
+ [1660653646.567455][58131:58136] CHIP:DMG: [
+ [1660653646.567472][58131:58136] CHIP:DMG: AttributeReportIB =
+ [1660653646.567497][58131:58136] CHIP:DMG: {
+ [1660653646.567515][58131:58136] CHIP:DMG: AttributeDataIB =
+ [1660653646.567537][58131:58136] CHIP:DMG: {
+ [1660653646.567560][58131:58136] CHIP:DMG: DataVersion = 0xe16fa6f8,
+ [1660653646.567581][58131:58136] CHIP:DMG: AttributePathIB =
+ [1660653646.567604][58131:58136] CHIP:DMG: {
+ [1660653646.567627][58131:58136] CHIP:DMG: Endpoint = 0x0,
+ [1660653646.567651][58131:58136] CHIP:DMG: Cluster = 0x28,
+ [1660653646.567676][58131:58136] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653646.567699][58131:58136] CHIP:DMG: }
+ [1660653646.567723][58131:58136] CHIP:DMG:
+ [1660653646.567749][58131:58136] CHIP:DMG: Data = "in" (2 chars),
+ [1660653646.567852][58131:58136] CHIP:DMG: },
+ [1660653646.567880][58131:58136] CHIP:DMG:
+ [1660653646.567904][58131:58136] CHIP:DMG: },
+ [1660653646.567931][58131:58136] CHIP:DMG:
+ [1660653646.567952][58131:58136] CHIP:DMG: ],
+ [1660653646.567980][58131:58136] CHIP:DMG:
+ [1660653646.568002][58131:58136] CHIP:DMG: InteractionModelRevision = 1
+ [1660653646.568023][58131:58136] CHIP:DMG: }
+ [1660653646.568112][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190840
+ [1660653646.568151][58131:58136] CHIP:TOO: Location: in
+ [1660653646.568191][58131:58136] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0xea4facb0 Peer = 01:0000000000000001
+
+
+ basic write local-config-disabled 1 1 0
+ ReportDataMessage =
+ [1660653666.029792][58131:58136] CHIP:DMG: {
+ [1660653666.029813][58131:58136] CHIP:DMG: SubscriptionId = 0x1ff9dbc5,
+ [1660653666.029835][58131:58136] CHIP:DMG: AttributeReportIBs =
+ [1660653666.029862][58131:58136] CHIP:DMG: [
+ [1660653666.029883][58131:58136] CHIP:DMG: AttributeReportIB =
+ [1660653666.029921][58131:58136] CHIP:DMG: {
+ [1660653666.029947][58131:58136] CHIP:DMG: AttributeDataIB =
+ [1660653666.029980][58131:58136] CHIP:DMG: {
+ [1660653666.030013][58131:58136] CHIP:DMG: DataVersion = 0xe16fa6f9,
+ [1660653666.030045][58131:58136] CHIP:DMG: AttributePathIB =
+ [1660653666.030071][58131:58136] CHIP:DMG: {
+ [1660653666.030107][58131:58136] CHIP:DMG: Endpoint = 0x0,
+ [1660653666.030137][58131:58136] CHIP:DMG: Cluster = 0x28,
+ [1660653666.030161][58131:58136] CHIP:DMG: Attribute = 0x0000_0010,
+ [1660653666.030184][58131:58136] CHIP:DMG: }
+ [1660653666.030209][58131:58136] CHIP:DMG:
+ [1660653666.030234][58131:58136] CHIP:DMG: Data = true,
+ [1660653666.030255][58131:58136] CHIP:DMG: },
+ [1660653666.030278][58131:58136] CHIP:DMG:
+ [1660653666.030297][58131:58136] CHIP:DMG: },
+ [1660653666.030320][58131:58136] CHIP:DMG:
+ [1660653666.030337][58131:58136] CHIP:DMG: ],
+ [1660653666.030361][58131:58136] CHIP:DMG:
+ [1660653666.030378][58131:58136] CHIP:DMG: InteractionModelRevision = 1
+ [1660653666.030395][58131:58136] CHIP:DMG: }
+ [1660653666.030472][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190841
+ [1660653666.030502][58131:58136] CHIP:TOO: LocalConfigDisabled: TRUE
+ [1660653666.030535][58131:58136] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0x1ff9dbc5 Peer = 01:00000
+
+ Once RD1 change the attibute values by sending above command, verify that all the RD*(RD2/3/4/5) should be notified with a subscription report
+
+ on the 2nd reference device verify the ReportDataMessage with the attribute value change
+ [1660653595.177882][58143:58148] CHIP:EM: Handling via exchange: 9001r, Delegate: 0xaaaaea1cd718
+ [1660653595.178151][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653595.178219][58143:58148] CHIP:DMG: {
+ [1660653595.178272][58143:58148] CHIP:DMG: SubscriptionId = 0xc15110c4,
+ [1660653595.178325][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653595.178396][58143:58148] CHIP:DMG: [
+ [1660653595.178449][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653595.178522][58143:58148] CHIP:DMG: {
+ [1660653595.178580][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653595.178647][58143:58148] CHIP:DMG: {
+ [1660653595.178717][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f7,
+ [1660653595.178804][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653595.178874][58143:58148] CHIP:DMG: {
+ [1660653595.178942][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653595.179014][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653595.179086][58143:58148] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660653595.179153][58143:58148] CHIP:DMG: }
+ [1660653595.179225][58143:58148] CHIP:DMG:
+ [1660653595.179300][58143:58148] CHIP:DMG: Data = ""newnode"" (9 chars),
+ [1660653595.179363][58143:58148] CHIP:DMG: },
+ [1660653595.179438][58143:58148] CHIP:DMG:
+ [1660653595.179499][58143:58148] CHIP:DMG: },
+ [1660653595.179587][58143:58148] CHIP:DMG:
+ [1660653595.179639][58143:58148] CHIP:DMG: ],
+ [1660653595.179705][58143:58148] CHIP:DMG:
+ [1660653595.179894][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653595.179952][58143:58148] CHIP:DMG: }
+ [1660653595.180163][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190839
+ [1660653595.180235][58143:58148] CHIP:TOO: NodeLabel: "newnode"
+ [1660653595.180511][58143:58148] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0xc15110c4 Peer = 02:0000000000000002
+
+
+ [1660653646.567549][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653646.567570][58143:58148] CHIP:DMG: {
+ [1660653646.567587][58143:58148] CHIP:DMG: SubscriptionId = 0xfed77bda,
+ [1660653646.567605][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653646.567628][58143:58148] CHIP:DMG: [
+ [1660653646.567646][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653646.567670][58143:58148] CHIP:DMG: {
+ [1660653646.567689][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653646.567709][58143:58148] CHIP:DMG: {
+ [1660653646.567731][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f8,
+ [1660653646.567780][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653646.567806][58143:58148] CHIP:DMG: {
+ [1660653646.567829][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653646.567854][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653646.568334][58143:58148] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653646.568364][58143:58148] CHIP:DMG: }
+ [1660653646.568726][58143:58148] CHIP:DMG:
+ [1660653646.568769][58143:58148] CHIP:DMG: Data = "in" (2 chars),
+ [1660653646.569119][58143:58148] CHIP:DMG: },
+ [1660653646.569313][58143:58148] CHIP:DMG:
+ [1660653646.569337][58143:58148] CHIP:DMG: },
+ [1660653646.569518][58143:58148] CHIP:DMG:
+ [1660653646.569538][58143:58148] CHIP:DMG: ],
+ [1660653646.569566][58143:58148] CHIP:DMG:
+ [1660653646.569588][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653646.569610][58143:58148] CHIP:DMG: }
+ [1660653646.569682][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190840
+ [1660653646.569713][58143:58148] CHIP:TOO: Location: in
+ [1660653646.569762][58143:58148] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0xfed77bda Peer = 02:0000000000000002
+
+
+ [1660653666.030382][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653666.030401][58143:58148] CHIP:DMG: {
+ [1660653666.030419][58143:58148] CHIP:DMG: SubscriptionId = 0x60feee4d,
+ [1660653666.030438][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653666.030461][58143:58148] CHIP:DMG: [
+ [1660653666.030478][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653666.030502][58143:58148] CHIP:DMG: {
+ [1660653666.030521][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653666.030542][58143:58148] CHIP:DMG: {
+ [1660653666.030564][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f9,
+ [1660653666.030586][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653666.030609][58143:58148] CHIP:DMG: {
+ [1660653666.030647][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653666.030672][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653666.030696][58143:58148] CHIP:DMG: Attribute = 0x0000_0010,
+ [1660653666.030718][58143:58148] CHIP:DMG: }
+ [1660653666.030742][58143:58148] CHIP:DMG:
+ [1660653666.030778][58143:58148] CHIP:DMG: Data = true,
+ [1660653666.030803][58143:58148] CHIP:DMG: },
+ [1660653666.030827][58143:58148] CHIP:DMG:
+ [1660653666.030846][58143:58148] CHIP:DMG: },
+ [1660653666.030868][58143:58148] CHIP:DMG:
+ [1660653666.030885][58143:58148] CHIP:DMG: ],
+ [1660653666.030908][58143:58148] CHIP:DMG:
+ [1660653666.030926][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653666.030944][58143:58148] CHIP:DMG: }
+ [1660653666.031027][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190841
+ [1660653666.031058][58143:58148] CHIP:TOO: LocalConfigDisabled: TRUE
+ [1660653666.031092][58143:58148] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0x60feee4d Peer = 02:0000000000000002
+
+
+ on the 3rd reference device verify the ReportDataMessage with the attribute value change
+ onic time: 000000000199A0AE msec
+ [1660653545.654422][58149:58154] CHIP:EM: Flushed pending ack for MessageCounter:144882910 on exchange 34402i
+ [1660653595.178474][58149:58154] CHIP:EM: Received message of type 0x5 with protocolId (0, 1) and MessageCounter:144882911 on exchange 9002r
+ [1660653595.178564][58149:58154] CHIP:EM: Handling via exchange: 9002r, Delegate: 0xaaaade55d718
+ [1660653595.178743][58149:58154] CHIP:DMG: ReportDataMessage =
+ [1660653595.178805][58149:58154] CHIP:DMG: {
+ [1660653595.178858][58149:58154] CHIP:DMG: SubscriptionId = 0xff93c648,
+ [1660653595.178912][58149:58154] CHIP:DMG: AttributeReportIBs =
+ [1660653595.178980][58149:58154] CHIP:DMG: [
+ [1660653595.179033][58149:58154] CHIP:DMG: AttributeReportIB =
+ [1660653595.179106][58149:58154] CHIP:DMG: {
+ [1660653595.179163][58149:58154] CHIP:DMG: AttributeDataIB =
+ [1660653595.179225][58149:58154] CHIP:DMG: {
+ [1660653595.179291][58149:58154] CHIP:DMG: DataVersion = 0xe16fa6f7,
+ [1660653595.179355][58149:58154] CHIP:DMG: AttributePathIB =
+ [1660653595.179422][58149:58154] CHIP:DMG: {
+ [1660653595.179498][58149:58154] CHIP:DMG: Endpoint = 0x0,
+ [1660653595.179640][58149:58154] CHIP:DMG: Cluster = 0x28,
+ [1660653595.179718][58149:58154] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660653595.179864][58149:58154] CHIP:DMG: }
+ [1660653595.179939][58149:58154] CHIP:DMG:
+ [1660653595.180012][58149:58154] CHIP:DMG: Data = ""newnode"" (9 chars),
+ [1660653595.180077][58149:58154] CHIP:DMG: },
+ [1660653595.180148][58149:58154] CHIP:DMG:
+ [1660653595.180204][58149:58154] CHIP:DMG: },
+ [1660653595.180276][58149:58154] CHIP:DMG:
+ [1660653595.180328][58149:58154] CHIP:DMG: ],
+ [1660653595.180395][58149:58154] CHIP:DMG:
+ [1660653595.180462][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653595.180513][58149:58154] CHIP:DMG: }
+ [1660653595.180721][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190839
+ [1660653595.180792][58149:58154] CHIP:TOO: NodeLabel: "newnode"
+ [1660653595.180894][58149:58154] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId =
+
+
+ [1660653646.568849][58149:58154] CHIP:DMG: ReportDataMessage =
+ [1660653646.568878][58149:58154] CHIP:DMG: {
+ [1660653646.568903][58149:58154] CHIP:DMG: SubscriptionId = 0xb129bd8c,
+ [1660653646.568926][58149:58154] CHIP:DMG: AttributeReportIBs =
+ [1660653646.568955][58149:58154] CHIP:DMG: [
+ [1660653646.568974][58149:58154] CHIP:DMG: AttributeReportIB =
+ [1660653646.569004][58149:58154] CHIP:DMG: {
+ [1660653646.569027][58149:58154] CHIP:DMG: AttributeDataIB =
+ [1660653646.569054][58149:58154] CHIP:DMG: {
+ [1660653646.569082][58149:58154] CHIP:DMG: DataVersion = 0xe16fa6f8,
+ [1660653646.569109][58149:58154] CHIP:DMG: AttributePathIB =
+ [1660653646.569138][58149:58154] CHIP:DMG: {
+ [1660653646.569165][58149:58154] CHIP:DMG: Endpoint = 0x0,
+ [1660653646.569194][58149:58154] CHIP:DMG: Cluster = 0x28,
+ [1660653646.569225][58149:58154] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653646.569253][58149:58154] CHIP:DMG: }
+ [1660653646.569282][58149:58154] CHIP:DMG:
+ [1660653646.569313][58149:58154] CHIP:DMG: Data = "in" (2 chars),
+ [1660653646.569339][58149:58154] CHIP:DMG: },
+ [1660653646.569368][58149:58154] CHIP:DMG:
+ [1660653646.569392][58149:58154] CHIP:DMG: },
+ [1660653646.569419][58149:58154] CHIP:DMG:
+ [1660653646.569441][58149:58154] CHIP:DMG: ],
+ [1660653646.569469][58149:58154] CHIP:DMG:
+ [1660653646.569492][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653646.569510][58149:58154] CHIP:DMG: }
+ [1660653646.569596][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190840
+ [1660653646.569638][58149:58154] CHIP:TOO: Location: in
+ [1660653646.569738][58149:58154] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0xb129bd8c Peer = 03:0000000000000003
+
+ MessageCounter:144882915 on exchange 9008r
+ [1660653666.030877][58149:58154] CHIP:EM: Handling via exchange: 9008r, Delegate: 0xaaaade55d718
+ [1660653666.030942][58149:58154] CHIP:DMG: ReportDataMessage =
+ [1660653666.030968][58149:58154] CHIP:DMG: {
+ [1660653666.030986][58149:58154] CHIP:DMG: SubscriptionId = 0x5310d542,
+ [1660653666.031004][58149:58154] CHIP:DMG: AttributeReportIBs =
+ [1660653666.031028][58149:58154] CHIP:DMG: [
+ [1660653666.031045][58149:58154] CHIP:DMG: AttributeReportIB =
+ [1660653666.031069][58149:58154] CHIP:DMG: {
+ [1660653666.031089][58149:58154] CHIP:DMG: AttributeDataIB =
+ [1660653666.031111][58149:58154] CHIP:DMG: {
+ [1660653666.031133][58149:58154] CHIP:DMG: DataVersion = 0xe16fa6f9,
+ [1660653666.031155][58149:58154] CHIP:DMG: AttributePathIB =
+ [1660653666.031178][58149:58154] CHIP:DMG: {
+ [1660653666.031202][58149:58154] CHIP:DMG: Endpoint = 0x0,
+ [1660653666.031226][58149:58154] CHIP:DMG: Cluster = 0x28,
+ [1660653666.031251][58149:58154] CHIP:DMG: Attribute = 0x0000_0010,
+ [1660653666.031274][58149:58154] CHIP:DMG: }
+ [1660653666.031308][58149:58154] CHIP:DMG:
+ [1660653666.031334][58149:58154] CHIP:DMG: Data = true,
+ [1660653666.031355][58149:58154] CHIP:DMG: },
+ [1660653666.031379][58149:58154] CHIP:DMG:
+ [1660653666.031398][58149:58154] CHIP:DMG: },
+ [1660653666.031421][58149:58154] CHIP:DMG:
+ [1660653666.031438][58149:58154] CHIP:DMG: ],
+ [1660653666.031462][58149:58154] CHIP:DMG:
+ [1660653666.031480][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653666.031503][58149:58154] CHIP:DMG: }
+ [1660653666.031584][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190841
+ [1660653666.031617][58149:58154] CHIP:TOO: LocalConfigDisabled: TRUE
+ [1660653666.031655][58149:58154] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0x5310d542 Peer = 03:0000000000
+
+
+
+ on the 4th reference device verify the ReportDataMessage with the attribute value change
+
+ [1660653595.182209][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 378219084
+ [1660653595.182295][58131:58136] CHIP:TOO: NodeLabel: "newnode"
+ [1660653595.182400][58131:58136] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0x50d4249f Peer = 01:0000000000000001
+
+ [1660653646.569682][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190840
+ [1660653646.569713][58143:58148] CHIP:TOO: Location: in
+ [1660653646.569762][58143:58148] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0xfed77bda Peer = 02:0000000000000002
+
+
+ [1660653666.031584][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 37821909841
+ [1660653666.031617][58149:58154] CHIP:TOO: LocalConfigDisabled: TRUE
+ [1660653666.031655][58149:58154] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0x5310d57o2 Peer = 03:0000000000
+
+
+
+
+
+
+ on the 5th reference device verify the ReportDataMessage with the attribute value change
+
+ [1660653595.182209][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 378218970
+ [1660653595.182295][58131:58136] CHIP:TOO: NodeLabel: "newnode"
+ [1660653595.182400][58131:58136] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0x50d42ftc Peer = 01:0000000000000001
+
+
+ [1660653646.569682][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190840
+ [1660653646.569713][58143:58148] CHIP:TOO: Location: in
+ [1660653646.569762][58143:58148] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0xfed77bda Peer = 02:0000000000000002
+
+
+ [1660653666.031584][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190981
+ [1660653666.031617][58149:58154] CHIP:TOO: LocalConfigDisabled: TRUE
+ [1660653666.031655][58149:58154] CHIP:DMG: Refresh LivenessCheckTime for 1025000 milliseconds with SubscriptionId = 0x5310d5l0 Peer = 03:0000000000
disabled: true
- label:
@@ -653,339 +737,316 @@ tests:
verification: |
Please run this test in chip tool interactive mode ./chip-tool interactive start
+ Example commands given below are using 5 reference devices (User can use 5 reference devices and send the below command in from each reference device)
+
Send 3 Subscriptionrequest message from each Reference Device(Eg. RD1...) to DUT
and verify all the subscription requests are succes. and in The subscription request from RD1 should contain 4 paths, Verify that the subscriptions from RD2, RD3, RD4 and RD5 are not affected.
- Example commands given below are using 3 reference device (User can use 5 reference device and send the below command in from each reference device)
-
-
- on the first reference deice enter:
-
- any subscribe-by-id 0x0008 0x0010 10 100 1 1
-
- [1657716563.242433][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716563.242475][6034:6039] CHIP:DMG: {
- [1657716563.242507][6034:6039] CHIP:DMG: SubscriptionId = 0xebc26cc4,
- [1657716563.242538][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716563.242577][6034:6039] CHIP:DMG: [
- [1657716563.242607][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716563.242648][6034:6039] CHIP:DMG: {
- [1657716563.242680][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716563.242721][6034:6039] CHIP:DMG: {
- [1657716563.242762][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657716563.242801][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716563.242842][6034:6039] CHIP:DMG: {
- [1657716563.242883][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716563.242928][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657716563.242971][6034:6039] CHIP:DMG: Attribute = 0x0000_0010,
- [1657716563.243012][6034:6039] CHIP:DMG: }
- [1657716563.243056][6034:6039] CHIP:DMG:
- [1657716563.243100][6034:6039] CHIP:DMG: Data = 1,
- [1657716563.243138][6034:6039] CHIP:DMG: },
- [1657716563.243179][6034:6039] CHIP:DMG:
- [1657716563.243213][6034:6039] CHIP:DMG: },
- [1657716563.243251][6034:6039] CHIP:DMG:
- [1657716563.243280][6034:6039] CHIP:DMG: ],
- [1657716563.243318][6034:6039] CHIP:DMG:
- [1657716563.243348][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716563.243377][6034:6039] CHIP:DMG: }
- [1657716563.243531][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0010 DataVersion: 832499115
- [1657716563.243601][6034:6039] CHIP:TOO: on off transition time: 1
- [1657716563.243648][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008e30]: Moving to [AwaitingSu]
-
-
-
- basic subscribe node-label 10 100 1 0
- [1657716599.928585][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716599.928652][6034:6039] CHIP:DMG: {
- [1657716599.928825][6034:6039] CHIP:DMG: SubscriptionId = 0x3d9f1c1,
- [1657716599.928890][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716599.928968][6034:6039] CHIP:DMG: [
- [1657716599.929029][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716599.929122][6034:6039] CHIP:DMG: {
- [1657716599.929192][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716599.929278][6034:6039] CHIP:DMG: {
- [1657716599.929399][6034:6039] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657716599.929476][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716599.929687][6034:6039] CHIP:DMG: {
- [1657716599.929774][6034:6039] CHIP:DMG: Endpoint = 0x0,
- [1657716599.929861][6034:6039] CHIP:DMG: Cluster = 0x28,
- [1657716599.929949][6034:6039] CHIP:DMG: Attribute = 0x0000_0005,
- [1657716599.930031][6034:6039] CHIP:DMG: }
- [1657716599.930115][6034:6039] CHIP:DMG:
- [1657716599.930285][6034:6039] CHIP:DMG: Data = "1",
- [1657716599.930370][6034:6039] CHIP:DMG: },
- [1657716599.930454][6034:6039] CHIP:DMG:
- [1657716599.930578][6034:6039] CHIP:DMG: },
- [1657716599.930660][6034:6039] CHIP:DMG:
- [1657716599.930720][6034:6039] CHIP:DMG: ],
- [1657716599.930796][6034:6039] CHIP:DMG:
- [1657716599.930856][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716599.930914][6034:6039] CHIP:DMG: }
- [1657716599.931131][6034:6039] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 462674998
- [1657716599.931326][6034:6039] CHIP:TOO: NodeLabel: 1
- [1657716599.931420][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008f20]: Moving to [AwaitingSu]
-
- onoff subscribe on-time 10 100 1 1
- [1657716634.400468][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716634.400499][6034:6039] CHIP:DMG: {
- [1657716634.400525][6034:6039] CHIP:DMG: SubscriptionId = 0xf9b815a2,
- [1657716634.400551][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716634.400585][6034:6039] CHIP:DMG: [
- [1657716634.400610][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716634.400647][6034:6039] CHIP:DMG: {
- [1657716634.400674][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716634.400705][6034:6039] CHIP:DMG: {
- [1657716634.400739][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657716634.400775][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716634.400809][6034:6039] CHIP:DMG: {
- [1657716634.400847][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716634.400883][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657716634.400920][6034:6039] CHIP:DMG: Attribute = 0x0000_4001,
- [1657716634.400950][6034:6039] CHIP:DMG: }
- [1657716634.400987][6034:6039] CHIP:DMG:
- [1657716634.401024][6034:6039] CHIP:DMG: Data = 1,
- [1657716634.401058][6034:6039] CHIP:DMG: },
- [1657716634.401092][6034:6039] CHIP:DMG:
- [1657716634.401117][6034:6039] CHIP:DMG: },
- [1657716634.401148][6034:6039] CHIP:DMG:
- [1657716634.401172][6034:6039] CHIP:DMG: ],
- [1657716634.401202][6034:6039] CHIP:DMG:
- [1657716634.401227][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716634.401250][6034:6039] CHIP:DMG: }
- [1657716634.401383][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4001 DataVersion: 1934241157
- [1657716634.401428][6034:6039] CHIP:TOO: OnTime: 1
- [1657716634.401466][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008c70]: Moving to [AwaitingSu]
-
-
- levelcontrol subscribe on-level 10 100 1 1
- [1657716667.237484][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716667.237515][6034:6039] CHIP:DMG: {
- [1657716667.237541][6034:6039] CHIP:DMG: SubscriptionId = 0xe457240d,
- [1657716667.237571][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716667.237738][6034:6039] CHIP:DMG: [
- [1657716667.237768][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716667.237819][6034:6039] CHIP:DMG: {
- [1657716667.237850][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716667.237897][6034:6039] CHIP:DMG: {
- [1657716667.237944][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657716667.237993][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716667.238044][6034:6039] CHIP:DMG: {
- [1657716667.238094][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716667.238145][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657716667.238196][6034:6039] CHIP:DMG: Attribute = 0x0000_0011,
- [1657716667.238244][6034:6039] CHIP:DMG: }
- [1657716667.238294][6034:6039] CHIP:DMG:
- [1657716667.238345][6034:6039] CHIP:DMG: Data = 1,
- [1657716667.238391][6034:6039] CHIP:DMG: },
- [1657716667.238437][6034:6039] CHIP:DMG:
- [1657716667.238467][6034:6039] CHIP:DMG: },
- [1657716667.238509][6034:6039] CHIP:DMG:
- [1657716667.238535][6034:6039] CHIP:DMG: ],
- [1657716667.238567][6034:6039] CHIP:DMG:
- [1657716667.238591][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716667.238614][6034:6039] CHIP:DMG: }
- [1657716667.238709][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0011 DataVersion: 832499115
- [1657716667.238752][6034:6039] CHIP:TOO: on level: 1
- [1657716667.238790][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c0092b0]: Moving to [AwaitingSu]
-
-
-
- on the 2nd reference deice enter:
- onoff subscribe start-up-on-off 10 100 1 1
- [1657716703.322836][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716703.322895][6034:6039] CHIP:DMG: {
- [1657716703.322947][6034:6039] CHIP:DMG: SubscriptionId = 0x8962f8b4,
- [1657716703.323010][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716703.323080][6034:6039] CHIP:DMG: [
- [1657716703.323133][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716703.323217][6034:6039] CHIP:DMG: {
- [1657716703.323280][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716703.323341][6034:6039] CHIP:DMG: {
- [1657716703.323396][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657716703.323449][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716703.323519][6034:6039] CHIP:DMG: {
- [1657716703.323591][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716703.323671][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657716703.323759][6034:6039] CHIP:DMG: Attribute = 0x0000_4003,
- [1657716703.323835][6034:6039] CHIP:DMG: }
- [1657716703.323909][6034:6039] CHIP:DMG:
- [1657716703.323981][6034:6039] CHIP:DMG: Data = 1,
- [1657716703.324047][6034:6039] CHIP:DMG: },
- [1657716703.324113][6034:6039] CHIP:DMG:
- [1657716703.324170][6034:6039] CHIP:DMG: },
- [1657716703.324238][6034:6039] CHIP:DMG:
- [1657716703.324289][6034:6039] CHIP:DMG: ],
- [1657716703.324352][6034:6039] CHIP:DMG:
- [1657716703.324403][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716703.324457][6034:6039] CHIP:DMG: }
- [1657716703.324785][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4003 DataVersion: 1934241157
- [1657716703.324904][6034:6039] CHIP:TOO: StartUpOnOff: 1
- [1657716703.324985][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008e30]: Moving to [AwaitingSu]
-
-
-
- basic subscribe node-label 10 100 1 0
- [1657716743.523056][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716743.523131][6034:6039] CHIP:DMG: {
- [1657716743.523178][6034:6039] CHIP:DMG: SubscriptionId = 0xc3b3c364,
- [1657716743.523240][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716743.523302][6034:6039] CHIP:DMG: [
- [1657716743.523362][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716743.523433][6034:6039] CHIP:DMG: {
- [1657716743.523499][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716743.523555][6034:6039] CHIP:DMG: {
- [1657716743.523627][6034:6039] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657716743.523682][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716743.523738][6034:6039] CHIP:DMG: {
- [1657716743.523812][6034:6039] CHIP:DMG: Endpoint = 0x0,
- [1657716743.523873][6034:6039] CHIP:DMG: Cluster = 0x28,
- [1657716743.523934][6034:6039] CHIP:DMG: Attribute = 0x0000_0005,
- [1657716743.523990][6034:6039] CHIP:DMG: }
- [1657716743.524050][6034:6039] CHIP:DMG:
- [1657716743.524111][6034:6039] CHIP:DMG: Data = "1",
- [1657716743.524164][6034:6039] CHIP:DMG: },
- [1657716743.524223][6034:6039] CHIP:DMG:
- [1657716743.524271][6034:6039] CHIP:DMG: },
- [1657716743.524328][6034:6039] CHIP:DMG:
- [1657716743.524372][6034:6039] CHIP:DMG: ],
- [1657716743.524430][6034:6039] CHIP:DMG:
- [1657716743.524475][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716743.524518][6034:6039] CHIP:DMG: }
- [1657716743.524683][6034:6039] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 462674998
- [1657716743.524745][6034:6039] CHIP:TOO: NodeLabel: 1
- [1657716743.524813][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c004100]: Moving to [AwaitingSu]
-
-
- levelcontrol subscribe on-transition-time 10 100 1 1
- [1657716911.280884][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716911.280957][6034:6039] CHIP:DMG: {
- [1657716911.281018][6034:6039] CHIP:DMG: SubscriptionId = 0x1a544eea,
- [1657716911.281080][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716911.281157][6034:6039] CHIP:DMG: [
- [1657716911.281217][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716911.281338][6034:6039] CHIP:DMG: {
- [1657716911.281408][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716911.281487][6034:6039] CHIP:DMG: {
- [1657716911.281570][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657716911.281649][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716911.281723][6034:6039] CHIP:DMG: {
- [1657716911.281813][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716911.281892][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657716911.281978][6034:6039] CHIP:DMG: Attribute = 0x0000_0012,
- [1657716911.282059][6034:6039] CHIP:DMG: }
- [1657716911.282145][6034:6039] CHIP:DMG:
- [1657716911.282236][6034:6039] CHIP:DMG: Data = 0,
- [1657716911.282311][6034:6039] CHIP:DMG: },
- [1657716911.282392][6034:6039] CHIP:DMG:
- [1657716911.282459][6034:6039] CHIP:DMG: },
- [1657716911.282534][6034:6039] CHIP:DMG:
- [1657716911.282593][6034:6039] CHIP:DMG: ],
- [1657716911.282667][6034:6039] CHIP:DMG:
- [1657716911.282727][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716911.282786][6034:6039] CHIP:DMG: }
- [1657716911.282995][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0012 DataVersion: 832499115
- [1657716911.283082][6034:6039] CHIP:TOO: on transition time: 0
- [1657716911.283172][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008f20]: Moving to [AwaitingSu]
-
-
- on the 3rd reference deice enter:
- onoff subscribe start-up-on-off 10 100 1 1
- [1657716965.736576][6034:6039] CHIP:EM: Removed CHIP MessageCounter:12313969 from RetransTable on exchange 50225i
- [1657716965.736639][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716965.736669][6034:6039] CHIP:DMG: {
- [1657716965.736695][6034:6039] CHIP:DMG: SubscriptionId = 0x5a6ddc07,
- [1657716965.736741][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716965.736777][6034:6039] CHIP:DMG: [
- [1657716965.736802][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716965.736848][6034:6039] CHIP:DMG: {
- [1657716965.736887][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716965.736932][6034:6039] CHIP:DMG: {
- [1657716965.736978][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657716965.737021][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716965.737067][6034:6039] CHIP:DMG: {
- [1657716965.737113][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716965.737159][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657716965.737207][6034:6039] CHIP:DMG: Attribute = 0x0000_4003,
- [1657716965.737251][6034:6039] CHIP:DMG: }
- [1657716965.737346][6034:6039] CHIP:DMG:
- [1657716965.737396][6034:6039] CHIP:DMG: Data = 1,
- [1657716965.737438][6034:6039] CHIP:DMG: },
- [1657716965.737484][6034:6039] CHIP:DMG:
- [1657716965.737521][6034:6039] CHIP:DMG: },
- [1657716965.737563][6034:6039] CHIP:DMG:
- [1657716965.737589][6034:6039] CHIP:DMG: ],
- [1657716965.737620][6034:6039] CHIP:DMG:
- [1657716965.737645][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716965.737679][6034:6039] CHIP:DMG: }
- [1657716965.737779][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4003 DataVersion: 1934241157
- [1657716965.737827][6034:6039] CHIP:TOO: StartUpOnOff: 1
- [1657716965.737867][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008e30]: Moving to [AwaitingSu]
-
-
- basic subscribe reachable 10 100 1 0
- [1657717032.547326][6034:6039] CHIP:EM: Removed CHIP MessageCounter:12313975 from RetransTable on exchange 50227i
- [1657717032.547406][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717032.547470][6034:6039] CHIP:DMG: {
- [1657717032.547507][6034:6039] CHIP:DMG: SubscriptionId = 0x242f7180,
- [1657717032.547560][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717032.547607][6034:6039] CHIP:DMG: [
- [1657717032.547644][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717032.547696][6034:6039] CHIP:DMG: {
- [1657717032.547734][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717032.547779][6034:6039] CHIP:DMG: {
- [1657717032.547829][6034:6039] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657717032.547876][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717032.547925][6034:6039] CHIP:DMG: {
- [1657717032.547974][6034:6039] CHIP:DMG: Endpoint = 0x0,
- [1657717032.548027][6034:6039] CHIP:DMG: Cluster = 0x28,
- [1657717032.548077][6034:6039] CHIP:DMG: Attribute = 0x0000_0011,
- [1657717032.548124][6034:6039] CHIP:DMG: }
- [1657717032.548175][6034:6039] CHIP:DMG:
- [1657717032.548225][6034:6039] CHIP:DMG: Data = true,
- [1657717032.548272][6034:6039] CHIP:DMG: },
- [1657717032.548321][6034:6039] CHIP:DMG:
- [1657717032.548358][6034:6039] CHIP:DMG: },
- [1657717032.548403][6034:6039] CHIP:DMG:
- [1657717032.548438][6034:6039] CHIP:DMG: ],
- [1657717032.548482][6034:6039] CHIP:DMG:
- [1657717032.548518][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717032.548553][6034:6039] CHIP:DMG: }
- [1657717032.548686][6034:6039] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0011 DataVersion: 462674998
- [1657717032.548795][6034:6039] CHIP:TOO: Reachable: TRUE
- [1657717032.548850][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c0092b0]: Moving to [AwaitingSu]
-
-
- onoff subscribe off-wait-time 10 100 1 1
- [1657717085.996867][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717085.996895][6034:6039] CHIP:DMG: {
- [1657717085.996920][6034:6039] CHIP:DMG: SubscriptionId = 0xbe7eee69,
- [1657717085.996945][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717085.996977][6034:6039] CHIP:DMG: [
- [1657717085.997002][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717085.997035][6034:6039] CHIP:DMG: {
- [1657717085.997060][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717085.997089][6034:6039] CHIP:DMG: {
- [1657717085.997122][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657717085.997153][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717085.997187][6034:6039] CHIP:DMG: {
- [1657717085.997220][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657717085.997258][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657717085.997317][6034:6039] CHIP:DMG: Attribute = 0x0000_4002,
- [1657717085.997367][6034:6039] CHIP:DMG: }
- [1657717085.997404][6034:6039] CHIP:DMG:
- [1657717085.997440][6034:6039] CHIP:DMG: Data = 0,
- [1657717085.997471][6034:6039] CHIP:DMG: },
- [1657717085.997504][6034:6039] CHIP:DMG:
- [1657717085.997531][6034:6039] CHIP:DMG: },
- [1657717085.997561][6034:6039] CHIP:DMG:
- [1657717085.997585][6034:6039] CHIP:DMG: ],
- [1657717085.997615][6034:6039] CHIP:DMG:
- [1657717085.997640][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717085.997663][6034:6039] CHIP:DMG: }
- [1657717085.997757][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4002 DataVersion: 1934241157
- [1657717085.997793][6034:6039] CHIP:TOO: OffWaitTime: 0
- [1657717085.997830][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008f20]: Moving to [AwaitingSu]
+ on the first reference device(RD1) send 3 Subscribe Request Messages to DUT.
+ basic subscribe node-label 100 1000 1 0 --keepSubscriptions 1
+ [1660652952.537644][58131:58136] CHIP:EM: Removed CHIP MessageCounter:11153878 from RetransTable on exchange 57366i
+ [1660652952.537721][58131:58136] CHIP:DMG: ReportDataMessage =
+ [1660652952.537759][58131:58136] CHIP:DMG: {
+ [1660652952.537794][58131:58136] CHIP:DMG: SubscriptionId = 0x50d4243c,
+ [1660652952.537829][58131:58136] CHIP:DMG: AttributeReportIBs =
+ [1660652952.537873][58131:58136] CHIP:DMG: [
+ [1660652952.537907][58131:58136] CHIP:DMG: AttributeReportIB =
+ [1660652952.537964][58131:58136] CHIP:DMG: {
+ [1660652952.538008][58131:58136] CHIP:DMG: AttributeDataIB =
+ [1660652952.538055][58131:58136] CHIP:DMG: {
+ [1660652952.538106][58131:58136] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660652952.538152][58131:58136] CHIP:DMG: AttributePathIB =
+ [1660652952.538205][58131:58136] CHIP:DMG: {
+ [1660652952.538254][58131:58136] CHIP:DMG: Endpoint = 0x0,
+ [1660652952.538308][58131:58136] CHIP:DMG: Cluster = 0x28,
+ [1660652952.538358][58131:58136] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660652952.538409][58131:58136] CHIP:DMG: }
+ [1660652952.538465][58131:58136] CHIP:DMG:
+ [1660652952.538517][58131:58136] CHIP:DMG: Data = "" (0 chars),
+ [1660652952.538562][58131:58136] CHIP:DMG: },
+ [1660652952.538615][58131:58136] CHIP:DMG:
+ [1660652952.538654][58131:58136] CHIP:DMG: },
+ [1660652952.538700][58131:58136] CHIP:DMG:
+ [1660652952.538734][58131:58136] CHIP:DMG: ],
+ [1660652952.538777][58131:58136] CHIP:DMG:
+ [1660652952.538811][58131:58136] CHIP:DMG: InteractionModelRevision = 1
+ [1660652952.538844][58131:58136] CHIP:DMG: }
+ [1660652952.539010][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660652952.539073][58131:58136] CHIP:TOO: NodeLabel:
+ [1660652952.539140][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0004bc0]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 1 0 --keepSubscriptions 1
+ [1660653005.341371][58131:58136] CHIP:DMG: ReportDataMessage =
+ [1660653005.341441][58131:58136] CHIP:DMG: {
+ [1660653005.341503][58131:58136] CHIP:DMG: SubscriptionId = 0xea4facb0,
+ [1660653005.341568][58131:58136] CHIP:DMG: AttributeReportIBs =
+ [1660653005.341648][58131:58136] CHIP:DMG: [
+ [1660653005.341711][58131:58136] CHIP:DMG: AttributeReportIB =
+ [1660653005.341808][58131:58136] CHIP:DMG: {
+ [1660653005.341881][58131:58136] CHIP:DMG: AttributeDataIB =
+ [1660653005.341972][58131:58136] CHIP:DMG: {
+ [1660653005.342065][58131:58136] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653005.342148][58131:58136] CHIP:DMG: AttributePathIB =
+ [1660653005.342244][58131:58136] CHIP:DMG: {
+ [1660653005.342340][58131:58136] CHIP:DMG: Endpoint = 0x0,
+ [1660653005.342436][58131:58136] CHIP:DMG: Cluster = 0x28,
+ [1660653005.342528][58131:58136] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653005.342616][58131:58136] CHIP:DMG: }
+ [1660653005.342708][58131:58136] CHIP:DMG:
+ [1660653005.342801][58131:58136] CHIP:DMG: Data = "XX" (2 chars),
+ [1660653005.342883][58131:58136] CHIP:DMG: },
+ [1660653005.342972][58131:58136] CHIP:DMG:
+ [1660653005.343045][58131:58136] CHIP:DMG: },
+ [1660653005.343129][58131:58136] CHIP:DMG:
+ [1660653005.343191][58131:58136] CHIP:DMG: ],
+ [1660653005.343270][58131:58136] CHIP:DMG:
+ [1660653005.343331][58131:58136] CHIP:DMG: InteractionModelRevision = 1
+ [1660653005.343392][58131:58136] CHIP:DMG: }
+ [1660653005.343616][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653005.343884][58131:58136] CHIP:TOO: Location: XX
+ [1660653005.343983][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa00129b0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 1 0 --keepSubscriptions 1
+ [1660653043.575397][58131:58136] CHIP:DMG: ReportDataMessage =
+ [1660653043.575423][58131:58136] CHIP:DMG: {
+ [1660653043.575445][58131:58136] CHIP:DMG: SubscriptionId = 0x1ff9dbc5,
+ [1660653043.575467][58131:58136] CHIP:DMG: AttributeReportIBs =
+ [1660653043.575504][58131:58136] CHIP:DMG: [
+ [1660653043.575526][58131:58136] CHIP:DMG: AttributeReportIB =
+ [1660653043.575556][58131:58136] CHIP:DMG: {
+ [1660653043.575579][58131:58136] CHIP:DMG: AttributeDataIB =
+ [1660653043.575605][58131:58136] CHIP:DMG: {
+ [1660653043.575633][58131:58136] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653043.575658][58131:58136] CHIP:DMG: AttributePathIB =
+ [1660653043.575686][58131:58136] CHIP:DMG: {
+ [1660653043.575713][58131:58136] CHIP:DMG: Endpoint = 0x0,
+ [1660653043.575743][58131:58136] CHIP:DMG: Cluster = 0x28,
+ [1660653043.575806][58131:58136] CHIP:DMG: Attribute = 0x0000_0010,
+ [1660653043.575833][58131:58136] CHIP:DMG: }
+ [1660653043.575863][58131:58136] CHIP:DMG:
+ [1660653043.575892][58131:58136] CHIP:DMG: Data = false,
+ [1660653043.575917][58131:58136] CHIP:DMG: },
+ [1660653043.575944][58131:58136] CHIP:DMG:
+ [1660653043.575966][58131:58136] CHIP:DMG: },
+ [1660653043.575993][58131:58136] CHIP:DMG:
+ [1660653043.576013][58131:58136] CHIP:DMG: ],
+ [1660653043.576041][58131:58136] CHIP:DMG:
+ [1660653043.576063][58131:58136] CHIP:DMG: InteractionModelRevision = 1
+ [1660653043.576084][58131:58136] CHIP:DMG: }
+ [1660653043.576169][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653043.576207][58131:58136] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653043.576240][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0012b40]: Moving to [AwaitingSu]
+
+
+
+ on the 2nd reference device(RD2) send 3 Subscribe Request Messages to DUT.
+ basic subscribe node-label 100 1000 2 0 --commissioner-name beta --keepSubscriptions 1
+ [1660653125.592268][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653125.592310][58143:58148] CHIP:DMG: {
+ [1660653125.592348][58143:58148] CHIP:DMG: SubscriptionId = 0xc15110c4,
+ [1660653125.592387][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653125.592435][58143:58148] CHIP:DMG: [
+ [1660653125.592472][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653125.592527][58143:58148] CHIP:DMG: {
+ [1660653125.592568][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653125.592618][58143:58148] CHIP:DMG: {
+ [1660653125.592675][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653125.592726][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653125.592785][58143:58148] CHIP:DMG: {
+ [1660653125.592839][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653125.592896][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653125.592946][58143:58148] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660653125.592997][58143:58148] CHIP:DMG: }
+ [1660653125.593051][58143:58148] CHIP:DMG:
+ [1660653125.593109][58143:58148] CHIP:DMG: Data = "" (0 chars),
+ [1660653125.593158][58143:58148] CHIP:DMG: },
+ [1660653125.593212][58143:58148] CHIP:DMG:
+ [1660653125.593255][58143:58148] CHIP:DMG: },
+ [1660653125.593305][58143:58148] CHIP:DMG:
+ [1660653125.593342][58143:58148] CHIP:DMG: ],
+ [1660653125.593390][58143:58148] CHIP:DMG:
+ [1660653125.593428][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653125.593464][58143:58148] CHIP:DMG: }
+ [1660653125.593640][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660653125.593706][58143:58148] CHIP:TOO: NodeLabel:
+ [1660653125.593776][58143:58148] CHIP:DMG: MoveToState ReadClient[0xffff6800df30]: Moving to [AwaitingSu]
+
+
+
+
+ basic subscribe location 100 1000 2 0 --commissioner-name beta --keepSubscriptions 1
+ [1660653198.460290][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653198.460359][58143:58148] CHIP:DMG: {
+ [1660653198.460423][58143:58148] CHIP:DMG: SubscriptionId = 0xfed77bda,
+ [1660653198.460487][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653198.460567][58143:58148] CHIP:DMG: [
+ [1660653198.460630][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653198.460718][58143:58148] CHIP:DMG: {
+ [1660653198.460786][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653198.460871][58143:58148] CHIP:DMG: {
+ [1660653198.460966][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653198.461058][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653198.461147][58143:58148] CHIP:DMG: {
+ [1660653198.461244][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653198.461335][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653198.461427][58143:58148] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653198.461513][58143:58148] CHIP:DMG: }
+ [1660653198.461604][58143:58148] CHIP:DMG:
+ [1660653198.461699][58143:58148] CHIP:DMG: Data = "XX" (2 chars),
+ [1660653198.461782][58143:58148] CHIP:DMG: },
+ [1660653198.461880][58143:58148] CHIP:DMG:
+ [1660653198.461952][58143:58148] CHIP:DMG: },
+ [1660653198.462037][58143:58148] CHIP:DMG:
+ [1660653198.462099][58143:58148] CHIP:DMG: ],
+ [1660653198.462176][58143:58148] CHIP:DMG:
+ [1660653198.462241][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653198.462303][58143:58148] CHIP:DMG: }
+ [1660653198.462524][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653198.462606][58143:58148] CHIP:TOO: Location: XX
+ [1660653198.462695][58143:58148] CHIP:DMG: MoveToState ReadClient[0xffff68010fa0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 2 0 --commissioner-name beta --keepSubscriptions 1
+ [1660653260.633215][58143:58148] CHIP:EM: Removed CHIP MessageCounter:178377836 from RetransTable on exchange 25360i
+ [1660653260.633327][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653260.633387][58143:58148] CHIP:DMG: {
+ [1660653260.633442][58143:58148] CHIP:DMG: SubscriptionId = 0x60feee4d,
+ [1660653260.633493][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653260.633560][58143:58148] CHIP:DMG: [
+ [1660653260.633615][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653260.633691][58143:58148] CHIP:DMG: {
+ [1660653260.633755][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653260.633820][58143:58148] CHIP:DMG: {
+ [1660653260.633891][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653260.633964][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653260.634046][58143:58148] CHIP:DMG: {
+ [1660653260.634130][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653260.634212][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653260.634292][58143:58148] CHIP:DMG: Attribute = 0x0000_0010,
+ [1660653260.634366][58143:58148] CHIP:DMG: }
+ [1660653260.634445][58143:58148] CHIP:DMG:
+ [1660653260.634523][58143:58148] CHIP:DMG: Data = false,
+ [1660653260.634600][58143:58148] CHIP:DMG: },
+ [1660653260.634674][58143:58148] CHIP:DMG:
+ [1660653260.634736][58143:58148] CHIP:DMG: },
+ [1660653260.634802][58143:58148] CHIP:DMG:
+ [1660653260.634855][58143:58148] CHIP:DMG: ],
+ [1660653260.635066][58143:58148] CHIP:DMG:
+ [1660653260.635128][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653260.635181][58143:58148] CHIP:DMG: }
+ [1660653260.635371][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653260.635446][58143:58148] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653260.635523][58143:58148] CHIP:DMG: MoveToState ReadClient[0xffff68011170]: Moving to [AwaitingSu]
+
+
+
+
+ on the 3rd reference device(RD3) send 3 Subscribe Request Messages to DUT.
+ basic subscribe node-label 100 1000 3 0 --commissioner-name 4 --keepSubscriptions 1
+ [1660653438.741061][58149:58154] CHIP:EM: Removed CHIP MessageCounter:141916359 from RetransTable on exchange 34400i
+ [1660653438.741116][58149:58154] CHIP:DMG: ReportDataMessage =
+ [1660653438.741143][58149:58154] CHIP:DMG: {
+ [1660653438.741236][58149:58154] CHIP:DMG: SubscriptionId = 0xff93c648,
+ [1660653438.741262][58149:58154] CHIP:DMG: AttributeReportIBs =
+ [1660653438.741294][58149:58154] CHIP:DMG: [
+ [1660653438.741318][58149:58154] CHIP:DMG: AttributeReportIB =
+ [1660653438.741352][58149:58154] CHIP:DMG: {
+ [1660653438.741380][58149:58154] CHIP:DMG: AttributeDataIB =
+ [1660653438.741415][58149:58154] CHIP:DMG: {
+ [1660653438.741448][58149:58154] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653438.741479][58149:58154] CHIP:DMG: AttributePathIB =
+ [1660653438.741517][58149:58154] CHIP:DMG: {
+ [1660653438.741553][58149:58154] CHIP:DMG: Endpoint = 0x0,
+ [1660653438.741592][58149:58154] CHIP:DMG: Cluster = 0x28,
+ [1660653438.741627][58149:58154] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660653438.741660][58149:58154] CHIP:DMG: }
+ [1660653438.741695][58149:58154] CHIP:DMG:
+ [1660653438.741732][58149:58154] CHIP:DMG: Data = "" (0 chars),
+ [1660653438.741764][58149:58154] CHIP:DMG: },
+ [1660653438.741800][58149:58154] CHIP:DMG:
+ [1660653438.741828][58149:58154] CHIP:DMG: },
+ [1660653438.741859][58149:58154] CHIP:DMG:
+ [1660653438.741883][58149:58154] CHIP:DMG: ],
+ [1660653438.741913][58149:58154] CHIP:DMG:
+ [1660653438.741938][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653438.741961][58149:58154] CHIP:DMG: }
+ [1660653438.742081][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660653438.742125][58149:58154] CHIP:TOO: NodeLabel:
+ [1660653438.742171][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff740129e0]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 3 0 --commissioner-name 4 --keepSubscriptions 1
+ [1660653500.502738][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653500.502801][58149:58154] CHIP:TOO: Location: XX
+ [1660653500.502870][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff7400adb0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 3 0 --commissioner-name 4 --keepSubscriptions 1
+
+ [1660653545.651601][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653545.651636][58149:58154] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653545.651669][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff74009a20]: Moving to [AwaitingSu]
+
+
+
+ on the 4th reference device(RD4) send 3 Subscribe Request Messages to DUT.
+ basic subscribe node-label 100 1000 4 0 --commissioner-name 5 --keepSubscriptions 1
+
+ [1660652952.539010][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660652952.539073][58131:58136] CHIP:TOO: NodeLabel:
+ [1660652952.539140][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0004bc0]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 4 0 --commissioner-name 5 --keepSubscriptions 1
+
+ [1660653500.502738][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653500.502801][58149:58154] CHIP:TOO: Location: XX
+ [1660653500.502870][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff7400adb0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 4 0 --commissioner-name 5 --keepSubscriptions 1
+ [1660653545.651601][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653545.651636][58149:58154] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653545.651669][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff74009a20]: Moving to [AwaitingSu]
+
+
+
+ on the 5th reference device(RD5) send 3 Subscribe Request Messages to DUT.
+ basic subscribe node-label 100 1000 5 0 --commissioner-name 6 --keepSubscriptions 1
+
+ [1660652952.539010][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660652952.539073][58131:58136] CHIP:TOO: NodeLabel:
+ [1660652952.539140][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0004bc0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe location 100 1000 5 0 --commissioner-name 6 --keepSubscriptions 1
+
+ [1660653500.502738][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653500.502801][58149:58154] CHIP:TOO: Location: XX
+ [1660653500.502870][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff7400adb0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 5 0 --commissioner-name beta --keepSubscriptions 1
+ : }
+ [1660653545.651601][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653545.651636][58149:58154] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653545.651669][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff74009a20]: Moving to [AwaitingSu]
+
+
+
+ Once all 15 subscriptions are active send one more subscriptiopn command in RD1 and Verify that the subscriptions from RD2, RD3, RD4 and RD5 are not affected.
+ basic subscribe product-id 100 1000 1 0 --keepSubscriptions 1
+ [1660654945.477837][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0004 DataVersion: 3782190841
+ [1660654945.477932][58149:58154] CHIP:TOO: ProductID: 32769
+ [1660654945.478023][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff740127c0]: Moving to [AwaitingSu]
disabled: true
- label:
@@ -997,440 +1058,285 @@ tests:
verification: |
Please run this test in chip tool interactive mode ./chip-tool interactive start
+ Example commands given below are using 5 reference devices (User can use 5 reference devices and send the below command in from each reference device)
+
Send 3 Subscriptionrequest message from each Reference Device(Eg. RD1...) to DUT
and verify all the subscription requests are succes. and in The subscription request
from RD1 should contain 6 paths, Verify that the subscriptions from RD2, RD3, RD4 and
RD5 are not affected.
- Example commands given below are using 3 reference device (User can use 5 reference device and send the below command in from each reference device)
-
- on the first reference deice enter:
-
- levelcontrol subscribe min-level 10 100 1 1
- [1657717758.176398][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717758.176466][6034:6039] CHIP:DMG: {
- [1657717758.176545][6034:6039] CHIP:DMG: SubscriptionId = 0xbf960b6c,
- [1657717758.176619][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717758.176698][6034:6039] CHIP:DMG: [
- [1657717758.176750][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717758.176818][6034:6039] CHIP:DMG: {
- [1657717758.176872][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717758.176959][6034:6039] CHIP:DMG: {
- [1657717758.177034][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657717758.177136][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717758.177206][6034:6039] CHIP:DMG: {
- [1657717758.177269][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657717758.177377][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657717758.177429][6034:6039] CHIP:DMG: Attribute = 0x0000_0002,
- [1657717758.177488][6034:6039] CHIP:DMG: }
- [1657717758.177551][6034:6039] CHIP:DMG:
- [1657717758.177600][6034:6039] CHIP:DMG: Data = 1,
- [1657717758.177655][6034:6039] CHIP:DMG: },
- [1657717758.177716][6034:6039] CHIP:DMG:
- [1657717758.177755][6034:6039] CHIP:DMG: },
- [1657717758.177813][6034:6039] CHIP:DMG:
- [1657717758.177850][6034:6039] CHIP:DMG: ],
- [1657717758.177896][6034:6039] CHIP:DMG:
- [1657717758.177933][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717758.177969][6034:6039] CHIP:DMG: }
- [1657717758.178105][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0002 DataVersion: 832499115
- [1657717758.178156][6034:6039] CHIP:TOO: min level: 1
- [1657717758.178215][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c004100]: Moving to [AwaitingSu]
-
-
-
- onoff subscribe global-scene-control 10 100 1 1
- [1657717721.303602][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717721.303670][6034:6039] CHIP:DMG: {
- [1657717721.303730][6034:6039] CHIP:DMG: SubscriptionId = 0x2b768ffd,
- [1657717721.303791][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717721.303867][6034:6039] CHIP:DMG: [
- [1657717721.303928][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717721.304007][6034:6039] CHIP:DMG: {
- [1657717721.304071][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717721.304149][6034:6039] CHIP:DMG: {
- [1657717721.304225][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657717721.304297][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717721.304372][6034:6039] CHIP:DMG: {
- [1657717721.304454][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657717721.304542][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657717721.304628][6034:6039] CHIP:DMG: Attribute = 0x0000_4000,
- [1657717721.304711][6034:6039] CHIP:DMG: }
- [1657717721.304797][6034:6039] CHIP:DMG:
- [1657717721.304881][6034:6039] CHIP:DMG: Data = true,
- [1657717721.304958][6034:6039] CHIP:DMG: },
- [1657717721.305039][6034:6039] CHIP:DMG:
- [1657717721.305102][6034:6039] CHIP:DMG: },
- [1657717721.305178][6034:6039] CHIP:DMG:
- [1657717721.305238][6034:6039] CHIP:DMG: ],
- [1657717721.305348][6034:6039] CHIP:DMG:
- [1657717721.305412][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717721.305470][6034:6039] CHIP:DMG: }
- [1657717721.305679][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4000 DataVersion: 1934241157
- [1657717721.305761][6034:6039] CHIP:TOO: GlobalSceneControl: TRUE
- [1657717721.305849][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c0092b0]: Moving to [AwaitingSu]
-
-
- temperaturemeasurement subscribe tolerance 10 100 1 1
- [1657717893.368431][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717893.368514][6034:6039] CHIP:DMG: {
- [1657717893.368562][6034:6039] CHIP:DMG: SubscriptionId = 0x87e778d7,
- [1657717893.368649][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717893.368744][6034:6039] CHIP:DMG: [
- [1657717893.368837][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717893.368943][6034:6039] CHIP:DMG: {
- [1657717893.369046][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717893.369138][6034:6039] CHIP:DMG: {
- [1657717893.369231][6034:6039] CHIP:DMG: DataVersion = 0x8ca282b3,
- [1657717893.369359][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717893.369461][6034:6039] CHIP:DMG: {
- [1657717893.369563][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657717893.369674][6034:6039] CHIP:DMG: Cluster = 0x402,
- [1657717893.369786][6034:6039] CHIP:DMG: Attribute = 0x0000_0003,
- [1657717893.369896][6034:6039] CHIP:DMG: }
- [1657717893.370000][6034:6039] CHIP:DMG:
- [1657717893.370094][6034:6039] CHIP:DMG: Data = 0,
- [1657717893.370192][6034:6039] CHIP:DMG: },
- [1657717893.370284][6034:6039] CHIP:DMG:
- [1657717893.370359][6034:6039] CHIP:DMG: },
- [1657717893.370439][6034:6039] CHIP:DMG:
- [1657717893.370504][6034:6039] CHIP:DMG: ],
- [1657717893.370575][6034:6039] CHIP:DMG:
- [1657717893.370630][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717893.370699][6034:6039] CHIP:DMG: }
- [1657717893.370819][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0402 Attribute 0x0000_0003 DataVersion: 2359460531
- [1657717893.370888][6034:6039] CHIP:TOO: Tolerance: 0
- [1657717893.370929][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c0092b0]: Moving to [AwaitingSu]
-
-
-
-
-
- any subscribe-by-id 0x0008 0x0010 10 100 1 1
-
- [1657716563.242433][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716563.242475][6034:6039] CHIP:DMG: {
- [1657716563.242507][6034:6039] CHIP:DMG: SubscriptionId = 0xebc26cc4,
- [1657716563.242538][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716563.242577][6034:6039] CHIP:DMG: [
- [1657716563.242607][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716563.242648][6034:6039] CHIP:DMG: {
- [1657716563.242680][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716563.242721][6034:6039] CHIP:DMG: {
- [1657716563.242762][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657716563.242801][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716563.242842][6034:6039] CHIP:DMG: {
- [1657716563.242883][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716563.242928][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657716563.242971][6034:6039] CHIP:DMG: Attribute = 0x0000_0010,
- [1657716563.243012][6034:6039] CHIP:DMG: }
- [1657716563.243056][6034:6039] CHIP:DMG:
- [1657716563.243100][6034:6039] CHIP:DMG: Data = 1,
- [1657716563.243138][6034:6039] CHIP:DMG: },
- [1657716563.243179][6034:6039] CHIP:DMG:
- [1657716563.243213][6034:6039] CHIP:DMG: },
- [1657716563.243251][6034:6039] CHIP:DMG:
- [1657716563.243280][6034:6039] CHIP:DMG: ],
- [1657716563.243318][6034:6039] CHIP:DMG:
- [1657716563.243348][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716563.243377][6034:6039] CHIP:DMG: }
- [1657716563.243531][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0010 DataVersion: 832499115
- [1657716563.243601][6034:6039] CHIP:TOO: on off transition time: 1
- [1657716563.243648][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008e30]: Moving to [AwaitingSu]
-
-
-
- basic subscribe node-label 10 100 1 0
- [1657716599.928585][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716599.928652][6034:6039] CHIP:DMG: {
- [1657716599.928825][6034:6039] CHIP:DMG: SubscriptionId = 0x3d9f1c1,
- [1657716599.928890][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716599.928968][6034:6039] CHIP:DMG: [
- [1657716599.929029][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716599.929122][6034:6039] CHIP:DMG: {
- [1657716599.929192][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716599.929278][6034:6039] CHIP:DMG: {
- [1657716599.929399][6034:6039] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657716599.929476][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716599.929687][6034:6039] CHIP:DMG: {
- [1657716599.929774][6034:6039] CHIP:DMG: Endpoint = 0x0,
- [1657716599.929861][6034:6039] CHIP:DMG: Cluster = 0x28,
- [1657716599.929949][6034:6039] CHIP:DMG: Attribute = 0x0000_0005,
- [1657716599.930031][6034:6039] CHIP:DMG: }
- [1657716599.930115][6034:6039] CHIP:DMG:
- [1657716599.930285][6034:6039] CHIP:DMG: Data = "1",
- [1657716599.930370][6034:6039] CHIP:DMG: },
- [1657716599.930454][6034:6039] CHIP:DMG:
- [1657716599.930578][6034:6039] CHIP:DMG: },
- [1657716599.930660][6034:6039] CHIP:DMG:
- [1657716599.930720][6034:6039] CHIP:DMG: ],
- [1657716599.930796][6034:6039] CHIP:DMG:
- [1657716599.930856][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716599.930914][6034:6039] CHIP:DMG: }
- [1657716599.931131][6034:6039] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 462674998
- [1657716599.931326][6034:6039] CHIP:TOO: NodeLabel: 1
- [1657716599.931420][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008f20]: Moving to [AwaitingSu]
-
- onoff subscribe on-time 10 100 1 1
- [1657716634.400468][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716634.400499][6034:6039] CHIP:DMG: {
- [1657716634.400525][6034:6039] CHIP:DMG: SubscriptionId = 0xf9b815a2,
- [1657716634.400551][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716634.400585][6034:6039] CHIP:DMG: [
- [1657716634.400610][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716634.400647][6034:6039] CHIP:DMG: {
- [1657716634.400674][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716634.400705][6034:6039] CHIP:DMG: {
- [1657716634.400739][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657716634.400775][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716634.400809][6034:6039] CHIP:DMG: {
- [1657716634.400847][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716634.400883][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657716634.400920][6034:6039] CHIP:DMG: Attribute = 0x0000_4001,
- [1657716634.400950][6034:6039] CHIP:DMG: }
- [1657716634.400987][6034:6039] CHIP:DMG:
- [1657716634.401024][6034:6039] CHIP:DMG: Data = 1,
- [1657716634.401058][6034:6039] CHIP:DMG: },
- [1657716634.401092][6034:6039] CHIP:DMG:
- [1657716634.401117][6034:6039] CHIP:DMG: },
- [1657716634.401148][6034:6039] CHIP:DMG:
- [1657716634.401172][6034:6039] CHIP:DMG: ],
- [1657716634.401202][6034:6039] CHIP:DMG:
- [1657716634.401227][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716634.401250][6034:6039] CHIP:DMG: }
- [1657716634.401383][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4001 DataVersion: 1934241157
- [1657716634.401428][6034:6039] CHIP:TOO: OnTime: 1
- [1657716634.401466][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008c70]: Moving to [AwaitingSu]
-
-
- levelcontrol subscribe on-level 10 100 1 1
- [1657716667.237484][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716667.237515][6034:6039] CHIP:DMG: {
- [1657716667.237541][6034:6039] CHIP:DMG: SubscriptionId = 0xe457240d,
- [1657716667.237571][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716667.237738][6034:6039] CHIP:DMG: [
- [1657716667.237768][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716667.237819][6034:6039] CHIP:DMG: {
- [1657716667.237850][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716667.237897][6034:6039] CHIP:DMG: {
- [1657716667.237944][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657716667.237993][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716667.238044][6034:6039] CHIP:DMG: {
- [1657716667.238094][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716667.238145][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657716667.238196][6034:6039] CHIP:DMG: Attribute = 0x0000_0011,
- [1657716667.238244][6034:6039] CHIP:DMG: }
- [1657716667.238294][6034:6039] CHIP:DMG:
- [1657716667.238345][6034:6039] CHIP:DMG: Data = 1,
- [1657716667.238391][6034:6039] CHIP:DMG: },
- [1657716667.238437][6034:6039] CHIP:DMG:
- [1657716667.238467][6034:6039] CHIP:DMG: },
- [1657716667.238509][6034:6039] CHIP:DMG:
- [1657716667.238535][6034:6039] CHIP:DMG: ],
- [1657716667.238567][6034:6039] CHIP:DMG:
- [1657716667.238591][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716667.238614][6034:6039] CHIP:DMG: }
- [1657716667.238709][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0011 DataVersion: 832499115
- [1657716667.238752][6034:6039] CHIP:TOO: on level: 1
- [1657716667.238790][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c0092b0]: Moving to [AwaitingSu]
-
-
-
- on the 2nd reference deice enter:
- onoff subscribe start-up-on-off 10 100 1 1
- [1657716703.322836][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716703.322895][6034:6039] CHIP:DMG: {
- [1657716703.322947][6034:6039] CHIP:DMG: SubscriptionId = 0x8962f8b4,
- [1657716703.323010][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716703.323080][6034:6039] CHIP:DMG: [
- [1657716703.323133][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716703.323217][6034:6039] CHIP:DMG: {
- [1657716703.323280][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716703.323341][6034:6039] CHIP:DMG: {
- [1657716703.323396][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657716703.323449][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716703.323519][6034:6039] CHIP:DMG: {
- [1657716703.323591][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716703.323671][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657716703.323759][6034:6039] CHIP:DMG: Attribute = 0x0000_4003,
- [1657716703.323835][6034:6039] CHIP:DMG: }
- [1657716703.323909][6034:6039] CHIP:DMG:
- [1657716703.323981][6034:6039] CHIP:DMG: Data = 1,
- [1657716703.324047][6034:6039] CHIP:DMG: },
- [1657716703.324113][6034:6039] CHIP:DMG:
- [1657716703.324170][6034:6039] CHIP:DMG: },
- [1657716703.324238][6034:6039] CHIP:DMG:
- [1657716703.324289][6034:6039] CHIP:DMG: ],
- [1657716703.324352][6034:6039] CHIP:DMG:
- [1657716703.324403][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716703.324457][6034:6039] CHIP:DMG: }
- [1657716703.324785][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4003 DataVersion: 1934241157
- [1657716703.324904][6034:6039] CHIP:TOO: StartUpOnOff: 1
- [1657716703.324985][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008e30]: Moving to [AwaitingSu]
-
-
-
- basic subscribe node-label 10 100 1 0
- [1657716743.523056][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716743.523131][6034:6039] CHIP:DMG: {
- [1657716743.523178][6034:6039] CHIP:DMG: SubscriptionId = 0xc3b3c364,
- [1657716743.523240][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716743.523302][6034:6039] CHIP:DMG: [
- [1657716743.523362][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716743.523433][6034:6039] CHIP:DMG: {
- [1657716743.523499][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716743.523555][6034:6039] CHIP:DMG: {
- [1657716743.523627][6034:6039] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657716743.523682][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716743.523738][6034:6039] CHIP:DMG: {
- [1657716743.523812][6034:6039] CHIP:DMG: Endpoint = 0x0,
- [1657716743.523873][6034:6039] CHIP:DMG: Cluster = 0x28,
- [1657716743.523934][6034:6039] CHIP:DMG: Attribute = 0x0000_0005,
- [1657716743.523990][6034:6039] CHIP:DMG: }
- [1657716743.524050][6034:6039] CHIP:DMG:
- [1657716743.524111][6034:6039] CHIP:DMG: Data = "1",
- [1657716743.524164][6034:6039] CHIP:DMG: },
- [1657716743.524223][6034:6039] CHIP:DMG:
- [1657716743.524271][6034:6039] CHIP:DMG: },
- [1657716743.524328][6034:6039] CHIP:DMG:
- [1657716743.524372][6034:6039] CHIP:DMG: ],
- [1657716743.524430][6034:6039] CHIP:DMG:
- [1657716743.524475][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716743.524518][6034:6039] CHIP:DMG: }
- [1657716743.524683][6034:6039] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 462674998
- [1657716743.524745][6034:6039] CHIP:TOO: NodeLabel: 1
- [1657716743.524813][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c004100]: Moving to [AwaitingSu]
-
-
- levelcontrol subscribe on-transition-time 10 100 1 1
- [1657716911.280884][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716911.280957][6034:6039] CHIP:DMG: {
- [1657716911.281018][6034:6039] CHIP:DMG: SubscriptionId = 0x1a544eea,
- [1657716911.281080][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716911.281157][6034:6039] CHIP:DMG: [
- [1657716911.281217][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716911.281338][6034:6039] CHIP:DMG: {
- [1657716911.281408][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716911.281487][6034:6039] CHIP:DMG: {
- [1657716911.281570][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657716911.281649][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716911.281723][6034:6039] CHIP:DMG: {
- [1657716911.281813][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716911.281892][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657716911.281978][6034:6039] CHIP:DMG: Attribute = 0x0000_0012,
- [1657716911.282059][6034:6039] CHIP:DMG: }
- [1657716911.282145][6034:6039] CHIP:DMG:
- [1657716911.282236][6034:6039] CHIP:DMG: Data = 0,
- [1657716911.282311][6034:6039] CHIP:DMG: },
- [1657716911.282392][6034:6039] CHIP:DMG:
- [1657716911.282459][6034:6039] CHIP:DMG: },
- [1657716911.282534][6034:6039] CHIP:DMG:
- [1657716911.282593][6034:6039] CHIP:DMG: ],
- [1657716911.282667][6034:6039] CHIP:DMG:
- [1657716911.282727][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716911.282786][6034:6039] CHIP:DMG: }
- [1657716911.282995][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0012 DataVersion: 832499115
- [1657716911.283082][6034:6039] CHIP:TOO: on transition time: 0
- [1657716911.283172][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008f20]: Moving to [AwaitingSu]
-
-
- on the 3rd reference deice enter:
- onoff subscribe start-up-on-off 10 100 1 1
- [1657716965.736576][6034:6039] CHIP:EM: Removed CHIP MessageCounter:12313969 from RetransTable on exchange 50225i
- [1657716965.736639][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716965.736669][6034:6039] CHIP:DMG: {
- [1657716965.736695][6034:6039] CHIP:DMG: SubscriptionId = 0x5a6ddc07,
- [1657716965.736741][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716965.736777][6034:6039] CHIP:DMG: [
- [1657716965.736802][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716965.736848][6034:6039] CHIP:DMG: {
- [1657716965.736887][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716965.736932][6034:6039] CHIP:DMG: {
- [1657716965.736978][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657716965.737021][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716965.737067][6034:6039] CHIP:DMG: {
- [1657716965.737113][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716965.737159][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657716965.737207][6034:6039] CHIP:DMG: Attribute = 0x0000_4003,
- [1657716965.737251][6034:6039] CHIP:DMG: }
- [1657716965.737346][6034:6039] CHIP:DMG:
- [1657716965.737396][6034:6039] CHIP:DMG: Data = 1,
- [1657716965.737438][6034:6039] CHIP:DMG: },
- [1657716965.737484][6034:6039] CHIP:DMG:
- [1657716965.737521][6034:6039] CHIP:DMG: },
- [1657716965.737563][6034:6039] CHIP:DMG:
- [1657716965.737589][6034:6039] CHIP:DMG: ],
- [1657716965.737620][6034:6039] CHIP:DMG:
- [1657716965.737645][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716965.737679][6034:6039] CHIP:DMG: }
- [1657716965.737779][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4003 DataVersion: 1934241157
- [1657716965.737827][6034:6039] CHIP:TOO: StartUpOnOff: 1
- [1657716965.737867][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008e30]: Moving to [AwaitingSu]
-
-
- basic subscribe reachable 10 100 1 0
- [1657717032.547326][6034:6039] CHIP:EM: Removed CHIP MessageCounter:12313975 from RetransTable on exchange 50227i
- [1657717032.547406][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717032.547470][6034:6039] CHIP:DMG: {
- [1657717032.547507][6034:6039] CHIP:DMG: SubscriptionId = 0x242f7180,
- [1657717032.547560][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717032.547607][6034:6039] CHIP:DMG: [
- [1657717032.547644][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717032.547696][6034:6039] CHIP:DMG: {
- [1657717032.547734][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717032.547779][6034:6039] CHIP:DMG: {
- [1657717032.547829][6034:6039] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657717032.547876][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717032.547925][6034:6039] CHIP:DMG: {
- [1657717032.547974][6034:6039] CHIP:DMG: Endpoint = 0x0,
- [1657717032.548027][6034:6039] CHIP:DMG: Cluster = 0x28,
- [1657717032.548077][6034:6039] CHIP:DMG: Attribute = 0x0000_0011,
- [1657717032.548124][6034:6039] CHIP:DMG: }
- [1657717032.548175][6034:6039] CHIP:DMG:
- [1657717032.548225][6034:6039] CHIP:DMG: Data = true,
- [1657717032.548272][6034:6039] CHIP:DMG: },
- [1657717032.548321][6034:6039] CHIP:DMG:
- [1657717032.548358][6034:6039] CHIP:DMG: },
- [1657717032.548403][6034:6039] CHIP:DMG:
- [1657717032.548438][6034:6039] CHIP:DMG: ],
- [1657717032.548482][6034:6039] CHIP:DMG:
- [1657717032.548518][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717032.548553][6034:6039] CHIP:DMG: }
- [1657717032.548686][6034:6039] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0011 DataVersion: 462674998
- [1657717032.548795][6034:6039] CHIP:TOO: Reachable: TRUE
- [1657717032.548850][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c0092b0]: Moving to [AwaitingSu]
-
-
- onoff subscribe off-wait-time 10 100 1 1
- [1657717085.996867][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717085.996895][6034:6039] CHIP:DMG: {
- [1657717085.996920][6034:6039] CHIP:DMG: SubscriptionId = 0xbe7eee69,
- [1657717085.996945][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717085.996977][6034:6039] CHIP:DMG: [
- [1657717085.997002][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717085.997035][6034:6039] CHIP:DMG: {
- [1657717085.997060][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717085.997089][6034:6039] CHIP:DMG: {
- [1657717085.997122][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657717085.997153][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717085.997187][6034:6039] CHIP:DMG: {
- [1657717085.997220][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657717085.997258][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657717085.997317][6034:6039] CHIP:DMG: Attribute = 0x0000_4002,
- [1657717085.997367][6034:6039] CHIP:DMG: }
- [1657717085.997404][6034:6039] CHIP:DMG:
- [1657717085.997440][6034:6039] CHIP:DMG: Data = 0,
- [1657717085.997471][6034:6039] CHIP:DMG: },
- [1657717085.997504][6034:6039] CHIP:DMG:
- [1657717085.997531][6034:6039] CHIP:DMG: },
- [1657717085.997561][6034:6039] CHIP:DMG:
- [1657717085.997585][6034:6039] CHIP:DMG: ],
- [1657717085.997615][6034:6039] CHIP:DMG:
- [1657717085.997640][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717085.997663][6034:6039] CHIP:DMG: }
- [1657717085.997757][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4002 DataVersion: 1934241157
- [1657717085.997793][6034:6039] CHIP:TOO: OffWaitTime: 0
- [1657717085.997830][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008f20]: Moving to [AwaitingSu]
+ on the 2nd reference device(RD2) send 3 Subscribe Request Messages to DUT.
+ basic subscribe node-label 100 1000 2 0 --commissioner-name beta --keepSubscriptions 1
+ [1660653125.592268][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653125.592310][58143:58148] CHIP:DMG: {
+ [1660653125.592348][58143:58148] CHIP:DMG: SubscriptionId = 0xc15110c4,
+ [1660653125.592387][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653125.592435][58143:58148] CHIP:DMG: [
+ [1660653125.592472][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653125.592527][58143:58148] CHIP:DMG: {
+ [1660653125.592568][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653125.592618][58143:58148] CHIP:DMG: {
+ [1660653125.592675][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653125.592726][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653125.592785][58143:58148] CHIP:DMG: {
+ [1660653125.592839][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653125.592896][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653125.592946][58143:58148] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660653125.592997][58143:58148] CHIP:DMG: }
+ [1660653125.593051][58143:58148] CHIP:DMG:
+ [1660653125.593109][58143:58148] CHIP:DMG: Data = "" (0 chars),
+ [1660653125.593158][58143:58148] CHIP:DMG: },
+ [1660653125.593212][58143:58148] CHIP:DMG:
+ [1660653125.593255][58143:58148] CHIP:DMG: },
+ [1660653125.593305][58143:58148] CHIP:DMG:
+ [1660653125.593342][58143:58148] CHIP:DMG: ],
+ [1660653125.593390][58143:58148] CHIP:DMG:
+ [1660653125.593428][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653125.593464][58143:58148] CHIP:DMG: }
+ [1660653125.593640][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660653125.593706][58143:58148] CHIP:TOO: NodeLabel:
+ [1660653125.593776][58143:58148] CHIP:DMG: MoveToState ReadClient[0xffff6800df30]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 2 0 --commissioner-name beta --keepSubscriptions 1
+ [1660653198.460290][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653198.460359][58143:58148] CHIP:DMG: {
+ [1660653198.460423][58143:58148] CHIP:DMG: SubscriptionId = 0xfed77bda,
+ [1660653198.460487][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653198.460567][58143:58148] CHIP:DMG: [
+ [1660653198.460630][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653198.460718][58143:58148] CHIP:DMG: {
+ [1660653198.460786][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653198.460871][58143:58148] CHIP:DMG: {
+ [1660653198.460966][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653198.461058][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653198.461147][58143:58148] CHIP:DMG: {
+ [1660653198.461244][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653198.461335][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653198.461427][58143:58148] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653198.461513][58143:58148] CHIP:DMG: }
+ [1660653198.461604][58143:58148] CHIP:DMG:
+ [1660653198.461699][58143:58148] CHIP:DMG: Data = "XX" (2 chars),
+ [1660653198.461782][58143:58148] CHIP:DMG: },
+ [1660653198.461880][58143:58148] CHIP:DMG:
+ [1660653198.461952][58143:58148] CHIP:DMG: },
+ [1660653198.462037][58143:58148] CHIP:DMG:
+ [1660653198.462099][58143:58148] CHIP:DMG: ],
+ [1660653198.462176][58143:58148] CHIP:DMG:
+ [1660653198.462241][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653198.462303][58143:58148] CHIP:DMG: }
+ [1660653198.462524][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653198.462606][58143:58148] CHIP:TOO: Location: XX
+ [1660653198.462695][58143:58148] CHIP:DMG: MoveToState ReadClient[0xffff68010fa0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 2 0 --commissioner-name beta --keepSubscriptions 1
+ [1660653260.633215][58143:58148] CHIP:EM: Removed CHIP MessageCounter:178377836 from RetransTable on exchange 25360i
+ [1660653260.633327][58143:58148] CHIP:DMG: ReportDataMessage =
+ [1660653260.633387][58143:58148] CHIP:DMG: {
+ [1660653260.633442][58143:58148] CHIP:DMG: SubscriptionId = 0x60feee4d,
+ [1660653260.633493][58143:58148] CHIP:DMG: AttributeReportIBs =
+ [1660653260.633560][58143:58148] CHIP:DMG: [
+ [1660653260.633615][58143:58148] CHIP:DMG: AttributeReportIB =
+ [1660653260.633691][58143:58148] CHIP:DMG: {
+ [1660653260.633755][58143:58148] CHIP:DMG: AttributeDataIB =
+ [1660653260.633820][58143:58148] CHIP:DMG: {
+ [1660653260.633891][58143:58148] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653260.633964][58143:58148] CHIP:DMG: AttributePathIB =
+ [1660653260.634046][58143:58148] CHIP:DMG: {
+ [1660653260.634130][58143:58148] CHIP:DMG: Endpoint = 0x0,
+ [1660653260.634212][58143:58148] CHIP:DMG: Cluster = 0x28,
+ [1660653260.634292][58143:58148] CHIP:DMG: Attribute = 0x0000_0010,
+ [1660653260.634366][58143:58148] CHIP:DMG: }
+ [1660653260.634445][58143:58148] CHIP:DMG:
+ [1660653260.634523][58143:58148] CHIP:DMG: Data = false,
+ [1660653260.634600][58143:58148] CHIP:DMG: },
+ [1660653260.634674][58143:58148] CHIP:DMG:
+ [1660653260.634736][58143:58148] CHIP:DMG: },
+ [1660653260.634802][58143:58148] CHIP:DMG:
+ [1660653260.634855][58143:58148] CHIP:DMG: ],
+ [1660653260.635066][58143:58148] CHIP:DMG:
+ [1660653260.635128][58143:58148] CHIP:DMG: InteractionModelRevision = 1
+ [1660653260.635181][58143:58148] CHIP:DMG: }
+ [1660653260.635371][58143:58148] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653260.635446][58143:58148] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653260.635523][58143:58148] CHIP:DMG: MoveToState ReadClient[0xffff68011170]: Moving to [AwaitingSu]
+
+
+
+
+ on the 3nd reference device(RD3) send 3 Subscribe Request Messages to DUT.
+ basic subscribe node-label 100 1000 3 0 --commissioner-name 4 --keepSubscriptions 1
+ [1660653438.741061][58149:58154] CHIP:EM: Removed CHIP MessageCounter:141916359 from RetransTable on exchange 34400i
+ [1660653438.741116][58149:58154] CHIP:DMG: ReportDataMessage =
+ [1660653438.741143][58149:58154] CHIP:DMG: {
+ [1660653438.741236][58149:58154] CHIP:DMG: SubscriptionId = 0xff93c648,
+ [1660653438.741262][58149:58154] CHIP:DMG: AttributeReportIBs =
+ [1660653438.741294][58149:58154] CHIP:DMG: [
+ [1660653438.741318][58149:58154] CHIP:DMG: AttributeReportIB =
+ [1660653438.741352][58149:58154] CHIP:DMG: {
+ [1660653438.741380][58149:58154] CHIP:DMG: AttributeDataIB =
+ [1660653438.741415][58149:58154] CHIP:DMG: {
+ [1660653438.741448][58149:58154] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653438.741479][58149:58154] CHIP:DMG: AttributePathIB =
+ [1660653438.741517][58149:58154] CHIP:DMG: {
+ [1660653438.741553][58149:58154] CHIP:DMG: Endpoint = 0x0,
+ [1660653438.741592][58149:58154] CHIP:DMG: Cluster = 0x28,
+ [1660653438.741627][58149:58154] CHIP:DMG: Attribute = 0x0000_0005,
+ [1660653438.741660][58149:58154] CHIP:DMG: }
+ [1660653438.741695][58149:58154] CHIP:DMG:
+ [1660653438.741732][58149:58154] CHIP:DMG: Data = "" (0 chars),
+ [1660653438.741764][58149:58154] CHIP:DMG: },
+ [1660653438.741800][58149:58154] CHIP:DMG:
+ [1660653438.741828][58149:58154] CHIP:DMG: },
+ [1660653438.741859][58149:58154] CHIP:DMG:
+ [1660653438.741883][58149:58154] CHIP:DMG: ],
+ [1660653438.741913][58149:58154] CHIP:DMG:
+ [1660653438.741938][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653438.741961][58149:58154] CHIP:DMG: }
+ [1660653438.742081][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660653438.742125][58149:58154] CHIP:TOO: NodeLabel:
+ [1660653438.742171][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff740129e0]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 3 0 --commissioner-name 4 --keepSubscriptions 1
+ [1660653500.501007][58149:58154] CHIP:DMG: {
+ [1660653500.501077][58149:58154] CHIP:DMG: SubscriptionId = 0xb129bd8c,
+ [1660653500.501126][58149:58154] CHIP:DMG: AttributeReportIBs =
+ [1660653500.501204][58149:58154] CHIP:DMG: [
+ [1660653500.501253][58149:58154] CHIP:DMG: AttributeReportIB =
+ [1660653500.501323][58149:58154] CHIP:DMG: {
+ [1660653500.501397][58149:58154] CHIP:DMG: AttributeDataIB =
+ [1660653500.501466][58149:58154] CHIP:DMG: {
+ [1660653500.501550][58149:58154] CHIP:DMG: DataVersion = 0xe16fa6f6,
+ [1660653500.501615][58149:58154] CHIP:DMG: AttributePathIB =
+ [1660653500.501698][58149:58154] CHIP:DMG: {
+ [1660653500.501765][58149:58154] CHIP:DMG: Endpoint = 0x0,
+ [1660653500.501835][58149:58154] CHIP:DMG: Cluster = 0x28,
+ [1660653500.501905][58149:58154] CHIP:DMG: Attribute = 0x0000_0006,
+ [1660653500.501971][58149:58154] CHIP:DMG: }
+ [1660653500.502041][58149:58154] CHIP:DMG:
+ [1660653500.502111][58149:58154] CHIP:DMG: Data = "XX" (2 chars),
+ [1660653500.502176][58149:58154] CHIP:DMG: },
+ [1660653500.502249][58149:58154] CHIP:DMG:
+ [1660653500.502303][58149:58154] CHIP:DMG: },
+ [1660653500.502367][58149:58154] CHIP:DMG:
+ [1660653500.502414][58149:58154] CHIP:DMG: ],
+ [1660653500.502473][58149:58154] CHIP:DMG:
+ [1660653500.502520][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653500.502567][58149:58154] CHIP:DMG: }
+ [1660653500.502738][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653500.502801][58149:58154] CHIP:TOO: Location: XX
+ [1660653500.502870][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff7400adb0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 3 0 --commissioner-name 4 --keepSubscriptions 1
+ [1660653545.650817][58149:58154] CHIP:DMG: ReportDataMessage =
+ [1660653545.650842][58149:58154] CHIP:DMG: {
+ [1660653545.650864][58149:58154] CHIP:DMG: SubscriptionId = 0x5310d542,
+ .
+ .
+ .
+ [1660653545.651494][58149:58154] CHIP:DMG: InteractionModelRevision = 1
+ [1660653545.651514][58149:58154] CHIP:DMG: }
+ [1660653545.651601][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653545.651636][58149:58154] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653545.651669][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff74009a20]: Moving to [AwaitingSu]
+
+
+
+ on the 4nd reference device(RD4) send 3 Subscribe Request Messages to DUT.
+ basic subscribe node-label 100 1000 4 0 --commissioner-name 5 --keepSubscriptions 1
+
+ [1660652952.539010][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660652952.539073][58131:58136] CHIP:TOO: NodeLabel:
+ [1660652952.539140][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0004bc0]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 4 0 --commissioner-name 5 --keepSubscriptions 1
+
+ [1660653500.502738][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653500.502801][58149:58154] CHIP:TOO: Location: XX
+ [1660653500.502870][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff7400adb0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 4 0 --commissioner-name 5 --keepSubscriptions 1
+ : }
+ [1660653545.651601][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653545.651636][58149:58154] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653545.651669][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff74009a20]: Moving to [AwaitingSu]
+
+
+
+ on the 5th reference device(RD5) send 3 Subscribe Request Messages to DUT.
+ basic subscribe node-label 100 1000 5 0 --commissioner-name 6 --keepSubscriptions 1
+
+ [1660652952.539010][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660652952.539073][58131:58136] CHIP:TOO: NodeLabel:
+ [1660652952.539140][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0004bc0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe location 100 1000 5 0 --commissioner-name 6 --keepSubscriptions 1
+
+ [1660653500.502738][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653500.502801][58149:58154] CHIP:TOO: Location: XX
+ [1660653500.502870][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff7400adb0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 5 0 --commissioner-name beta --keepSubscriptions 1
+ : }
+ [1660653545.651601][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653545.651636][58149:58154] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653545.651669][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff74009a20]: Moving to [AwaitingSu]
+
+
+ on the 1st reference device(RD1) send 6 Subscribe Request Messages to DUT, and Verify that the Subscriptions from RD2, RD3, RD4, RD5 are not affected.
+ basic subscribe node-label 100 1000 1 0 --keepSubscriptions 1
+ [1660652952.539010][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 3782190838
+ [1660652952.539073][58131:58136] CHIP:TOO: NodeLabel:
+ [1660652952.539140][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0004bc0]: Moving to [AwaitingSu]
+
+
+ basic subscribe location 100 1000 1 0 --keepSubscriptions 1
+ [1660653005.343616][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0006 DataVersion: 3782190838
+ [1660653005.343884][58131:58136] CHIP:TOO: Location: XX
+ [1660653005.343983][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa00129b0]: Moving to [AwaitingSu]
+
+
+
+ basic subscribe local-config-disabled 100 1000 1 0 --keepSubscriptions 1
+ [1660653043.576169][58131:58136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0010 DataVersion: 3782190838
+ [1660653043.576207][58131:58136] CHIP:TOO: LocalConfigDisabled: FALSE
+ [1660653043.576240][58131:58136] CHIP:DMG: MoveToState ReadClient[0xffffa0012b40]: Moving to [AwaitingSu]
+
+
+
+
+ basic subscribe product-id 100 1000 1 0 --keepSubscriptions 1
+
+ [1660654945.477837][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0004 DataVersion: 3782190841
+ [1660654945.477932][58149:58154] CHIP:TOO: ProductID: 32769
+ [1660654945.478023][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff740127c0]: Moving to [AwaitingSu]
+
+
+ basic subscribe software-version 100 1000 1 0 --keepSubscriptions 1
+
+ [1660654945.477837][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0004 DataVersion: 3782190841
+ [1660654945.477932][58149:58154] CHIP:TOO: software-version:
+ [1660654945.478023][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff740127c0]: Moving to [AwaitingSu]
+
+
+
+
+ basic subscribe hardware-version 100 1000 1 0 --keepSubscriptions 1
+ [1660654945.477837][58149:58154] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0004 DataVersion: 3782190841
+ [1660654945.477932][58149:58154] CHIP:TOO: hardware-version:
+ [1660654945.478023][58149:58154] CHIP:DMG: MoveToState ReadClient[0xffff740127c0]: Moving to [AwaitingSu]
disabled: true
- label:
@@ -1440,408 +1346,6 @@ tests:
Subscription Requests are activated, send a Subscribe request messages
having 3 different paths from RD1A to the DUT."
verification: |
- Please run this test in chip tool interactive mode ./chip-tool interactive start
-
- Send 3 Subscriptionrequest message from each Reference Device(Eg. RD1...) to DUT
- and verify all the subscription requests are succes, then send a Subscribe request messages having 3 different paths from RD1A to the DUT.
-
-
- Example commands given below are using 3 reference device (User can use 5 reference device and send the below command in from each reference device)
-
-
- on the 1st reference deice enter:
- onoff subscribe start-up-on-off 10 100 1 1
- [1657716965.736576][6034:6039] CHIP:EM: Removed CHIP MessageCounter:12313969 from RetransTable on exchange 50225i
- [1657716965.736639][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716965.736669][6034:6039] CHIP:DMG: {
- [1657716965.736695][6034:6039] CHIP:DMG: SubscriptionId = 0x5a6ddc07,
- [1657716965.736741][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716965.736777][6034:6039] CHIP:DMG: [
- [1657716965.736802][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716965.736848][6034:6039] CHIP:DMG: {
- [1657716965.736887][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716965.736932][6034:6039] CHIP:DMG: {
- [1657716965.736978][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657716965.737021][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716965.737067][6034:6039] CHIP:DMG: {
- [1657716965.737113][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716965.737159][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657716965.737207][6034:6039] CHIP:DMG: Attribute = 0x0000_4003,
- [1657716965.737251][6034:6039] CHIP:DMG: }
- [1657716965.737346][6034:6039] CHIP:DMG:
- [1657716965.737396][6034:6039] CHIP:DMG: Data = 1,
- [1657716965.737438][6034:6039] CHIP:DMG: },
- [1657716965.737484][6034:6039] CHIP:DMG:
- [1657716965.737521][6034:6039] CHIP:DMG: },
- [1657716965.737563][6034:6039] CHIP:DMG:
- [1657716965.737589][6034:6039] CHIP:DMG: ],
- [1657716965.737620][6034:6039] CHIP:DMG:
- [1657716965.737645][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716965.737679][6034:6039] CHIP:DMG: }
- [1657716965.737779][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4003 DataVersion: 1934241157
- [1657716965.737827][6034:6039] CHIP:TOO: StartUpOnOff: 1
- [1657716965.737867][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008e30]: Moving to [AwaitingSu]
-
-
- basic subscribe reachable 10 100 1 0
- [1657717032.547326][6034:6039] CHIP:EM: Removed CHIP MessageCounter:12313975 from RetransTable on exchange 50227i
- [1657717032.547406][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717032.547470][6034:6039] CHIP:DMG: {
- [1657717032.547507][6034:6039] CHIP:DMG: SubscriptionId = 0x242f7180,
- [1657717032.547560][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717032.547607][6034:6039] CHIP:DMG: [
- [1657717032.547644][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717032.547696][6034:6039] CHIP:DMG: {
- [1657717032.547734][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717032.547779][6034:6039] CHIP:DMG: {
- [1657717032.547829][6034:6039] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657717032.547876][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717032.547925][6034:6039] CHIP:DMG: {
- [1657717032.547974][6034:6039] CHIP:DMG: Endpoint = 0x0,
- [1657717032.548027][6034:6039] CHIP:DMG: Cluster = 0x28,
- [1657717032.548077][6034:6039] CHIP:DMG: Attribute = 0x0000_0011,
- [1657717032.548124][6034:6039] CHIP:DMG: }
- [1657717032.548175][6034:6039] CHIP:DMG:
- [1657717032.548225][6034:6039] CHIP:DMG: Data = true,
- [1657717032.548272][6034:6039] CHIP:DMG: },
- [1657717032.548321][6034:6039] CHIP:DMG:
- [1657717032.548358][6034:6039] CHIP:DMG: },
- [1657717032.548403][6034:6039] CHIP:DMG:
- [1657717032.548438][6034:6039] CHIP:DMG: ],
- [1657717032.548482][6034:6039] CHIP:DMG:
- [1657717032.548518][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717032.548553][6034:6039] CHIP:DMG: }
- [1657717032.548686][6034:6039] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0011 DataVersion: 462674998
- [1657717032.548795][6034:6039] CHIP:TOO: Reachable: TRUE
- [1657717032.548850][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c0092b0]: Moving to [AwaitingSu]
-
-
- onoff subscribe off-wait-time 10 100 1 1
- [1657717085.996867][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717085.996895][6034:6039] CHIP:DMG: {
- [1657717085.996920][6034:6039] CHIP:DMG: SubscriptionId = 0xbe7eee69,
- [1657717085.996945][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717085.996977][6034:6039] CHIP:DMG: [
- [1657717085.997002][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717085.997035][6034:6039] CHIP:DMG: {
- [1657717085.997060][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717085.997089][6034:6039] CHIP:DMG: {
- [1657717085.997122][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657717085.997153][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717085.997187][6034:6039] CHIP:DMG: {
- [1657717085.997220][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657717085.997258][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657717085.997317][6034:6039] CHIP:DMG: Attribute = 0x0000_4002,
- [1657717085.997367][6034:6039] CHIP:DMG: }
- [1657717085.997404][6034:6039] CHIP:DMG:
- [1657717085.997440][6034:6039] CHIP:DMG: Data = 0,
- [1657717085.997471][6034:6039] CHIP:DMG: },
- [1657717085.997504][6034:6039] CHIP:DMG:
- [1657717085.997531][6034:6039] CHIP:DMG: },
- [1657717085.997561][6034:6039] CHIP:DMG:
- [1657717085.997585][6034:6039] CHIP:DMG: ],
- [1657717085.997615][6034:6039] CHIP:DMG:
- [1657717085.997640][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717085.997663][6034:6039] CHIP:DMG: }
- [1657717085.997757][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4002 DataVersion: 1934241157
- [1657717085.997793][6034:6039] CHIP:TOO: OffWaitTime: 0
- [1657717085.997830][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008f20]: Moving to [AwaitingSu]
-
-
- on the 2nd reference deice enter:
- onoff subscribe start-up-on-off 10 100 1 1
- [1657716703.322836][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716703.322895][6034:6039] CHIP:DMG: {
- [1657716703.322947][6034:6039] CHIP:DMG: SubscriptionId = 0x8962f8b4,
- [1657716703.323010][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716703.323080][6034:6039] CHIP:DMG: [
- [1657716703.323133][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716703.323217][6034:6039] CHIP:DMG: {
- [1657716703.323280][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716703.323341][6034:6039] CHIP:DMG: {
- [1657716703.323396][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657716703.323449][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716703.323519][6034:6039] CHIP:DMG: {
- [1657716703.323591][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716703.323671][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657716703.323759][6034:6039] CHIP:DMG: Attribute = 0x0000_4003,
- [1657716703.323835][6034:6039] CHIP:DMG: }
- [1657716703.323909][6034:6039] CHIP:DMG:
- [1657716703.323981][6034:6039] CHIP:DMG: Data = 1,
- [1657716703.324047][6034:6039] CHIP:DMG: },
- [1657716703.324113][6034:6039] CHIP:DMG:
- [1657716703.324170][6034:6039] CHIP:DMG: },
- [1657716703.324238][6034:6039] CHIP:DMG:
- [1657716703.324289][6034:6039] CHIP:DMG: ],
- [1657716703.324352][6034:6039] CHIP:DMG:
- [1657716703.324403][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716703.324457][6034:6039] CHIP:DMG: }
- [1657716703.324785][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4003 DataVersion: 1934241157
- [1657716703.324904][6034:6039] CHIP:TOO: StartUpOnOff: 1
- [1657716703.324985][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008e30]: Moving to [AwaitingSu]
-
-
-
- basic subscribe node-label 10 100 1 0
- [1657716743.523056][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716743.523131][6034:6039] CHIP:DMG: {
- [1657716743.523178][6034:6039] CHIP:DMG: SubscriptionId = 0xc3b3c364,
- [1657716743.523240][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716743.523302][6034:6039] CHIP:DMG: [
- [1657716743.523362][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716743.523433][6034:6039] CHIP:DMG: {
- [1657716743.523499][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716743.523555][6034:6039] CHIP:DMG: {
- [1657716743.523627][6034:6039] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657716743.523682][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716743.523738][6034:6039] CHIP:DMG: {
- [1657716743.523812][6034:6039] CHIP:DMG: Endpoint = 0x0,
- [1657716743.523873][6034:6039] CHIP:DMG: Cluster = 0x28,
- [1657716743.523934][6034:6039] CHIP:DMG: Attribute = 0x0000_0005,
- [1657716743.523990][6034:6039] CHIP:DMG: }
- [1657716743.524050][6034:6039] CHIP:DMG:
- [1657716743.524111][6034:6039] CHIP:DMG: Data = "1",
- [1657716743.524164][6034:6039] CHIP:DMG: },
- [1657716743.524223][6034:6039] CHIP:DMG:
- [1657716743.524271][6034:6039] CHIP:DMG: },
- [1657716743.524328][6034:6039] CHIP:DMG:
- [1657716743.524372][6034:6039] CHIP:DMG: ],
- [1657716743.524430][6034:6039] CHIP:DMG:
- [1657716743.524475][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716743.524518][6034:6039] CHIP:DMG: }
- [1657716743.524683][6034:6039] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 462674998
- [1657716743.524745][6034:6039] CHIP:TOO: NodeLabel: 1
- [1657716743.524813][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c004100]: Moving to [AwaitingSu]
-
-
- levelcontrol subscribe on-transition-time 10 100 1 1
- [1657716911.280884][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716911.280957][6034:6039] CHIP:DMG: {
- [1657716911.281018][6034:6039] CHIP:DMG: SubscriptionId = 0x1a544eea,
- [1657716911.281080][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716911.281157][6034:6039] CHIP:DMG: [
- [1657716911.281217][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716911.281338][6034:6039] CHIP:DMG: {
- [1657716911.281408][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716911.281487][6034:6039] CHIP:DMG: {
- [1657716911.281570][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657716911.281649][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716911.281723][6034:6039] CHIP:DMG: {
- [1657716911.281813][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716911.281892][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657716911.281978][6034:6039] CHIP:DMG: Attribute = 0x0000_0012,
- [1657716911.282059][6034:6039] CHIP:DMG: }
- [1657716911.282145][6034:6039] CHIP:DMG:
- [1657716911.282236][6034:6039] CHIP:DMG: Data = 0,
- [1657716911.282311][6034:6039] CHIP:DMG: },
- [1657716911.282392][6034:6039] CHIP:DMG:
- [1657716911.282459][6034:6039] CHIP:DMG: },
- [1657716911.282534][6034:6039] CHIP:DMG:
- [1657716911.282593][6034:6039] CHIP:DMG: ],
- [1657716911.282667][6034:6039] CHIP:DMG:
- [1657716911.282727][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716911.282786][6034:6039] CHIP:DMG: }
- [1657716911.282995][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0012 DataVersion: 832499115
- [1657716911.283082][6034:6039] CHIP:TOO: on transition time: 0
- [1657716911.283172][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008f20]: Moving to [AwaitingSu]
-
-
- on the 3rd reference deice enter:
-
- levelcontrol subscribe min-level 10 100 1 1
- [1657717758.176398][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717758.176466][6034:6039] CHIP:DMG: {
- [1657717758.176545][6034:6039] CHIP:DMG: SubscriptionId = 0xbf960b6c,
- [1657717758.176619][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717758.176698][6034:6039] CHIP:DMG: [
- [1657717758.176750][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717758.176818][6034:6039] CHIP:DMG: {
- [1657717758.176872][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717758.176959][6034:6039] CHIP:DMG: {
- [1657717758.177034][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657717758.177136][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717758.177206][6034:6039] CHIP:DMG: {
- [1657717758.177269][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657717758.177377][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657717758.177429][6034:6039] CHIP:DMG: Attribute = 0x0000_0002,
- [1657717758.177488][6034:6039] CHIP:DMG: }
- [1657717758.177551][6034:6039] CHIP:DMG:
- [1657717758.177600][6034:6039] CHIP:DMG: Data = 1,
- [1657717758.177655][6034:6039] CHIP:DMG: },
- [1657717758.177716][6034:6039] CHIP:DMG:
- [1657717758.177755][6034:6039] CHIP:DMG: },
- [1657717758.177813][6034:6039] CHIP:DMG:
- [1657717758.177850][6034:6039] CHIP:DMG: ],
- [1657717758.177896][6034:6039] CHIP:DMG:
- [1657717758.177933][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717758.177969][6034:6039] CHIP:DMG: }
- [1657717758.178105][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0002 DataVersion: 832499115
- [1657717758.178156][6034:6039] CHIP:TOO: min level: 1
- [1657717758.178215][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c004100]: Moving to [AwaitingSu]
-
-
-
- onoff subscribe global-scene-control 10 100 1 1
- [1657717721.303602][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717721.303670][6034:6039] CHIP:DMG: {
- [1657717721.303730][6034:6039] CHIP:DMG: SubscriptionId = 0x2b768ffd,
- [1657717721.303791][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717721.303867][6034:6039] CHIP:DMG: [
- [1657717721.303928][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717721.304007][6034:6039] CHIP:DMG: {
- [1657717721.304071][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717721.304149][6034:6039] CHIP:DMG: {
- [1657717721.304225][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657717721.304297][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717721.304372][6034:6039] CHIP:DMG: {
- [1657717721.304454][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657717721.304542][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657717721.304628][6034:6039] CHIP:DMG: Attribute = 0x0000_4000,
- [1657717721.304711][6034:6039] CHIP:DMG: }
- [1657717721.304797][6034:6039] CHIP:DMG:
- [1657717721.304881][6034:6039] CHIP:DMG: Data = true,
- [1657717721.304958][6034:6039] CHIP:DMG: },
- [1657717721.305039][6034:6039] CHIP:DMG:
- [1657717721.305102][6034:6039] CHIP:DMG: },
- [1657717721.305178][6034:6039] CHIP:DMG:
- [1657717721.305238][6034:6039] CHIP:DMG: ],
- [1657717721.305348][6034:6039] CHIP:DMG:
- [1657717721.305412][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717721.305470][6034:6039] CHIP:DMG: }
- [1657717721.305679][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4000 DataVersion: 1934241157
- [1657717721.305761][6034:6039] CHIP:TOO: GlobalSceneControl: TRUE
- [1657717721.305849][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c0092b0]: Moving to [AwaitingSu]
-
-
- temperaturemeasurement subscribe tolerance 10 100 1 1
- [1657717893.368431][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657717893.368514][6034:6039] CHIP:DMG: {
- [1657717893.368562][6034:6039] CHIP:DMG: SubscriptionId = 0x87e778d7,
- [1657717893.368649][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657717893.368744][6034:6039] CHIP:DMG: [
- [1657717893.368837][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657717893.368943][6034:6039] CHIP:DMG: {
- [1657717893.369046][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657717893.369138][6034:6039] CHIP:DMG: {
- [1657717893.369231][6034:6039] CHIP:DMG: DataVersion = 0x8ca282b3,
- [1657717893.369359][6034:6039] CHIP:DMG: AttributePathIB =
- [1657717893.369461][6034:6039] CHIP:DMG: {
- [1657717893.369563][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657717893.369674][6034:6039] CHIP:DMG: Cluster = 0x402,
- [1657717893.369786][6034:6039] CHIP:DMG: Attribute = 0x0000_0003,
- [1657717893.369896][6034:6039] CHIP:DMG: }
- [1657717893.370000][6034:6039] CHIP:DMG:
- [1657717893.370094][6034:6039] CHIP:DMG: Data = 0,
- [1657717893.370192][6034:6039] CHIP:DMG: },
- [1657717893.370284][6034:6039] CHIP:DMG:
- [1657717893.370359][6034:6039] CHIP:DMG: },
- [1657717893.370439][6034:6039] CHIP:DMG:
- [1657717893.370504][6034:6039] CHIP:DMG: ],
- [1657717893.370575][6034:6039] CHIP:DMG:
- [1657717893.370630][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657717893.370699][6034:6039] CHIP:DMG: }
- [1657717893.370819][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0402 Attribute 0x0000_0003 DataVersion: 2359460531
- [1657717893.370888][6034:6039] CHIP:TOO: Tolerance: 0
- [1657717893.370929][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c0092b0]: Moving to [AwaitingSu]
-
-
-
-
- After all above mentioned subscription are activated send below mentioned command in 4th reference device which is having same same fabric as 1st reference device
-
- any subscribe-by-id 0x0008 0x0010 10 100 1 1
-
- [1657716563.242433][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716563.242475][6034:6039] CHIP:DMG: {
- [1657716563.242507][6034:6039] CHIP:DMG: SubscriptionId = 0xebc26cc4,
- [1657716563.242538][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716563.242577][6034:6039] CHIP:DMG: [
- [1657716563.242607][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716563.242648][6034:6039] CHIP:DMG: {
- [1657716563.242680][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716563.242721][6034:6039] CHIP:DMG: {
- [1657716563.242762][6034:6039] CHIP:DMG: DataVersion = 0x319eedab,
- [1657716563.242801][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716563.242842][6034:6039] CHIP:DMG: {
- [1657716563.242883][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716563.242928][6034:6039] CHIP:DMG: Cluster = 0x8,
- [1657716563.242971][6034:6039] CHIP:DMG: Attribute = 0x0000_0010,
- [1657716563.243012][6034:6039] CHIP:DMG: }
- [1657716563.243056][6034:6039] CHIP:DMG:
- [1657716563.243100][6034:6039] CHIP:DMG: Data = 1,
- [1657716563.243138][6034:6039] CHIP:DMG: },
- [1657716563.243179][6034:6039] CHIP:DMG:
- [1657716563.243213][6034:6039] CHIP:DMG: },
- [1657716563.243251][6034:6039] CHIP:DMG:
- [1657716563.243280][6034:6039] CHIP:DMG: ],
- [1657716563.243318][6034:6039] CHIP:DMG:
- [1657716563.243348][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716563.243377][6034:6039] CHIP:DMG: }
- [1657716563.243531][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0008 Attribute 0x0000_0010 DataVersion: 832499115
- [1657716563.243601][6034:6039] CHIP:TOO: on off transition time: 1
- [1657716563.243648][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008e30]: Moving to [AwaitingSu]
-
-
-
- basic subscribe node-label 10 100 1 0
- [1657716599.928585][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716599.928652][6034:6039] CHIP:DMG: {
- [1657716599.928825][6034:6039] CHIP:DMG: SubscriptionId = 0x3d9f1c1,
- [1657716599.928890][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716599.928968][6034:6039] CHIP:DMG: [
- [1657716599.929029][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716599.929122][6034:6039] CHIP:DMG: {
- [1657716599.929192][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716599.929278][6034:6039] CHIP:DMG: {
- [1657716599.929399][6034:6039] CHIP:DMG: DataVersion = 0x1b93dc36,
- [1657716599.929476][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716599.929687][6034:6039] CHIP:DMG: {
- [1657716599.929774][6034:6039] CHIP:DMG: Endpoint = 0x0,
- [1657716599.929861][6034:6039] CHIP:DMG: Cluster = 0x28,
- [1657716599.929949][6034:6039] CHIP:DMG: Attribute = 0x0000_0005,
- [1657716599.930031][6034:6039] CHIP:DMG: }
- [1657716599.930115][6034:6039] CHIP:DMG:
- [1657716599.930285][6034:6039] CHIP:DMG: Data = "1",
- [1657716599.930370][6034:6039] CHIP:DMG: },
- [1657716599.930454][6034:6039] CHIP:DMG:
- [1657716599.930578][6034:6039] CHIP:DMG: },
- [1657716599.930660][6034:6039] CHIP:DMG:
- [1657716599.930720][6034:6039] CHIP:DMG: ],
- [1657716599.930796][6034:6039] CHIP:DMG:
- [1657716599.930856][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716599.930914][6034:6039] CHIP:DMG: }
- [1657716599.931131][6034:6039] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Attribute 0x0000_0005 DataVersion: 462674998
- [1657716599.931326][6034:6039] CHIP:TOO: NodeLabel: 1
- [1657716599.931420][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008f20]: Moving to [AwaitingSu]
-
- onoff subscribe on-time 10 100 1 1
- [1657716634.400468][6034:6039] CHIP:DMG: ReportDataMessage =
- [1657716634.400499][6034:6039] CHIP:DMG: {
- [1657716634.400525][6034:6039] CHIP:DMG: SubscriptionId = 0xf9b815a2,
- [1657716634.400551][6034:6039] CHIP:DMG: AttributeReportIBs =
- [1657716634.400585][6034:6039] CHIP:DMG: [
- [1657716634.400610][6034:6039] CHIP:DMG: AttributeReportIB =
- [1657716634.400647][6034:6039] CHIP:DMG: {
- [1657716634.400674][6034:6039] CHIP:DMG: AttributeDataIB =
- [1657716634.400705][6034:6039] CHIP:DMG: {
- [1657716634.400739][6034:6039] CHIP:DMG: DataVersion = 0x734a2d85,
- [1657716634.400775][6034:6039] CHIP:DMG: AttributePathIB =
- [1657716634.400809][6034:6039] CHIP:DMG: {
- [1657716634.400847][6034:6039] CHIP:DMG: Endpoint = 0x1,
- [1657716634.400883][6034:6039] CHIP:DMG: Cluster = 0x6,
- [1657716634.400920][6034:6039] CHIP:DMG: Attribute = 0x0000_4001,
- [1657716634.400950][6034:6039] CHIP:DMG: }
- [1657716634.400987][6034:6039] CHIP:DMG:
- [1657716634.401024][6034:6039] CHIP:DMG: Data = 1,
- [1657716634.401058][6034:6039] CHIP:DMG: },
- [1657716634.401092][6034:6039] CHIP:DMG:
- [1657716634.401117][6034:6039] CHIP:DMG: },
- [1657716634.401148][6034:6039] CHIP:DMG:
- [1657716634.401172][6034:6039] CHIP:DMG: ],
- [1657716634.401202][6034:6039] CHIP:DMG:
- [1657716634.401227][6034:6039] CHIP:DMG: InteractionModelRevision = 1
- [1657716634.401250][6034:6039] CHIP:DMG: }
- [1657716634.401383][6034:6039] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_4001 DataVersion: 1934241157
- [1657716634.401428][6034:6039] CHIP:TOO: OnTime: 1
- [1657716634.401466][6034:6039] CHIP:DMG: MoveToState ReadClient[0xffff8c008c70]: Moving to [AwaitingSu]
+ Verification step identification is in progress
+ https://github.com/project-chip/connectedhomeip/issues/21009
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_ILL_2_2.yaml b/src/app/tests/suites/certification/Test_TC_ILL_2_2.yaml
index 8b72b89848bade..ddabc3deaed63e 100644
--- a/src/app/tests/suites/certification/Test_TC_ILL_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ILL_2_2.yaml
@@ -20,50 +20,92 @@ PICS:
config:
nodeId: 0x12344321
- cluster: "Basic"
- endpoint: 0
+ cluster: "Illuminance Measurement"
+ endpoint: 1
tests:
- - label:
- "Commission DUT to TH (can be skipped if done in a preceding test)."
- verification: |
- verification step to be updated.
- disabled: true
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
- - label:
- "Test Harness Client reads MinMeasuredValue attribute and
- MaxMeasuredValue attribute from DUT."
- PICS: ILL.S.A0001 && ILL.S.A0002
- verification: |
- ./chip-tool illuminancemeasurement read min-measured-value 1 1
- On TH(chip-tool), verify the MinMeasuredValue as 1
- [1650881571.375482][2777:2782] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0400 Attribute 0x0000_0001 DataVersion: 1034665079
- [1650881571.375596][2777:2782] CHIP:TOO: MinMeasuredValue: 1
+ - label: "TH reads MinMeasuredValue attribute from DUT"
+ PICS: ILL.S.A0001
+ command: "readAttribute"
+ attribute: "MinMeasuredValue"
+ response:
+ saveAs: MinMeasuredValue
+ constraints:
+ type: int16u
- ./chip-tool illuminancemeasurement read max-measured-value 1 1
- On TH(chip-tool), verify the MaxMeasuredValue as 65534
- [1650881715.935533][2791:2797] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0400 Attribute 0x0000_0002 DataVersion: 1034665079
- [1650881715.935645][2791:2797] CHIP:TOO: MaxMeasuredValue: 65534
- disabled: true
+ - label: "TH reads MaxMeasuredValue attribute from DUT"
+ PICS: ILL.S.A0002
+ command: "readAttribute"
+ attribute: "MaxMeasuredValue"
+ response:
+ saveAs: MaxMeasuredValue
+ constraints:
+ type: int16u
- label: "Cover the sensor or darken the room"
verification: |
- currently we can"t do this test-step in chip-tool
- disabled: true
+ Manual operation
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_USER_PROMPT
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' for Success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label: "Wait 1s"
+ cluster: "DelayCommands"
+ command: "WaitForMs"
+ arguments:
+ values:
+ - name: "ms"
+ value: 1000
- label: "After a few seconds, TH reads MeasuredValue attribute from DUT."
- PICS: ILL.S.A0000
- verification: |
- ./chip-tool illuminancemeasurement read measured-value 1 1
- disabled: true
+ PICS: ILL.S.A0000 && PICS_SKIP_SAMPLE_APP
+ command: "readAttribute"
+ attribute: "MeasuredValue"
+ response:
+ constraints:
+ type: int16u
+ minValue: 0
- label: "Expose the sensor again to light"
verification: |
- currently we can"t do this test-step in chip-tool
- disabled: true
+ Manual operation
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_USER_PROMPT
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' for Success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label: "Wait 1s"
+ cluster: "DelayCommands"
+ command: "WaitForMs"
+ arguments:
+ values:
+ - name: "ms"
+ value: 1000
- label: "After a few seconds, TH reads MeasuredValue attribute from DUT."
- PICS: ILL.S.A0000
- verification: |
- ./chip-tool illuminancemeasurement read measured-value 1 1
- disabled: true
+ PICS: ILL.S.A0000 && PICS_SKIP_SAMPLE_APP
+ command: "readAttribute"
+ attribute: "MeasuredValue"
+ response:
+ constraints:
+ type: int16u
+ maxValue: 65534
diff --git a/src/app/tests/suites/certification/Test_TC_KEYPADINPUT_1_2.yaml b/src/app/tests/suites/certification/Test_TC_KEYPADINPUT_1_2.yaml
index 35e800441f7824..913ad1cc5aaa00 100644
--- a/src/app/tests/suites/certification/Test_TC_KEYPADINPUT_1_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_KEYPADINPUT_1_2.yaml
@@ -41,6 +41,15 @@ tests:
constraints:
type: int16u
+ - label: "Read the global attribute: FeatureMap"
+ PICS: " !KEYPADINPUT.S.NV && KEYPADINPUT.S.LK && !KEYPADINPUT.S.NK "
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
+
- label: "Read the global attribute: FeatureMap"
PICS: KEYPADINPUT.S.NV || KEYPADINPUT.S.LK || KEYPADINPUT.S.NK
command: "readAttribute"
@@ -48,7 +57,7 @@ tests:
response:
constraints:
type: bitmap32
- minValue: 0
+ minValue: 1
maxValue: 7
- label: "Read the global attribute: AttributeList"
diff --git a/src/app/tests/suites/certification/Test_TC_KEYPADINPUT_3_1.yaml b/src/app/tests/suites/certification/Test_TC_KEYPADINPUT_3_1.yaml
index 8e091da7881008..edfa5fbac41fd9 100644
--- a/src/app/tests/suites/certification/Test_TC_KEYPADINPUT_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_KEYPADINPUT_3_1.yaml
@@ -15,6 +15,9 @@
name: 3.3.1. [TC-KEYPADINPUT-3.1] Send Key Command Verification (DUT as Client)
+PICS:
+ - KEYPADINPUT.C
+
config:
nodeId: 0x12344321
cluster: "Basic"
diff --git a/src/app/tests/suites/certification/Test_TC_LCFG_1_1.yaml b/src/app/tests/suites/certification/Test_TC_LCFG_1_1.yaml
index d94ff98a8a8421..3322dbbe613ffe 100644
--- a/src/app/tests/suites/certification/Test_TC_LCFG_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LCFG_1_1.yaml
@@ -11,92 +11,77 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 99.1.1. [TC-LCFG-1.1] Global Attributes [DUT-Server]
+name: 101.1.1. [TC-LCFG-1.1] Global Attributes [DUT-Server]
PICS:
- LCFG.S
config:
nodeId: 0x12344321
- cluster: "Basic"
+ cluster: "Localization Configuration"
endpoint: 0
tests:
- - label: "Commission TH to DUT"
- verification: |
- verification step to be updated.
- disabled: true
-
- - label: "{THread} (0xFFFD) ClusterRevision attribute"
- verification: |
- ./chip-tool localizationconfiguration read cluster-revision 1 0
-
- On TH(chip-tool), verify that DUT sends ClusterRevision attribute value as 1
-
- [1649330698.587235][4440:4445] CHIP:DMG:
- [1649330698.587269][4440:4445] CHIP:DMG: SuppressResponse = true,
- [1649330698.587315][4440:4445] CHIP:DMG: InteractionModelRevision = 1
- [1649330698.587347][4440:4445] CHIP:DMG: }
- [1649330698.587556][4440:4445] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002B Attribute 0x0000_FFFD DataVersion: 419421945
- [1649330698.587643][4440:4445] CHIP:TOO: ClusterRevision: 1
- disabled: true
-
- - label: "{THread} (0xFFFC) FeatureMap attribute"
- verification: |
- ./chip-tool localizationconfiguration read feature-map 1 0
-
- On TH(chip-tool), verify that DUT sends FeatureMap attribute value as 0
- [1653462414.221894][29485:29490] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002B Attribute 0x0000_FFFC DataVersion: 2352052086
- [1653462414.222033][29485:29490] CHIP:TOO: FeatureMap: 0
- [1653462414.222207][29485:29490] CHIP:EM: Sending Standalone Ack for MessageCounter:4940181 on exchange 7821i
- disabled: true
-
- - label: "{THread} (0xFFFB) AttributeList attribute"
- verification: |
- ./chip-tool localizationconfiguration read attribute-list 1 0
- On TH(chip-tool), verify that DUT sends a list of supported attributes
-
- [1653462309.061114][29477:29482] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002B Attribute 0x0000_FFFB DataVersion: 2352052086
- [1653462309.061199][29477:29482] CHIP:TOO: AttributeList: 7 entries
- [1653462309.061233][29477:29482] CHIP:TOO: [1]: 0
- [1653462309.061258][29477:29482] CHIP:TOO: [2]: 1
- [1653462309.061284][29477:29482] CHIP:TOO: [3]: 65528
- [1653462309.061308][29477:29482] CHIP:TOO: [4]: 65529
- [1653462309.061332][29477:29482] CHIP:TOO: [5]: 65531
- [1653462309.061355][29477:29482] CHIP:TOO: [6]: 65532
- [1653462309.061379][29477:29482] CHIP:TOO: [7]: 65533
- [1653462309.061492][29477:29482] CHIP:EM: Sending Standalone Ack for MessageCounter:13553423 on exchange 61180i
- disabled: true
-
- - label: "{THread} (0xFFFA) EventList attribute"
- verification: |
- out 0f scope for V1.0
- disabled: true
-
- - label: "{THread} (0xFFF9) AcceptedCommandList attribute"
- verification: |
- ./chip-tool localizationconfiguration read accepted-command-list 1 0
- On TH(chip-too), verify that DUT responsds as list of Accepted Command as 0 entries.
-
- [1649331020.031045][4520:4525] CHIP:DMG:
- [1649331020.031081][4520:4525] CHIP:DMG: SuppressResponse = true,
- [1649331020.031119][4520:4525] CHIP:DMG: InteractionModelRevision = 1
- [1649331020.031153][4520:4525] CHIP:DMG: }
- [1649331020.031374][4520:4525] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002B Attribute 0x0000_FFF9 DataVersion: 419421945
- [1649331020.031470][4520:4525] CHIP:TOO: AcceptedCommandList: 0 entries
- disabled: true
-
- - label: "{THread} (0xFFF8) GeneratedCommandList attribute"
- verification: |
- ./chip-tool localizationconfiguration read generated-command-list 1 0
- On TH(chip-tool), verify that DUT responsds as list of GeneratedCommandList as 0 entries.
-
- [1649330937.798986][4508:4513] CHIP:DMG:
- [1649330937.799022][4508:4513] CHIP:DMG: SuppressResponse = true,
- [1649330937.799062][4508:4513] CHIP:DMG: InteractionModelRevision = 1
- [1649330937.799096][4508:4513] CHIP:DMG: }
- [1649330937.799317][4508:4513] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002B Attribute 0x0000_FFF8 DataVersion: 419421945
- [1649330937.799413][4508:4513] CHIP:TOO: GeneratedCommandList: 0 entries
- disabled: true
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
+
+ - label: "TH reads the ClusterRevision from DUT"
+ command: "readAttribute"
+ attribute: "ClusterRevision"
+ response:
+ value: 1
+ constraints:
+ type: int16u
+
+ - label: "TH reads the FeatureMap from DUT"
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
+
+ - label: "TH reads AttributeList from DUT"
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [0, 1, 65528, 65529, 65531, 65532, 65533]
+
+ - label: "TH reads AcceptedCommandList from DUT"
+ command: "readAttribute"
+ attribute: "AcceptedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
+
+ - label: "TH reads GeneratedCommandList from DUT"
+ command: "readAttribute"
+ attribute: "GeneratedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
+ #Commenting out the step EventList attribute which is out of scope for matter V1.0
+ #- label:
+ # "Read EventList attribute from the DUT and Verify that the DUT
+ # response provides a list of supported events."
+ # verification: |
+ # Not implemented in chip-tool
+ # cluster: "LogCommands"
+ # command: "UserPrompt"
+ # PICS: PICS_USER_PROMPT
+ # arguments:
+ # values:
+ # - name: "message"
+ # value: "Please enter 'y' for success"
+ # - name: "expectedValue"
+ # value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_LCFG_2_1.yaml b/src/app/tests/suites/certification/Test_TC_LCFG_2_1.yaml
index 46634220980848..45e15fe6bfd33d 100644
--- a/src/app/tests/suites/certification/Test_TC_LCFG_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LCFG_2_1.yaml
@@ -46,7 +46,7 @@ tests:
- label: "TH writes xx-XX to SupportedLocales attribute"
verification: |
- ./chip-tool any write-by-id 0x002B 1 ""xx-XX"" 1 0
+ ./chip-tool any write-by-id 0x002B 1 '"xx-XX"' 1 0
On TH(chip-tool) verify that DUT responds as UNSUPPORTED_WRITE
[1653996674.832226][7281:7286] CHIP:DMG: WriteClient moving to [AwaitingDe]
diff --git a/src/app/tests/suites/certification/Test_TC_LTIME_1_1.yaml b/src/app/tests/suites/certification/Test_TC_LTIME_1_1.yaml
index b9caa8a2be326b..3dea75d005036b 100644
--- a/src/app/tests/suites/certification/Test_TC_LTIME_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LTIME_1_1.yaml
@@ -26,7 +26,7 @@ config:
tests:
- label: "Note"
verification: |
- Chip-tool command used below are an example to verify the DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
- label: "Commission DUT to TH"
@@ -149,8 +149,3 @@ tests:
[1659778463.618601][17263:17263] CHIP:DMG: IM RH moving to [GeneratingReports]
[1659778463.618663][17263:17263] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
disabled: true
-
- - label: ""
- verification: |
- verification step to be updated.
- disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_LTIME_1_2.yaml b/src/app/tests/suites/certification/Test_TC_LTIME_1_2.yaml
index 5a3b2864a8f080..8e994af41e62d5 100644
--- a/src/app/tests/suites/certification/Test_TC_LTIME_1_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LTIME_1_2.yaml
@@ -11,88 +11,105 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 4.1.2. [TC-LTIME-1.2] Global Attributes [DUT as Server]
+name: 108.1.2. [TC-LTIME-1.2] Global Attributes [DUT as Server]
PICS:
- LTIME.S
config:
nodeId: 0x12344321
- cluster: "Basic"
+ cluster: "Time Format Localization"
endpoint: 0
tests:
- - label: "Commission TH to DUT"
- verification: |
- verification step to be updated.
- disabled: true
-
- - label: "{THread} (0xFFFD) ClusterRevision attribute"
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
+
+ - label: "TH reads the ClusterRevision from DUT"
PICS: LTIME.S.Afffd
- verification: |
- ./chip-tool timeformatlocalization read cluster-revision 1 0
- On TH(chip-tool), verify that DUT sends ClusterRevision attribute value as 1
-
- [1651185991606] [10988:109915] CHIP: [TOO] Endpoint: 0 Cluster: 0x0000_002C Attribute 0x0000_FFFD DataVersion: 3316530441
- [1651185991606] [10988:109915] CHIP: [TOO] ClusterRevision: 1
- disabled: true
-
- - label: "{THread} (0xFFFC) FeatureMap attribute"
+ command: "readAttribute"
+ attribute: "ClusterRevision"
+ response:
+ value: 1
+ constraints:
+ type: int16u
+
+ - label: "TH reads the FeatureMap from DUT"
PICS: LTIME.S.Afffc
- verification: |
- Out of scope for V1.0
-
- https://github.com/project-chip/connectedhomeip/issues/18989
- disabled: true
-
- - label: "{THread} (0xFFFB) AttributeList attribute"
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ constraints:
+ type: bitmap32
+ minValue: 0
+ maxValue: 1
+
+ - label: "TH reads AttributeList from DUT"
PICS: LTIME.S.Afffb
- verification: |
- ./chip-tool timeformatlocalization read attribute-list 1 0
-
-
- On TH(chip-tool), verify that DUT sends a list of supported attributes
-
- [1653999139.214139][7477:7482] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002C Attribute 0x0000_FFFB DataVersion: 3201720795
- [1653999139.214208][7477:7482] CHIP:TOO: AttributeList: 8 entries
- [1653999139.214241][7477:7482] CHIP:TOO: [1]: 0
- [1653999139.214267][7477:7482] CHIP:TOO: [2]: 1
- [1653999139.214293][7477:7482] CHIP:TOO: [3]: 2
- [1653999139.214320][7477:7482] CHIP:TOO: [4]: 65528
- [1653999139.214345][7477:7482] CHIP:TOO: [5]: 65529
- [1653999139.214371][7477:7482] CHIP:TOO: [6]: 65531
- [1653999139.214397][7477:7482] CHIP:TOO: [7]: 65532
- [1653999139.214422][7477:7482] CHIP:TOO: [8]: 65533
- [1653999139.214522][7477:7482] CHIP:EM: Sending Standalone Ack for MessageCounter:5643805 on exchange 4737i
- disabled: true
-
- - label: "{THread} (0xFFFA) EventList attribute"
- PICS: LTIME.S.Afffa
- verification: |
- Out of scope for V1.0
- disabled: true
-
- - label: "{THread} (0xFFF9) AcceptedCommandList attribute"
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [0, 65528, 65529, 65531, 65532, 65533]
+
+ - label:
+ "TH reads optional attribute(ActiveCalendarType) in AttributeList from
+ DUT"
+ PICS: LTIME.S.Afffb && LTIME.S.A0001
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [1]
+
+ - label:
+ "TH reads optional attribute(SupportedCalendarTypes) in AttributeList
+ from DUT"
+ PICS: LTIME.S.Afffb && LTIME.S.A0002
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [2]
+
+ - label: "TH reads AcceptedCommandList from DUT"
PICS: LTIME.S.Afff9
- verification: |
- ./chip-tool timeformatlocalization read accepted-command-list 1 0
-
- On TH(chip-tool), verify that DUT responsds as list of Accepted Command as 0 entries.
-
- [1651186189564] [11076:112595] CHIP: [TOO] Endpoint: 0 Cluster: 0x0000_002C Attribute 0x0000_FFF9 DataVersion: 3316530441
- [1651186189564] [11076:112595] CHIP: [TOO] AcceptedCommandList: 0 entries
- disabled: true
-
- - label: "{THread} (0xFFF8) GeneratedCommandList attribute"
+ command: "readAttribute"
+ attribute: "AcceptedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
+
+ - label: "TH reads GeneratedCommandList from DUT"
PICS: LTIME.S.Afff8
- verification: |
- ./chip-tool timeformatlocalization read generated-command-list 1 0
-
-
- On TH(chip-tool), verify that DUT responsds as list of GeneratedCommandList as 0 entries.
-
- [1651191789962] [13591:180646] CHIP: [TOO] Endpoint: 0 Cluster: 0x0000_002C Attribute 0x0000_FFF8 DataVersion: 3316530441
- [1651191789963] [13591:180646] CHIP: [TOO] GeneratedCommandList: 0 entries
- disabled: true
+ command: "readAttribute"
+ attribute: "GeneratedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
+ #Commenting out the step EventList attribute which is out of scope for matter V1.0
+ #- label:
+ # "Read EventList attribute from the DUT and Verify that the DUT
+ # response provides a list of supported events."
+ # verification: |
+ # Not implemented in chip-tool
+ # cluster: "LogCommands"
+ # command: "UserPrompt"
+ # PICS: PICS_USER_PROMPT
+ # arguments:
+ # values:
+ # - name: "message"
+ # value: "Please enter 'y' for success"
+ # - name: "expectedValue"
+ # value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_LUNIT_1_2.yaml b/src/app/tests/suites/certification/Test_TC_LUNIT_1_2.yaml
index 1f883211ed1892..9a137a4febf8d0 100644
--- a/src/app/tests/suites/certification/Test_TC_LUNIT_1_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LUNIT_1_2.yaml
@@ -11,78 +11,101 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 105.1.2. [TC-LUNIT-1.2] Global Attributes [DUT as Server]
+name: 108.1.2. [TC-LTIME-1.2] Global Attributes [DUT as Server]
PICS:
- LUNIT.S
config:
nodeId: 0x12344321
- cluster: "Basic"
+ cluster: "Unit Localization"
endpoint: 0
tests:
- - label: "Commission TH to DUT"
- verification: |
- verification step to be updated.
- disabled: true
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
- - label: "{THread} (0xFFFD) ClusterRevision attribute"
+ - label: "TH reads the ClusterRevision from DUT"
PICS: LUNIT.S.Afffd
- verification: |
- ./chip-tool unitlocalization read cluster-revision 1 0
- On TH, verify that DUT sends ClusterRevision attribute value as 1
- [1651186310867] [11123:114108] CHIP: [TOO] Endpoint: 0 Cluster: 0x0000_002D Attribute 0x0000_FFFD DataVersion: 486381485
- [1651186310867] [11123:114108] CHIP: [TOO] ClusterRevision: 1
- disabled: true
+ command: "readAttribute"
+ attribute: "ClusterRevision"
+ response:
+ value: 1
+ constraints:
+ type: int16u
- - label: "{THread} (0xFFFC) FeatureMap attribute"
- PICS: LUNIT.S.Afffc
- verification: |
- ./chip-tool unitlocalization read feature-map 1 0
+ - label: "TH reads the FeatureMap from DUT"
+ PICS: LUNIT.S.Afffc && !LUNIT.S.F00
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
- On TH, verify that DUT sends FeatureMap attribute value as 1
- [1651186357789] [11140:114768] CHIP: [TOO] Endpoint: 0 Cluster: 0x0000_002D Attribute 0x0000_FFFC DataVersion: 486381485
- [1651186357789] [11140:114768] CHIP: [TOO] FeatureMap: 1
- disabled: true
+ - label: "TH reads the FeatureMap from DUT"
+ PICS: LUNIT.S.Afffc && LUNIT.S.F00
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 1
+ constraints:
+ type: bitmap32
- - label: "{THread} (0xFFFB) AttributeList attribute"
+ - label: "TH reads AttributeList from DUT"
PICS: LUNIT.S.Afffb
- verification: |
- ./chip-tool unitlocalization read attribute-list 1 0
- On TH, verify that DUT sends a list of supported attributes
- [1652335691.917681][3124:3129] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002D Attribute 0x0000_FFFB DataVersion: 3157629909
- [1652335691.917762][3124:3129] CHIP:TOO: AttributeList: 6 entries
- [1652335691.917802][3124:3129] CHIP:TOO: [1]: 0
- [1652335691.917834][3124:3129] CHIP:TOO: [2]: 65528
- [1652335691.917865][3124:3129] CHIP:TOO: [3]: 65529
- [1652335691.917895][3124:3129] CHIP:TOO: [4]: 65531
- [1652335691.917924][3124:3129] CHIP:TOO: [5]: 65532
- [1652335691.917957][3124:3129] CHIP:TOO: [6]: 65533
- disabled: true
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [65528, 65529, 65531, 65532, 65533]
- - label: "{THread} (0xFFFA) EventList attribute"
- PICS: LUNIT.S.Afffa
- verification: |
- out of scope for V1.0
- disabled: true
+ - label:
+ "TH reads Feature dependent(LUNIT.S.F00) attribute in AttributeList"
+ PICS: LUNIT.S.Afffb && LUNIT.S.F00
+ command: "readAttribute"
+ attribute: "AttributeList"
+ response:
+ constraints:
+ type: list
+ contains: [0]
- - label: "{THread} (0xFFF9) AcceptedCommandList attribute"
+ - label: "TH reads AcceptedCommandList from DUT"
PICS: LUNIT.S.Afff9
- verification: |
- ./chip-tool unitlocalization read accepted-command-list 1 0
- On TH, verify that DUT responsds as list of Accepted Command as 0 entries.
- [1651186469211] [11184:116328] CHIP: [TOO] Endpoint: 0 Cluster: 0x0000_002D Attribute 0x0000_FFF9 DataVersion: 486381485
- [1651186469211] [11184:116328] CHIP: [TOO] AcceptedCommandList: 0 entries
- disabled: true
+ command: "readAttribute"
+ attribute: "AcceptedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
- - label: "{THread} (0xFFF8) GeneratedCommandList attribute"
+ - label: "TH reads GeneratedCommandList from DUT"
PICS: LUNIT.S.Afff8
- verification: |
- ./chip-tool unitlocalization read generated-command-list 1 0
- On TH, verify that DUT responsds as list of GeneratedCommandList as 0 entries.
- [1651191485645] [13481:177154] CHIP: [TOO] Endpoint: 0 Cluster: 0x0000_002D Attribute 0x0000_FFF8 DataVersion: 486381492
- [1651191485646] [13481:177154] CHIP: [TOO] GeneratedCommandList: 0 entries
- disabled: true
+ command: "readAttribute"
+ attribute: "GeneratedCommandList"
+ response:
+ value: []
+ constraints:
+ type: list
+ #Commenting out the step EventList attribute which is out of scope for matter V1.0
+ #- label:
+ # "Read EventList attribute from the DUT and Verify that the DUT
+ # response provides a list of supported events."
+ # verification: |
+ # Not implemented in chip-tool
+ # cluster: "LogCommands"
+ # command: "UserPrompt"
+ # PICS: PICS_USER_PROMPT
+ # arguments:
+ # values:
+ # - name: "message"
+ # value: "Please enter 'y' for success"
+ # - name: "expectedValue"
+ # value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_LVL_1_1.yaml b/src/app/tests/suites/certification/Test_TC_LVL_1_1.yaml
index 6c2347b8c04b6d..1b3f3a04c45b3b 100644
--- a/src/app/tests/suites/certification/Test_TC_LVL_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LVL_1_1.yaml
@@ -46,19 +46,28 @@ tests:
response:
constraints:
type: bitmap32
- minValue: 0
+ minValue: 1
maxValue: 7
+ - label: "Read the global attribute: FeatureMap"
+ PICS: " !LVL.S.F00 && !LVL.S.F01 && !LVL.S.F02 "
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
+
- label: "Read the global attribute: AttributeList"
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
- contains: [0, 15, 17]
+ contains: [0, 15, 17, 65528, 65529, 65531, 65532, 65533]
- label:
- "Read the optonal attribute(StartUpCurrentLevel and RemainingTime) in
+ "Read the optional attribute(StartUpCurrentLevel and RemainingTime) in
AttributeList"
PICS: LVL.S.F01
command: "readAttribute"
@@ -69,7 +78,7 @@ tests:
contains: [1, 16384]
- label:
- "Read the optonal attribute(CurrentFrequency, MinFrequency and
+ "Read the optional attribute(CurrentFrequency, MinFrequency and
MinFrequency) in AttributeList"
PICS: LVL.S.F02
command: "readAttribute"
@@ -79,7 +88,7 @@ tests:
type: list
contains: [4, 5, 6]
- - label: "Read the optonal attribute(MinLevel) in AttributeList"
+ - label: "Read the optional attribute(MinLevel) in AttributeList"
PICS: LVL.S.A0002
command: "readAttribute"
attribute: "AttributeList"
@@ -88,7 +97,7 @@ tests:
type: list
contains: [2]
- - label: "Read the optonal attribute(MaxLevel) in AttributeList"
+ - label: "Read the optional attribute(MaxLevel) in AttributeList"
PICS: LVL.S.A0003
command: "readAttribute"
attribute: "AttributeList"
@@ -97,7 +106,7 @@ tests:
type: list
contains: [3]
- - label: "Read the optonal attribute(OnOffTransitionTime) in AttributeList"
+ - label: "Read the optional attribute(OnOffTransitionTime) in AttributeList"
PICS: LVL.S.A0010
command: "readAttribute"
attribute: "AttributeList"
@@ -106,7 +115,7 @@ tests:
type: list
contains: [16]
- - label: "Read the optonal attribute(OnTransitionTime) in AttributeList"
+ - label: "Read the optional attribute(OnTransitionTime) in AttributeList"
PICS: LVL.S.A0012
command: "readAttribute"
attribute: "AttributeList"
@@ -115,7 +124,7 @@ tests:
type: list
contains: [18]
- - label: "Read the optonal attribute(OffTransitionTime) in AttributeList"
+ - label: "Read the optional attribute(OffTransitionTime) in AttributeList"
PICS: LVL.S.A0013
command: "readAttribute"
attribute: "AttributeList"
@@ -124,7 +133,7 @@ tests:
type: list
contains: [19]
- - label: "Read the optonal attribute(DefaultMoveRate) in AttributeList"
+ - label: "Read the optional attribute(DefaultMoveRate) in AttributeList"
PICS: LVL.S.A0014
command: "readAttribute"
attribute: "AttributeList"
diff --git a/src/app/tests/suites/certification/Test_TC_LVL_2_3.yaml b/src/app/tests/suites/certification/Test_TC_LVL_2_3.yaml
index d8e61b7df8e803..061f1b8d05ac29 100644
--- a/src/app/tests/suites/certification/Test_TC_LVL_2_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LVL_2_3.yaml
@@ -28,6 +28,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verifaction: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT reads all supported mandatory attributes from TH one at a time in
a manufacturer specific order"
@@ -633,9 +638,9 @@ tests:
TH all-clusters-minimal-app does not support optional attributes
To verify this behaviour send the below mentioned commands and check the result as unsupported attribute
- ./chip-tool levelcontrol write on-off-transition-time 5 1 1
- ./chip-tool levelcontrol write on-transition-time 5 1 1
- ./chip-tool levelcontrol write off-transition-time 5 1 1
- ./chip-tool levelcontrol write default-move-rate 5 1 1
- ./chip-tool levelcontrol write start-up-current-level 5 1 1
+ ./chip-tool levelcontrol write on-off-transition-time 5 1 1
+ ./chip-tool levelcontrol write on-transition-time 5 1 1
+ ./chip-tool levelcontrol write off-transition-time 5 1 1
+ ./chip-tool levelcontrol write default-move-rate 5 1 1
+ ./chip-tool levelcontrol write start-up-current-level 5 1 1
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_LVL_3_1.yaml b/src/app/tests/suites/certification/Test_TC_LVL_3_1.yaml
index 23743e71284c1a..507813609a736f 100644
--- a/src/app/tests/suites/certification/Test_TC_LVL_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LVL_3_1.yaml
@@ -44,6 +44,15 @@ tests:
response:
value: 1
+ #Adding below step resolve the issue https://github.com/CHIP-Specifications/chip-certification-tool/issues/499
+ - label:
+ "Precondition: write default value of OnOffTransitionTime attribute"
+ PICS: LVL.S.A0010
+ command: "writeAttribute"
+ attribute: "OnOffTransitionTime"
+ arguments:
+ value: 0
+
- label: "TH writes 0 to the Options attribute"
PICS: LVL.S.A000f
command: "writeAttribute"
@@ -229,9 +238,9 @@ tests:
command: "MoveToLevel"
arguments:
values:
- - name: "level"
+ - name: "Level"
value: 100
- - name: "transitionTime"
+ - name: "TransitionTime"
value: 0
- name: "OptionsMask"
value: 0
@@ -255,9 +264,9 @@ tests:
command: "MoveToLevel"
arguments:
values:
- - name: "level"
+ - name: "Level"
value: 120
- - name: "transitionTime"
+ - name: "TransitionTime"
value: 0
- name: "OptionsMask"
value: 0
@@ -276,9 +285,9 @@ tests:
command: "MoveToLevel"
arguments:
values:
- - name: "level"
+ - name: "Level"
value: 140
- - name: "transitionTime"
+ - name: "TransitionTime"
value: 0
- name: "OptionsMask"
value: 1
@@ -297,9 +306,9 @@ tests:
command: "MoveToLevel"
arguments:
values:
- - name: "level"
+ - name: "Level"
value: 160
- - name: "transitionTime"
+ - name: "TransitionTime"
value: 0
- name: "OptionsMask"
value: 1
@@ -337,9 +346,9 @@ tests:
command: "MoveToLevel"
arguments:
values:
- - name: "level"
+ - name: "Level"
value: 100
- - name: "transitionTime"
+ - name: "TransitionTime"
value: 0
- name: "OptionsMask"
value: 0
@@ -363,9 +372,9 @@ tests:
command: "MoveToLevel"
arguments:
values:
- - name: "level"
+ - name: "Level"
value: 120
- - name: "transitionTime"
+ - name: "TransitionTime"
value: 0
- name: "OptionsMask"
value: 0
@@ -384,9 +393,9 @@ tests:
command: "MoveToLevel"
arguments:
values:
- - name: "level"
+ - name: "Level"
value: 140
- - name: "transitionTime"
+ - name: "TransitionTime"
value: 0
- name: "OptionsMask"
value: 1
@@ -405,9 +414,9 @@ tests:
command: "MoveToLevel"
arguments:
values:
- - name: "level"
+ - name: "Level"
value: 160
- - name: "transitionTime"
+ - name: "TransitionTime"
value: 0
- name: "OptionsMask"
value: 1
@@ -420,16 +429,3 @@ tests:
attribute: "CurrentLevel"
response:
value: 160
-
- - label: "Precondition send Off Command"
- cluster: "On/Off"
- PICS: OO.S.C00.Rsp
- command: "Off"
-
- - label: "Check on/off attribute value is false after off command"
- cluster: "On/Off"
- PICS: OO.S.A0000
- command: "readAttribute"
- attribute: "OnOff"
- response:
- value: 0
diff --git a/src/app/tests/suites/certification/Test_TC_LVL_4_1.yaml b/src/app/tests/suites/certification/Test_TC_LVL_4_1.yaml
index 671a275aeca385..386a7447f264d6 100644
--- a/src/app/tests/suites/certification/Test_TC_LVL_4_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LVL_4_1.yaml
@@ -44,6 +44,15 @@ tests:
response:
value: 1
+ #Adding below step resolve the issue https://github.com/CHIP-Specifications/chip-certification-tool/issues/499
+ - label:
+ "Precondition: write default value of OnOffTransitionTime attribute"
+ PICS: LVL.S.A0013
+ command: "writeAttribute"
+ attribute: "OnOffTransitionTime"
+ arguments:
+ value: 0
+
- label: "TH writes 0 to the Options attribute"
PICS: LVL.S.A000f
command: "writeAttribute"
diff --git a/src/app/tests/suites/certification/Test_TC_LVL_5_1.yaml b/src/app/tests/suites/certification/Test_TC_LVL_5_1.yaml
index f3f1bc7583f706..4febf9ad1e5248 100644
--- a/src/app/tests/suites/certification/Test_TC_LVL_5_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LVL_5_1.yaml
@@ -44,6 +44,15 @@ tests:
response:
value: 1
+ #Adding below step resolve the issue https://github.com/CHIP-Specifications/chip-certification-tool/issues/499
+ - label:
+ "Precondition: write default value of OnOffTransitionTime attribute"
+ PICS: LVL.S.A0013
+ command: "writeAttribute"
+ attribute: "OnOffTransitionTime"
+ arguments:
+ value: 0
+
- label: "TH writes 0 to the Options attribute"
PICS: LVL.S.A000f
command: "writeAttribute"
diff --git a/src/app/tests/suites/certification/Test_TC_LVL_6_1.yaml b/src/app/tests/suites/certification/Test_TC_LVL_6_1.yaml
index dd270c9b8381da..e9793c96a37ea0 100644
--- a/src/app/tests/suites/certification/Test_TC_LVL_6_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_LVL_6_1.yaml
@@ -44,6 +44,15 @@ tests:
response:
value: 1
+ #Adding below step resolve the issue https://github.com/CHIP-Specifications/chip-certification-tool/issues/499
+ - label:
+ "Precondition: write default value of OnOffTransitionTime attribute"
+ PICS: LVL.S.A0013
+ command: "writeAttribute"
+ attribute: "OnOffTransitionTime"
+ arguments:
+ value: 0
+
- label: "TH writes 0 to the Options attribute"
PICS: LVL.S.A000f
command: "writeAttribute"
@@ -103,6 +112,16 @@ tests:
- name: "ms"
value: 5000
+ - label: "Sends stop command to DUT"
+ PICS: LVL.S.C03.Rsp
+ command: "Stop"
+ arguments:
+ values:
+ - name: "OptionsMask"
+ value: 0
+ - name: "OptionsOverride"
+ value: 0
+
- label: "Physically verify that the device has stopped transitioning"
cluster: "LogCommands"
command: "UserPrompt"
@@ -114,16 +133,6 @@ tests:
- name: "expectedValue"
value: "y"
- - label: "Sends stop command to DUT"
- PICS: LVL.S.C03.Rsp
- command: "Stop"
- arguments:
- values:
- - name: "OptionsMask"
- value: 0
- - name: "OptionsOverride"
- value: 0
-
- label: "TH reads CurrentLevel attribute from DUT"
PICS: LVL.S.C01.Rsp && LVL.S.C03.Rsp && LVL.S.A0000
command: "readAttribute"
diff --git a/src/app/tests/suites/certification/Test_TC_MEDIAPLAYBACK_1_7.yaml b/src/app/tests/suites/certification/Test_TC_MEDIAPLAYBACK_1_7.yaml
index 79f2db2d730064..a155ab61cc3493 100644
--- a/src/app/tests/suites/certification/Test_TC_MEDIAPLAYBACK_1_7.yaml
+++ b/src/app/tests/suites/certification/Test_TC_MEDIAPLAYBACK_1_7.yaml
@@ -41,6 +41,15 @@ tests:
constraints:
type: int16u
+ - label: "Read the global attribute: FeatureMap"
+ PICS: " !MEDIAPLAYBACK.S.AS && !MEDIAPLAYBACK.S.VS "
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ value: 0
+ constraints:
+ type: bitmap32
+
- label: "Read the global attribute: FeatureMap"
PICS: MEDIAPLAYBACK.S.AS || MEDIAPLAYBACK.S.VS
command: "readAttribute"
@@ -48,7 +57,7 @@ tests:
response:
constraints:
type: bitmap32
- minValue: 0
+ minValue: 1
maxValue: 3
- label: "Read the global attribute: AttributeList"
diff --git a/src/app/tests/suites/certification/Test_TC_MOD_1_3.yaml b/src/app/tests/suites/certification/Test_TC_MOD_1_3.yaml
index dedbb274dee5a3..095deb01323ba0 100644
--- a/src/app/tests/suites/certification/Test_TC_MOD_1_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_MOD_1_3.yaml
@@ -28,6 +28,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT reads all supported mandatory attributes from TH one at a time in
a manufacturer specific order"
diff --git a/src/app/tests/suites/certification/Test_TC_MOD_2_1.yaml b/src/app/tests/suites/certification/Test_TC_MOD_2_1.yaml
index 28d371377c6821..a4fb3db49bba06 100644
--- a/src/app/tests/suites/certification/Test_TC_MOD_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_MOD_2_1.yaml
@@ -70,7 +70,7 @@ tests:
verification: |
./chip-tool modeselect read current-mode 1 1
- Verify on TH(chip-tool), current modes provides a list of modes
+ Verify on TH(chip-tool), current modes provides a mode Record for usage in steps 3.
[1649678800.298128][10854:10861] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0050 Attribute 0x0000_0003 DataVersion: 4277065073
@@ -98,7 +98,7 @@ tests:
verification: |
./chip-tool modeselect read current-mode 1 1
- Verify on TH(chip-tool), current modes provides a list ofmodes
+ Verify on TH(chip-tool), current modes provides integer provided in step 3a, not the integer from step 2
[1649678800.298128][10854:10861] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0050 Attribute 0x0000_0003 DataVersion: 4277065073
diff --git a/src/app/tests/suites/certification/Test_TC_MOD_2_2.yaml b/src/app/tests/suites/certification/Test_TC_MOD_2_2.yaml
index e6653073d7a4b0..806b9c05f89290 100644
--- a/src/app/tests/suites/certification/Test_TC_MOD_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_MOD_2_2.yaml
@@ -24,6 +24,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command
+ disabled: true
+
- label: "DUT reads the SupportedModes attribute from the TH"
PICS: MOD.C.A0002
verification: |
diff --git a/src/app/tests/suites/certification/Test_TC_MOD_3_1.yaml b/src/app/tests/suites/certification/Test_TC_MOD_3_1.yaml
index f94f8507d782c5..3e4d2cc36f7f1f 100644
--- a/src/app/tests/suites/certification/Test_TC_MOD_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_MOD_3_1.yaml
@@ -29,7 +29,7 @@ tests:
verification: |
./chip-tool modeselect read on-mode 1 1
- on TH(chip-tool),Verify that the DUT response The attribute is nullable, and null is also acceptable
+ on TH(chip-tool),Verify that the DUT response is an integer. Record this value for usage in steps 2b.
[1649678983.679893][10871:10876] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0050 Attribute 0x0000_0005 DataVersion: 4277065073
[1649678983.680002][10871:10876] CHIP:TOO: OnMode: 0
diff --git a/src/app/tests/suites/certification/Test_TC_MOD_3_3.yaml b/src/app/tests/suites/certification/Test_TC_MOD_3_3.yaml
index 1dec78d5a0c0c3..63288a4d31c98d 100644
--- a/src/app/tests/suites/certification/Test_TC_MOD_3_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_MOD_3_3.yaml
@@ -24,6 +24,34 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ 1.To run this test case build the OTA Provider app to be build in the nRF Environment setup . Follow this step to setup the nRF build environment using container.
+ https://github.com/project-chip/connectedhomeip/tree/master/examples/all-clusters-app/nrfconnect#using-docker-container-for-setup
+
+ Once the build environmnet is ready , build teh OTA-Provider-App inside the container. Follow the below link to build the OTA-Provider app
+ https://github.com/project-chip/connectedhomeip/tree/master/examples/ota-provider-app/linux
+
+ 2. Build all-cluster-app in docker or Flash the pre-built folder from the delivered image
+
+ To build maually and flash follow steps explained in:
+ https://github.com/project-chip/connectedhomeip/tree/master/examples/all-clusters-app/nrfconnect#building
+
+ west build -b nrf52840dk_nrf52840 -- -DCONF_FILE=prj_dfu.conf -DCONFIG_CHIP_LIB_SHELL=y
+
+
+ 3.Flash
+ west flash --erase
+
+ 4.OTA Image needs to build on the docker environment as like in the first step inside the all-clusters-app folder. Refer the below link to build the OTA image with new version.
+
+ https://github.com/project-chip/connectedhomeip/tree/master/examples/ota-requestor-app/linux#ota-requestor-app-linux
+
+ To build the ota image with new version for nRF, use the following command inside the all-clusters-app folder , which will build matter.ota
+
+ west build -b nrf52840dk_nrf52840 -d build2 -- -DCONFIG_CHIP_DEVICE_SOFTWARE_VERSION=2 -DCONF_FILE=prj_dfu.conf -DCONFIG_CHIP_LIB_SHELL=y
+ disabled: true
+
- label: "TH reads the StartUpMode attribute from the DUT"
PICS: MOD.S.A0004
verification: |
@@ -99,7 +127,11 @@ tests:
verification: |
To perform an OTA update on Thread device follow the cmmds below:
- Step-1 : ./chip-ota-provider-app -f ~/chip_repos/connectedhomeip/examples/all-clusters-app/nrfconnect/build2/zephyr/matter.ota
+ Step-1 : Where we builded OTA provider app execute this cmmd . (In my case I ran connectedhomeip/out/debug ./chip-ota-provider-app -f )
+
+ ./chip-ota-provider-app -f ~/chip_repos/connectedhomeip/examples/all-clusters-app/nrfconnect/build2/zephyr/matter.ota
+
+ Ran on chip-tool:
Step-2: ./chip-tool pairing onnetwork 2 20202021
diff --git a/src/app/tests/suites/certification/Test_TC_MOD_3_4.yaml b/src/app/tests/suites/certification/Test_TC_MOD_3_4.yaml
index 56dc6c9fd5aafa..fd5883aecea22f 100644
--- a/src/app/tests/suites/certification/Test_TC_MOD_3_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_MOD_3_4.yaml
@@ -26,6 +26,20 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ To Execute the TC-MOD-3.4 test case using reboot in raspi device we followed the below suggested way:
+
+ To run a reboot test case on raspi, run the app with --KVS flag with a file in local directory and pass that file to the command to launch the app. Steps
+
+
+ step-1: create a file using touch command , something like touch mytest.txt
+ step-2: chmod 777 mytest.txt
+ step-3: launch the app sudo ./out/all-clusters-app/chip-all-clusters-app --KVS ./mytest.txt
+
+ if you launch the app with the above commands and provision the app, even when you reboot the app with 'sudo reboot' , next time you launch the app with 'sudo ./out/all-clusters-app/chip-all-clusters-app --KVS ./mytest.txt' , you can run read/write attribs and commands without reprovisioning the device.
+ disabled: true
+
- label: "TH reads the StartUpMode attribute from the DUT"
PICS: MOD.S.A0004
verification: |
diff --git a/src/app/tests/suites/certification/Test_TC_OCC_2_1.yaml b/src/app/tests/suites/certification/Test_TC_OCC_2_1.yaml
index 72ff07f9db86df..ed41fc63926f0d 100644
--- a/src/app/tests/suites/certification/Test_TC_OCC_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OCC_2_1.yaml
@@ -59,7 +59,7 @@ tests:
constraints:
type: bitmap8
minValue: 1
- maxValue: 273
+ maxValue: 7
- label: "Reads optional attribute: PIROccupiedToUnoccupiedDelay"
PICS: OCC.S.A0010
diff --git a/src/app/tests/suites/certification/Test_TC_OCC_2_2.yaml b/src/app/tests/suites/certification/Test_TC_OCC_2_2.yaml
index 5149c821801132..6fed52808eb096 100644
--- a/src/app/tests/suites/certification/Test_TC_OCC_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OCC_2_2.yaml
@@ -24,6 +24,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label: "Commission DUT to TH"
verification: |
verification step to be updated.
diff --git a/src/app/tests/suites/certification/Test_TC_OCC_2_3.yaml b/src/app/tests/suites/certification/Test_TC_OCC_2_3.yaml
index 83249b00b24c6b..1f806e9d3757a2 100644
--- a/src/app/tests/suites/certification/Test_TC_OCC_2_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OCC_2_3.yaml
@@ -22,34 +22,34 @@ PICS:
config:
nodeId: 0x12344321
- cluster: "Basic"
- endpoint: 0
+ cluster: "Occupancy Sensing"
+ endpoint: 1
tests:
- - label: "Commission DUT to TH"
- verification: |
- verification step to be updated.
- disabled: true
-
- - label: "TH reads OccupancySensorType attribute from DUT"
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
+
+ - label: "Reads mandatory attribute constrains: OccupancySensorType"
PICS: OCC.S.A0001
- verification: |
- ./chip-tool occupancysensing read occupancy-sensor-type 1 1
-
- Verify occupancy sensor type value on the TH(Chip-tool) Log:
-
- [1648461912.765825][9300:9306] CHIP:DMG: }
- [1648461912.766013][9300:9306] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0406 Attribute 0x0000_0001 DataVersion: 3082917122
- [1648461912.766089][9300:9306] CHIP:TOO: occupancy sensor type: 0
- disabled: true
-
- - label: "TH reads OccupancySensorTypeBitmap attribute from DUT"
+ command: "readAttribute"
+ attribute: "occupancy sensor type"
+ response:
+ constraints:
+ type: enum8
+ minValue: 0
+ maxValue: 3
+
+ - label: "Reads mandatory attribute constrains: OccupancySensorTypeBitmap"
PICS: OCC.S.A0002
- verification: |
- ./chip-tool occupancysensing read occupancy-sensor-type-bitmap 1 1
-
- Verify occupancy sensor type bitmap value on the TH(Chip-tool) Log:
-
- [1648461918.499009][9307:9312] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0406 Attribute 0x0000_0002 DataVersion: 3082917122
- [1648461918.499082][9307:9312] CHIP:TOO: occupancy sensor type bitmap: 1
- disabled: true
+ command: "readAttribute"
+ attribute: "occupancy sensor type bitmap"
+ response:
+ constraints:
+ type: bitmap8
+ minValue: 1
+ maxValue: 7
diff --git a/src/app/tests/suites/certification/Test_TC_OCC_2_4.yaml b/src/app/tests/suites/certification/Test_TC_OCC_2_4.yaml
index a44fb8e171151f..333db4004d2af8 100644
--- a/src/app/tests/suites/certification/Test_TC_OCC_2_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OCC_2_4.yaml
@@ -22,10 +22,15 @@ PICS:
config:
nodeId: 0x12344321
- cluster: "Basic"
- endpoint: 0
+ cluster: "Occupancy Sensing"
+ endpoint: 1
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label: "Commission DUT to TH"
verification: |
verification step to be updated.
diff --git a/src/app/tests/suites/certification/Test_TC_OCC_3_2.yaml b/src/app/tests/suites/certification/Test_TC_OCC_3_2.yaml
deleted file mode 100644
index 6dd4e4dc92422d..00000000000000
--- a/src/app/tests/suites/certification/Test_TC_OCC_3_2.yaml
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright (c) 2021 Project CHIP Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-
-name: 3.2.6. [TC-OCC-3.2] Primary functionality with client as DUT
-
-PICS:
- - OCC.C
-
-config:
- nodeId: 0x12344321
- cluster: "Basic"
- endpoint: 0
-
-tests:
- - label: "Commission TH to DUT"
- verification: |
- verification step to be updated.
- disabled: true
-
- - label: "DUT reads Occupancy attribute from TH"
- PICS: OCC.C.A0000
- verification: |
- ./chip-tool occupancysensing read occupancy 1 1
-
- verify On TH(Reference app) receives the right Read Request Message for the data sent in the above command
-
- [1657906910.080564][2361:2361] CHIP:IM: Received Read request
- [1657906910.080689][2361:2361] CHIP:DMG: ReadRequestMessage =
- [1657906910.080758][2361:2361] CHIP:DMG: {
- [1657906910.080799][2361:2361] CHIP:DMG: AttributePathIBs =
- [1657906910.080846][2361:2361] CHIP:DMG: [
- [1657906910.080907][2361:2361] CHIP:DMG: AttributePathIB =
- [1657906910.080965][2361:2361] CHIP:DMG: {
- [1657906910.081017][2361:2361] CHIP:DMG: Endpoint = 0x1,
- [1657906910.081092][2361:2361] CHIP:DMG: Cluster = 0x406,
- [1657906910.081152][2361:2361] CHIP:DMG: Attribute = 0x0000_0000,
- [1657906910.081206][2361:2361] CHIP:DMG: }
- [1657906910.081279][2361:2361] CHIP:DMG:
- [1657906910.081331][2361:2361] CHIP:DMG: ],
- [1657906910.081398][2361:2361] CHIP:DMG:
- [1657906910.081449][2361:2361] CHIP:DMG: isFabricFiltered = true,
- [1657906910.081496][2361:2361] CHIP:DMG: InteractionModelRevision = 1
- [1657906910.081538][2361:2361] CHIP:DMG: },
- disabled: true
-
- - label: "Operate on TH to change the occupancy status"
- PICS: OCC.M.OccupancyChange
- verification: |
- Logs will be device specific[Manual operation required]
- disabled: true
-
- - label: "after a few seconds, DUT reads Occupancy attribute from TH"
- PICS: OCC.C.A0000
- verification: |
- ./chip-tool occupancysensing read occupancy 1 1
-
- verify On TH(Reference app) receives the right Read Request Message for the data sent in the above command
-
- [1657906923.314549][2361:2361] CHIP:IM: Received Read request
- [1657906923.314735][2361:2361] CHIP:DMG: ReadRequestMessage =
- [1657906923.314792][2361:2361] CHIP:DMG: {
- [1657906923.314838][2361:2361] CHIP:DMG: AttributePathIBs =
- [1657906923.314899][2361:2361] CHIP:DMG: [
- [1657906923.314949][2361:2361] CHIP:DMG: AttributePathIB =
- [1657906923.315006][2361:2361] CHIP:DMG: {
- [1657906923.315064][2361:2361] CHIP:DMG: Endpoint = 0x1,
- [1657906923.315132][2361:2361] CHIP:DMG: Cluster = 0x406,
- [1657906923.315199][2361:2361] CHIP:DMG: Attribute = 0x0000_0000,
- [1657906923.315258][2361:2361] CHIP:DMG: }
- [1657906923.315322][2361:2361] CHIP:DMG:
- [1657906923.315380][2361:2361] CHIP:DMG: ],
- [1657906923.315438][2361:2361] CHIP:DMG:
- [1657906923.315497][2361:2361] CHIP:DMG: isFabricFiltered = true,
- [1657906923.315560][2361:2361] CHIP:DMG: InteractionModelRevision = 1
- [1657906923.315609][2361:2361] CHIP:DMG: },
- disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_OO_2_3.yaml b/src/app/tests/suites/certification/Test_TC_OO_2_3.yaml
index 145674f0ebe439..e5366185f25621 100644
--- a/src/app/tests/suites/certification/Test_TC_OO_2_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OO_2_3.yaml
@@ -21,7 +21,7 @@ PICS:
config:
nodeId: 0x12344321
cluster: "On/Off"
- timeout: 350
+ timeout: 400
endpoint: 1
tests:
diff --git a/src/app/tests/suites/certification/Test_TC_OO_3_1.yaml b/src/app/tests/suites/certification/Test_TC_OO_3_1.yaml
index d4affdb99c5eb4..d6af25ba58631c 100644
--- a/src/app/tests/suites/certification/Test_TC_OO_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OO_3_1.yaml
@@ -28,6 +28,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT reads all supported mandatory attributes from TH one at a time in
a manufacturer specific order"
@@ -81,7 +86,7 @@ tests:
./chip-tool onoff read on-time 1 1
- verify the " on-time-control response" on the TH (all-cluster-app) log:
+ verify the " on-time response" on the TH (all-cluster-app) log:
[...]
[1650535552.255428][3678:3678] CHIP:IM: Received Read request
diff --git a/src/app/tests/suites/certification/Test_TC_OO_3_2.yaml b/src/app/tests/suites/certification/Test_TC_OO_3_2.yaml
index 5730c3100f97ff..9f833109f95aae 100644
--- a/src/app/tests/suites/certification/Test_TC_OO_3_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OO_3_2.yaml
@@ -24,6 +24,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label: "DUT issues an Off command to the Test Harness."
PICS: OO.C.C00.Tx
verification: |
diff --git a/src/app/tests/suites/certification/Test_TC_OPCREDS_1_2.yaml b/src/app/tests/suites/certification/Test_TC_OPCREDS_1_2.yaml
index ae5f9b86efaeb9..56736aa83f6600 100644
--- a/src/app/tests/suites/certification/Test_TC_OPCREDS_1_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OPCREDS_1_2.yaml
@@ -71,11 +71,6 @@ tests:
0x05,
]
- - label: "TH reads EventList from DUT"
- verification: |
- out of scope for V1.0
- disabled: true
-
- label: "TH reads AcceptedCommandList from DUT"
command: "readAttribute"
attribute: "AcceptedCommandList"
@@ -91,3 +86,18 @@ tests:
constraints:
type: list
contains: [0x01, 0x03, 0x05, 0x08]
+ #Commenting out the step EventList attribute which is out of scope for matter V1.0
+ #- label:
+ # "Read EventList attribute from the DUT and Verify that the DUT
+ # response provides a list of supported events."
+ # verification: |
+ # Not implemented in chip-tool
+ # cluster: "LogCommands"
+ # command: "UserPrompt"
+ # PICS: PICS_USER_PROMPT
+ # arguments:
+ # values:
+ # - name: "message"
+ # value: "Please enter 'y' for success"
+ # - name: "expectedValue"
+ # value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_1.yaml b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_1.yaml
index 92052a3e0b268a..7e59af1e090f4f 100644
--- a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_1.yaml
@@ -38,7 +38,7 @@ tests:
- label: "Start the commissioning process of DUT by TH1 on a first Fabric"
verification: |
DUT side:
- sudo ./chip-all-clusters-app --wifi
+ sudo ./chip-all-clusters-app --wifi --trace_decode 1
TH side:
./chip-tool pairing ble-wifi 1 zigbeehome matter123 20202021 3841 --trace_decode 1
@@ -83,7 +83,7 @@ tests:
- label: "TH1 sends AttestationRequest command to DUT"
PICS: OPCREDS.S.C00.Rsp && OPCREDS.S.C01.Tx
verification: |
- To get attestation nonce give below command
+ To get attestation nonce give below command Raspi platform on TH
echo hex:$(hexdump -vn32 -e"4/4 "%08X" " /dev/urandom)
@@ -105,21 +105,105 @@ tests:
saves the certififate as PAICert"
PICS: OPCREDS.S.C02.Rsp && OPCREDS.S.C03.Tx
verification: |
- ./chip-tool operationalcredentials certificate-chain-request 2 1 0
+ ./chip-tool operationalcredentials certificate-chain-request 2 1 0 --trace_decode 1
- Verify the CertificateChainResponse and verify that the size of certificate is less than or equal to 600 bytes and of type octstr in TH Log
-
- [1658223566.816155][5951:5956] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0003
- [1658223566.816246][5951:5956] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0003
- [1658223566.816346][5951:5956] CHIP:TOO: CertificateChainResponse: {
- [1658223566.816403][5951:5956] CHIP:TOO: certificate: 308201CB30820171A003020102020856AD8222AD945B64300A06082A8648CE3D04030230303118301606035504030C0F4D617474657220546573742050414131143012060A2B0601040182A27C02010C04464646313020170D3232303230353030303030305A180F39393939313233313233353935395A303D3125302306035504030C1C4D6174746572204465762050414920307846464631206E6F2050494431143012060A2B0601040182A27C02010C04464646313059301306072A8648CE3D020106082A8648CE3D03010703420004419A9315C2173E0C8C876D03CCFC944852647F7FEC5E5082F4059928ECA894C594151309AC631E4CB03392AF684B0BAFB7E65B3B8162C2F52BF931B8E77AAA82A366306430120603551D130101FF040830060101FF020100300E0603551D0F0101FF040403020106301D0603551D0E0416041463540E47F64B1C38D13884A462D16C195D8FFB3C301F0603551D230418301680146AFD22771F511FECBF1641976710DCDC31A1717E300A06082A8648CE3D0403020348003045022100B2EF27F49AE9B50FB91EEAC94C4D0BDBB8D7929C6C
- [1658223566.816475][5951:5956] CHIP:TOO: ...........: B88FACE529368D12054C0C0220655DC92B86BD909882A6C62177B825D7D05EDBE7C22F9FEA71220E7EA703F891
- [1658223566.816510][5951:5956] CHIP:TOO: }
- Verify the size of certificate is less than or equal to 600 bytes and of type octstr from the above log
+ Verify the CertificateChainResponse and verify that the size of certificate is less than or equal to 600 bytes and of type octstr in TH Log
- Example :
- 308201CB30820171A003020102020856AD8222AD945B64300A06082A8648CE3D04030230303118301606035504030C0F4D617474657220546573742050414131143012060A2B0601040182A27C02010C04464646313020170D3232303230353030303030305A180F39393939313233313233353935395A303D3125302306035504030C1C4D6174746572204465762050414920307846464631206E6F2050494431143012060A2B0601040182A27C02010C04464646313059301306072A8648CE3D020106082A8648CE3D03010703420004419A9315C2173E0C8C876D03CCFC944852647F7FEC5E5082F4059928ECA894C594151309AC631E4CB03392AF684B0BAFB7E65B3B8162C2F52BF931B8E77AAA82A366306430120603551D130101FF040830060101FF020100300E0603551D0F0101FF040403020106301D0603551D0E0416041463540E47F64B1C38D13884A462D16C195D8FFB3C301F0603551D230418301680146AFD22771F511FECBF1641976710DCDC31A1717E300A06082A8648CE3D0403020348003045022100B2EF27F49AE9B50FB91EEAC94C4D0BDBB8D7929C6C
+ [1660214092.609231][14671:14676] CHIP:DMG: InvokeRequestMessage =
+ [1660214092.609243][14671:14676] CHIP:DMG: {
+ [1660214092.609255][14671:14676] CHIP:DMG: suppressResponse = false,
+ [1660214092.609269][14671:14676] CHIP:DMG: timedRequest = false,
+ [1660214092.609281][14671:14676] CHIP:DMG: InvokeRequests =
+ [1660214092.609301][14671:14676] CHIP:DMG: [
+ [1660214092.609311][14671:14676] CHIP:DMG: CommandDataIB =
+ [1660214092.609326][14671:14676] CHIP:DMG: {
+ [1660214092.609338][14671:14676] CHIP:DMG: CommandPathIB =
+ [1660214092.609352][14671:14676] CHIP:DMG: {
+ [1660214092.609367][14671:14676] CHIP:DMG: EndpointId = 0x0,
+ [1660214092.609383][14671:14676] CHIP:DMG: ClusterId = 0x3e,
+ [1660214092.609396][14671:14676] CHIP:DMG: CommandId = 0x2,
+ [1660214092.609410][14671:14676] CHIP:DMG: },
+ [1660214092.609426][14671:14676] CHIP:DMG:
+ [1660214092.609437][14671:14676] CHIP:DMG: CommandFields =
+ [1660214092.609452][14671:14676] CHIP:DMG: {
+ [1660214092.609467][14671:14676] CHIP:DMG: 0x0 = 2,
+ [1660214092.609481][14671:14676] CHIP:DMG: },
+ [1660214092.609493][14671:14676] CHIP:DMG: },
+ [1660214092.609511][14671:14676] CHIP:DMG:
+ [1660214092.609522][14671:14676] CHIP:DMG: ],
+ [1660214092.609541][14671:14676] CHIP:DMG:
+ [1660214092.609551][14671:14676] CHIP:DMG: InteractionModelRevision = 1
+ [1660214092.609563][14671:14676] CHIP:DMG: },
+ [1660214092.609576][14671:14676] CHIP:DMG:
+ [1660214092.609674][14671:14676] CHIP:DMG: ICR moving to [CommandSen]
+ [1660214092.609707][14671:14676] CHIP:EM: Sending Standalone Ack for MessageCounter:33263154 on exchange 56685i
+ [1660214092.609876][14671:14676] CHIP:IN: Prepared unauthenticated message 0x7f5ae77fd000 to 0x0000000000000000 (0) of type 0x10 and protocolId (0, 0) on exchange 56685i with MessageCounter:66323624.
+ [1660214092.609904][14671:14676] CHIP:IN: Sending unauthenticated msg 0x7f5ae77fd000 with MessageCounter:66323624 to 0x0000000000000000 at monotonic time: 00000000012052C1 msec
+ [1660214092.610138][14671:14676] CHIP:DMG: >> to UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540 | 66323624 | [Secure Channel (0) / Standalone Ack (0x10) / Session = 0 / Exchange = 56685]
+ [1660214092.610167][14671:14676] CHIP:DMG: Header Flags =
+ [1660214092.610177][14671:14676] CHIP:DMG: {
+ [1660214092.610198][14671:14676] CHIP:DMG: Message (0x04) =
+ [1660214092.610208][14671:14676] CHIP:DMG: {
+ [1660214092.610222][14671:14676] CHIP:DMG: SourceNodeId = 86B22B3066A1B459
+ [1660214092.610234][14671:14676] CHIP:DMG: }
+ [1660214092.610255][14671:14676] CHIP:DMG: Exchange (0x03) =
+ [1660214092.610265][14671:14676] CHIP:DMG: {
+ [1660214092.610276][14671:14676] CHIP:DMG: Initiator = true
+ [1660214092.610290][14671:14676] CHIP:DMG: AckMsg = 33263154
+ [1660214092.610301][14671:14676] CHIP:DMG: }
+ [1660214092.610333][14671:14676] CHIP:DMG: }
+ [1660214092.610355][14671:14676] CHIP:DMG:
+ [1660214092.610379][14671:14676] CHIP:DMG: Encrypted Payload (26 bytes) =
+ [1660214092.610394][14671:14676] CHIP:DMG: {
+ [1660214092.610407][14671:14676] CHIP:DMG: data = 04000000a804f40359b4a166302bb28603106ddd0000328efb01
+ [1660214092.610423][14671:14676] CHIP:DMG: buffer_ptr = 140028080604320
+ [1660214092.610436][14671:14676] CHIP:DMG: }
+ [1660214092.610450][14671:14676] CHIP:DMG:
+ [1660214092.610521][14671:14676] CHIP:EM: Flushed pending ack for MessageCounter:33263154 on exchange 56685i
+ [1660214092.617596][14671:14676] CHIP:DMG: << from UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540 | 219026739 | [Interaction Model (1) / InvokeCommandResponse (0x09) / Session = 20731 / Exchange = 56686]
+ [1660214092.617620][14671:14676] CHIP:DMG: Header Flags =
+ [1660214092.617626][14671:14676] CHIP:DMG: {
+ [1660214092.617637][14671:14676] CHIP:DMG: Exchange (0x06) =
+ [1660214092.617645][14671:14676] CHIP:DMG: {
+ [1660214092.617652][14671:14676] CHIP:DMG: AckMsg = 21510045
+ [1660214092.617657][14671:14676] CHIP:DMG: NeedsAck = true
+ [1660214092.617663][14671:14676] CHIP:DMG: }
+ [1660214092.617672][14671:14676] CHIP:DMG: }
+ [1660214092.617678][14671:14676] CHIP:DMG:
+ [1660214092.617686][14671:14676] CHIP:DMG: Encrypted Payload (531 bytes) =
+ [1660214092.617692][14671:14676] CHIP:DMG: {
+ [1660214092.617698][14671:14676] CHIP:DMG: data = 00fb500033150e0d1ee5b6538768098d8ef37ec0e09fbeb30c158a93ffdd1ca81041b2baa637a7e200110cd7cf06f5ffa40a8e4529a8a38cdd47e50715aaa344941b0c760264022f21b37432352c00f457fade1bdee072261fcb5cde3fcd70e2e71d5a8ec9fa038e670a404d8641162b8fb34919e9d6e431a1c895a6e01cbd3125c9322ff741caf28b79f69f103ec0e9c5b1b74c43fde4d4ac21f15e48b2090916feca5662682ae9eb1f8d18011d618492d57139ad99e94f99e3a755d2a8e46ba7133a0f1d2fe20b7e5cf2906542c4685866c7ccbd8e2e15e84e3dc653057623dac7d65d7bb785466bab3e816e06f378d0165aadf7ef38d23afdb42731191683a995fa1223bcccf27c0314aced823b2a00ff0da758b1f910631fab7098f013a7fed82136cf072c1150e4f351541f194f0aa2987bc0d1d7688d7955d94560b34bbce0b407d340b0ebaef6f5e9343af6cb8d030fb8040a9a6b7cd9465974a692072d05597b98ec66c42cf4edd86d841048cf5f045f90fb74d4066f2f23e038530e18dd4a0f3c1d86800077661bbd5ff28ff873bb87c6a2545871c6eeca5426466cecff984822b8dd3b7822fb109ec80c9ca3c9bb70b20056f2f4f8b25d1ec3bd8c17a86403bdd42d8cf2c2f66ca8983812361f34770992a7724fc33c5297169a2dcc99b92f290d2894bad6c612684f29c71eb0190b5d8d31dee66650da1942a798de69389d9c5bcfbf0e56a08c820092a53d4f34
+ [1660214092.617712][14671:14676] CHIP:DMG: buffer_ptr = 140028080581472
+ [1660214092.617717][14671:14676] CHIP:DMG: }
+ [1660214092.617722][14671:14676] CHIP:DMG:
+ [1660214092.617768][14671:14676] CHIP:DMG: DAC/PAI (463) =
+ [1660214092.617789][14671:14676] CHIP:DMG: {
+ -----BEGIN CERTIFICATE-----
+ MIIByzCCAXGgAwIBAgIIVq2CIq2UW2QwCgYIKoZIzj0EAwIwMDEYMBYGA1UEAwwP
+ TWF0dGVyIFRlc3QgUEFBMRQwEgYKKwYBBAGConwCAQwERkZGMTAgFw0yMjAyMDUw
+ MDAwMDBaGA85OTk5MTIzMTIzNTk1OVowPTElMCMGA1UEAwwcTWF0dGVyIERldiBQ
+ QUkgMHhGRkYxIG5vIFBJRDEUMBIGCisGAQQBgqJ8AgEMBEZGRjEwWTATBgcqhkjO
+ PQIBBggqhkjOPQMBBwNCAARBmpMVwhc+DIyHbQPM/JRIUmR/f+xeUIL0BZko7KiU
+ xZQVEwmsYx5MsDOSr2hLC6+35ls7gWLC9Sv5MbjneqqCo2YwZDASBgNVHRMBAf8E
+ CDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUY1QOR/ZLHDjROISk
+ YtFsGV2P+zwwHwYDVR0jBBgwFoAUav0idx9RH+y/FkGXZxDc3DGhcX4wCgYIKoZI
+ zj0EAwIDSAAwRQIhALLvJ/Sa6bUPuR7qyUxNC9u415KcbLiPrOUpNo0SBUwMAiBl
+ Xckrhr2QmIKmxiF3uCXX0F7b58Ivn+pxIg5+pwP4kQ==
+ -----END CERTIFICATE-----
+ [1660214092.617801][14671:14676] CHIP:DMG: }
+ [1660214092.617807][14671:14676] CHIP:DMG:
+ [1660214092.617815][14671:14676] CHIP:DMG:
+ [1660214092.617827][14671:14676] CHIP:DMG: Additional Fields =
+ [1660214092.617832][14671:14676] CHIP:DMG: {
+ [1660214092.617839][14671:14676] CHIP:DMG: peer_address = UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540
+ [1660214092.617845][14671:14676] CHIP:DMG: }
+ [1660214092.617851][14671:14676] CHIP:DMG:
+ [1660214092.617861][14671:14676] CHIP:EM: Received message of type 0x9 with protocolId (0, 1) and MessageCounter:219026739 on exchange 56686i
+ [1660214092.617870][14671:14676] CHIP:EM: Found matching exchange: 56686i, Delegate: 0x7f5ad4003a48
+ [1660214092.617885][14671:14676] CHIP:EM: Rxd Ack; Removing MessageCounter:21510045 from Retrans Table on exchange 56686i
+ [1660214092.617891][14671:14676] CHIP:EM: Removed CHIP MessageCounter:21510045 from RetransTable on exchange 56686i
+ [1660214092.617904][14671:14676] CHIP:DMG: ICR moving to [ResponseRe]
disabled: true
- label:
@@ -131,17 +215,101 @@ tests:
Verify the CertificateChainResponse in TH Log
- [1658223537.868606][5857:5862] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0003
- [1658223537.868656][5857:5862] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0003
- [1658223537.868716][5857:5862] CHIP:TOO: CertificateChainResponse: {
- [1658223537.868762][5857:5862] CHIP:TOO: certificate: 308201E73082018EA003020102020869CDF10DE9E54ED1300A06082A8648CE3D040302303D3125302306035504030C1C4D6174746572204465762050414920307846464631206E6F2050494431143012060A2B0601040182A27C02010C04464646313020170D3232303230353030303030305A180F39393939313233313233353935395A30533125302306035504030C1C4D61747465722044657620444143203078464646312F30783830303131143012060A2B0601040182A27C02010C044646463131143012060A2B0601040182A27C02020C04383030313059301306072A8648CE3D020106082A8648CE3D03010703420004463AC69342910A0E5588FC6FF56BB63E62ECCECB148F7D4EB03EE552601415767D16A5C663F793E49123260B8297A7CD7E7CFC7B316B39D98E90D29377738E82A360305E300C0603551D130101FF04023000300E0603551D0F0101FF040403020780301D0603551D0E0416041488DDE7B300382932CFF734C04624810F44168A6F301F0603551D2304183016801463540E47F64B1C38D13884A462D16C195D8FFB3C300A06082A8648CE3D040302
- [1658223537.868809][5857:5862] CHIP:TOO: ...........: 034700304402200127A27B4B44610EE2FCDC4D2B7885563660BC0F76F17219ED6A08DFB2B3C1CD02206B59E0AF45F3EB2A85B919D35731528C6028C415239545E108E4E54E70971353
- [1658223537.868834][5857:5862] CHIP:TOO: }
-
- Verify the size of certificate is less than or equal to 600 bytes and of type octstr from the above log
-
- Example :
- 308201E73082018EA003020102020869CDF10DE9E54ED1300A06082A8648CE3D040302303D3125302306035504030C1C4D6174746572204465762050414920307846464631206E6F2050494431143012060A2B0601040182A27C02010C04464646313020170D3232303230353030303030305A180F39393939313233313233353935395A30533125302306035504030C1C4D61747465722044657620444143203078464646312F30783830303131143012060A2B0601040182A27C02010C044646463131143012060A2B0601040182A27C02020C04383030313059301306072A8648CE3D020106082A8648CE3D03010703420004463AC69342910A0E5588FC6FF56BB63E62ECCECB148F7D4EB03EE552601415767D16A5C663F793E49123260B8297A7CD7E7CFC7B316B39D98E90D29377738E82A360305E300C0603551D130101FF04023000300E0603551D0F0101FF040403020780301D0603551D0E0416041488DDE7B300382932CFF734C04624810F44168A6F301F0603551D2304183016801463540E47F64B1C38D13884A462D16C195D8FFB3C300A06082A8648CE3D040302
+ [1660218221.819087][17048:17053] CHIP:DMG: InvokeRequestMessage =
+ [1660218221.819106][17048:17053] CHIP:DMG: {
+ [1660218221.819126][17048:17053] CHIP:DMG: suppressResponse = false,
+ [1660218221.819147][17048:17053] CHIP:DMG: timedRequest = false,
+ [1660218221.819164][17048:17053] CHIP:DMG: InvokeRequests =
+ [1660218221.819194][17048:17053] CHIP:DMG: [
+ [1660218221.819210][17048:17053] CHIP:DMG: CommandDataIB =
+ [1660218221.819233][17048:17053] CHIP:DMG: {
+ [1660218221.819251][17048:17053] CHIP:DMG: CommandPathIB =
+ [1660218221.819274][17048:17053] CHIP:DMG: {
+ [1660218221.819296][17048:17053] CHIP:DMG: EndpointId = 0x0,
+ [1660218221.819319][17048:17053] CHIP:DMG: ClusterId = 0x3e,
+ [1660218221.819341][17048:17053] CHIP:DMG: CommandId = 0x2,
+ [1660218221.819361][17048:17053] CHIP:DMG: },
+ [1660218221.819386][17048:17053] CHIP:DMG:
+ [1660218221.819403][17048:17053] CHIP:DMG: CommandFields =
+ [1660218221.819425][17048:17053] CHIP:DMG: {
+ [1660218221.819448][17048:17053] CHIP:DMG: 0x0 = 1,
+ [1660218221.819470][17048:17053] CHIP:DMG: },
+ [1660218221.819488][17048:17053] CHIP:DMG: },
+ [1660218221.819515][17048:17053] CHIP:DMG:
+ [1660218221.819530][17048:17053] CHIP:DMG: ],
+ [1660218221.819559][17048:17053] CHIP:DMG:
+ [1660218221.819575][17048:17053] CHIP:DMG: InteractionModelRevision = 1
+ [1660218221.819592][17048:17053] CHIP:DMG: },
+ [1660218221.819611][17048:17053] CHIP:DMG:
+ [1660218221.819755][17048:17053] CHIP:DMG: ICR moving to [CommandSen]
+ [1660218221.819807][17048:17053] CHIP:EM: Sending Standalone Ack for MessageCounter:33263156 on exchange 41890i
+ [1660218221.820060][17048:17053] CHIP:IN: Prepared unauthenticated message 0x7f950d02b000 to 0x0000000000000000 (0) of type 0x10 and protocolId (0, 0) on exchange 41890i with MessageCounter:146063148.
+ [1660218221.820102][17048:17053] CHIP:IN: Sending unauthenticated msg 0x7f950d02b000 with MessageCounter:146063148 to 0x0000000000000000 at monotonic time: 00000000015F547B msec
+ [1660218221.820457][17048:17053] CHIP:DMG: >> to UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540 | 146063148 | [Secure Channel (0) / Standalone Ack (0x10) / Session = 0 / Exchange = 41890]
+ [1660218221.820501][17048:17053] CHIP:DMG: Header Flags =
+ [1660218221.820519][17048:17053] CHIP:DMG: {
+ [1660218221.820578][17048:17053] CHIP:DMG: Message (0x04) =
+ [1660218221.820596][17048:17053] CHIP:DMG: {
+ [1660218221.820622][17048:17053] CHIP:DMG: SourceNodeId = EB2A0D2FCD128BCD
+ [1660218221.820642][17048:17053] CHIP:DMG: }
+ [1660218221.820677][17048:17053] CHIP:DMG: Exchange (0x03) =
+ [1660218221.820692][17048:17053] CHIP:DMG: {
+ [1660218221.820709][17048:17053] CHIP:DMG: Initiator = true
+ [1660218221.820730][17048:17053] CHIP:DMG: AckMsg = 33263156
+ [1660218221.820747][17048:17053] CHIP:DMG: }
+ [1660218221.820778][17048:17053] CHIP:DMG: }
+ [1660218221.820792][17048:17053] CHIP:DMG:
+ [1660218221.820819][17048:17053] CHIP:DMG: Encrypted Payload (26 bytes) =
+ [1660218221.820834][17048:17053] CHIP:DMG: {
+ [1660218221.820853][17048:17053] CHIP:DMG: data = 040000002cbfb408cd8b12cd2f0d2aeb0310a2a30000348efb01
+ [1660218221.820871][17048:17053] CHIP:DMG: buffer_ptr = 140277792687280
+ [1660218221.820888][17048:17053] CHIP:DMG: }
+ [1660218221.820906][17048:17053] CHIP:DMG:
+ [1660218221.820997][17048:17053] CHIP:EM: Flushed pending ack for MessageCounter:33263156 on exchange 41890i
+ [1660218221.826505][17048:17053] CHIP:DMG: << from UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540 | 217571241 | [Interaction Model (1) / InvokeCommandResponse (0x09) / Session = 16041 / Exchange = 41891]
+ [1660218221.826559][17048:17053] CHIP:DMG: Header Flags =
+ [1660218221.826581][17048:17053] CHIP:DMG: {
+ [1660218221.826620][17048:17053] CHIP:DMG: Exchange (0x06) =
+ [1660218221.826636][17048:17053] CHIP:DMG: {
+ [1660218221.826658][17048:17053] CHIP:DMG: AckMsg = 228316047
+ [1660218221.826677][17048:17053] CHIP:DMG: NeedsAck = true
+ [1660218221.826695][17048:17053] CHIP:DMG: }
+ [1660218221.826723][17048:17053] CHIP:DMG: }
+ [1660218221.826736][17048:17053] CHIP:DMG:
+ [1660218221.826764][17048:17053] CHIP:DMG: Encrypted Payload (559 bytes) =
+ [1660218221.826778][17048:17053] CHIP:DMG: {
+ [1660218221.826796][17048:17053] CHIP:DMG: data = 00a93e00a9dff70c44f908196a2718a5b4cd8fb67b67d2223ade09fa1f23a5e9d6081ef9003a293b4f7ddf1e64767c15165a5544c4bc162a2eea22b085a5392580dec393bc15a705abc25360a7f05f99baf448b6c29e93defc8d01b00c11b268b2a197f88fc5984fe4c541fc523e2ecd2316b5dc1109c54408186296772f48d484047770f70a6af3e639833481b4663c7b65b902a850a8d55d3a86c73523a6853f47727582113480efece0e72f552a42ce49a26746e8d6b405ae87fadc7711a313f1865b90ac934486e05d2ed6868a5b5c4e13010eec98f917308c6fe5e9c6816c045f4640aea37804278a600cede11aee2bb591224edd0524bda56ee2d4d64c8a29c664edb006f4f42855f3868f272e94d8648d2431c0e95f6a55802c18d5938497b6b5c5aa37e37597a6782ca55a2948ceededd45e63537f4f1985f45653dbb118a0e1108eca228973b5c8fb48a1afeb649c46aec6259a649f0795c677ca492452c9fcb07969b6f851421252d30d6e160a350feb8baee6ccea79f54e0ebfae94c99eafa466964671b1fe3aa8585c83c28d9484444ba7d5a8a8e3178aedea00d292a53e3f0939b15bb7bee982e346410d5b064ec496409ba26e6a3b2182cff7b1955ba8f980d99590dfa0f2b690d1f1e5d8d178b1a64893dfcd242949ade66269336bc6c0440e9e4a120af59bfbbaabee32871ec1208915f63f91bdb1305045afeface4c7fc39e8eae7db8923b95aa01d4fee30d525664297305e569a3bfca01a767d47f6fdc0eb1b7706bc4547b1
+ [1660218221.826837][17048:17053] CHIP:DMG: buffer_ptr = 140277792657648
+ [1660218221.826854][17048:17053] CHIP:DMG: }
+ [1660218221.826870][17048:17053] CHIP:DMG:
+ [1660218221.826979][17048:17053] CHIP:DMG: DAC/PAI (491) =
+ [1660218221.827025][17048:17053] CHIP:DMG: {
+ -----BEGIN CERTIFICATE-----
+ MIIB5zCCAY6gAwIBAgIIac3xDenlTtEwCgYIKoZIzj0EAwIwPTElMCMGA1UEAwwc
+ TWF0dGVyIERldiBQQUkgMHhGRkYxIG5vIFBJRDEUMBIGCisGAQQBgqJ8AgEMBEZG
+ RjEwIBcNMjIwMjA1MDAwMDAwWhgPOTk5OTEyMzEyMzU5NTlaMFMxJTAjBgNVBAMM
+ HE1hdHRlciBEZXYgREFDIDB4RkZGMS8weDgwMDExFDASBgorBgEEAYKifAIBDARG
+ RkYxMRQwEgYKKwYBBAGConwCAgwEODAwMTBZMBMGByqGSM49AgEGCCqGSM49AwEH
+ A0IABEY6xpNCkQoOVYj8b/Vrtj5i7M7LFI99TrA+5VJgFBV2fRalxmP3k+SRIyYL
+ gpenzX58/HsxaznZjpDSk3dzjoKjYDBeMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/
+ BAQDAgeAMB0GA1UdDgQWBBSI3eezADgpMs/3NMBGJIEPRBaKbzAfBgNVHSMEGDAW
+ gBRjVA5H9kscONE4hKRi0WwZXY/7PDAKBggqhkjOPQQDAgNHADBEAiABJ6J7S0Rh
+ DuL83E0reIVWNmC8D3bxchntagjfsrPBzQIga1ngr0Xz6yqFuRnTVzFSjGAoxBUj
+ lUXhCOTlTnCXE1M=
+ -----END CERTIFICATE-----
+ [1660218221.827089][17048:17053] CHIP:DMG: }
+ [1660218221.827105][17048:17053] CHIP:DMG:
+ [1660218221.827125][17048:17053] CHIP:DMG:
+ [1660218221.827158][17048:17053] CHIP:DMG: Additional Fields =
+ [1660218221.827173][17048:17053] CHIP:DMG: {
+ [1660218221.827194][17048:17053] CHIP:DMG: peer_address = UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540
+ [1660218221.827211][17048:17053] CHIP:DMG: }
+ [1660218221.827226][17048:17053] CHIP:DMG:
+ [1660218221.827257][17048:17053] CHIP:EM: Received message of type 0x9 with protocolId (0, 1) and MessageCounter:217571241 on exchange 41891i
+ [1660218221.827276][17048:17053] CHIP:EM: Found matching exchange: 41891i, Delegate: 0x7f94f8003a48
+ [1660218221.827310][17048:17053] CHIP:EM: Rxd Ack; Removing MessageCounter:228316047 from Retrans Table on exchange 41891i
+ [1660218221.827326][17048:17053] CHIP:EM: Removed CHIP MessageCounter:228316047 from RetransTable on exchange 41891i
+ [1660218221.827357][17048:17053] CHIP:DMG: ICR moving to [ResponseRe]
disabled: true
- label: "TH1 Sends CSRRequest command with a random 32-byte nonce"
diff --git a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_2.yaml b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_2.yaml
index 7354d15140d161..e8a8c3d394cc91 100644
--- a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_2.yaml
@@ -26,6 +26,13 @@ config:
endpoint: 0
tests:
+ - label:
+ "Precondition: This test case assumes that during Commissioning AddNOC
+ will be sent with ICACValue"
+ verification: |
+
+ disabled: true
+
- label: "Factory Reset DUT"
verification: |
On both DUT and TH side use the below command
@@ -237,8 +244,8 @@ tests:
disabled: true
- label:
- "From the NOCStruct values verify the following: ,NOC matches the NOC
- sent to the DUT during commissioning process ,ICAC matches the ICAC
+ "From the NOCStruct values verify the following: NOC matches the NOC
+ sent to the DUT during commissioning process ICAC matches the ICAC
sent to the DUT during commissioning process from AddNOC in
pre-condition"
verification: |
@@ -274,10 +281,10 @@ tests:
- label:
"Verify that TH1 is able to read the FabricDescriptorStruct values
- ,Verify that Fabrics list does not have any entry as FabricID =
+ Verify that Fabrics list does not have any entry as FabricID =
FabricID2"
verification: |
- Verify the FabricDescriptorStruct values has no entry og FabricID2
+ Verify the FabricDescriptorStruct values has no entry log FabricID2 on TH1
[1657693240.722099][15129:15134] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 908345149
[1657693240.722200][15129:15134] CHIP:TOO: Fabrics: 1 entries
@@ -388,7 +395,7 @@ tests:
- label:
"From the NOCStruct values verify the following: NOC matches the NOC
- sent to the DUT during commissioning process,ICAC matches the ICAC
+ sent to the DUT during commissioning process ICAC matches the ICAC
sent to the DUT during commissioning process from AddNOC in
pre-condition"
verification: |
diff --git a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_3.yaml b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_3.yaml
index 3486d8b349a92e..010a2adb87b5b6 100644
--- a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_3.yaml
@@ -45,7 +45,7 @@ tests:
- label: "Verify that the DUT sends AttestationRequest Command to TH"
PICS: OPCREDS.C.C00.Tx
verification: |
- Verify that the DUT send AttestationRequest Command to TH(all-clusters-app)
+ Verify that the DUT send AttestationRequest Command to TH(all-clusters-app) commissioning log
[1657778307.595402][8192:8197] CHIP:CTL: Commissioning stage next step: "SendDACCertificateRequest" -> "SendAttestationRequest"
[1657778307.595466][8192:8197] CHIP:CTL: Performing next commissioning step "SendAttestationRequest"
@@ -288,7 +288,7 @@ tests:
- label: "Verify that the DUT sends CertificateChainRequest Command to TH"
PICS: OPCREDS.C.C02.Tx
verification: |
- Verify that the DUT send CertificateChainRequest Command to TH (all-clusters-app)
+ Verify that the DUT send CertificateChainRequest Command to TH (all-clusters-app) commissioning log
[1657778306.864918][8192:8197] CHIP:CTL: Sending Certificate Chain request to 0xffff78000b60 device
[1657778306.865059][8192:8197] CHIP:DMG: ICR moving to [AddingComm]
@@ -419,7 +419,7 @@ tests:
- label: "Verify that the DUT Sends CSRRequest command to TH"
PICS: OPCREDS.C.C04.Tx
verification: |
- Verify that the DUT send CSRRequest command to TH (all-clusters-app)
+ Verify that the DUT send CSRRequest command to TH (all-clusters-app) commissioning log
[1657778307.949847][8192:8197] CHIP:CTL: Sending CSR request to 0xffff78000b60 device
[1657778307.949923][8192:8197] CHIP:DMG: ICR moving to [AddingComm]
@@ -519,7 +519,7 @@ tests:
which contains the Node Operational PublicKey from CSR
AttestationSignature"
verification: |
- Extract the CSRResponse values from TH (all-clusters-app)
+ Extract the CSRResponse values from TH (all-clusters-app) commissioning log
[1657778308.175702][8192:8197] CHIP:EM: Found matching exchange: 40144i, Delegate: 0xaaaaf7819670
[1657778308.175743][8192:8197] CHIP:DMG: ICR moving to [ResponseRe]
@@ -563,7 +563,7 @@ tests:
- label: "Verify that the DUT sends AddTrustedRootCertificate command to TH"
PICS: OPCREDS.C.C0b.Tx
verification: |
- Verify that the DUT send AddTrustedRootCertificate command to TH (all-clusters-app)
+ Verify that the DUT send AddTrustedRootCertificate command to TH (all-clusters-app) commissioning log
[1657778308.179742][8192:8197] CHIP:CTL: Performing next commissioning step "SendTrustedRootCert"
[1657778308.179769][8192:8197] CHIP:CTL: Sending root certificate to the device
@@ -683,7 +683,7 @@ tests:
- label: "Verify that DUT sends the AddNOC Command to TH"
PICS: OPCREDS.C.C06.Tx
verification: |
- Verify that the DUT send AddNOC command to TH (all-clusters-app)
+ Verify that the DUT send AddNOC command to TH (all-clusters-app) commissioning log
[1657778308.374786][8192:8197] CHIP:CTL: Performing next commissioning step "SendNOC"
@@ -920,12 +920,12 @@ tests:
disabled: true
- label:
- "Verify that the size of RootPublicKey is within 65 octstr ,Verify
+ "Verify that the size of RootPublicKey is within 65 octstr. Verify
that the NodeID is the same as the chip-node-id in the NOC sent with
- AddNOC Command,Verify that the VendorID is the same as the
- AdminVendorID sent with AddNOC Command,Verify that the FabricID is the
- same as the matter-fabric-id field from the operational
- certificate,Verify that the size of Label has a maximum value of 32
+ AddNOC Command. Verify that the VendorID is the same as the
+ AdminVendorID sent with AddNOC Command. Verify that the FabricID is
+ the same as the matter-fabric-id field from the operational
+ certificate. Verify that the size of Label has a maximum value of 32
bytes."
verification: |
Verify that the following on TH (all-clusters-app) log
diff --git a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_4.yaml b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_4.yaml
index 391d9df013fae9..54f13b1619d207 100644
--- a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_4.yaml
@@ -41,7 +41,7 @@ tests:
verification: |
./chip-tool operationalcredentials read nocs 1 0 --fabric-filtered 1
- Verify in TH Log
+ Verify NOC lists and verify the returned lists has single entry in TH(chip-tool) Log
[1658736497.592132][3787:3792] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0000 DataVersion: 999376603
[1658736497.595396][3787:3792] CHIP:TOO: NOCs: 1 entries
@@ -150,11 +150,12 @@ tests:
verification: |
Verify that the DUT returns a CSRResponse and save as csr_not_update
- To get csr nonce give below command 2 times
+ To get csr nonce give below command 2 times in TH(chip-tool) Log
echo hex:$(hexdump -vn32 -e"4/4 "%08X" " /dev/urandom)
./chip-tool operationalcredentials csrrequest hex:C11D6EAA00A54066220DA7F3FC5DC0F684C13D8B8FD3758B51163C2AEDD6F10F 1 0 --IsForUpdateNOC 0
+ Verify DUT returns a CSRResponse in TH(chip-tool) Log
[1658743641.233113][9670:9675] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0005
[1658743641.233162][9670:9675] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0005
[1658743641.233226][9670:9675] CHIP:TOO: CSRResponse: {
diff --git a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_5.yaml b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_5.yaml
index b769dc2185a587..15598fea93abdb 100644
--- a/src/app/tests/suites/certification/Test_TC_OPCREDS_3_5.yaml
+++ b/src/app/tests/suites/certification/Test_TC_OPCREDS_3_5.yaml
@@ -41,7 +41,8 @@ tests:
verification: |
./chip-tool operationalcredentials read nocs 1 0 --fabric-filtered 1
- Verify in TH Log
+ Verify NOC lists and verify the returned lists has single entry in TH(chip-tool) Log
+
[1658736497.592132][3787:3792] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0000 DataVersion: 999376603
[1658736497.595396][3787:3792] CHIP:TOO: NOCs: 1 entries
[1658736497.595477][3787:3792] CHIP:TOO: [1]: {
@@ -85,11 +86,12 @@ tests:
true"
PICS: OPCREDS.S.C04.Rsp
verification: |
- To get csr nonce give below command 2 times
+ To get csr nonce give below command 2 times in TH(chip-tool)
echo hex:$(hexdump -vn32 -e"4/4 "%08X" " /dev/urandom)
./chip-tool operationalcredentials csrrequest hex:C11D6EAA00A54066220DA7F3FC5DC0F684C13D8B8FD3758B51163C2AEDD6F10F 1 0 --IsForUpdateNOC 0
+ Verify that the DUT returns a CSRResponse in TH(chip-tool) log
[1658743641.233113][9670:9675] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0005
[1658743641.233162][9670:9675] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0005
[1658743641.233226][9670:9675] CHIP:TOO: CSRResponse: {
diff --git a/src/app/tests/suites/certification/Test_TC_PCC_3_1.yaml b/src/app/tests/suites/certification/Test_TC_PCC_3_1.yaml
index 1c3774ba792444..7cf72c58584f9b 100644
--- a/src/app/tests/suites/certification/Test_TC_PCC_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_PCC_3_1.yaml
@@ -28,6 +28,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT reads all supported mandatory attributes from TH one at a time in
a manufacturer specific order"
@@ -58,7 +63,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read max-speed 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148440.471321][2336:2336] CHIP:IM: Received Read request
[1651148440.471389][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -82,7 +87,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read max-flow 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148472.518933][2336:2336] CHIP:IM: Received Read request
[1651148472.518993][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -106,7 +111,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read effective-operation-mode 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651570515.206834][9246:9246] CHIP:IM: Received Read request
[1651570515.206917][9246:9246] CHIP:DMG: ReadRequestMessage =
@@ -128,7 +133,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read effective-control-mode 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651570975.559213][9246:9246] CHIP:IM: Received Read request
[1651570975.559268][9246:9246] CHIP:DMG: ReadRequestMessage =
@@ -147,7 +152,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read capacity 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651571009.295069][9246:9246] CHIP:IM: Received Read request
[1651571009.295158][9246:9246] CHIP:DMG: ReadRequestMessage =
@@ -166,7 +171,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read operation-mode 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651571334.617100][9337:9337] CHIP:IM: Received Read request
[1651571334.617155][9337:9337] CHIP:DMG: ReadRequestMessage =
@@ -192,7 +197,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read min-const-pressure 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148507.711384][2336:2336] CHIP:IM: Received Read request
[1651148507.711452][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -216,7 +221,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read max-const-pressure 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148537.336390][2336:2336] CHIP:IM: Received Read request
[1651148537.336445][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -240,7 +245,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read min-comp-pressure 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148566.361843][2336:2336] CHIP:IM: Received Read request
[1651148566.361897][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -262,7 +267,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read max-comp-pressure 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148595.417817][2336:2336] CHIP:IM: Received Read request
[1651148595.417901][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -286,7 +291,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read min-const-speed 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148626.823098][2336:2336] CHIP:IM: Received Read request
[1651148626.823201][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -308,7 +313,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read max-const-speed 1 1
- Verify in TH all-clusters-app log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651564124.345958][8748:8748] CHIP:IM: Received Read request
[1651564124.346033][8748:8748] CHIP:DMG: ReadRequestMessage =
@@ -331,7 +336,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read min-const-flow 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651564163.319315][8748:8748] CHIP:IM: Received Read request
[1651564163.319399][8748:8748] CHIP:DMG: ReadRequestMessage =
@@ -355,7 +360,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read min-const-flow 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651564163.319315][8748:8748] CHIP:IM: Received Read request
[1651564163.319399][8748:8748] CHIP:DMG: ReadRequestMessage =
@@ -378,7 +383,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read max-const-flow 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651564281.857728][8748:8748] CHIP:IM: Received Read request
[1651564281.857784][8748:8748] CHIP:DMG: ReadRequestMessage =
@@ -400,7 +405,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read min-const-temp 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651564317.488333][8748:8748] CHIP:IM: Received Read request
[1651564317.488417][8748:8748] CHIP:DMG: ReadRequestMessage =
@@ -422,7 +427,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read max-const-temp 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651564350.267434][8748:8748] CHIP:IM: Received Read request
[1651564350.267489][8748:8748] CHIP:DMG: ReadRequestMessage =
@@ -444,7 +449,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read pump-status 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651564415.272861][8748:8748] CHIP:IM: Received Read request
[1651564415.272946][8748:8748] CHIP:DMG: ReadRequestMessage =
@@ -466,7 +471,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read speed 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651571041.252491][9246:9246] CHIP:IM: Received Read request
[1651571041.252548][9246:9246] CHIP:DMG: ReadRequestMessage =
@@ -488,7 +493,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read lifetime-running-hours 1 1
- Verify in TH all-clusters-app log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651571194.810592][9337:9337] CHIP:IM: Received Read request
[1651571194.810647][9337:9337] CHIP:DMG: ReadRequestMessage =
@@ -510,7 +515,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read power 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651571264.121840][9337:9337] CHIP:IM: Received Read request
[1651571264.121896][9337:9337] CHIP:DMG: ReadRequestMessage =
@@ -532,7 +537,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read lifetime-energy-consumed 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651571293.017448][9337:9337] CHIP:IM: Received Read request
[1651571293.017534][9337:9337] CHIP:DMG: ReadRequestMessage =
@@ -554,7 +559,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read control-mode 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651571369.365807][9337:9337] CHIP:IM: Received Read request
[1651571369.365907][9337:9337] CHIP:DMG: ReadRequestMessage =
@@ -583,7 +588,7 @@ tests:
./chip-tool pumpconfigurationandcontrol write operation-mode 0 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the Write Request for the data sent in the above command
[1652858465.008652][2107:2107] CHIP:IM: Received Write request
[1652858465.008695][2107:2107] CHIP:DMG: IM WH moving to [Initialized]
@@ -622,7 +627,7 @@ tests:
./chip-tool pumpconfigurationandcontrol write control-mode 0 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the Write Request for the data sent in the above command
[1652858653.083434][2107:2107] CHIP:IM: Received Write request
[1652858653.083469][2107:2107] CHIP:DMG: IM WH moving to [Initialized]
@@ -655,7 +660,8 @@ tests:
./chip-tool pumpconfigurationandcontrol write lifetime-running-hours 1 1 1
- Verify in DUT as client side Log
+
+ verify on TH all-cluster-app receives the Write Request for the data sent in the above command
[1652858777.844427][2107:2107] CHIP:IM: Received Write request
[1652858777.844450][2107:2107] CHIP:DMG: IM WH moving to [Initialized]
@@ -688,7 +694,8 @@ tests:
./chip-tool pumpconfigurationandcontrol write lifetime-energy-consumed 1 1 1
- Verify in DUT as client side Log
+
+ verify on TH all-cluster-app receives the Write Request for the data sent in the above command
[1652858844.149759][2107:2107] CHIP:IM: Received Write request
[1652858844.149801][2107:2107] CHIP:DMG: IM WH moving to [Initialized]
@@ -730,36 +737,62 @@ tests:
./chip-tool pumpconfigurationandcontrol read attribute-list 1 1
- Verify in DUT as client side Log
- [1654247307401] [91803:4011207] CHIP: [TOO] Endpoint: 1 Cluster: 0x0000_0200 Attribute 0x0000_FFFB DataVersion: 3055704159
- [1654247307401] [91803:4011207] CHIP: [TOO] AttributeList: 12 entries
- [1654247307401] [91803:4011207] CHIP: [TOO] [1]: 0
- [1654247307401] [91803:4011207] CHIP: [TOO] [2]: 1
- [1654247307401] [91803:4011207] CHIP: [TOO] [3]: 2
- [1654247307401] [91803:4011207] CHIP: [TOO] [4]: 17
- [1654247307401] [91803:4011207] CHIP: [TOO] [5]: 18
- [1654247307401] [91803:4011207] CHIP: [TOO] [6]: 19
- [1654247307401] [91803:4011207] CHIP: [TOO] [7]: 32
- [1654247307401] [91803:4011207] CHIP: [TOO] [8]: 65528
- [1654247307401] [91803:4011207] CHIP: [TOO] [9]: 65529
- [1654247307401] [91803:4011207] CHIP: [TOO] [10]: 65531
- [1654247307401] [91803:4011207] CHIP: [TOO] [11]: 65532
- [1654247307401] [91803:4011207] CHIP: [TOO] [12]: 65533
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
+ [1660745892.540246][3657:3657] CHIP:IM: Received Read request
+ [1660745892.540323][3657:3657] CHIP:DMG: ReadRequestMessage =
+ [1660745892.540346][3657:3657] CHIP:DMG: {
+ [1660745892.540364][3657:3657] CHIP:DMG: AttributePathIBs =
+ [1660745892.540401][3657:3657] CHIP:DMG: [
+ [1660745892.540422][3657:3657] CHIP:DMG: AttributePathIB =
+ [1660745892.540452][3657:3657] CHIP:DMG: {
+ [1660745892.540487][3657:3657] CHIP:DMG: Endpoint = 0x1,
+ [1660745892.540517][3657:3657] CHIP:DMG: Cluster = 0x200,
+ [1660745892.540556][3657:3657] CHIP:DMG: Attribute = 0x0000_FFFB,
+ [1660745892.540582][3657:3657] CHIP:DMG: }
+ [1660745892.540616][3657:3657] CHIP:DMG:
+ [1660745892.540638][3657:3657] CHIP:DMG: ],
+ [1660745892.540673][3657:3657] CHIP:DMG:
+ [1660745892.540696][3657:3657] CHIP:DMG: isFabricFiltered = true,
+ [1660745892.540726][3657:3657] CHIP:DMG: InteractionModelRevision = 1
+ [1660745892.540747][3657:3657] CHIP:DMG: },
+ [1660745892.540821][3657:3657] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1660745892.540929][3657:3657] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1660745892.540954][3657:3657] CHIP:DMG: Cluster 200, Attribute fffb is dirty
+ [1660745892.540982][3657:3657] CHIP:DMG: Reading attribute: Cluster=0x0000_0200 Endpoint=1 AttributeId=0x0000_FFFB (expanded=0)
./chip-tool pumpconfigurationandcontrol read feature-map 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
- [1656478569086] [49565:5734437] CHIP: [TOO] Endpoint: 1 Cluster: 0x0000_0200 Attribute 0x0000_FFFC DataVersion: 1816685251
- [1656478569086] [49565:5734437] CHIP: [TOO] FeatureMap: 0
+ [1660745929.334567][3657:3657] CHIP:IM: Received Read request
+ [1660745929.334641][3657:3657] CHIP:DMG: ReadRequestMessage =
+ [1660745929.334677][3657:3657] CHIP:DMG: {
+ [1660745929.334696][3657:3657] CHIP:DMG: AttributePathIBs =
+ [1660745929.334728][3657:3657] CHIP:DMG: [
+ [1660745929.334750][3657:3657] CHIP:DMG: AttributePathIB =
+ [1660745929.334778][3657:3657] CHIP:DMG: {
+ [1660745929.334814][3657:3657] CHIP:DMG: Endpoint = 0x1,
+ [1660745929.334853][3657:3657] CHIP:DMG: Cluster = 0x200,
+ [1660745929.334884][3657:3657] CHIP:DMG: Attribute = 0x0000_FFFC,
+ [1660745929.334920][3657:3657] CHIP:DMG: }
+ [1660745929.334947][3657:3657] CHIP:DMG:
+ [1660745929.334978][3657:3657] CHIP:DMG: ],
+ [1660745929.335006][3657:3657] CHIP:DMG:
+ [1660745929.335037][3657:3657] CHIP:DMG: isFabricFiltered = true,
+ [1660745929.335059][3657:3657] CHIP:DMG: InteractionModelRevision = 1
+ [1660745929.335079][3657:3657] CHIP:DMG: },
+ [1660745929.335155][3657:3657] CHIP:DMG: IM RH moving to [GeneratingReports]
+ [1660745929.335256][3657:3657] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
+ [1660745929.335291][3657:3657] CHIP:DMG: Cluster 200, Attribute fffc is dirty
+ [1660745929.335311][3657:3657] CHIP:DMG: Reading attribute: Cluster=0x0000_0200 Endpoint=1 AttributeId=0x0000_FFFC (expanded=0)
./chip-tool pumpconfigurationandcontrol read max-pressure 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148412.273866][2336:2336] CHIP:IM: Received Read request
[1651148412.273922][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -782,7 +815,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read max-speed 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148440.471321][2336:2336] CHIP:IM: Received Read request
[1651148440.471389][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -806,7 +839,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read max-flow 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651148472.518933][2336:2336] CHIP:IM: Received Read request
[1651148472.518993][2336:2336] CHIP:DMG: ReadRequestMessage =
@@ -830,7 +863,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read effective-operation-mode 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651570515.206834][9246:9246] CHIP:IM: Received Read request
@@ -853,7 +886,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read effective-control-mode 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651570975.559213][9246:9246] CHIP:IM: Received Read request
[1651570975.559268][9246:9246] CHIP:DMG: ReadRequestMessage =
@@ -872,7 +905,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read capacity 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651571009.295069][9246:9246] CHIP:IM: Received Read request
[1651571009.295158][9246:9246] CHIP:DMG: ReadRequestMessage =
@@ -891,7 +924,7 @@ tests:
./chip-tool pumpconfigurationandcontrol read operation-mode 1 1
- Verify in DUT as client side Log
+ verify on TH all-cluster-app receives the right ReadRequest for the data sent in the above command
[1651571334.617100][9337:9337] CHIP:IM: Received Read request
[1651571334.617155][9337:9337] CHIP:DMG: ReadRequestMessage =
diff --git a/src/app/tests/suites/certification/Test_TC_PRS_2_2.yaml b/src/app/tests/suites/certification/Test_TC_PRS_2_2.yaml
index e592f5e55af813..9526002baa96fc 100644
--- a/src/app/tests/suites/certification/Test_TC_PRS_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_PRS_2_2.yaml
@@ -13,48 +13,57 @@
# limitations under the License.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 3.2.2. [TC-PRS-2.2] Primary functionality with server as DUT
+name: 34.2.2. [TC-PRS-2.2] Primary Functionality with Server as DUT
PICS:
- PRS.S
config:
nodeId: 0x12344321
- cluster: "Basic"
- endpoint: 0
+ cluster: "Pressure Measurement"
+ endpoint: 1
tests:
- - label:
- "Commission DUT to TH (can be skipped if done in a preceding test)."
- verification: |
- verification step to be updated.
- disabled: true
+ - label: "Wait for the commissioned device to be retrieved"
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
- label: "TH reads from the DUT the MeasuredValue attribute"
PICS: PRS.S.A0000
- verification: |
- ./chip-tool pressuremeasurement read measured-value 1 1
-
-
- verify MeasuredValue on TH(chip-tool) logs:
-
- CHIP:TOO: MeasuredValue: 0
- disabled: true
+ command: "readAttribute"
+ attribute: "MeasuredValue"
+ response:
+ saveAs: ValueBeforeChange
- label: "Operate on device to change the pressure significantly"
- PICS: PRS.M.PressureChange
- verification: |
- Operate at device
- disabled: true
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_USER_PROMPT && PRS.M.PressureChange
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' for success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label: "Wait 2s"
+ cluster: "DelayCommands"
+ command: "WaitForMs"
+ arguments:
+ values:
+ - name: "ms"
+ value: 2000
- label:
"After a few seconds, TH reads from the DUT the MeasuredValue
attribute"
- PICS: PRS.S.A0000
- verification: |
- ./chip-tool pressuremeasurement read measured-value 1 1
-
- verify MeasuredValue on TH(chip-tool) logs:
-
- CHIP:TOO: MeasuredValue: 1
- disabled: true
+ PICS: PRS.S.A0000 && PRS.M.PressureChange
+ command: "readAttribute"
+ attribute: "MeasuredValue"
+ response:
+ constraints:
+ notValue: ValueBeforeChange
diff --git a/src/app/tests/suites/certification/Test_TC_PRS_3_1.yaml b/src/app/tests/suites/certification/Test_TC_PRS_3_1.yaml
index ea7108c7a0d7a0..e2afec23eb8851 100644
--- a/src/app/tests/suites/certification/Test_TC_PRS_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_PRS_3_1.yaml
@@ -28,6 +28,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT reads all supported mandatory attributes from TH one at a time in
a manufacturer specific order"
diff --git a/src/app/tests/suites/certification/Test_TC_PSCFG_2_1.yaml b/src/app/tests/suites/certification/Test_TC_PSCFG_2_1.yaml
index 9d559f8e302bbc..e63f15fcefd7bc 100644
--- a/src/app/tests/suites/certification/Test_TC_PSCFG_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_PSCFG_2_1.yaml
@@ -20,27 +20,22 @@ PICS:
config:
nodeId: 0x12344321
- cluster: "Basic"
+ cluster: "Power Source Configuration"
endpoint: 0
tests:
- label: "Commission DUT to TH"
- verification: |
- verification step to be updated.
- disabled: true
+ cluster: "DelayCommands"
+ command: "WaitForCommissionee"
+ arguments:
+ values:
+ - name: "nodeId"
+ value: nodeId
- label: "TH reads the Sources attribute from the DUT"
PICS: PSCFG.S.A0000
- verification: |
- ./chip-tool powersourceconfiguration read sources 1 0
-
- verify on TH(chip-tool) that source attribute provides a list, and each entry in the list has to be number of an endpoint having a Power Source cluster.
-
- The response should look like this:
-
- [1650273002.441884][8875:8880] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002E Attribute 0x0000_0000 DataVersion: 461632376
- [1653564197.717105][36217:36222] CHIP:TOO: Sources: 3 entries
- [1653564197.717154][36217:36222] CHIP:TOO: [1]: 2
- [1653564197.717196][36217:36222] CHIP:TOO: [2]: 1
- [1653564197.717236][36217:36222] CHIP:TOO: [3]: 0
- disabled: true
+ command: "readAttribute"
+ attribute: "Sources"
+ response:
+ constraints:
+ type: list
diff --git a/src/app/tests/suites/certification/Test_TC_PSCFG_2_2.yaml b/src/app/tests/suites/certification/Test_TC_PSCFG_2_2.yaml
index 0cd5f3da210b15..3a4e367bb7a47d 100644
--- a/src/app/tests/suites/certification/Test_TC_PSCFG_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_PSCFG_2_2.yaml
@@ -24,6 +24,11 @@ config:
endpoint: 0
tests:
+ - label: "Preconditions:"
+ verification: |
+ This test case is verified after the device is provisioned. Pls provision device first, Pass appropriate nodeID in the below command
+ disabled: true
+
- label: "Commission DUT to TH"
verification: |
verification step to be updated.
@@ -48,26 +53,26 @@ tests:
"TH reads the Order attribute from Power Source Cluster at
Enpoint[eNr] of the DUT"
verification: |
- ./chip-tool powersource read order 1 1
+ ./chip-tool powersource read order 1 2
verify on TH(chip-tool) that order attribute succeeds with no error.The order value is the same or greater than the order value of the previous iteration
- [...]
- [1653564242.694964][36231:36236] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_002F Attribute 0x0000_0001 DataVersion: 4212858705
- [1653564242.695038][36231:36236] CHIP:TOO: Order: 2
+ [1659879820.566144][2615:2620] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_002F Attribute 0x0000_0001 DataVersion: 1842182672
+ [1659879820.569572][2615:2620] CHIP:TOO: Order: 1
- ./chip-tool powersource read order 1 2
+
+ ./chip-tool powersource read order 1 1
verify on TH(chip-tool) that order attribute succeeds with no error.The order value is the same or greater than the order value of the previous iteration
- [1659879820.566144][2615:2620] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_002F Attribute 0x0000_0001 DataVersion: 1842182672
- [1659879820.569572][2615:2620] CHIP:TOO: Order: 1
+ [...]
+ [1653564242.694964][36231:36236] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_002F Attribute 0x0000_0001 DataVersion: 4212858705
+ [1653564242.695038][36231:36236] CHIP:TOO: Order: 2
- ./chip-tool powersource read order 1 0
+ ./chip-tool powersource read order 1 0
verify on TH(chip-tool) that order attribute succeeds with no error.The order value is the same or greater than the order value of the previous iteration
[1659879944.863570][2633:2638] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_002F Attribute 0x0000_0001 DataVersion: 1479870496
[1659879944.863664][2633:2638] CHIP:TOO: Order: 3
- [1659879944.863854][2633:2638] CHIP:EM: Sending Standalone Ack for MessageCounter:4546692 on exchange 20518i
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_PS_1_1.yaml b/src/app/tests/suites/certification/Test_TC_PS_1_1.yaml
index a034e954f914ec..0f419310c547c4 100644
--- a/src/app/tests/suites/certification/Test_TC_PS_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_PS_1_1.yaml
@@ -40,7 +40,6 @@ tests:
type: int16u
- label: "Read the global attribute: FeatureMap"
- PICS: PS.S.F00 || PS.S.F01 || PS.S.F02 || PS.S.F03
command: "readAttribute"
attribute: "FeatureMap"
response:
diff --git a/src/app/tests/suites/certification/Test_TC_RH_3_1.yaml b/src/app/tests/suites/certification/Test_TC_RH_3_1.yaml
index dca4b6443e6364..4f33bf4e31ab3f 100644
--- a/src/app/tests/suites/certification/Test_TC_RH_3_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_RH_3_1.yaml
@@ -28,6 +28,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT reads all supported mandatory attributes from TH one at a time in
a manufacturer specific order"
diff --git a/src/app/tests/suites/certification/Test_TC_SC_4_1.yaml b/src/app/tests/suites/certification/Test_TC_SC_4_1.yaml
index 3888005a6771b2..e92cba67a2088d 100644
--- a/src/app/tests/suites/certification/Test_TC_SC_4_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_SC_4_1.yaml
@@ -28,6 +28,7 @@ tests:
"DUT is Commissioned and put in Commissioning Mode using Open Basic
Commissioning Window command and starts advertising Commissionable
Node Discovery service using DNS-SD"
+ PICS: CADMIN.S.C01.Rsp
verification: |
./chip-tool administratorcommissioning open-basic-commissioning-window 200 1 0 --timedInteractionTimeoutMs 1000
@@ -76,6 +77,7 @@ tests:
MCORE.SC.DT_KEY&& MCORE.SC.DN_KEY && MCORE.SC.RI_KEY &&
MCORE.SC.PH_KEY && MCORE.SC.PI_KEY
verification: |
+ Run the below commands within the mentioned time interval used in open-commissioning-window in step-1.
Run the below avahi browse command in the TH terminal
avahi-browse -rt _matterc._udp
@@ -96,7 +98,7 @@ tests:
- Service Domain 422F10CDC290A406.local
+ If we use Thread setup, then the Service Domain will be 422F10CDC290A406.local
verify CM flag is 1
to look for subtypes, on the raspi run $ avahi-browse -p _services._dns-sd._udp | grep _matterc
@@ -109,9 +111,10 @@ tests:
disabled: true
- label:
- "DUT is rebooted and Commissioned again, then put in Commissioning
- Mode using Open Basic Commissioning Window command, starting
- advertising Commissionable Node Discovery service using DNS- SD"
+ "DUT is rebooted, then put in Commissioning Mode using Open Basic
+ Commissioning Window command, starting advertising Commissionable Node
+ Discovery service using DNS-SD"
+ PICS: CADMIN.S.C01.Rsp
verification: |
Reboot the device and commission the DUT again. Open the commissioning window using the below command in the TH (Chip-tool) terminal
@@ -172,7 +175,7 @@ tests:
+ eth0 IPv6 19DDF06C3B5DD0C8 _matterc._udp local
= veth721e1d9 IPv6 19DDF06C3B5DD0C8 _matterc._udp local
- hostname = [E45F0149AE290000.local]
+ hostname = [E45F0149AE290000.local]
address = [fe80::28e0:95ff:fed9:3085]
port = [5540]
txt = ["PI=" "PH=36" "CM=1" "D=3840" "T=1" "SAI=300" "SII=5000" "VP=65521+32769"]
@@ -198,9 +201,15 @@ tests:
+;eth0;IPv6;_CM;_sub._matterc._udp;local
disabled: true
+ - label: "Wait for OBCW timeout to expire"
+ verification: |
+ Wait until open-basic-commissioning-window time to expire.
+ disabled: true
+
- label:
"DUT is Commissioned and instructed to enter in commissioning mode
using Open Commissioning Window command"
+ PICS: CADMIN.S.C00.Rsp
verification: |
Run the below open-commissioning-window in TH Terminal
@@ -277,7 +286,7 @@ tests:
- label: "Wait for OCW timeout to expire"
verification: |
- Wait until open-commissioning-window time to expire. (In our example above its 200 sec)
+ Wait until open-commissioning-window time to expire.
disabled: true
- label: "If (MCORE.SC.EXTENDED_DISCOVERY ) enable Extended Discovery"
@@ -289,7 +298,8 @@ tests:
Reference Raspberrypi device is not supporting extended discovery.
disabled: true
- - label: "If (PICS_EXTENDED_DISCOVERY) check DNS-SD subtypes used by DUT"
+ - label:
+ "If (MCORE.SC.EXTENDED_DISCOVERY ) check DNS-SD subtypes used by DUT"
PICS:
MCORE.SC.EXTENDED_DISCOVERY && MCORE.COM.WIFI && MCORE.COM.ETH &&
MCORE.COM.THR && MCORE.SC.VENDOR_SUBTYPE && MCORE.SC.DEVTYPE_SUBTYPE
diff --git a/src/app/tests/suites/certification/Test_TC_SC_4_10.yaml b/src/app/tests/suites/certification/Test_TC_SC_4_10.yaml
index 78cc1e21346212..5398b18c3430ec 100644
--- a/src/app/tests/suites/certification/Test_TC_SC_4_10.yaml
+++ b/src/app/tests/suites/certification/Test_TC_SC_4_10.yaml
@@ -28,13 +28,13 @@ config:
tests:
- label: "DUT is instructed to advertise its service"
verification: |
- verification step to be updated.
+ 1. Provision the DUT by TH (Chip-tool)
disabled: true
- label: "TH scans for DNS-SD advertising"
verification: |
avahi-browse -rt _matter._tcp
- Verify on the TH Log:
+ Verify on the TH(Chip-tool) Log:
+ eth0 IPv6 3A235FF3FA2DAC10-0000000000000055 _matter._tcp local
+ eth0 IPv4 3A235FF3FA2DAC10-0000000000000055 _matter._tcp local
= eth0 IPv4 3A235FF3FA2DAC10-0000000000000055 _matter._tcp local
@@ -48,211 +48,3 @@ tests:
port = [5540]
txt = ["T=0" "SAI=300" "SII=5000"]
disabled: true
-
- - label: "TH writes ACL entry by setting AuthMode as Group to DUT"
- verification: |
- ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null },{"fabricIndex": 1, "privilege": 4, "authMode": 3, "subjects": [1], "targets": null }]" 1 0
-
- Verify success response on the TH Log:
-
- [1652330385.328196][3240:3245] CHIP:DMG: StatusIB =
- [1652330385.328229][3240:3245] CHIP:DMG: {
- [1652330385.328264][3240:3245] CHIP:DMG: status = 0x00 (SUCCESS),
- [1652330385.328298][3240:3245] CHIP:DMG: },
- disabled: true
-
- - label:
- "Admin generates fabric-unique GroupID, GroupName, random key,
- EpochKey0 and GroupKeySetID. Admin sets GroupKeySecurityPolicy =
- TrustFirst (1) GroupKeyMulticastPolicy = PerGroupID (0)
- EpochStartTime0 = 0"
- verification: |
- As Admin generates it is not required to verify
- disabled: true
-
- - label:
- "Admin sends KeySetWrite command to GroupKeyManagement cluster to DUT
- on PIXIT.G.ENDPOINT"
- verification: |
- ./chip-tool groupkeymanagement key-set-write "{"groupKeySetID": 42,
- "groupKeySecurityPolicy": 0, "epochKey0":
- "d0d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime0": 2220000,"epochKey1":
- "d1d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime1": 2220001,"epochKey2":
- "d2d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime2": 2220002 }" 1 0
-
- Verify success response on the TH Log:
-
- [1650610345.847233][2626:2631] CHIP:DMG:
- [1650610345.847274][2626:2631] CHIP:DMG: StatusIB =
- [1650610345.847317][2626:2631] CHIP:DMG: {
- [1650610345.847383][2626:2631] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650610345.847429][2626:2631] CHIP:DMG: },
- [1650610345.847477][2626:2631] CHIP:DMG:
- disabled: true
-
- - label:
- "Admin binds GroupId with GroupKeySetID in the GroupKeyMap attribute
- list on GroupKeyManagement cluster"
- verification: |
- ./chip-tool groupkeymanagement write group-key-map "[{"groupId": 1, "groupKeySetID": 42, "fabricIndex": 1}]" 1 0
-
- Verify success response on the TH Log:
-
- [1652352019.875893][2552:2557] CHIP:DMG: WriteResponseMessage =
- [1652352019.875922][2552:2557] CHIP:DMG: {
- [1652352019.875946][2552:2557] CHIP:DMG: AttributeStatusIBs =
- [1652352019.875981][2552:2557] CHIP:DMG: [
- [1652352019.876008][2552:2557] CHIP:DMG: AttributeStatusIB =
- [1652352019.876041][2552:2557] CHIP:DMG: {
- [1652352019.876070][2552:2557] CHIP:DMG: AttributePathIB =
- [1652352019.876104][2552:2557] CHIP:DMG: {
- [1652352019.876143][2552:2557] CHIP:DMG: Endpoint = 0x0,
- [1652352019.876183][2552:2557] CHIP:DMG: Cluster = 0x3f,
- [1652352019.876225][2552:2557] CHIP:DMG: Attribute = 0x0000_0000,
- [1652352019.876263][2552:2557] CHIP:DMG: }
- [1652352019.876303][2552:2557] CHIP:DMG:
- [1652352019.876337][2552:2557] CHIP:DMG: StatusIB =
- [1652352019.876375][2552:2557] CHIP:DMG: {
- [1652352019.876414][2552:2557] CHIP:DMG: status = 0x00 (SUCCESS),
- [1652352019.876450][2552:2557] CHIP:DMG: },
- [1652352019.876489][2552:2557] CHIP:DMG:
- [1652352019.876519][2552:2557] CHIP:DMG: },
- [1652352019.876562][2552:2557] CHIP:DMG:
- [1652352019.876590][2552:2557] CHIP:DMG: AttributeStatusIB =
- [1652352019.876622][2552:2557] CHIP:DMG: {
- [1652352019.876652][2552:2557] CHIP:DMG: AttributePathIB =
- [1652352019.876690][2552:2557] CHIP:DMG: {
- [1652352019.876728][2552:2557] CHIP:DMG: Endpoint = 0x0,
- [1652352019.876768][2552:2557] CHIP:DMG: Cluster = 0x3f,
- [1652352019.876809][2552:2557] CHIP:DMG: Attribute = 0x0000_0000,
- [1652352019.876849][2552:2557] CHIP:DMG: ListIndex = Null,
- [1652352019.876885][2552:2557] CHIP:DMG: }
- [1652352019.876923][2552:2557] CHIP:DMG:
- [1652352019.876961][2552:2557] CHIP:DMG: StatusIB =
- [1652352019.876995][2552:2557] CHIP:DMG: {
- [1652352019.877029][2552:2557] CHIP:DMG: status = 0x00 (SUCCESS),
- [1652352019.877077][2552:2557] CHIP:DMG: },
- [1652352019.877132][2552:2557] CHIP:DMG:
- [1652352019.877179][2552:2557] CHIP:DMG: },
- [1652352019.877224][2552:2557] CHIP:DMG:
- [1652352019.877262][2552:2557] CHIP:DMG: ],
- [1652352019.877339][2552:2557] CHIP:DMG:
- [1652352019.877381][2552:2557] CHIP:DMG: InteractionModelRevision = 1
- [1652352019.877419][2552:2557] CHIP:DMG: }
- disabled: true
-
- - label:
- "Admin sends AddGroup Command to DUT with the GroupID set by Admin on
- PIXIT.SC.ENDPOINT"
- verification: |
- ./chip-tool groups add-group 0x0001 grp1 1 1
-
- Verify AddGroupResponse on the TH Log:
-
- [1651218084.427102][2526:2531] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Command 0x0000_0000
- [1651218084.427203][2526:2531] CHIP:TOO: AddGroupResponse: {
- [1651218084.427241][2526:2531] CHIP:TOO: status: 0
- [1651218084.427264][2526:2531] CHIP:TOO: groupId: 1
- [1651218084.427314][2526:2531] CHIP:TOO: }
- disabled: true
-
- - label:
- "Admin sends ViewGroup command with the GroupID to the Group cluster
- on the DUT on PIXIT.SC.ENDPOINT"
- verification: |
- ./chip-tool groups view-group 0x0001 1 1
-
- Verify ViewGroupResponse on the TH Log:
-
- [1651218576.149152][2635:2640] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Command 0x0000_0001
- [1651218576.149231][2635:2640] CHIP:TOO: ViewGroupResponse: {
- [1651218576.149265][2635:2640] CHIP:TOO: status: 0
- [1651218576.149289][2635:2640] CHIP:TOO: groupId: 1
- [1651218576.149311][2635:2640] CHIP:TOO: groupName: grp1
- [1651218576.149335][2635:2640] CHIP:TOO: }
- disabled: true
-
- - label: "Admin sends KeySetRead Command to DUT"
- verification: |
- ./chip-tool groupkeymanagement key-set-read 42 1 0
-
- Verify KeySetReadResponse on the TH Log:
-
- [1650610759.578043][2739:2744] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003F Command=0x0000_0002
- [1650610759.578099][2739:2744] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Command 0x0000_0002
- [1650610759.578220][2739:2744] CHIP:TOO: KeySetReadResponse: {
- [1650610759.578251][2739:2744] CHIP:TOO: groupKeySet: {
- [1650610759.578291][2739:2744] CHIP:TOO: GroupKeySetID: 42
- [1650610759.578334][2739:2744] CHIP:TOO: GroupKeySecurityPolicy: 0
- [1650610759.578363][2739:2744] CHIP:TOO: EpochKey0: null
- [1650610759.578391][2739:2744] CHIP:TOO: EpochStartTime0: 2220000
- [1650610759.578418][2739:2744] CHIP:TOO: EpochKey1: null
- [1650610759.578445][2739:2744] CHIP:TOO: EpochStartTime1: 2220001
- [1650610759.578472][2739:2744] CHIP:TOO: EpochKey2: null
- [1650610759.578498][2739:2744] CHIP:TOO: EpochStartTime2: 2220002
- [1650610759.578527][2739:2744] CHIP:TOO: }
- [1650610759.578553][2739:2744] CHIP:TOO: }
- disabled: true
-
- - label:
- "TH reads GroupKeyMap Attribute from the GroupKeyManagement cluster
- from DUT"
- verification: |
- ./chip-tool groupkeymanagement read group-key-map 1 0
-
- Verify GroupKeyMapStruct on the TH Log:
-
- 1652429573.936605][2883:2888] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_0000 DataVersion: 75110822
- [1652429573.936744][2883:2888] CHIP:TOO: GroupKeyMap: 1 entries
- [1652429573.936819][2883:2888] CHIP:TOO: [1]: {
- [1652429573.936860][2883:2888] CHIP:TOO: GroupId: 1
- [1652429573.936896][2883:2888] CHIP:TOO: GroupKeySetID: 42
- [1652429573.936932][2883:2888] CHIP:TOO: FabricIndex: 1
- [1652429573.936969][2883:2888] CHIP:TOO: }
- disabled: true
-
- - label:
- "TH reads GroupTable attribute from GroupKeyManagement cluster on DUT."
- verification: |
- ./chip-tool groupkeymanagement read group-table 1 0
-
- Verify GroupTable on the TH Log:
-
- [1655965817.917300][3012:3017] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_0001 DataVersion: 1208492408
- [1655965817.917408][3012:3017] CHIP:TOO: GroupTable: 1 entries
- [1655965817.917506][3012:3017] CHIP:TOO: [1]: {
- [1655965817.917559][3012:3017] CHIP:TOO: GroupId: 1
- [1655965817.917600][3012:3017] CHIP:TOO: Endpoints: 2 entries
- [1655965817.917642][3012:3017] CHIP:TOO: [1]: 0
- [1655965817.917680][3012:3017] CHIP:TOO: [2]: 1
- [1655965817.917718][3012:3017] CHIP:TOO: GroupName: grp1
- [1655965817.917752][3012:3017] CHIP:TOO: FabricIndex: 1
- [1655965817.917784][3012:3017] CHIP:TOO: }
- disabled: true
-
- - label:
- "Configure the TH for sending Group message Add the group that was
- created in step 3 to the client side Add the keysets with the
- GroupKeySetID from the step 2 for the client side Bind the
- GroupKeySetID with the GroupID created View the GroupID, GroupName and
- GroupKeySetID which is binded for sending the Group message"
- verification: |
- ./chip-tool groupsettings add-group grp1 0x0001
-
- ./chip-tool groupsettings add-keysets 0x0042 0 0x000000000021dfe0 hex:d0d1d2d3d4d5d6d7d8d9dadbdcdddedf
-
- ./chip-tool groupsettings bind-keyset 0x0001 0x0042
-
- ./chip-tool groupsettings show-groups
-
- Verify groups on the TH Log:
-
- +-------------------------------------------------------------------------------------+
- | Available Groups : |
- +-------------------------------------------------------------------------------------+
- | Group Id | KeySet Id | Group Name |
- | 0x101 0x1a1 Group #1 |
- | 0x102 0x1a2 Group #2 |
- | 0x1 0x42 grp1 |
- +-------------------------------------------------------------------------------------+
- disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_SC_4_3.yaml b/src/app/tests/suites/certification/Test_TC_SC_4_3.yaml
index e0f8cda7051c3b..c137d70c6a29e7 100644
--- a/src/app/tests/suites/certification/Test_TC_SC_4_3.yaml
+++ b/src/app/tests/suites/certification/Test_TC_SC_4_3.yaml
@@ -13,7 +13,7 @@
# limitations under the License.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 3.4.3. [TC-SC-4.3] Operational Discovery - Node
+name: 15.4.3. [TC-SC-4.3] Discovery [DUT as Commissionee]
PICS:
- MCORE.ROLE.COMMISSIONEE
@@ -24,9 +24,11 @@ config:
endpoint: 0
tests:
- - label: "TH is instructed to start advertising a service using DNS-SD"
+ - label:
+ "DUT is commissioned to TH and DUT is instructed to advertise its
+ operational service (_matter._tcp)."
verification: |
- verification step to be updated.
+ 1. Provision the DUT by TH (Chip-tool)
disabled: true
- label: "Scan for DNS-SD advertising"
@@ -35,7 +37,7 @@ tests:
MCORE.SC.SII_OP_DISCOVERY_KEY && MCORE.SC.SAI_OP_DISCOVERY_KEY &&
MCORE.SC.T_KEY
verification: |
- ubuntu@ubuntu:~$ avahi-browse -rt _matter._tcp
+ avahi-browse -rt _matter._tcp
Verify on the TH Log:
@@ -46,49 +48,3 @@ tests:
port = [5540]
txt = ["T=1" "SAI=300" "SII=5000"]
disabled: true
-
- - label:
- "TH is instructed to start advertising an operational service using
- DNS-SD with non-standard TXT record keys"
- verification: |
- Run the publish service command on TH:
-
- avahi-publish-service --subtype=_S3._sub._matter._tcp --subtype=_L840._sub._matter._tcp DD200C20D25AE5F7 --subtype=_CM._sub._matter._tcp _matter._tcp 11111 D=840 CM=2 INVALID_TEST=40
- disabled: true
-
- - label:
- "DUT is rebooted and Commissioned again, then put in Commissioning
- Mode using Open Basic Commissioning Window command, DUT is instructed
- to advertise its service with the modified TXT record."
- verification: |
- ./chip-tool administratorcommissioning open-basic-commissioning-window 200 1 0 --timedInteractionTimeoutMs 1000
-
- verify on TH (Chip-tool) logs:
-
- [1650873075.234374][7964:7969] CHIP:DMG: EndpointId = 0x0,
- [1650873075.234449][7964:7969] CHIP:DMG: ClusterId = 0x3c,
- [1650873075.234542][7964:7969] CHIP:DMG: CommandId = 0x1,
- [1650873075.234613][7964:7969] CHIP:DMG: },
- [1650873075.234693][7964:7969] CHIP:DMG:
- [1650873075.234758][7964:7969] CHIP:DMG: StatusIB =
- [1650873075.234829][7964:7969] CHIP:DMG: {
- [1650873075.234909][7964:7969] CHIP:DMG: status = 0x00 (SUCCESS),
- [1650873075.234984][7964:7969] CHIP:DMG: },
- disabled: true
-
- - label: "Scan for DNS-SD advertising"
- PICS:
- MCORE.COM.WIFI && MCORE.COM.ETH && MCORE.COM.THR &&
- MCORE.SC.SII_OP_DISCOVERY_KEY && MCORE.SC.SAI_OP_DISCOVERY_KEY &&
- MCORE.SC.T_KEY
- verification: |
- ubuntu@ubuntu:~$ avahi-browse -rt _matter._tcp
- Verify on the TH Log:
-
- + eth0 IPv6 B1605B84E886EDCF-0000000000000258 _matter._tcp local
- = eth0 IPv6 21F41C9933CAAF62-000000000000003C _matter._tcp local
- hostname = [E45F010EBE440000.local]
- address = [fe80::e65f:1ff:fe0e:be44]
- port = [5540]
- txt = ["T=1" "SAI=300" "SII=5000"]
- disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_SC_4_4.yaml b/src/app/tests/suites/certification/Test_TC_SC_4_4.yaml
index aa9d9da7d7d8da..0703e6c8f9b512 100644
--- a/src/app/tests/suites/certification/Test_TC_SC_4_4.yaml
+++ b/src/app/tests/suites/certification/Test_TC_SC_4_4.yaml
@@ -13,7 +13,7 @@
# limitations under the License.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 3.4.4. [TC-SC-4.4] Operational Discovery - Controller [DUT - Controller]
+name: 15.4.4. [TC-SC-4.4] Discovery [DUT as Controller]
PICS:
- PICS_MCORE_ROLE_CONTROLLER
@@ -24,28 +24,89 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as controller test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label: "TH starts commissioning process with DUT"
verification: |
- verification step to be updated.
+ 1. Provision the DUT by TH (Chip-tool)
disabled: true
- - label: "DUT reads nodelabel attribute from TH"
- PICS: BINFO.C.A0005
+ - label: "DUT reads Vendor Id attribute from TH"
+ PICS: BINFO.C.A0002
verification: |
- verification step to be updated.
+ On TH, Verify that TH read and shows Vendor Id value
+ ./chip-tool basic read vendor-id 1 0
+
+ [1660776352.802689][3357:3357] CHIP:DMG:
+ [1660776352.802776][3357:3357] CHIP:DMG: ReportDataMessage =
+ [1660776352.802807][3357:3357] CHIP:DMG: {
+ [1660776352.802832][3357:3357] CHIP:DMG: AttributeReportIBs =
+ [1660776352.802868][3357:3357] CHIP:DMG: [
+ [1660776352.802896][3357:3357] CHIP:DMG: AttributeReportIB =
+ [1660776352.802933][3357:3357] CHIP:DMG: {
+ [1660776352.802963][3357:3357] CHIP:DMG: AttributeDataIB =
+ [1660776352.802999][3357:3357] CHIP:DMG: {
+ [1660776352.803040][3357:3357] CHIP:DMG: DataVersion = 0x5c6f4557,
+ [1660776352.803080][3357:3357] CHIP:DMG: AttributePathIB =
+ [1660776352.803118][3357:3357] CHIP:DMG: {
+ [1660776352.803157][3357:3357] CHIP:DMG: Endpoint = 0x0,
+ [1660776352.803198][3357:3357] CHIP:DMG: Cluster = 0x28,
+ [1660776352.803241][3357:3357] CHIP:DMG: Attribute = 0x0000_0002,
+ [1660776352.803279][3357:3357] CHIP:DMG: }
+ [1660776352.803319][3357:3357] CHIP:DMG:
+ [1660776352.803360][3357:3357] CHIP:DMG: Data = 65521,
+ [1660776352.803396][3357:3357] CHIP:DMG: },
+ [1660776352.803434][3357:3357] CHIP:DMG:
+ [1660776352.803468][3357:3357] CHIP:DMG: },
+ [1660776352.803503][3357:3357] CHIP:DMG:
+ [1660776352.803530][3357:3357] CHIP:DMG: ],
+ [1660776352.803571][3357:3357] CHIP:DMG:
+ [1660776352.803600][3357:3357] CHIP:DMG: SuppressResponse = true,
+ [1660776352.803628][3357:3357] CHIP:DMG: InteractionModelRevision = 1
+ [1660776352.803655][3357:3357] CHIP:DMG: }
+ [1660776352.803699][3357:3357] CHIP:DMG:
disabled: true
- label: "Change the IP address of TH by any means within the same network"
verification: |
- 1. Take two routers connected to the same ISP as input.
- 2. Execute step 1 to step 5 using Router1 Configuration.
- 3. Once step 1 to step 5 are executed in Router1 switch TH and DUT to Router2.
- 4. Execute step 1 to step 5 using Router2 Configuration.
- 5. Check the IP so that the Routers(Router1 and Router2) will have different IPs to Raspi.
+ Connect the raspi running the TH to another router which is on the same network. Make sure that the DUT and TH are on the same network and can ping to each other. Observe that the TH gets a new IP address. Perform Step 4
disabled: true
- - label: "DUT reads nodelabel attribute from TH"
- PICS: BINFO.C.A0005
+ - label: "DUT reads Vendor Id attribute from TH"
+ PICS: BINFO.C.A0002
verification: |
- verification step to be updated.
+ On TH, Verify that TH read and shows Vendor Id value
+ ./chip-tool basic read vendor-id 1 0
+
+ [1660776352.802689][3357:3357] CHIP:DMG:
+ [1660776352.802776][3357:3357] CHIP:DMG: ReportDataMessage =
+ [1660776352.802807][3357:3357] CHIP:DMG: {
+ [1660776352.802832][3357:3357] CHIP:DMG: AttributeReportIBs =
+ [1660776352.802868][3357:3357] CHIP:DMG: [
+ [1660776352.802896][3357:3357] CHIP:DMG: AttributeReportIB =
+ [1660776352.802933][3357:3357] CHIP:DMG: {
+ [1660776352.802963][3357:3357] CHIP:DMG: AttributeDataIB =
+ [1660776352.802999][3357:3357] CHIP:DMG: {
+ [1660776352.803040][3357:3357] CHIP:DMG: DataVersion = 0x5c6f4557,
+ [1660776352.803080][3357:3357] CHIP:DMG: AttributePathIB =
+ [1660776352.803118][3357:3357] CHIP:DMG: {
+ [1660776352.803157][3357:3357] CHIP:DMG: Endpoint = 0x0,
+ [1660776352.803198][3357:3357] CHIP:DMG: Cluster = 0x28,
+ [1660776352.803241][3357:3357] CHIP:DMG: Attribute = 0x0000_0002,
+ [1660776352.803279][3357:3357] CHIP:DMG: }
+ [1660776352.803319][3357:3357] CHIP:DMG:
+ [1660776352.803360][3357:3357] CHIP:DMG: Data = 65521,
+ [1660776352.803396][3357:3357] CHIP:DMG: },
+ [1660776352.803434][3357:3357] CHIP:DMG:
+ [1660776352.803468][3357:3357] CHIP:DMG: },
+ [1660776352.803503][3357:3357] CHIP:DMG:
+ [1660776352.803530][3357:3357] CHIP:DMG: ],
+ [1660776352.803571][3357:3357] CHIP:DMG:
+ [1660776352.803600][3357:3357] CHIP:DMG: SuppressResponse = true,
+ [1660776352.803628][3357:3357] CHIP:DMG: InteractionModelRevision = 1
+ [1660776352.803655][3357:3357] CHIP:DMG: }
+ [1660776352.803699][3357:3357] CHIP:DMG:
disabled: true
diff --git a/src/app/tests/suites/certification/Test_TC_SC_4_6.yaml b/src/app/tests/suites/certification/Test_TC_SC_4_6.yaml
index 5f28f3d5beaeaa..0062e1c7f3e949 100644
--- a/src/app/tests/suites/certification/Test_TC_SC_4_6.yaml
+++ b/src/app/tests/suites/certification/Test_TC_SC_4_6.yaml
@@ -26,6 +26,11 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label:
"DUT is instructed to start advertising its presence as a commissioner
in the network"
@@ -56,8 +61,7 @@ tests:
- to look for subtypes, on the raspi run $ avahi-browse -p _services._dns-sd._udp
- | grep _matterd
+ to look for subtypes, on the raspi run $ avahi-browse -p _services._dns-sd._udp | grep _matterd
+;eth0;IPv6;_CM;_sub._matterd._udp;local
+;eth0;IPv6;_L3840;_sub._matterd._udp;local
diff --git a/src/app/tests/suites/certification/Test_TC_SC_4_7.yaml b/src/app/tests/suites/certification/Test_TC_SC_4_7.yaml
index f5cf0c10623f3a..9e6781ff6b32a8 100644
--- a/src/app/tests/suites/certification/Test_TC_SC_4_7.yaml
+++ b/src/app/tests/suites/certification/Test_TC_SC_4_7.yaml
@@ -13,7 +13,7 @@
# limitations under the License.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
-name: 3.4.7. [TC-SC-4.7] Commissioner Discovery - Commissionee
+name: 15.4.7. [TC-SC-4.7] Commissioner Discovery [DUT as Commissionee]
PICS:
- MCORE.ROLE.COMMISSIONEE
@@ -34,7 +34,7 @@ tests:
- label: "Scan for DNS-SD commissioner advertisements from TH"
PICS:
MCORE.SC.DEVTYPE_SUBTYPE && MCORE.SC.VP_KEY && MCORE.SC.DT_KEY &&
- MCORE.SC.DN_KEY &&
+ MCORE.SC.DN_KEY
verification: |
if DUT supports discovering UDC, DUT should be able to scan the TV-app
@@ -49,20 +49,20 @@ tests:
address = [fe80::e65f:1ff:fe49:ae29]
port = [5650]
txt = ["T=1" "SAI=300" "SII=5000" "DN=Test TV" "DT=35" "VP=65521+32769"]
- disabled: true
- - label:
- "By any means, TH adds an unknown key/value pair in the advertised
- data(e.g. AB=12345)"
- verification: |
- Run the unknown key/value pair on TH Terminal:
+ to look for subtypes, on the raspi run $ a avahi-browse -p _services._dns-sd._udp | grep _matterd
- avahi-publish-service --subtype=_V123._sub._matterd._udp DD200C20D25AE5F7 _matterd._udp 33333 VP=123+456 DT=35 DN="Living Room TV" INVALID_TEST=40
+ +;wlan0;IPv6;_T35;_sub._matterd._udp;local
+ +;wlan0;IPv6;_V65521;_sub._matterd._udp;local
+ +;wlan0;IPv6;_matterd;_udp;local
+ +;eth0;IPv6;_T35;_sub._matterd._udp;local
+ +;eth0;IPv6;_V65521;_sub._matterd._udp;local
+ +;eth0;IPv6;_matterd;_udp;local
disabled: true
- label: "Scan for DNS-SD commissioner advertisements from TH"
verification: |
- Verify the DUT commissioner is able to discover the TH.
+ Verify the DUT is able to discover the TH.
As an example, In the case of chip-tool as commissioner, you can verify with the below command, (Use the equivalent command on the DUT)
@@ -73,24 +73,37 @@ tests:
[1659544548031] [13752:9267297] CHIP: [DIS] Mdns: OnBrowseAdd name: DD200C20D25AE5F7, type: _matterc._udp., domain: local., interface: 8 [1659544548031] [13752:9267297] CHIP: [DIS] Resolve type=_matterc._udp name=DD200C20D25AE5F7 interface=8
[1659544548032] [13752:9267297] CHIP: [DIS] Mdns : OnNewInterface hostname:ubuntuserverAccessory1.local. fullname:DD200C20D25AE5F7._matterc._udp.local. interface: 8 port: 26411 TXT:D=840CM=2INVALID_TEST=40 [1659544548033] [13752:9267297] CHIP: [DIS] Mdns: OnNewAddress interface: 8 ip:fd5d:9cc0:fc52:0:dea6:32ff:fe8d:7072
[1659544548033] [13752:9267297] CHIP: [DIS] Mdns: Resolve success on interface 8
- [1659544548033] [13752:9267297] CHIP: [DIS] Discovered node:
- [1659544548033] [13752:9267297] CHIP: [DIS] Hostname: ubuntuserverAcce [1659544548033] [13752:9267297] CHIP: [DIS] IP Address #1: fd5d:9cc0:fc52:0:dea6:32ff:fe8d:7072
- [1659544548033] [13752:9267297] CHIP: [DIS] Port: 11111
- [1659544548033] [13752:9267297] CHIP: [DIS] Mrp Interval idle: not present
- [1659544548033] [13752:9267297] CHIP: [DIS] Mrp Interval active: not present
- [1659544548033] [13752:9267297] CHIP: [DIS] TCP Supported: 0
- [1659544548033] [13752:9267297] CHIP: [DIS] Long Discriminator: 840
- [1659544548033] [13752:9267297] CHIP: [DIS] Instance Name: DD200C20D25AE5F7
- [1659544548033] [13752:9267297] CHIP: [DIS] Commissioning Mode: 2
- [1659544548033] [13752:9267297] CHIP: [DIS] Discovered node:
- [1659544548033] [13752:9267297] CHIP: [DIS] Hostname: ubuntuserverAcce [1659544548033] [13752:9267297] CHIP: [DIS] IP Address #1: fd5d:9cc0:fc52:0:dea6:32ff:fe8d:7072
- [1659544548033] [13752:9267297] CHIP: [DIS] Port: 11111
- [1659544548033] [13752:9267297] CHIP: [DIS] Mrp Interval idle: not present
- [1659544548033] [13752:9267297] CHIP: [DIS] Mrp Interval active: not present
- [1659544548033] [13752:9267297] CHIP: [DIS] TCP Supported: 0
- [1659544548033] [13752:9267297] CHIP: [DIS] Long Discriminator: 840
- [1659544548033] [13752:9267297] CHIP: [DIS] Instance Name: DD200C20D25AE5F7
- [1659544548033] [13752:9267297] CHIP: [DIS] Commissioning Mode: 2
+ [1660288371.031350][3364:3369] CHIP:DIS: Discovered node:
+ [1660288371.031374][3364:3369] CHIP:DIS: Hostname: E45F0149AE290000 [1660288371.031402][3364:3369] CHIP:DIS: IP Address #1: fe80::e65f:1ff:fe49:ae29
+ [1660288371.031427][3364:3369] CHIP:DIS: Port: 5640
+ [1660288371.031450][3364:3369] CHIP:DIS: Mrp Interval idle: 5000 ms
+ [1660288371.031473][3364:3369] CHIP:DIS: Mrp Interval active: 300 ms
+ [1660288371.031496][3364:3369] CHIP:DIS: TCP Supported: 1
+ [1660288371.031521][3364:3369] CHIP:DIS: Rotating ID: 01005FDB39737473FB22B819CEBB1084AFD5
+ [1660288371.031544][3364:3369] CHIP:DIS: Device Name: Test TV
+ [1660288371.031566][3364:3369] CHIP:DIS: Vendor ID: 65521
+ [1660288371.031589][3364:3369] CHIP:DIS: Product ID: 32769
+ [1660288371.031609][3364:3369] CHIP:DIS: Device Type: 35
+ [1660288371.031628][3364:3369] CHIP:DIS: Long Discriminator: 3840
+ [1660288371.031647][3364:3369] CHIP:DIS: Pairing Hint: 36
+ [1660288371.031669][3364:3369] CHIP:DIS: Instance Name: 35025D5C5DA30C17
+ [1660288371.031694][3364:3369] CHIP:DIS: Commissioning Mode: 0
+ [1660288371.031722][3364:3369] CHIP:DIS: Discovered node:
+ [1660288371.031743][3364:3369] CHIP:DIS: Hostname: E45F0149AE290000 [1660288371.031768][3364:3369] CHIP:DIS: IP Address #1: fe80::e65f:1ff:fe49:ae29
+ [1660288371.031791][3364:3369] CHIP:DIS: Port: 5640
+ [1660288371.031814][3364:3369] CHIP:DIS: Mrp Interval idle: 5000 ms
+ [1660288371.031836][3364:3369] CHIP:DIS: Mrp Interval active: 300 ms
+ [1660288371.031859][3364:3369] CHIP:DIS: TCP Supported: 1
+ [1660288371.031888][3364:3369] CHIP:DIS: Rotating ID: 01005FDB39737473FB22B819CEBB1084AFD5
+ [1660288371.031909][3364:3369] CHIP:DIS: Device Name: Test TV
+ [1660288371.031928][3364:3369] CHIP:DIS: Vendor ID: 65521
+ [1660288371.031950][3364:3369] CHIP:DIS: Product ID: 32769
+ [1660288371.031973][3364:3369] CHIP:DIS: Device Type: 35
+ [1660288371.031995][3364:3369] CHIP:DIS: Long Discriminator: 3840
+ [1660288371.032018][3364:3369] CHIP:DIS: Pairing Hint: 36
+ [1660288371.032042][3364:3369] CHIP:DIS: Instance Name: 35025D5C5DA30C17
+ [1660288371.032064][3364:3369] CHIP:DIS: Commissioning Mode: 0
+
[1659544578034] [13752:9267291] CHIP: [CTL] Shutting down the commissioner
[1659544578034] [13752:9267291] CHIP: [CTL] Stopping commissioning discovery over DNS-SD
[1659544578034] [13752:9267291] CHIP: [CTL] Shutting down the controller
diff --git a/src/app/tests/suites/certification/Test_TC_SC_4_8.yaml b/src/app/tests/suites/certification/Test_TC_SC_4_8.yaml
index 2ffd0fd3854d6b..5d2e190fdaff95 100644
--- a/src/app/tests/suites/certification/Test_TC_SC_4_8.yaml
+++ b/src/app/tests/suites/certification/Test_TC_SC_4_8.yaml
@@ -26,9 +26,14 @@ config:
endpoint: 0
tests:
+ - label: "Note"
+ verification: |
+ Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
+ disabled: true
+
- label: "Commission TH1 to DUTs Fabric"
verification: |
- 1. Provision the device using 1st controller chip-tool (as example commissioner) on the raspi (use above instructions)
+ 1. Provision the device using 1st controller chip-tool (as example commissioner) on the raspi (use the instructions)
./chip-tool pairing onnetwork 2 20202021
diff --git a/src/app/tests/suites/certification/Test_TC_SWTCH_1_1.yaml b/src/app/tests/suites/certification/Test_TC_SWTCH_1_1.yaml
index c1e47b6ccf900a..066cca0924ef3f 100644
--- a/src/app/tests/suites/certification/Test_TC_SWTCH_1_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_SWTCH_1_1.yaml
@@ -31,78 +31,32 @@ tests:
- name: "nodeId"
value: nodeId
- - label: "Read the global attribute: FeatureMap"
+ - label:
+ "Read FeatureMap attribute and Check values of flags in this
+ FeatureMap"
+ PICS:
+ "!SWTCH.S.F00 && SWTCH.S.F01 && !SWTCH.S.F02 && !SWTCH.S.F03 &&
+ !SWTCH.S.F04"
command: "readAttribute"
attribute: "FeatureMap"
response:
- saveAs: FeatureMapValue
-
- #bitwise check is not implemented in yaml framework
- - label: "Check values of flags in this FeatureMap"
- verification: |
- LS is set to 1; MS, MSR, MSL,
- MSM are all set to 0
- cluster: "LogCommands"
- command: "UserPrompt"
- PICS: PICS_USER_PROMPT && SWTCH.S.F00
- arguments:
- values:
- - name: "message"
- value: "Please enter 'y' for success"
- - name: "expectedValue"
- value: "y"
-
- - label: "Check values of flags in this FeatureMap"
- verification: |
- LS is set to 0; MS is set to 1
- cluster: "LogCommands"
- command: "UserPrompt"
- PICS: PICS_USER_PROMPT && SWTCH.S.F01
- arguments:
- values:
- - name: "message"
- value: "Please enter 'y' for success"
- - name: "expectedValue"
- value: "y"
-
- - label: "Check values of flags in this FeatureMap"
- verification: |
- LS is set to 0; MS, MSR are set to 1
- cluster: "LogCommands"
- command: "UserPrompt"
- PICS: PICS_USER_PROMPT && SWTCH.S.F02
- arguments:
- values:
- - name: "message"
- value: "Please enter 'y' for success"
- - name: "expectedValue"
- value: "y"
-
- - label: "Check values of flags in this FeatureMap"
- verification: |
- LS is set to 0; MS, MSR, MSL are all set to 1
- cluster: "LogCommands"
- command: "UserPrompt"
- PICS: PICS_USER_PROMPT && SWTCH.S.F03
- arguments:
- values:
- - name: "message"
- value: "Please enter 'y' for success"
- - name: "expectedValue"
- value: "y"
+ value: 0
+ constraints:
+ type: bitmap32
- - label: "Check values of flags in this FeatureMap"
- verification: |
- LS is set to 0; MS, MSR, MSM are all set to 1
- cluster: "LogCommands"
- command: "UserPrompt"
- PICS: PICS_USER_PROMPT && SWTCH.S.F04
- arguments:
- values:
- - name: "message"
- value: "Please enter 'y' for success"
- - name: "expectedValue"
- value: "y"
+ - label:
+ "Read FeatureMap attribute and Check values of flags in this
+ FeatureMap"
+ PICS:
+ (SWTCH.S.F00 || SWTCH.S.F01 || SWTCH.S.F02 || SWTCH.S.F03 ||
+ SWTCH.S.F04)
+ command: "readAttribute"
+ attribute: "FeatureMap"
+ response:
+ constraints:
+ type: bitmap32
+ minValue: 1
+ maxValue: 31
- label: "read the global attribute: ClusterRevision"
command: "readAttribute"
diff --git a/src/app/tests/suites/certification/Test_TC_SWTCH_2_2.yaml b/src/app/tests/suites/certification/Test_TC_SWTCH_2_2.yaml
index 0a18301fb30716..a930c424fe8135 100644
--- a/src/app/tests/suites/certification/Test_TC_SWTCH_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_SWTCH_2_2.yaml
@@ -24,36 +24,30 @@ config:
endpoint: 0
tests:
- - label: "Commission DUT to TH (can be skipped if done in a preceding test)"
+ - label: "Note"
verification: |
-
+ NOTE: https://github.com/project-chip/connectedhomeip/tree/master/examples/all-clusters-app/linux#readme
+ Events to be executed as following
+ 1. Compile app using below command in connectedhomeip folder
+ a. ./scripts/run_in_build_env.sh ./scripts/build/build_examples.py --target linux-arm64-all-clusters-no-ble-asan-clang build
+ b. ./scripts/run_in_build_env.sh ./scripts/build/build_examples.py --target linux-arm64-all-clusters-no-ble-asan-libfuzzer-clang build
+ 2. Build respective app (all-clusters-app)
+ 3. Commission DUT to TH
+ 4. Open 2nd terminal of DUT and provide the below command to obtain PID of DUT
+ ps -aef|grep all-clusters-app
+ 5. Follow the Verification step below to generate the event in 2nd terminal of DUT
disabled: true
- label: "Commission DUT to TH (can be skipped if done in a preceding test)"
verification: |
- NOTE:
- To Run the event test case we need to build event commands on DUT[All-cluster-ap] terminal.Below I mention the commands for how to build for linux arm64 it depends on the DUT what we use.I provided the link for build events.
-
- https://github.com/project-chip/connectedhomeip/tree/master/examples/all-clusters-app/linux#trigger-switch-events
-
-
-
-
- Here I provide cmmds for build on linux arm64
-
- 1. ./scripts/run_in_build_env.sh "./scripts/build/build_examples.py --target linux-arm64-all-clusters-no-ble-asan-clang build
-
- 2../scripts/run_in_build_env.sh "./scripts/build/build_examples.py --target linux-arm64-all-clusters-no-ble-asan-libfuzzer-clang build
-
- 3. ./out/linux-arm64-all-clusters-no-ble-asan-libfuzzer-clang/chip-all-clusters-app-fuzzing
-
- 4. ./out/linux-arm64-all-clusters-no-ble-asan-libfuzzer-clang/chip-all-clusters-app-fuzzing $(INPUT_FILE)
+ Commission DUT to TH
disabled: true
- label: "Set up subscription to SwitchLatched event"
PICS: SWTCH.S.F00
verification: |
- In Raspi platform to change the switch position use the below command, Pls use equivalent command on the respective DUT.After provisioning ,open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
+
echo "{"Name":"SwitchLatched","NewPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -76,7 +70,7 @@ tests:
- label: "Operator sets switch to first position"
PICS: SWTCH.S.F00
verification: |
- In Raspi platform to change the switch to first position use the below command, Pls use equivalent command on the respective DUT.After provisioning ,open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"SwitchLatched","NewPosition":0}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -102,7 +96,7 @@ tests:
- label: "Operator sets switch to second position"
PICS: SWTCH.S.F00
verification: |
- In Raspi platform to change the switch to second position use the below sample command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"SwitchLatched","NewPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -125,13 +119,12 @@ tests:
disabled: true
- label:
- "If NumberOfPositions>2 (see 2c of TC-SWTCH-2.1) : - Operator sets
+ "If NumberOfPositions>2 (see 2a of TC-SWTCH-2.1) : - Operator sets
switch to next position - Read CurrentPosition attribute"
- PICS: SWTCH.S.F00
verification: |
Raspi device doesn"t support more than 2 position ,so this step is not verifiable by using raspi device
- In Raspi platform to change the switch to third position use the below sample command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"SwitchLatched","NewPosition":2}" > /tmp/chip_all_clusters_fifo (PID of DUT)
@@ -181,7 +174,7 @@ tests:
- label: "Operator returns switch to first position"
PICS: SWTCH.S.F00
verification: |
- In Raspi platform to change the switch to first position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"SwitchLatched","NewPosition":0}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -206,7 +199,7 @@ tests:
- label: "Set up subscription to InitialPress event"
PICS: SWTCH.S.F01
verification: |
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"InitialPress","NewPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -251,7 +244,7 @@ tests:
- label: "Operator operates switch (keep it pressed)"
PICS: SWTCH.S.F01
verification: |
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"InitialPress","NewPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -276,7 +269,7 @@ tests:
- label: "Operator does not operate switch (release switch)"
PICS: SWTCH.S.F01
verification: |
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"ShortRelease","PreviousPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -299,7 +292,7 @@ tests:
- label: "Set up subscription to InitialPress and ShortRelease events"
PICS: SWTCH.S.F01 && SWTCH.S.F02 && !SWTCH.S.F03
verification: |
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"InitialPress","NewPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -308,7 +301,7 @@ tests:
[1659686596.526820][2530:2530] CHIP:-: The new position when the momentary switch starts to be pressed:1
[1659686596.526881][2530:2530] CHIP:ZCL: SwitchServer: OnInitialPress
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"ShortRelease","PreviousPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -362,7 +355,7 @@ tests:
"Operator operates switch (keep pressed for long time, e.g. 5 seconds)"
PICS: SWTCH.S.F01 && SWTCH.S.F02 && !SWTCH.S.F03
verification: |
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"InitialPress","NewPosition":1}" > /tmp/chip_all_clusters_fifo_2530
@@ -388,7 +381,7 @@ tests:
- label: "Operator releases switch"
PICS: SWTCH.S.F01 && SWTCH.S.F02 && !SWTCH.S.F03
verification: |
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"ShortRelease","PreviousPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -416,7 +409,7 @@ tests:
LongRelease events"
PICS: SWTCH.S.F01 && SWTCH.S.F03
verification: |
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"InitialPress","NewPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -425,7 +418,7 @@ tests:
[1659693098.031859][2530:2530] CHIP:-: The new position when the momentary switch starts to be pressed:1
[1659693098.031888][2530:2530] CHIP:ZCL: SwitchServer: OnInitialPress
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"LongPress","NewPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -434,7 +427,7 @@ tests:
[1659693130.925064][2530:2530] CHIP:-: The new position when the momentary switch has been pressed for a long time:1
[1659693130.925313][2530:2530] CHIP:ZCL: SwitchServer: OnLongPress
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT.open one more terminal on DUT side execute the echo command on that terminal.
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"ShortRelease","PreviousPosition":1}" > /tmp/chip_all_clusters_fifo- (PID of DUT)
@@ -443,7 +436,7 @@ tests:
[1659693174.709479][2530:2530] CHIP:-: The the previous value of the CurrentPosition when the momentary switch has been released:1
[1659693174.709539][2530:2530] CHIP:ZCL: SwitchServer: OnShortRelease
- In Raspi platform to change the switch to second position use the below command, Pls use equivalent command on the respective DUT
+ On Raspi platform To trigger the event give the below command by opening an another terminal in DUT (Below is the example command developed in all-clusters-app to generate the event, Vendor Dut should have capability to generate this event)
echo "{"Name":"LongRelease","PreviousPosition":1}" > /tmp/chip_all_clusters_fifo-