Skip to content

Commit 4665050

Browse files
authored
Merge branch 'master' into add_presets_to_Sdk
2 parents 1257477 + 144bfec commit 4665050

File tree

83 files changed

+4128
-470
lines changed

Some content is hidden

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

83 files changed

+4128
-470
lines changed

.github/workflows/darwin-tests.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ jobs:
9595
--target darwin-x64-lit-icd-${BUILD_VARIANT} \
9696
--target darwin-x64-microwave-oven-${BUILD_VARIANT} \
9797
--target darwin-x64-rvc-${BUILD_VARIANT} \
98+
--target darwin-x64-network-manager-${BUILD_VARIANT} \
9899
build \
99100
--copy-artifacts-to objdir-clone \
100101
"
@@ -116,6 +117,7 @@ jobs:
116117
--bridge-app ./out/darwin-x64-bridge-${BUILD_VARIANT}/chip-bridge-app \
117118
--microwave-oven-app ./out/darwin-x64-microwave-oven-${BUILD_VARIANT}/chip-microwave-oven-app \
118119
--rvc-app ./out/darwin-x64-rvc-${BUILD_VARIANT}/chip-rvc-app \
120+
--network-manager-app ./out/darwin-x64-network-manager-${BUILD_VARIANT}/matter-network-manager-app \
119121
"
120122
- name: Run OTA Test
121123
run: |

.github/workflows/tests.yaml

+7
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,7 @@ jobs:
188188
src/app/zap-templates/zcl/data-model/chip/thermostat-cluster.xml \
189189
src/app/zap-templates/zcl/data-model/chip/thread-border-router-management-cluster.xml \
190190
src/app/zap-templates/zcl/data-model/chip/thread-network-diagnostics-cluster.xml \
191+
src/app/zap-templates/zcl/data-model/chip/thread-network-directory-cluster.xml \
191192
src/app/zap-templates/zcl/data-model/chip/time-format-localization-cluster.xml \
192193
src/app/zap-templates/zcl/data-model/chip/time-synchronization-cluster.xml \
193194
src/app/zap-templates/zcl/data-model/chip/timer-cluster.xml \
@@ -225,6 +226,7 @@ jobs:
225226
--target linux-x64-lit-icd-${BUILD_VARIANT} \
226227
--target linux-x64-microwave-oven-${BUILD_VARIANT} \
227228
--target linux-x64-rvc-${BUILD_VARIANT} \
229+
--target linux-x64-network-manager-${BUILD_VARIANT} \
228230
build \
229231
--copy-artifacts-to objdir-clone \
230232
"
@@ -247,6 +249,7 @@ jobs:
247249
--lit-icd-app ./out/linux-x64-lit-icd-${BUILD_VARIANT}/lit-icd-app \
248250
--microwave-oven-app ./out/linux-x64-microwave-oven-${BUILD_VARIANT}/chip-microwave-oven-app \
249251
--rvc-app ./out/linux-x64-rvc-${BUILD_VARIANT}/chip-rvc-app \
252+
--network-manager-app ./out/linux-x64-network-manager-${BUILD_VARIANT}/matter-network-manager-app \
250253
"
251254
252255
- name: Run purposeful failure tests using the python parser sending commands to chip-tool
@@ -288,6 +291,7 @@ jobs:
288291
--lit-icd-app ./out/linux-x64-lit-icd-${BUILD_VARIANT}/lit-icd-app \
289292
--microwave-oven-app ./out/linux-x64-microwave-oven-${BUILD_VARIANT}/chip-microwave-oven-app \
290293
--rvc-app ./out/linux-x64-rvc-${BUILD_VARIANT}/chip-rvc-app \
294+
--network-manager-app ./out/linux-x64-network-manager-${BUILD_VARIANT}/matter-network-manager-app \
291295
"
292296
- name: Run Tests using chip-repl (including slow)
293297
if: github.event_name == 'push'
@@ -307,6 +311,7 @@ jobs:
307311
--lit-icd-app ./out/linux-x64-lit-icd-${BUILD_VARIANT}/lit-icd-app \
308312
--microwave-oven-app ./out/linux-x64-microwave-oven-${BUILD_VARIANT}/chip-microwave-oven-app \
309313
--rvc-app ./out/linux-x64-rvc-${BUILD_VARIANT}/chip-rvc-app \
314+
--network-manager-app ./out/linux-x64-network-manager-${BUILD_VARIANT}/matter-network-manager-app \
310315
"
311316
- name: Uploading core files
312317
uses: actions/upload-artifact@v4
@@ -375,6 +380,7 @@ jobs:
375380
--target darwin-x64-lit-icd-${BUILD_VARIANT} \
376381
--target darwin-x64-microwave-oven-${BUILD_VARIANT} \
377382
--target darwin-x64-rvc-${BUILD_VARIANT} \
383+
--target darwin-x64-network-manager-${BUILD_VARIANT} \
378384
build \
379385
--copy-artifacts-to objdir-clone \
380386
"
@@ -398,6 +404,7 @@ jobs:
398404
--lit-icd-app ./out/darwin-x64-lit-icd-${BUILD_VARIANT}/lit-icd-app \
399405
--microwave-oven-app ./out/darwin-x64-microwave-oven-${BUILD_VARIANT}/chip-microwave-oven-app \
400406
--rvc-app ./out/darwin-x64-rvc-${BUILD_VARIANT}/chip-rvc-app \
407+
--network-manager-app ./out/darwin-x64-network-manager-${BUILD_VARIANT}/matter-network-manager-app \
401408
"
402409
403410
- name: Run purposeful failure tests using the python parser sending commands to chip-tool

