Skip to content

Commit 1291386

Browse files
andy31415pull[bot]
authored andcommitted
Make CHEF DimmableLight be spec compliant (or at least pass linter) (#26085)
* Fix dimmablelight for chef * Fix the noip dimmable light * Remove seemingly duplicated line
1 parent ea6328a commit 1291386

5 files changed

+344
-7
lines changed

.github/workflows/lint.yml

-3
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,7 @@ jobs:
7979
# https://github.com/project-chip/connectedhomeip/issues/19169
8080
# https://github.com/project-chip/connectedhomeip/issues/22640
8181
if [ "$idl_file" = './examples/all-clusters-app/all-clusters-common/all-clusters-app.matter' ]; then continue; fi
82-
if [ "$idl_file" = './examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter' ]; then continue; fi
83-
if [ "$idl_file" = './examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO' ]; then continue; fi
8482
if [ "$idl_file" = './examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter' ]; then continue; fi
85-
if [ "$idl_file" = './examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter' ]; then continue; fi
8683
if [ "$idl_file" = './examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter' ]; then continue; fi
8784
if [ "$idl_file" = './examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter' ]; then continue; fi
8885
if [ "$idl_file" = './examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter' ]; then continue; fi

examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter

+16
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,9 @@ server cluster AccessControl = 31 {
365365

366366
attribute access(read: administer, write: administer) AccessControlEntryStruct acl[] = 0;
367367
attribute access(read: administer, write: administer) AccessControlExtensionStruct extension[] = 1;
368+
readonly attribute int16u subjectsPerAccessControlEntry = 2;
369+
readonly attribute int16u targetsPerAccessControlEntry = 3;
370+
readonly attribute int16u accessControlEntriesPerFabric = 4;
368371
readonly attribute command_id generatedCommandList[] = 65528;
369372
readonly attribute command_id acceptedCommandList[] = 65529;
370373
readonly attribute event_id eventList[] = 65530;
@@ -416,6 +419,7 @@ server cluster BasicInformation = 40 {
416419
attribute access(write: manage) boolean localConfigDisabled = 16;
417420
readonly attribute boolean reachable = 17;
418421
readonly attribute char_string<32> uniqueID = 18;
422+
readonly attribute CapabilityMinimaStruct capabilityMinima = 19;
419423
readonly attribute command_id generatedCommandList[] = 65528;
420424
readonly attribute command_id acceptedCommandList[] = 65529;
421425
readonly attribute event_id eventList[] = 65530;
@@ -578,6 +582,7 @@ server cluster OtaSoftwareUpdateRequestor = 42 {
578582
standards. As such, Nodes that visually or audibly convey information need a mechanism by which
579583
they can be configured to use a user’s preferred language, units, etc */
580584
server cluster LocalizationConfiguration = 43 {
585+
attribute char_string<35> activeLocale = 0;
581586
readonly attribute CHAR_STRING supportedLocales[] = 1;
582587
readonly attribute command_id generatedCommandList[] = 65528;
583588
readonly attribute command_id acceptedCommandList[] = 65529;
@@ -648,6 +653,7 @@ server cluster GeneralCommissioning = 48 {
648653
readonly attribute BasicCommissioningInfo basicCommissioningInfo = 1;
649654
readonly attribute RegulatoryLocationType regulatoryConfig = 2;
650655
readonly attribute RegulatoryLocationType locationCapability = 3;
656+
readonly attribute boolean supportsConcurrentConnection = 4;
651657
readonly attribute command_id generatedCommandList[] = 65528;
652658
readonly attribute command_id acceptedCommandList[] = 65529;
653659
readonly attribute event_id eventList[] = 65530;
@@ -1179,6 +1185,8 @@ server cluster Switch = 59 {
11791185
INT8U totalNumberOfPressesCounted = 1;
11801186
}
11811187

1188+
readonly attribute int8u numberOfPositions = 0;
1189+
readonly attribute int8u currentPosition = 1;
11821190
readonly attribute command_id generatedCommandList[] = 65528;
11831191
readonly attribute command_id acceptedCommandList[] = 65529;
11841192
readonly attribute event_id eventList[] = 65530;
@@ -1496,6 +1504,9 @@ endpoint 0 {
14961504
emits event AccessControlExtensionChanged;
14971505
callback attribute acl;
14981506
callback attribute extension;
1507+
callback attribute subjectsPerAccessControlEntry;
1508+
callback attribute targetsPerAccessControlEntry;
1509+
callback attribute accessControlEntriesPerFabric;
14991510
callback attribute attributeList;
15001511
ram attribute featureMap default = 0;
15011512
ram attribute clusterRevision default = 1;
@@ -1524,6 +1535,7 @@ endpoint 0 {
15241535
persist attribute localConfigDisabled default = 0;
15251536
ram attribute reachable default = 1;
15261537
callback attribute uniqueID;
1538+
callback attribute capabilityMinima;
15271539
ram attribute featureMap default = 0;
15281540
ram attribute clusterRevision default = 1;
15291541
}
@@ -1541,6 +1553,7 @@ endpoint 0 {
15411553
}
15421554

15431555
server cluster LocalizationConfiguration {
1556+
callback attribute activeLocale;
15441557
callback attribute supportedLocales;
15451558
ram attribute featureMap default = 0;
15461559
ram attribute clusterRevision default = 1;
@@ -1559,6 +1572,7 @@ endpoint 0 {
15591572
callback attribute basicCommissioningInfo;
15601573
callback attribute regulatoryConfig default = 0;
15611574
callback attribute locationCapability default = 0;
1575+
callback attribute supportsConcurrentConnection default = 1;
15621576
ram attribute featureMap default = 0;
15631577
ram attribute clusterRevision default = 0x0001;
15641578
}
@@ -1696,6 +1710,8 @@ endpoint 0 {
16961710
}
16971711

16981712
server cluster Switch {
1713+
ram attribute numberOfPositions default = 2;
1714+
ram attribute currentPosition;
16991715
ram attribute featureMap default = 0;
17001716
ram attribute clusterRevision default = 1;
17011717
}

examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.zap

+131-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"featureLevel": 92,
2+
"featureLevel": 95,
33
"creator": "zap",
44
"keyValuePairs": [
55
{
@@ -1034,6 +1034,54 @@
10341034
"maxInterval": 65534,
10351035
"reportableChange": 0
10361036
},
1037+
{
1038+
"name": "SubjectsPerAccessControlEntry",
1039+
"code": 2,
1040+
"mfgCode": null,
1041+
"side": "server",
1042+
"type": "int16u",
1043+
"included": 1,
1044+
"storageOption": "External",
1045+
"singleton": 0,
1046+
"bounded": 0,
1047+
"defaultValue": "",
1048+
"reportable": 1,
1049+
"minInterval": 1,
1050+
"maxInterval": 65534,
1051+
"reportableChange": 0
1052+
},
1053+
{
1054+
"name": "TargetsPerAccessControlEntry",
1055+
"code": 3,
1056+
"mfgCode": null,
1057+
"side": "server",
1058+
"type": "int16u",
1059+
"included": 1,
1060+
"storageOption": "External",
1061+
"singleton": 0,
1062+
"bounded": 0,
1063+
"defaultValue": "",
1064+
"reportable": 1,
1065+
"minInterval": 1,
1066+
"maxInterval": 65534,
1067+
"reportableChange": 0
1068+
},
1069+
{
1070+
"name": "AccessControlEntriesPerFabric",
1071+
"code": 4,
1072+
"mfgCode": null,
1073+
"side": "server",
1074+
"type": "int16u",
1075+
"included": 1,
1076+
"storageOption": "External",
1077+
"singleton": 0,
1078+
"bounded": 0,
1079+
"defaultValue": "",
1080+
"reportable": 1,
1081+
"minInterval": 1,
1082+
"maxInterval": 65534,
1083+
"reportableChange": 0
1084+
},
10371085
{
10381086
"name": "AttributeList",
10391087
"code": 65531,
@@ -1438,6 +1486,22 @@
14381486
"maxInterval": 65344,
14391487
"reportableChange": 0
14401488
},
1489+
{
1490+
"name": "CapabilityMinima",
1491+
"code": 19,
1492+
"mfgCode": null,
1493+
"side": "server",
1494+
"type": "CapabilityMinimaStruct",
1495+
"included": 1,
1496+
"storageOption": "RAM",
1497+
"singleton": 1,
1498+
"bounded": 0,
1499+
"defaultValue": "",
1500+
"reportable": 1,
1501+
"minInterval": 1,
1502+
"maxInterval": 65534,
1503+
"reportableChange": 0
1504+
},
14411505
{
14421506
"name": "FeatureMap",
14431507
"code": 65532,
@@ -1820,6 +1884,22 @@
18201884
"side": "server",
18211885
"enabled": 1,
18221886
"attributes": [
1887+
{
1888+
"name": "ActiveLocale",
1889+
"code": 0,
1890+
"mfgCode": null,
1891+
"side": "server",
1892+
"type": "char_string",
1893+
"included": 1,
1894+
"storageOption": "External",
1895+
"singleton": 0,
1896+
"bounded": 0,
1897+
"defaultValue": "",
1898+
"reportable": 1,
1899+
"minInterval": 1,
1900+
"maxInterval": 65534,
1901+
"reportableChange": 0
1902+
},
18231903
{
18241904
"name": "SupportedLocales",
18251905
"code": 1,
@@ -2184,6 +2264,22 @@
21842264
"maxInterval": 65534,
21852265
"reportableChange": 0
21862266
},
2267+
{
2268+
"name": "SupportsConcurrentConnection",
2269+
"code": 4,
2270+
"mfgCode": null,
2271+
"side": "server",
2272+
"type": "boolean",
2273+
"included": 1,
2274+
"storageOption": "RAM",
2275+
"singleton": 0,
2276+
"bounded": 0,
2277+
"defaultValue": "1",
2278+
"reportable": 1,
2279+
"minInterval": 1,
2280+
"maxInterval": 65534,
2281+
"reportableChange": 0
2282+
},
21872283
{
21882284
"name": "FeatureMap",
21892285
"code": 65532,
@@ -4548,6 +4644,38 @@
45484644
"side": "server",
45494645
"enabled": 1,
45504646
"attributes": [
4647+
{
4648+
"name": "NumberOfPositions",
4649+
"code": 0,
4650+
"mfgCode": null,
4651+
"side": "server",
4652+
"type": "int8u",
4653+
"included": 1,
4654+
"storageOption": "RAM",
4655+
"singleton": 0,
4656+
"bounded": 0,
4657+
"defaultValue": "2",
4658+
"reportable": 1,
4659+
"minInterval": 1,
4660+
"maxInterval": 65534,
4661+
"reportableChange": 0
4662+
},
4663+
{
4664+
"name": "CurrentPosition",
4665+
"code": 1,
4666+
"mfgCode": null,
4667+
"side": "server",
4668+
"type": "int8u",
4669+
"included": 1,
4670+
"storageOption": "RAM",
4671+
"singleton": 0,
4672+
"bounded": 0,
4673+
"defaultValue": "",
4674+
"reportable": 1,
4675+
"minInterval": 1,
4676+
"maxInterval": 65534,
4677+
"reportableChange": 0
4678+
},
45514679
{
45524680
"name": "FeatureMap",
45534681
"code": 65532,
@@ -7386,5 +7514,6 @@
73867514
"endpointVersion": 1,
73877515
"deviceIdentifier": 257
73887516
}
7389-
]
7517+
],
7518+
"log": []
73907519
}

examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter

+18
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,9 @@ server cluster AccessControl = 31 {
365365

366366
attribute access(read: administer, write: administer) AccessControlEntryStruct acl[] = 0;
367367
attribute access(read: administer, write: administer) AccessControlExtensionStruct extension[] = 1;
368+
readonly attribute int16u subjectsPerAccessControlEntry = 2;
369+
readonly attribute int16u targetsPerAccessControlEntry = 3;
370+
readonly attribute int16u accessControlEntriesPerFabric = 4;
368371
readonly attribute command_id generatedCommandList[] = 65528;
369372
readonly attribute command_id acceptedCommandList[] = 65529;
370373
readonly attribute event_id eventList[] = 65530;
@@ -416,6 +419,7 @@ server cluster BasicInformation = 40 {
416419
attribute access(write: manage) boolean localConfigDisabled = 16;
417420
readonly attribute boolean reachable = 17;
418421
readonly attribute char_string<32> uniqueID = 18;
422+
readonly attribute CapabilityMinimaStruct capabilityMinima = 19;
419423
readonly attribute command_id generatedCommandList[] = 65528;
420424
readonly attribute command_id acceptedCommandList[] = 65529;
421425
readonly attribute event_id eventList[] = 65530;
@@ -578,6 +582,7 @@ server cluster OtaSoftwareUpdateRequestor = 42 {
578582
standards. As such, Nodes that visually or audibly convey information need a mechanism by which
579583
they can be configured to use a user’s preferred language, units, etc */
580584
server cluster LocalizationConfiguration = 43 {
585+
attribute char_string<35> activeLocale = 0;
581586
readonly attribute CHAR_STRING supportedLocales[] = 1;
582587
readonly attribute command_id generatedCommandList[] = 65528;
583588
readonly attribute command_id acceptedCommandList[] = 65529;
@@ -648,6 +653,7 @@ server cluster GeneralCommissioning = 48 {
648653
readonly attribute BasicCommissioningInfo basicCommissioningInfo = 1;
649654
readonly attribute RegulatoryLocationType regulatoryConfig = 2;
650655
readonly attribute RegulatoryLocationType locationCapability = 3;
656+
readonly attribute boolean supportsConcurrentConnection = 4;
651657
readonly attribute command_id generatedCommandList[] = 65528;
652658
readonly attribute command_id acceptedCommandList[] = 65529;
653659
readonly attribute event_id eventList[] = 65530;
@@ -1043,6 +1049,8 @@ server cluster Switch = 59 {
10431049
INT8U totalNumberOfPressesCounted = 1;
10441050
}
10451051

1052+
readonly attribute int8u numberOfPositions = 0;
1053+
readonly attribute int8u currentPosition = 1;
10461054
readonly attribute command_id generatedCommandList[] = 65528;
10471055
readonly attribute command_id acceptedCommandList[] = 65529;
10481056
readonly attribute event_id eventList[] = 65530;
@@ -1360,6 +1368,11 @@ endpoint 0 {
13601368
emits event AccessControlExtensionChanged;
13611369
callback attribute acl;
13621370
callback attribute extension;
1371+
callback attribute subjectsPerAccessControlEntry;
1372+
callback attribute targetsPerAccessControlEntry;
1373+
callback attribute accessControlEntriesPerFabric;
1374+
callback attribute generatedCommandList;
1375+
callback attribute acceptedCommandList;
13631376
callback attribute attributeList;
13641377
ram attribute featureMap default = 0;
13651378
ram attribute clusterRevision default = 1;
@@ -1388,6 +1401,7 @@ endpoint 0 {
13881401
persist attribute localConfigDisabled default = 0;
13891402
ram attribute reachable default = 1;
13901403
callback attribute uniqueID;
1404+
callback attribute capabilityMinima;
13911405
ram attribute featureMap default = 0;
13921406
ram attribute clusterRevision default = 1;
13931407
}
@@ -1405,6 +1419,7 @@ endpoint 0 {
14051419
}
14061420

14071421
server cluster LocalizationConfiguration {
1422+
ram attribute activeLocale;
14081423
callback attribute supportedLocales;
14091424
ram attribute featureMap default = 0;
14101425
ram attribute clusterRevision default = 1;
@@ -1423,6 +1438,7 @@ endpoint 0 {
14231438
callback attribute basicCommissioningInfo;
14241439
callback attribute regulatoryConfig default = 0;
14251440
callback attribute locationCapability default = 0;
1441+
callback attribute supportsConcurrentConnection default = 1;
14261442
ram attribute featureMap default = 0;
14271443
ram attribute clusterRevision default = 0x0001;
14281444
}
@@ -1470,6 +1486,8 @@ endpoint 0 {
14701486
}
14711487

14721488
server cluster Switch {
1489+
ram attribute numberOfPositions default = 2;
1490+
ram attribute currentPosition;
14731491
ram attribute featureMap default = 0;
14741492
ram attribute clusterRevision default = 1;
14751493
}

0 commit comments

Comments
 (0)