Skip to content

Commit 2736e4f

Browse files
Add XMLs and generated files only
1 parent 58536ba commit 2736e4f

40 files changed

+4921
-121
lines changed

.github/workflows/tests.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ jobs:
121121
src/app/zap-templates/zcl/data-model/chip/dishwasher-alarm-cluster.xml \
122122
src/app/zap-templates/zcl/data-model/chip/dishwasher-mode-cluster.xml \
123123
src/app/zap-templates/zcl/data-model/chip/measurement-and-sensing.xml \
124+
src/app/zap-templates/zcl/data-model/chip/meter-identification-cluster.xml \
124125
src/app/zap-templates/zcl/data-model/chip/microwave-oven-mode-cluster.xml \
125126
src/app/zap-templates/zcl/data-model/chip/microwave-oven-control-cluster.xml \
126127
src/app/zap-templates/zcl/data-model/chip/door-lock-cluster.xml \
+130
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
<?xml version="1.0"?>
2+
<!--
3+
Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
4+
The information within this document is the property of the Connectivity
5+
Standards Alliance and its use and disclosure are restricted, except as
6+
expressly set forth herein.
7+
8+
Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
9+
nontransferable, worldwide, limited and revocable license (without the right to
10+
sublicense), under Connectivity Standards Alliance's applicable copyright
11+
rights, to view, download, save, reproduce and use the document solely for your
12+
own internal purposes and in accordance with the terms of the license set forth
13+
herein. This license does not authorize you to, and you expressly warrant that
14+
you shall not: (a) permit others (outside your organization) to use this
15+
document; (b) post or publish this document; (c) modify, adapt, translate, or
16+
otherwise change this document in any manner or create any derivative work
17+
based on this document; (d) remove or modify any notice or label on this
18+
document, including this Copyright Notice, License and Disclaimer. The
19+
Connectivity Standards Alliance does not grant you any license hereunder other
20+
than as expressly stated herein.
21+
22+
Elements of this document may be subject to third party intellectual property
23+
rights, including without limitation, patent, copyright or trademark rights,
24+
and any such third party may or may not be a member of the Connectivity
25+
Standards Alliance. Connectivity Standards Alliance members grant other
26+
Connectivity Standards Alliance members certain intellectual property rights as
27+
set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
28+
Standards Alliance members do not grant you any rights under this license. The
29+
Connectivity Standards Alliance is not responsible for, and shall not be held
30+
responsible in any manner for, identifying or failing to identify any or all
31+
such third party intellectual property rights. Please visit www.csa-iot.org for
32+
more information on how to become a member of the Connectivity Standards
33+
Alliance.
34+
35+
This document and the information contained herein are provided on an “AS IS”
36+
basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
37+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
38+
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
39+
WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
40+
OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
41+
FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
42+
CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
43+
BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
44+
DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
45+
DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
46+
OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
47+
LOSS OR DAMAGE.
48+
49+
All company, brand and product names in this document may be trademarks that
50+
are the sole property of their respective owners.
51+
52+
This notice and disclaimer must be included on all copies of this document.
53+
54+
Connectivity Standards Alliance
55+
508 Second Street, Suite 206
56+
Davis, CA 95616, USA
57+
58+
:xrefstyle: short
59+
-->
60+
<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="0x0B06" name="Meter Identification Cluster" revision="1">
61+
<revisionHistory>
62+
<revision revision="1" summary="Initial version"/>
63+
</revisionHistory>
64+
<clusterIds>
65+
<clusterId id="0x0B06" name="Meter Identification"/>
66+
</clusterIds>
67+
<classification hierarchy="base" role="application" picsCode="MTRID" scope="Endpoint"/>
68+
<features>
69+
<feature bit="0" code="PWRTHLD" name="PowerThreshold" summary="Supports information about power threshold">
70+
<optionalConform/>
71+
</feature>
72+
</features>
73+
<dataTypes>
74+
<enum name="MeterTypeEnum">
75+
<item value="0x00" name="Utility" summary="Utility Meter">
76+
<mandatoryConform/>
77+
</item>
78+
<item value="0x01" name="Private" summary="Private Meter">
79+
<mandatoryConform/>
80+
</item>
81+
<item value="0x02" name="Generic" summary="Generic Meter">
82+
<mandatoryConform/>
83+
</item>
84+
</enum>
85+
<enum name="PowerThresholdSourceEnum">
86+
<item value="0x00" name="Contract" summary="The value comes from a signed contract">
87+
<mandatoryConform/>
88+
</item>
89+
<item value="0x01" name="Regulator" summary="The value comes from a legal regulator">
90+
<mandatoryConform/>
91+
</item>
92+
<item value="0x02" name="Equipment" summary="The value comes from a certified limits of the meter">
93+
<mandatoryConform/>
94+
</item>
95+
</enum>
96+
</dataTypes>
97+
<attributes>
98+
<attribute id="0x0000" name="MeterType" type="MeterTypeEnum" default="null">
99+
<access read="true" readPrivilege="view"/>
100+
<quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false" sourceAttribution="false" quieterReporting="false"/>
101+
<mandatoryConform/>
102+
</attribute>
103+
<attribute id="0x0001" name="UtilityName" type="string" default="null">
104+
<access read="true" readPrivilege="view"/>
105+
<quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false" sourceAttribution="false" quieterReporting="false"/>
106+
<mandatoryConform/>
107+
<constraint type="maxLength" value="16"/>
108+
</attribute>
109+
<attribute id="0x0002" name="PointOfDelivery" type="string" default="null">
110+
<access read="true" readPrivilege="view"/>
111+
<quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false" sourceAttribution="false" quieterReporting="false"/>
112+
<mandatoryConform/>
113+
<constraint type="maxLength" value="16"/>
114+
</attribute>
115+
<attribute id="0x0003" name="PowerThreshold" type="power-mW" default="null">
116+
<access read="true" readPrivilege="view"/>
117+
<quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false" sourceAttribution="false" quieterReporting="false"/>
118+
<mandatoryConform>
119+
<feature name="PWRTHLD"/>
120+
</mandatoryConform>
121+
</attribute>
122+
<attribute id="0x0004" name="PowerThresholdSource" type="PowerThresholdSourceEnum" default="null">
123+
<access read="true" readPrivilege="view"/>
124+
<quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false" sourceAttribution="false" quieterReporting="false"/>
125+
<mandatoryConform>
126+
<feature name="PWRTHLD"/>
127+
</mandatoryConform>
128+
</attribute>
129+
</attributes>
130+
</cluster>

