Skip to content

Commit

Permalink
Merge branch 'project-chip:master' into TE2_SDK_2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
shgutte authored Aug 7, 2023
2 parents cc71f58 + 35cb562 commit d368df7
Show file tree
Hide file tree
Showing 292 changed files with 21,832 additions and 9,325 deletions.
4 changes: 3 additions & 1 deletion .github/.wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,7 @@ blocklist
blockquote
bluetoothd
bluez
BOOL
BooleanState
bootable
Bootloader
Expand Down Expand Up @@ -632,6 +633,7 @@ hci
hciattach
hciconfig
hdlc
HEPA
HKDF
HMAC
hoc
Expand All @@ -641,7 +643,6 @@ HomePods
hostapd
hostname
href
HEPA
HTTPS
HW
hwadr
Expand All @@ -652,6 +653,7 @@ IasWd
iaszone
ibb
ICA
ICD
iCloud
ICMP
IDF
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/examples-ameba.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
if: github.actor != 'restyled-io[bot]'

container:
image: ghcr.io/project-chip/chip-build-ameba:1
image: ghcr.io/project-chip/chip-build-ameba:4
options: --user root

steps:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/examples-efr32.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ jobs:
"./scripts/build/build_examples.py \
--enable-flashbundle \
--target efr32-brd4187c-thermostat-openthread_mtd \
--target efr32-brd4187c-switch-sed-shell-use_ot_coap_lib \
--target efr32-brd4187c-switch-shell-use_ot_coap_lib \
--target efr32-brd4187c-unit-test \
build \
--copy-artifacts-to out/artifacts \
Expand All @@ -81,7 +81,7 @@ jobs:
--enable-flashbundle \
--target efr32-brd4187c-light-use_ot_lib \
--target efr32-brd4187c-pump \
--target efr32-brd4187c-lock-rpc-shell-enable_heap_monitoring \
--target efr32-brd4187c-lock-shell-enable_heap_monitoring \
build \
--copy-artifacts-to out/artifacts \
"
Expand Down
14 changes: 10 additions & 4 deletions .github/workflows/examples-esp32.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -107,12 +107,15 @@ jobs:
esp32 c3devkit all-clusters-app \
example_binaries/esp32-build/chip-all-clusters-app.elf \
/tmp/bloat_reports/
- name: Build example Pigweed App
run: scripts/examples/esp_example.sh pigweed-app sdkconfig.defaults
- name: Build example Lighting App
run: scripts/examples/esp_example.sh lighting-app sdkconfig.defaults
- name: Build example Lock App
run: scripts/examples/esp_example.sh lock-app sdkconfig.defaults

- name: Build example Lighting App (Target:ESP32H2)
run: scripts/examples/esp_example.sh lighting-app sdkconfig.defaults.esp32h2

- name: Build example Lock App (Target:ESP32C6)
run: scripts/examples/esp_example.sh lock-app sdkconfig.defaults.esp32c6

- name: Uploading Size Reports
uses: ./.github/actions/upload-size-reports
Expand Down Expand Up @@ -156,3 +159,6 @@ jobs:

- name: Build example OTA Provider App
run: scripts/examples/esp_example.sh ota-provider-app sdkconfig.defaults

- name: Build example Light Switch App (Target:ESP32C3)
run: scripts/examples/esp_example.sh light-switch-app sdkconfig.defaults.esp32c3
67 changes: 38 additions & 29 deletions .github/workflows/examples-openiotsdk.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,15 @@ jobs:
examples/shell/openiotsdk/build/chip-openiotsdk-shell-example.elf \
/tmp/bloat_reports/
- name: "Test: shell example"
if: steps.build_shell.outcome == 'success'
run: |
scripts/run_in_python_env.sh out/venv \
'scripts/examples/openiotsdk_example.sh --no-activate -C test shell'
- name: Clean shell output
run: rm -rf examples/shell/openiotsdk/build

- name: Build lock-app example (mbedtls)
# Disabled being tracked here: https://github.com/project-chip/connectedhomeip/issues/28026
if: false
Expand All @@ -93,6 +102,18 @@ jobs:
examples/tv-app/openiotsdk/build/chip-openiotsdk-tv-app-example.elf \
/tmp/bloat_reports/
- name: "Test: tv-app example"
if: steps.build_tv_app.outcome == 'success'
timeout-minutes: 10
run: |
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME up
scripts/run_in_python_env.sh out/venv \
'scripts/run_in_ns.sh ${TEST_NETWORK_NAME}ns scripts/examples/openiotsdk_example.sh --no-activate -C test -n ${TEST_NETWORK_NAME}tap tv-app'
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME down
- name: Clean tv-app output
run: rm -rf examples/tv-app/openiotsdk/build

