Skip to content

Commit e39cd0e

Browse files
authored
Merge branch 'master' into darwin-duplicate-mtrdevicecontroller-git-cp
2 parents 989580d + 968a0e6 commit e39cd0e

File tree

77 files changed

+1646
-674
lines changed

Some content is hidden

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

77 files changed

+1646
-674
lines changed

examples/network-manager-app/network-manager-common/network-manager-app.matter

+2
Original file line numberDiff line numberDiff line change
@@ -1518,6 +1518,7 @@ provisional cluster ThreadBorderRouterManagement = 1106 {
15181518
provisional readonly attribute int16u threadVersion = 2;
15191519
provisional readonly attribute boolean interfaceEnabled = 3;
15201520
provisional readonly attribute nullable int64u activeDatasetTimestamp = 4;
1521+
provisional readonly attribute nullable int64u pendingDatasetTimestamp = 5;
15211522
readonly attribute command_id generatedCommandList[] = 65528;
15221523
readonly attribute command_id acceptedCommandList[] = 65529;
15231524
readonly attribute event_id eventList[] = 65530;
@@ -1879,6 +1880,7 @@ endpoint 1 {
18791880
callback attribute threadVersion;
18801881
callback attribute interfaceEnabled;
18811882
callback attribute activeDatasetTimestamp;
1883+
callback attribute pendingDatasetTimestamp;
18821884
callback attribute generatedCommandList;
18831885
callback attribute acceptedCommandList;
18841886
callback attribute eventList;

examples/network-manager-app/network-manager-common/network-manager-app.zap

+25-9
Original file line numberDiff line numberDiff line change
@@ -3420,7 +3420,7 @@
34203420
"storageOption": "External",
34213421
"singleton": 0,
34223422
"bounded": 0,
3423-
"defaultValue": "",
3423+
"defaultValue": null,
34243424
"reportable": 1,
34253425
"minInterval": 1,
34263426
"maxInterval": 65534,
@@ -3436,7 +3436,7 @@
34363436
"storageOption": "External",
34373437
"singleton": 0,
34383438
"bounded": 0,
3439-
"defaultValue": "",
3439+
"defaultValue": null,
34403440
"reportable": 1,
34413441
"minInterval": 1,
34423442
"maxInterval": 65534,
@@ -3452,7 +3452,7 @@
34523452
"storageOption": "External",
34533453
"singleton": 0,
34543454
"bounded": 0,
3455-
"defaultValue": "",
3455+
"defaultValue": null,
34563456
"reportable": 1,
34573457
"minInterval": 1,
34583458
"maxInterval": 65534,
@@ -3468,7 +3468,7 @@
34683468
"storageOption": "External",
34693469
"singleton": 0,
34703470
"bounded": 0,
3471-
"defaultValue": "",
3471+
"defaultValue": null,
34723472
"reportable": 1,
34733473
"minInterval": 1,
34743474
"maxInterval": 65534,
@@ -3484,6 +3484,22 @@
34843484
"storageOption": "External",
34853485
"singleton": 0,
34863486
"bounded": 0,
3487+
"defaultValue": null,
3488+
"reportable": 1,
3489+
"minInterval": 1,
3490+
"maxInterval": 65534,
3491+
"reportableChange": 0
3492+
},
3493+
{
3494+
"name": "PendingDatasetTimestamp",
3495+
"code": 5,
3496+
"mfgCode": null,
3497+
"side": "server",
3498+
"type": "int64u",
3499+
"included": 1,
3500+
"storageOption": "External",
3501+
"singleton": 0,
3502+
"bounded": 0,
34873503
"defaultValue": "",
34883504
"reportable": 1,
34893505
"minInterval": 1,
@@ -3500,7 +3516,7 @@
35003516
"storageOption": "External",
35013517
"singleton": 0,
35023518
"bounded": 0,
3503-
"defaultValue": "",
3519+
"defaultValue": null,
35043520
"reportable": 1,
35053521
"minInterval": 1,
35063522
"maxInterval": 65534,
@@ -3516,7 +3532,7 @@
35163532
"storageOption": "External",
35173533
"singleton": 0,
35183534
"bounded": 0,
3519-
"defaultValue": "",
3535+
"defaultValue": null,
35203536
"reportable": 1,
35213537
"minInterval": 1,
35223538
"maxInterval": 65534,
@@ -3532,7 +3548,7 @@
35323548
"storageOption": "External",
35333549
"singleton": 0,
35343550
"bounded": 0,
3535-
"defaultValue": "",
3551+
"defaultValue": null,
35363552
"reportable": 1,
35373553
"minInterval": 1,
35383554
"maxInterval": 65534,
@@ -3548,7 +3564,7 @@
35483564
"storageOption": "External",
35493565
"singleton": 0,
35503566
"bounded": 0,
3551-
"defaultValue": "",
3567+
"defaultValue": null,
35523568
"reportable": 1,
35533569
"minInterval": 1,
35543570
"maxInterval": 65534,
@@ -3564,7 +3580,7 @@
35643580
"storageOption": "External",
35653581
"singleton": 0,
35663582
"bounded": 0,
3567-
"defaultValue": "",
3583+
"defaultValue": null,
35683584
"reportable": 1,
35693585
"minInterval": 1,
35703586
"maxInterval": 65534,

examples/platform/linux/BUILD.gn

+1-1
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ source_set("app-main") {
9393
"${chip_root}/src/controller:controller",
9494
"${chip_root}/src/controller:gen_check_chip_controller_headers",
9595
"${chip_root}/src/lib",
96-
"${chip_root}/src/platform/logging:stdio",
96+
"${chip_root}/src/platform/logging:default",
9797
]
9898
deps = [
9999
":ota-test-event-trigger",

examples/rvc-app/rvc-common/include/rvc-device.h

+2-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ class RvcDevice
4444
mRunModeDelegate(), mRunModeInstance(&mRunModeDelegate, aRvcClustersEndpoint, RvcRunMode::Id, 0), mCleanModeDelegate(),
4545
mCleanModeInstance(&mCleanModeDelegate, aRvcClustersEndpoint, RvcCleanMode::Id, 0), mOperationalStateDelegate(),
4646
mOperationalStateInstance(&mOperationalStateDelegate, aRvcClustersEndpoint), mServiceAreaDelegate(),
47-
mServiceAreaInstance(&mServiceAreaDelegate, aRvcClustersEndpoint, BitMask<ServiceArea::Feature>(0))
47+
mServiceAreaInstance(&mServiceAreaDelegate, aRvcClustersEndpoint,
48+
BitMask<ServiceArea::Feature>(ServiceArea::Feature::kMaps, ServiceArea::Feature::kProgressReporting))
4849
{
4950
// set the current-mode at start-up
5051
mRunModeInstance.UpdateCurrentMode(RvcRunMode::ModeIdle);

examples/rvc-app/rvc-common/include/rvc-service-area-delegate.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ class RvcServiceAreaDelegate : public Delegate
4949
bool IsValidSelectAreasSet(const ServiceArea::Commands::SelectAreas::DecodableType & req,
5050
ServiceArea::SelectAreasStatus & locationStatus, MutableCharSpan statusText) override;
5151

52-
bool HandleSkipCurrentArea(MutableCharSpan skipStatusText) override;
52+
bool HandleSkipCurrentArea(uint32_t skippedArea, MutableCharSpan skipStatusText) override;
5353

5454
//*************************************************************************
5555
// Supported Locations accessors
@@ -78,7 +78,7 @@ class RvcServiceAreaDelegate : public Delegate
7878

7979
bool GetSupportedMapByIndex(uint32_t listIndex, ServiceArea::MapStructureWrapper & supportedMap) override;
8080

81-
bool GetSupportedMapById(uint8_t aMapId, uint32_t & listIndex, ServiceArea::MapStructureWrapper & supportedMap) override;
81+
bool GetSupportedMapById(uint32_t aMapId, uint32_t & listIndex, ServiceArea::MapStructureWrapper & supportedMap) override;
8282

8383
bool AddSupportedMap(const ServiceArea::MapStructureWrapper & newMap, uint32_t & listIndex) override;
8484

examples/rvc-app/rvc-common/rvc-app.matter

+22-13
Original file line numberDiff line numberDiff line change
@@ -1424,9 +1424,9 @@ cluster RvcOperationalState = 97 {
14241424
command GoHome(): OperationalCommandResponse = 128;
14251425
}
14261426

1427-
/** The Service Area cluster provides an interface for controlling the locations where a device should operate, and for querying the current location. */
1427+
/** The Service Area cluster provides an interface for controlling the areas where a device should operate, and for querying the current area being serviced. */
14281428
provisional cluster ServiceArea = 336 {
1429-
revision 1; // NOTE: Default/not specifically set
1429+
revision 1;
14301430

14311431
enum OperationalStatusEnum : enum8 {
14321432
kPending = 0;
@@ -1447,28 +1447,33 @@ provisional cluster ServiceArea = 336 {
14471447
kSuccess = 0;
14481448
kInvalidAreaList = 1;
14491449
kInvalidInMode = 2;
1450+
kInvalidSkippedArea = 3;
14501451
}
14511452

14521453
bitmap Feature : bitmap32 {
1453-
kListOrder = 0x1;
1454-
kSelectWhileRunning = 0x2;
1454+
kSelectWhileRunning = 0x1;
1455+
kProgressReporting = 0x2;
1456+
kMaps = 0x4;
1457+
}
1458+
1459+
struct LandmarkInfoStruct {
1460+
LandmarkTag landmarkTag = 0;
1461+
nullable RelativePositionTag positionTag = 1;
14551462
}
14561463

14571464
struct AreaInfoStruct {
14581465
nullable LocationDescriptorStruct locationInfo = 0;
1459-
nullable LandmarkTag landmarkTag = 1;
1460-
nullable PositionTag positionTag = 2;
1461-
nullable FloorSurfaceTag surfaceTag = 3;
1466+
nullable LandmarkInfoStruct landmarkInfo = 1;
14621467
}
14631468

14641469
struct AreaStruct {
14651470
int32u areaID = 0;
1466-
nullable int8u mapID = 1;
1471+
nullable int32u mapID = 1;
14671472
AreaInfoStruct areaDesc = 2;
14681473
}
14691474

14701475
struct MapStruct {
1471-
int8u mapID = 0;
1476+
int32u mapID = 0;
14721477
char_string<64> name = 1;
14731478
}
14741479

@@ -1480,7 +1485,7 @@ provisional cluster ServiceArea = 336 {
14801485
}
14811486

14821487
readonly attribute AreaStruct supportedAreas[] = 0;
1483-
readonly attribute MapStruct supportedMaps[] = 1;
1488+
readonly attribute optional MapStruct supportedMaps[] = 1;
14841489
readonly attribute int32u selectedAreas[] = 2;
14851490
readonly attribute optional nullable int32u currentArea = 3;
14861491
readonly attribute optional nullable epoch_s estimatedEndTime = 4;
@@ -1498,18 +1503,22 @@ provisional cluster ServiceArea = 336 {
14981503

14991504
response struct SelectAreasResponse = 1 {
15001505
SelectAreasStatus status = 0;
1501-
optional char_string<256> statusText = 1;
1506+
char_string<256> statusText = 1;
1507+
}
1508+
1509+
request struct SkipAreaRequest {
1510+
int32u skippedArea = 0;
15021511
}
15031512

15041513
response struct SkipAreaResponse = 3 {
15051514
SkipAreaStatus status = 0;
1506-
optional char_string<256> statusText = 1;
1515+
char_string<256> statusText = 1;
15071516
}
15081517

15091518
/** Command used to select a set of device areas, where the device is to operate. */
15101519
command SelectAreas(SelectAreasRequest): SelectAreasResponse = 0;
15111520
/** This command is used to skip an area where the device operates. */
1512-
command SkipArea(): SkipAreaResponse = 2;
1521+
command SkipArea(SkipAreaRequest): SkipAreaResponse = 2;
15131522
}
15141523

15151524
endpoint 0 {

examples/rvc-app/rvc-common/src/rvc-service-area-delegate.cpp

+18-20
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818
#include <app-common/zap-generated/attributes/Accessors.h>
1919
#include <rvc-service-area-delegate.h>
20+
#include <vector>
2021

2122
using namespace chip;
2223
using namespace chip::app::Clusters;
@@ -25,8 +26,8 @@ using namespace chip::app::Clusters::ServiceArea;
2526
CHIP_ERROR RvcServiceAreaDelegate::Init()
2627
{
2728
// hardcoded fill of SUPPORTED MAPS for prototyping
28-
uint8_t supportedMapId_XX = 3;
29-
uint8_t supportedMapId_YY = 245;
29+
uint32_t supportedMapId_XX = 3;
30+
uint32_t supportedMapId_YY = 245;
3031

3132
GetInstance()->AddSupportedMap(supportedMapId_XX, "My Map XX"_span);
3233
GetInstance()->AddSupportedMap(supportedMapId_YY, "My Map YY"_span);
@@ -38,32 +39,29 @@ CHIP_ERROR RvcServiceAreaDelegate::Init()
3839
uint32_t supportedAreaID_D = 0x88888888;
3940

4041
// Location A has name, floor number, uses map XX
41-
GetInstance()->AddSupportedLocation(
42-
supportedAreaID_A, DataModel::Nullable<uint_fast8_t>(supportedMapId_XX), "My Location A"_span,
43-
DataModel::Nullable<int16_t>(4), DataModel::Nullable<Globals::AreaTypeTag>(), DataModel::Nullable<Globals::LandmarkTag>(),
44-
DataModel::Nullable<Globals::PositionTag>(), DataModel::Nullable<Globals::FloorSurfaceTag>());
42+
GetInstance()->AddSupportedLocation(supportedAreaID_A, DataModel::Nullable<uint32_t>(supportedMapId_XX), "My Location A"_span,
43+
DataModel::Nullable<int16_t>(4), DataModel::Nullable<Globals::AreaTypeTag>(),
44+
DataModel::Nullable<Globals::LandmarkTag>(),
45+
DataModel::Nullable<Globals::RelativePositionTag>());
4546

4647
// Location B has name, uses map XX
47-
GetInstance()->AddSupportedLocation(
48-
supportedAreaID_B, DataModel::Nullable<uint_fast8_t>(supportedMapId_XX), "My Location B"_span,
49-
DataModel::Nullable<int16_t>(), DataModel::Nullable<Globals::AreaTypeTag>(), DataModel::Nullable<Globals::LandmarkTag>(),
50-
DataModel::Nullable<Globals::PositionTag>(), DataModel::Nullable<Globals::FloorSurfaceTag>());
48+
GetInstance()->AddSupportedLocation(supportedAreaID_B, DataModel::Nullable<uint32_t>(supportedMapId_XX), "My Location B"_span,
49+
DataModel::Nullable<int16_t>(), DataModel::Nullable<Globals::AreaTypeTag>(),
50+
DataModel::Nullable<Globals::LandmarkTag>(),
51+
DataModel::Nullable<Globals::RelativePositionTag>());
5152

5253
// Location C has full SemData, no name, Map YY
53-
GetInstance()->AddSupportedLocation(supportedAreaID_C, DataModel::Nullable<uint_fast8_t>(supportedMapId_YY), CharSpan(),
54+
GetInstance()->AddSupportedLocation(supportedAreaID_C, DataModel::Nullable<uint32_t>(supportedMapId_YY), CharSpan(),
5455
DataModel::Nullable<int16_t>(-1),
5556
DataModel::Nullable<Globals::AreaTypeTag>(Globals::AreaTypeTag::kPlayRoom),
5657
DataModel::Nullable<Globals::LandmarkTag>(Globals::LandmarkTag::kBackDoor),
57-
DataModel::Nullable<Globals::PositionTag>(Globals::PositionTag::kLeft),
58-
DataModel::Nullable<Globals::FloorSurfaceTag>(Globals::FloorSurfaceTag::kConcrete));
58+
DataModel::Nullable<Globals::RelativePositionTag>(Globals::RelativePositionTag::kNextTo));
5959

6060
// Location D has null values for all HomeLocationStruct fields, Map YY
61-
GetInstance()->AddSupportedLocation(supportedAreaID_D, DataModel::Nullable<uint_fast8_t>(supportedMapId_YY),
62-
"My Location D"_span, DataModel::Nullable<int16_t>(),
63-
DataModel::Nullable<Globals::AreaTypeTag>(),
61+
GetInstance()->AddSupportedLocation(supportedAreaID_D, DataModel::Nullable<uint32_t>(supportedMapId_YY), "My Location D"_span,
62+
DataModel::Nullable<int16_t>(), DataModel::Nullable<Globals::AreaTypeTag>(),
6463
DataModel::Nullable<Globals::LandmarkTag>(Globals::LandmarkTag::kCouch),
65-
DataModel::Nullable<Globals::PositionTag>(Globals::PositionTag::kLeft),
66-
DataModel::Nullable<Globals::FloorSurfaceTag>(Globals::FloorSurfaceTag::kHardwood));
64+
DataModel::Nullable<Globals::RelativePositionTag>(Globals::RelativePositionTag::kNextTo));
6765

6866
GetInstance()->SetCurrentArea(supportedAreaID_C);
6967

@@ -86,7 +84,7 @@ bool RvcServiceAreaDelegate::IsValidSelectAreasSet(const Commands::SelectAreas::
8684
return true;
8785
};
8886

89-
bool RvcServiceAreaDelegate::HandleSkipCurrentArea(MutableCharSpan skipStatusText)
87+
bool RvcServiceAreaDelegate::HandleSkipCurrentArea(uint32_t skippedArea, MutableCharSpan skipStatusText)
9088
{
9189
// TODO IMPLEMENT
9290
return true;
@@ -213,7 +211,7 @@ bool RvcServiceAreaDelegate::GetSupportedMapByIndex(uint32_t listIndex, MapStruc
213211
return false;
214212
};
215213

216-
bool RvcServiceAreaDelegate::GetSupportedMapById(uint8_t aMapId, uint32_t & listIndex, MapStructureWrapper & aSupportedMap)
214+
bool RvcServiceAreaDelegate::GetSupportedMapById(uint32_t aMapId, uint32_t & listIndex, MapStructureWrapper & aSupportedMap)
217215
{
218216
// We do not need to reimplement this method as it's already done by the SDK.
219217
// We are reimplementing this method, still using linear search, but with some optimization on the SDK implementation

examples/temperature-measurement-app/esp32/main/DeviceCallbacks.cpp

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
*
2424
**/
2525
#include "DeviceCallbacks.h"
26+
#include <esp_log.h>
2627

2728
static const char TAG[] = "echo-devicecallbacks";
2829

scripts/build/gn_gen_cirque.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ echo "Setup build environment"
3636
source "./scripts/activate.sh"
3737

3838
echo "Build: GN configure"
39-
gn --root="$CHIP_ROOT" gen --check --fail-on-unused-args out/debug --args='target_os="all"'"chip_build_tests=false chip_enable_wifi=false chip_im_force_fabric_quota_check=true enable_default_builds=false enable_host_gcc_build=true enable_standalone_chip_tool_build=true enable_linux_all_clusters_app_build=true enable_linux_lighting_app_build=true enable_linux_lit_icd_app_build=true"
39+
gn --root="$CHIP_ROOT" gen --check --fail-on-unused-args out/debug --args='target_os="all" chip_logging_backend="stdio" chip_build_tests=false chip_enable_wifi=false chip_im_force_fabric_quota_check=true enable_default_builds=false enable_host_gcc_build=true enable_standalone_chip_tool_build=true enable_linux_all_clusters_app_build=true enable_linux_lighting_app_build=true enable_linux_lit_icd_app_build=true'
4040

4141
echo "Build: Ninja build"
4242
time ninja -C out/debug all check

0 commit comments

Comments
 (0)