docs/zap_clusters.md

+1
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@ Generally regenerate using one of:
130130
| 1295 | 0x50F | ContentControl |
131131
| 1296 | 0x510 | ContentAppObserver |
132132
| 2820 | 0xB04 | ElectricalMeasurement |
133+
| 2822 | 0xB06 | MeterIdentification |
133134
| 4294048773 | 0xFFF1FC05 | UnitTesting |
134135
| 4294048774 | 0xFFF1FC06 | FaultInjection |
135136
| 4294048800 | 0xFFF1FC20 | SampleMei |

scripts/rules.matterlint

+1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ load "../src/app/zap-templates/zcl/data-model/chip/diagnostic-logs-cluster.xml";
3030
load "../src/app/zap-templates/zcl/data-model/chip/dishwasher-alarm-cluster.xml";
3131
load "../src/app/zap-templates/zcl/data-model/chip/dishwasher-mode-cluster.xml";
3232
load "../src/app/zap-templates/zcl/data-model/chip/measurement-and-sensing.xml";
33+
load "../src/app/zap-templates/zcl/data-model/chip/meter-identification-cluster.xml";
3334
load "../src/app/zap-templates/zcl/data-model/chip/microwave-oven-mode-cluster.xml";
3435
load "../src/app/zap-templates/zcl/data-model/chip/microwave-oven-control-cluster.xml";
3536
load "../src/app/zap-templates/zcl/data-model/chip/door-lock-cluster.xml";

src/app/zap-templates/zcl/zcl-with-test-extensions.json