- name: Build all-clusters-app example
id: build_all_clusters_app
timeout-minutes: 10
Expand All @@ -103,6 +124,18 @@ jobs:
examples/all-clusters-app/openiotsdk/build/chip-openiotsdk-all-clusters-app-example.elf \
/tmp/bloat_reports/
- name: "Test: all-clusters-app example"
if: steps.build_all_clusters_app.outcome == 'success'
timeout-minutes: 5
run: |
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME up
scripts/run_in_python_env.sh out/venv \
'scripts/run_in_ns.sh ${TEST_NETWORK_NAME}ns scripts/examples/openiotsdk_example.sh --no-activate -C test -n ${TEST_NETWORK_NAME}tap all-clusters-app'
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME down
- name: Clean all-clusters-app output
run: rm -rf examples/all-clusters-app/openiotsdk/build

- name: Build ota-requestor-app example
id: build_ota_requestor_app
timeout-minutes: 10
Expand All @@ -127,12 +160,6 @@ jobs:
run: |
scripts/examples/gn_build_example.sh examples/ota-provider-app/linux/ out/ota-provider chip_config_network_layer_ble=false
- name: "Test: shell example"
if: steps.build_shell.outcome == 'success'
run: |
scripts/run_in_python_env.sh out/venv \
'scripts/examples/openiotsdk_example.sh --no-activate -C test shell'
- name: "Test: lock-app example (mbedtls)"
if: steps.build_lock_app_mbedtls.outcome == 'success'
run: |
Expand All @@ -141,24 +168,6 @@ jobs:
'scripts/run_in_ns.sh ${TEST_NETWORK_NAME}ns scripts/examples/openiotsdk_example.sh --no-activate -C test -n ${TEST_NETWORK_NAME}tap lock-app'
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME down
- name: "Test: tv-app example"
if: steps.build_tv_app.outcome == 'success'
timeout-minutes: 10
run: |
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME up
scripts/run_in_python_env.sh out/venv \
'scripts/run_in_ns.sh ${TEST_NETWORK_NAME}ns scripts/examples/openiotsdk_example.sh --no-activate -C test -n ${TEST_NETWORK_NAME}tap tv-app'
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME down
- name: "Test: all-clusters-app example"
if: steps.build_all_clusters_app.outcome == 'success'
timeout-minutes: 5
run: |
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME up
scripts/run_in_python_env.sh out/venv \
'scripts/run_in_ns.sh ${TEST_NETWORK_NAME}ns scripts/examples/openiotsdk_example.sh --no-activate -C test -n ${TEST_NETWORK_NAME}tap all-clusters-app'
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME down
- name: "Test: ota-requestor-app example"
if: steps.build_ota_requestor_app.outcome == 'success' && steps.build_ota_provider_app.outcome == 'success'
timeout-minutes: 30
Expand Down Expand Up @@ -189,11 +198,6 @@ jobs:
examples/lock-app/openiotsdk/build/chip-openiotsdk-lock-app-example.elf \
/tmp/bloat_reports/
- name: Build unit tests (psa)
id: build_unit_tests_psa
run: |
scripts/examples/openiotsdk_example.sh -b psa unit-tests
- name: "Test: lock-app example (psa)"
if: steps.build_lock_app_psa.outcome == 'success'
run: |
Expand All @@ -202,6 +206,11 @@ jobs:
'scripts/run_in_ns.sh ${TEST_NETWORK_NAME}ns scripts/examples/openiotsdk_example.sh --no-activate -C test -n ${TEST_NETWORK_NAME}tap lock-app'
scripts/setup/openiotsdk/network_setup.sh -n $TEST_NETWORK_NAME down
- name: Build unit tests (psa)
id: build_unit_tests_psa
run: |
scripts/examples/openiotsdk_example.sh -b psa unit-tests
- name: "Test: unit-tests (psa)"
if: steps.build_unit_tests_psa.outcome == 'success'
run: |
Expand Down
4 changes: 4 additions & 0 deletions config/esp32/components/chip/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,10 @@ if(CONFIG_DISABLE_IPV4)
chip_gn_arg_append("chip_inet_config_enable_ipv4" "false")
endif()