build/config/compiler/BUILD.gn

+9-1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414

1515
import("//build_overrides/build.gni")
1616
import("//build_overrides/pigweed.gni")
17+
import("//build_overrides/pigweed_environment.gni")
1718
import("${build_root}/chip/java/config.gni")
1819
import("${build_root}/config/compiler/compiler.gni")
1920
import("${build_root}/config/sysroot.gni")
@@ -348,7 +349,14 @@ config("cosmetic_default") {
348349
}
349350

350351
config("runtime_default") {
351-
if (is_clang) { # Using Pigweed clang instead of Darwin host clang
352+
if (is_clang &&
353+
current_os == "mac") { # Using Pigweed clang instead of Darwin host clang
354+
# Without pw_env_setup_CIPD_PIGWEED defined the hostclang:no_system_libcpp
355+
# config silently uses the system libc++, usually resulting in linker errors.
356+
assert(
357+
defined(pw_env_setup_CIPD_PIGWEED),
358+
"//build_overrides/pigweed_environment.gni must define pw_env_setup_CIPD_PIGWEED when using pigweed clang")
359+
352360
configs = [
353361
"$dir_pw_toolchain/host_clang:no_system_libcpp",
354362
"$dir_pw_toolchain/host_clang:xcode_sysroot",

config/esp32/components/chip/CMakeLists.txt

+6
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,12 @@ else()
237237
chip_gn_arg_append("chip_openthread_ftd" "false")
238238
endif()
239239

240+
if (CONFIG_OPENTHREAD_BORDER_ROUTER)
241+
chip_gn_arg_append("chip_openthread_border_router" "true")
242+
else()
243+
chip_gn_arg_append("chip_openthread_border_router" "false")
244+
endif()
245+
240246
if (CONFIG_ENABLE_OTA_REQUESTOR)
241247
chip_gn_arg_append("chip_enable_ota_requestor" "true")
242248
endif()

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

+76
Original file line numberDiff line numberDiff line change
@@ -4092,6 +4092,64 @@ cluster ElectricalEnergyMeasurement = 145 {
40924092
readonly attribute int16u clusterRevision = 65533;
40934093
}
40944094

4095+
/** This cluster is used to allow clients to control the operation of a hot water heating appliance so that it can be used with energy management. */
4096+
provisional cluster WaterHeaterManagement = 148 {
4097+
revision 1;
4098+
4099+
enum BoostStateEnum : enum8 {
4100+
kInactive = 0;
4101+
kActive = 1;
4102+
}
4103+
4104+
bitmap Feature : bitmap32 {
4105+
kEnergyManagement = 0x1;
4106+
kTankPercent = 0x2;
4107+
}
4108+
4109+
bitmap WaterHeaterDemandBitmap : bitmap8 {
4110+
kImmersionElement1 = 0x1;
4111+
kImmersionElement2 = 0x2;
4112+
kHeatPump = 0x4;
4113+
kBoiler = 0x8;
4114+
kOther = 0x10;
4115+
}
4116+
4117+
bitmap WaterHeaterTypeBitmap : bitmap8 {
4118+
kImmersionElement1 = 0x1;
4119+
kImmersionElement2 = 0x2;
4120+
kHeatPump = 0x4;
4121+
kBoiler = 0x8;
4122+
kOther = 0x10;
4123+
}
4124+
4125+
readonly attribute WaterHeaterTypeBitmap heaterTypes = 0;
4126+
readonly attribute WaterHeaterDemandBitmap heatDemand = 1;
4127+
readonly attribute optional int16u tankVolume = 2;
4128+
readonly attribute optional energy_mwh estimatedHeatRequired = 3;
4129+
readonly attribute optional percent tankPercentage = 4;
4130+
readonly attribute BoostStateEnum boostState = 5;
4131+
readonly attribute command_id generatedCommandList[] = 65528;
4132+
readonly attribute command_id acceptedCommandList[] = 65529;
4133+
readonly attribute event_id eventList[] = 65530;
4134+
readonly attribute attrib_id attributeList[] = 65531;
4135+
readonly attribute bitmap32 featureMap = 65532;
4136+
readonly attribute int16u clusterRevision = 65533;
4137+
4138+
request struct BoostRequest {
4139+
elapsed_s duration = 0;
4140+
optional boolean oneShot = 1;
4141+
optional boolean emergencyBoost = 2;
4142+
optional temperature temporarySetpoint = 3;
4143+
optional percent targetPercentage = 4;
4144+
optional percent targetReheat = 5;
4145+
}
4146+
4147+
/** Allows a client to request that the water heater is put into a Boost state. */
4148+
command access(invoke: manage) Boost(BoostRequest): DefaultSuccess = 0;
4149+
/** Allows a client to cancel an ongoing Boost operation. */
4150+
command access(invoke: manage) CancelBoost(): DefaultSuccess = 1;
4151+
}
4152+
40954153
/** This cluster allows a client to manage the power draw of a device. An example of such a client could be an Energy Management System (EMS) which controls an Energy Smart Appliance (ESA). */
40964154
provisional cluster DeviceEnergyManagement = 152 {
40974155
revision 4;
@@ -8439,6 +8497,24 @@ endpoint 1 {
84398497
ram attribute clusterRevision default = 1;
84408498
}
84418499

8500+
server cluster WaterHeaterManagement {
8501+
callback attribute heaterTypes;
8502+
callback attribute heatDemand;
8503+
callback attribute tankVolume;
8504+
callback attribute estimatedHeatRequired;
8505+
callback attribute tankPercentage;
8506+
callback attribute boostState;
8507+
callback attribute generatedCommandList;
8508+
callback attribute acceptedCommandList;
8509+
callback attribute eventList;
8510+
callback attribute attributeList;
8511+
callback attribute featureMap;
8512+
callback attribute clusterRevision;
8513+
8514+
handle command Boost;
8515+
handle command CancelBoost;
8516+
}
8517+
84428518
server cluster DeviceEnergyManagement {
84438519
emits event PowerAdjustStart;
84448520
emits event PowerAdjustEnd;

0 commit comments

Comments
 (0)