+77-20
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
"dishwasher-alarm-cluster.xml",
4545
"dishwasher-mode-cluster.xml",
4646
"drlc-cluster.xml",
47+
"meter-identification-cluster.xml",
4748
"microwave-oven-mode-cluster.xml",
4849
"microwave-oven-control-cluster.xml",
4950
"door-lock-cluster.xml",
@@ -138,9 +139,15 @@
138139
"manufacturersXml": "../../../../src/app/zap-templates/zcl/data-model/manufacturers.xml",
139140
"options": {
140141
"text": {
141-
"defaultResponsePolicy": ["Always", "Conditional", "Never"]
142+
"defaultResponsePolicy": [
143+
"Always",
144+
"Conditional",
145+
"Never"
146+
]
142147
},
143-
"bool": ["commandDiscovery"]
148+
"bool": [
149+
"commandDiscovery"
150+
]
144151
},
145152
"defaults": {
146153
"text": {
@@ -186,8 +193,13 @@
186193
"SpecificationVersion",
187194
"MaxPathsPerInvoke"
188195
],
189-
"Bridged Device Basic Information": ["ProductAppearance"],
190-
"Descriptor": ["ClusterRevision", "FeatureMap"],
196+
"Bridged Device Basic Information": [
197+
"ProductAppearance"
198+
],
199+
"Descriptor": [
200+
"ClusterRevision",
201+
"FeatureMap"
202+
],
191203
"Device Energy Management": [
192204
"ESAType",
193205
"ESACanGenerate",
@@ -230,7 +242,11 @@
230242
"SessionEnergyDischarged",
231243
"FeatureMap"
232244
],
233-
"Energy EVSE Mode": ["SupportedModes", "CurrentMode", "FeatureMap"],
245+
"Energy EVSE Mode": [
246+
"SupportedModes",
247+
"CurrentMode",
248+
"FeatureMap"
249+
],
234250
"Ethernet Network Diagnostics": [
235251
"PHYRate",
236252
"FullDuplex",
@@ -369,14 +385,21 @@
369385
"CurrentMaxRate",
370386
"OverrunCount"
371387
],
372-
"Channel": ["Lineup", "CurrentChannel"],
388+
"Channel": [
389+
"Lineup",
390+
"CurrentChannel"
391+
],
373392
"Media Playback": [
374393
"SampledPosition",
375394
"ActiveAudioTrack",
376395
"ActiveTextTrack"
377396
],
378-
"Application Launcher": ["CurrentApp"],
379-
"Application Basic": ["Application"],
397+
"Application Launcher": [
398+
"CurrentApp"
399+
],
400+
"Application Basic": [
401+
"Application"
402+
],
380403
"Time Synchronization": [
381404
"TrustedTimeSource",
382405
"DefaultNTP",
@@ -388,15 +411,21 @@
388411
"TimeZoneListMaxSize",
389412
"DSTOffsetListMaxSize"
390413
],
391-
"Temperature Control": ["SupportedTemperatureLevels"],
414+
"Temperature Control": [
415+
"SupportedTemperatureLevels"
416+
],
392417
"Dishwasher Mode": [
393418
"SupportedModes",
394419
"CurrentMode",
395420
"StartUpMode",
396421
"OnMode",
397422
"FeatureMap"
398423
],
399-
"Microwave Oven Mode": ["SupportedModes", "CurrentMode", "FeatureMap"],
424+
"Microwave Oven Mode": [
425+
"SupportedModes",
426+
"CurrentMode",
427+
"FeatureMap"
428+
],
400429
"Microwave Oven Control": [
401430
"CookTime",
402431
"MaxCookTime",
@@ -423,8 +452,16 @@
423452
"OnMode",
424453
"FeatureMap"
425454
],
426-
"RVC Clean Mode": ["SupportedModes", "CurrentMode", "FeatureMap"],
427-
"RVC Run Mode": ["SupportedModes", "CurrentMode", "FeatureMap"],
455+
"RVC Clean Mode": [
456+
"SupportedModes",
457+
"CurrentMode",
458+
"FeatureMap"
459+
],
460+
"RVC Run Mode": [
461+
"SupportedModes",
462+
"CurrentMode",
463+
"FeatureMap"
464+
],
428465
"Operational State": [
429466
"OperationalState",
430467
"OperationalError",
@@ -601,8 +638,13 @@
601638
"LevelValue",
602639
"FeatureMap"
603640
],
604-
"Air Quality": ["AirQuality", "FeatureMap"],
605-
"Thermostat": ["QueuedPreset"],
641+
"Air Quality": [
642+
"AirQuality",
643+
"FeatureMap"
644+
],
645+
"Thermostat": [
646+
"QueuedPreset"
647+
],
606648
"Electrical Energy Measurement": [
607649
"Accuracy",
608650
"CumulativeEnergyImported",
@@ -634,13 +676,28 @@
634676
"NeutralCurrent",
635677
"FeatureMap"
636678
],
637-
"Power Topology": ["FeatureMap"],
638-
"Valve Configuration and Control": ["RemainingDuration"],
639-
"Boolean State Configuration": ["CurrentSensitivityLevel"],
640-
"Wi-Fi Network Management": ["SSID"]
679+
"Power Topology": [
680+
"FeatureMap"
681+
],
682+
"Valve Configuration and Control": [
683+
"RemainingDuration"
684+
],
685+
"Boolean State Configuration": [
686+
"CurrentSensitivityLevel"
687+
],
688+
"Wi-Fi Network Management": [
689+
"SSID"
690+
]
641691
},
642692
"defaultReportingPolicy": "mandatory",
643-
"ZCLDataTypes": ["ARRAY", "BITMAP", "ENUM", "NUMBER", "STRING", "STRUCT"],
693+
"ZCLDataTypes": [
694+
"ARRAY",
695+
"BITMAP",
696+
"ENUM",
697+
"NUMBER",
698+
"STRING",
699+
"STRUCT"
700+
],
644701
"fabricHandling": {
645702
"automaticallyCreateFields": true,
646703
"indexFieldId": 254,
@@ -650,4 +707,4 @@
650707
"uiOptions": {
651708
"showProfileId": false
652709
}
653-
}
710+
}

0 commit comments

Comments
 (0)