if(CONFIG_DISABLE_READ_CLIENT)
chip_gn_arg_append("chip_enable_read_client" "false")
endif()

if(CHIP_CODEGEN_PREGEN_DIR)
chip_gn_arg_append("chip_code_pre_generated_directory" "\"${CHIP_CODEGEN_PREGEN_DIR}\"")
endif()
Expand Down
6 changes: 6 additions & 0 deletions config/esp32/components/chip/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,12 @@ menu "CHIP Core"
help
Matter spec is based on IPv6 communication only. Enabling this option may save some flash/ram.

config DISABLE_READ_CLIENT
bool "Disable read client in Interaction Model"
default n
help
Some device types don't require the read client. Enabling this option may save some flash/ram.

config BUILD_CHIP_TESTS
bool "Build CHIP tests"
default n
Expand Down
8 changes: 4 additions & 4 deletions docs/guides/chip_tool_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -980,23 +980,23 @@ Complete the following steps:
fabric by using the following command pattern:

```
$ ./chip-tool pairing code <payload> <node_id> --commissioner-name <commissioner_name>
$ ./chip-tool pairing code <node_id> <payload> --commissioner-name <commissioner_name>
```

In this command:

- _<payload\>_ is the the QR code payload or a manual pairing code generated
by the first commissioner instance when opened commissioning window
- _<node_id\>_ is the user-defined ID of the node being commissioned. It
doesn't need to be the same ID, as for the first fabric.
- _<payload\>_ is the the QR code payload or a manual pairing code generated
by the first commissioner instance when opened commissioning window
- _<commissioner_name\>_ is the name of the second fabric. Valid values are
"alpha", "beta", "gamma", and integers greater than or equal to 4. The
default if not specified is "alpha".

**Example of command:**

```
$ ./chip-tool pairing code 36281602573 1 --commissioner-name beta
$ ./chip-tool pairing code 1 36281602573 --commissioner-name beta
```

#### Step 5: Test reception of commands
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6063,7 +6063,8 @@ server cluster FaultInjection = 4294048774 {
}

endpoint 0 {
device type rootdevice = 22, version 1;
device type ma_rootdevice = 22, version 1;

binding cluster OtaSoftwareUpdateProvider;

server cluster Identify {
Expand Down Expand Up @@ -6440,7 +6441,8 @@ endpoint 0 {
}
}
endpoint 1 {
device type onofflight = 256, version 1;
device type ma_onofflight = 256, version 1;

binding cluster OnOff;

server cluster Identify {
Expand Down Expand Up @@ -7449,7 +7451,8 @@ endpoint 1 {
}
}
endpoint 2 {
device type onofflight = 256, version 1;
device type ma_onofflight = 256, version 1;


server cluster Groups {
ram attribute nameSupport;
Expand Down Expand Up @@ -7497,7 +7500,8 @@ endpoint 2 {
}
}
endpoint 65534 {
device type anonymousEndpointType = 61442, version 1;
device type ma_secondary_network_commissioning = 61442, version 1;


server cluster Descriptor {
callback attribute deviceTypeList;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
/*
*
* Copyright (c) 2023 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 <app/clusters/laundry-washer-controls-server/laundry-washer-controls-delegate.h>
#include <app/clusters/laundry-washer-controls-server/laundry-washer-controls-server.h>
#include <app/util/af.h>
#include <app/util/config.h>
#include <cstring>

namespace chip {
namespace app {
namespace Clusters {
namespace LaundryWasherControls {

/**
* The application delegate to statically define the options.
*/

class LaundryWasherControlDelegate : public Delegate
{
static const CharSpan spinSpeedsNameOptions[];
static const NumberOfRinsesEnum supportRinsesOptions[];
static LaundryWasherControlDelegate instance;

public:
CHIP_ERROR GetSpinSpeedAtIndex(size_t index, MutableCharSpan & spinSpeed);
CHIP_ERROR GetSupportedRinseAtIndex(size_t index, NumberOfRinsesEnum & supportedRinse);

LaundryWasherControlDelegate() = default;
~LaundryWasherControlDelegate() = default;

static inline LaundryWasherControlDelegate & getLaundryWasherControlDelegate() { return instance; }
};

} // namespace LaundryWasherControls
} // namespace Clusters
} // namespace app
} // namespace chip
Loading

0 comments on commit d368df7

Please sign in to comment.