367ac8a5bde356d10e8618c9e2845d58fe049e50
[platform/upstream/connectedhomeip.git] / src / app / zap-templates / zcl / data-model / silabs / general.xml
1 <?xml version="1.0"?>
2 <!--
3 Copyright (c) 2008,2020 Silicon Labs.
4
5 Licensed under the Apache License, Version 2.0 (the "License");
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8
9     http://www.apache.org/licenses/LICENSE-2.0
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16 -->
17 <configurator>
18   <domain name="General" spec="zcl-8.0-07-5123-08" certifiable="true">
19     <older spec="zcl-7.0-07-5123-07" certifiable="true"/>
20     <older spec="zcl6-errata-14-0129-15"/>
21     <older spec="zcl-6.0-15-02017-001"/>
22     <older spec="zcl-1.0-07-5123-03"/>
23   </domain>
24   <domain name="Lighting &amp; Occupancy" spec="l&amp;o-1.0-15-0014-04" certifiable="false"/>
25   <domain name="HA" spec="ha-1.2.1-05-3520-30" dependsOn="zcl-1.0-07-5123-03" certifiable="false">
26     <older spec="ha-1.2-05-3520-29" dependsOn="zcl-1.0-07-5123-03" certifiable="true"/>
27     <older spec="ha-1.1-05-3520-27" dependsOn="zcl-1.0-07-5123-03" certifiable="true"/>
28   </domain>
29   <global>
30     <command code="0x00" name="ReadAttributes" source="either">
31       <description>
32         Command description for ReadAttributes
33       </description>
34       <arg name="attributeIds" type="ATTRIBUTE_ID" array="true"/>
35     </command>
36     <command code="0x01" name="ReadAttributesResponse" source="either" disableDefaultResponse="true">
37       <description>
38         Command description for ReadAttributesResponse
39       </description>
40       <arg name="readAttributeStatusRecords" type="ReadAttributeStatusRecord" array="true"/>
41     </command>
42     <command code="0x02" name="WriteAttributes" source="either">
43       <description>
44         Command description for WriteAttributes
45       </description>
46       <arg name="writeAttributeRecords" type="WriteAttributeRecord" array="true"/>
47     </command>
48     <command code="0x03" name="WriteAttributesUndivided" source="either">
49       <description>
50         Command description for WriteAttributesUndivided
51       </description>
52       <arg name="writeAttributeRecords" type="WriteAttributeRecord" array="true"/>
53     </command>
54     <command code="0x04" name="WriteAttributesResponse" source="either" disableDefaultResponse="true">
55       <description>
56         Command description for WriteAttributesResponse
57       </description>
58       <arg name="writeAttributeStatusRecords" type="WriteAttributeStatusRecord" array="true"/>
59     </command>
60     <command code="0x05" name="WriteAttributesNoResponse" source="either" disableDefaultResponse="true">
61       <description>
62         Command description for WriteAttributesNoResponse
63       </description>
64       <arg name="writeAttributeRecords" type="WriteAttributeRecord" array="true"/>
65     </command>
66     <command code="0x06" name="ConfigureReporting" source="either">
67       <description>
68         Command description for ConfigureReporting
69       </description>
70       <arg name="configureReportingRecords" type="ConfigureReportingRecord" array="true"/>
71     </command>
72     <command code="0x07" name="ConfigureReportingResponse" source="either" disableDefaultResponse="true">
73       <description>
74         Command description for ConfigureReportingResponse
75       </description>
76       <arg name="configureReportingStatusRecords" type="ConfigureReportingStatusRecord" array="true"/>
77     </command>
78     <command code="0x08" name="ReadReportingConfiguration" source="either">
79       <description>
80         Command description for ReadReportingConfiguration
81       </description>
82       <arg name="readReportingConfigurationAttributeRecords" type="ReadReportingConfigurationAttributeRecord" array="true"/>
83     </command>
84     <command code="0x09" name="ReadReportingConfigurationResponse" source="either" disableDefaultResponse="true">
85       <description>
86         Command description for ReadReportingConfigurationResponse
87       </description>
88       <arg name="readReportingConfigurationRecords" type="ReadReportingConfigurationRecord" array="true"/>
89     </command>
90     <command code="0x0A" name="ReportAttributes" source="either">
91       <description>
92         Command description for ReportAttributes
93       </description>
94       <arg name="reportAttributeRecords" type="ReportAttributeRecord" array="true"/>
95     </command>
96     <command code="0x0B" name="DefaultResponse" source="either" disableDefaultResponse="true">
97       <description>
98         Command description for DefaultResponse
99       </description>
100       <arg name="commandId" type="INT8U"/>
101       <arg name="status" type="Status"/>
102     </command>
103     <command code="0x0C" name="DiscoverAttributes" source="either">
104       <description>
105         Command description for DiscoverAttributes
106       </description>
107       <arg name="startId" type="ATTRIBUTE_ID"/>
108       <arg name="maxAttributeIds" type="INT8U"/>
109     </command>
110     <command code="0x0D" name="DiscoverAttributesResponse" source="either" disableDefaultResponse="true">
111       <description>
112         Command description for DiscoverAttributesResponse
113       </description>
114       <arg name="discoveryComplete" type="INT8U"/>
115       <arg name="discoverAttributesInfoRecords" type="DiscoverAttributesInfoRecord" array="true"/>
116     </command>
117     <command code="0x0E" name="ReadAttributesStructured" source="either">
118       <description>
119         Command description for ReadAttributesStructured
120       </description>
121       <arg name="readStructuredAttributeRecords" type="ReadStructuredAttributeRecord" array="true"/>
122     </command>
123     <command code="0x0F" name="WriteAttributesStructured" source="either">
124       <description>
125         Command description for WriteAttributesStructured
126       </description>
127       <arg name="writeStructuredAttributeRecords" type="WriteStructuredAttributeRecord" array="true"/>
128     </command>
129     <command code="0x10" name="WriteAttributesStructuredResponse" source="either" disableDefaultResponse="true">
130       <description>
131         Command description for WriteAttributesStructuredResponse
132       </description>
133       <arg name="writeStructuredAttributeStatusRecords" type="WriteStructuredAttributeStatusRecord" array="true"/>
134     </command>
135     <command code="0x11" name="DiscoverCommandsReceived" source="either">
136       <description>This command may be used to discover all commands processed (received) by this cluster, including optional or manufacturer specific commands.</description>
137       <arg name="startCommandId" type="INT8U"/>
138       <arg name="maxCommandIds" type="INT8U"/>
139     </command>
140     <command code="0x12" name="DiscoverCommandsReceivedResponse" source="either" disableDefaultResponse="true">
141       <description>The discover commands received response command is sent in response to a discover commands received command, and is used to discover which commands a particular cluster can process.</description>
142       <arg name="discoveryComplete" type="INT8U"/>
143       <arg name="commandIds" type="INT8U" array="true"/>
144     </command>
145     <command code="0x13" name="DiscoverCommandsGenerated" source="either">
146       <description>This command may be used to discover all commands which may be generated (sent) by the cluster, including optional or manufacturer specific commands.</description>
147       <arg name="startCommandId" type="INT8U"/>
148       <arg name="maxCommandIds" type="INT8U"/>
149     </command>
150     <command code="0x14" name="DiscoverCommandsGeneratedResponse" source="either" disableDefaultResponse="true">
151       <description>The discover client commands response command is sent in response to a discover client commands command, and is used to discover which commands a particular cluster supports.</description>
152       <arg name="discoveryComplete" type="INT8U"/>
153       <arg name="commandIds" type="INT8U" array="true"/>
154     </command>
155     <command code="0x15" name="DiscoverAttributesExtended" source="either">
156       <description>This command is similar to the discover attributes command, but also includes a field to indicate whether the attribute is readable, writeable or reportable.</description>
157       <arg name="startId" type="ATTRIBUTE_ID"/>
158       <arg name="maxAttributeIds" type="INT8U"/>
159     </command>
160     <command code="0x16" name="DiscoverAttributesExtendedResponse" source="either" disableDefaultResponse="true">
161       <description>This command is sent in response to a discover attribute extended command and is used to determine if attributes are readable, writable or reportable.</description>
162       <arg name="discoveryComplete" type="INT8U"/>
163       <arg name="extendedDiscoverAttributesInfoRecords" type="ExtendedDiscoverAttributesInfoRecord" array="true"/>
164     </command>
165     <attribute side="client" code="0xFFFD" define="CLUSTER_REVISION_CLIENT" type="INT16U" min="0x0001" max="0xFFFE" writable="false" default="0x0001" optional="false" introducedIn="zcl-6.0-15-02017-001">cluster revision</attribute>
166     <attribute side="client" code="0xFFFE" define="REPORTING_STATUS_CLIENT" type="ENUM8" min="0x00" max="0xFF" writable="false" optional="true" introducedIn="zcl-6.0-15-02017-001">reporting status</attribute>
167     <attribute side="server" code="0xFFFD" define="CLUSTER_REVISION_SERVER" type="INT16U" min="0x0001" max="0xFFFE" writable="false" default="0x0001" optional="false" introducedIn="zcl-6.0-15-02017-001">cluster revision</attribute>
168     <attribute side="server" code="0xFFFE" define="REPORTING_STATUS_SERVER" type="ENUM8" min="0x00" max="0xFF" writable="false" optional="true" introducedIn="zcl-6.0-15-02017-001">reporting status</attribute>
169   </global>
170   <cluster singleton="true">
171     <name>Basic</name>
172     <domain>General</domain>
173     <description>Attributes for determining basic information about a device, setting user device information such as location, and enabling a device.</description>
174     <code>0x0000</code>
175     <define>BASIC_CLUSTER</define>
176     <client tick="false" init="false">true</client>
177     <server tick="false" init="false">true</server>
178     <globalAttribute side="either" code="0xFFFD" value="3"/>
179     <attribute side="server" code="0x0000" define="VERSION" type="INT8U" min="0x00" max="0xFF" writable="false" default="0x08" optional="false">ZCL version</attribute>
180     <!-- ZCL_VERSION -->
181     <attribute side="server" code="0x0001" define="APPLICATION_VERSION" type="INT8U" min="0x00" max="0xFF" writable="false" default="0x00" optional="true">application version</attribute>
182     <attribute side="server" code="0x0002" define="STACK_VERSION" type="INT8U" min="0x00" max="0xFF" writable="false" default="0x00" optional="true">stack version</attribute>
183     <attribute side="server" code="0x0003" define="HW_VERSION" type="INT8U" min="0x00" max="0xFF" writable="false" default="0x00" optional="true">hardware version</attribute>
184     <attribute side="server" code="0x0004" define="MANUFACTURER_NAME" type="CHAR_STRING" length="32" writable="false" default="" optional="true">manufacturer name</attribute>
185     <attribute side="server" code="0x0005" define="MODEL_IDENTIFIER" type="CHAR_STRING" length="32" writable="false" default="" optional="true">model identifier</attribute>
186     <attribute side="server" code="0x0006" define="DATE_CODE" type="CHAR_STRING" length="16" writable="false" default="" optional="true">date code</attribute>
187     <attribute side="server" code="0x0007" define="POWER_SOURCE" type="ENUM8" min="0x00" max="0xFF" writable="false" default="0x00" optional="false">power source</attribute>
188     <attribute side="server" code="0x0008" define="GENERIC_DEVICE_CLASS" type="ENUM8" min="0x00" max="0xFF" writable="false" default="0xFF" optional="true" introducedIn="l&amp;o-1.0-15-0014-04">generic device class</attribute>
189     <attribute side="server" code="0x0009" define="GENERIC_DEVICE_TYPE" type="ENUM8" min="0x00" max="0xFF" writable="false" default="0xFF" optional="true" introducedIn="l&amp;o-1.0-15-0014-04">generic device type</attribute>
190     <attribute side="server" code="0x000A" define="PRODUCT_CODE" type="OCTET_STRING" length="16" writable="false" optional="true" introducedIn="l&amp;o-1.0-15-0014-04">product code</attribute>
191     <attribute side="server" code="0x000B" define="PRODUCT_URL" type="CHAR_STRING" length="64" writable="false" optional="true" introducedIn="l&amp;o-1.0-15-0014-04">product url</attribute>
192     <attribute side="server" code="0x0010" define="LOCATION_DESCRIPTION" type="CHAR_STRING" length="16" writable="true" default="" optional="true">location description</attribute>
193     <attribute side="server" code="0x0011" define="PHYSICAL_ENVIRONMENT" type="ENUM8" min="0x00" max="0xFF" writable="true" default="0x00" optional="true">physical environment</attribute>
194     <attribute side="server" code="0x0012" define="DEVICE_ENABLED" type="BOOLEAN" min="0x00" max="0x01" writable="true" default="0x01" optional="true">device enabled</attribute>
195     <attribute side="server" code="0x0013" define="ALARM_MASK" type="BITMAP8" min="0x00" max="0x03" writable="true" default="0x00" optional="true">alarm mask</attribute>
196     <attribute side="server" code="0x0014" define="DISABLE_LOCAL_CONFIG" type="BITMAP8" min="0x00" max="0x03" writable="true" default="0x00" optional="true">disable local config</attribute>
197     <command source="client" code="0x00" name="ResetToFactoryDefaults" optional="true" cli="zcl basic rtfd">
198       <description>Command that resets all attribute values to factory default.</description>
199     </command>
200   </cluster>
201   <cluster singleton="true">
202     <name>Power Configuration</name>
203     <domain>General</domain>
204     <description>Attributes for determining more detailed information about a device's power source(s), and for configuring under/over voltage alarms.</description>
205     <code>0x0001</code>
206     <define>POWER_CONFIG_CLUSTER</define>
207     <client tick="false" init="false">true</client>
208     <server tick="false" init="false">true</server>
209     <globalAttribute side="either" code="0xFFFD" value="2"/>
210     <attribute side="server" code="0x0000" define="MAINS_VOLTAGE" type="INT16U" min="0x0000" max="0xFFFF" writable="false" optional="true">mains voltage</attribute>
211     <attribute side="server" code="0x0001" define="MAINS_FREQUENCY" type="INT8U" min="0x00" max="0xFF" writable="false" optional="true">mains frequency</attribute>
212     <attribute side="server" code="0x0010" define="MAINS_ALARM_MASK" type="BITMAP8" min="0x00" max="0x03" writable="true" default="0x00" optional="true">mains alarm mask</attribute>
213     <attribute side="server" code="0x0011" define="MAINS_VOLTAGE_MIN_THRESHOLD" type="INT16U" min="0x0000" max="0xFFFF" writable="true" default="0x0000" optional="true">mains voltage min threshold</attribute>
214     <attribute side="server" code="0x0012" define="MAINS_VOLTAGE_MAX_THRESHOLD" type="INT16U" min="0x0000" max="0xFFFF" writable="true" default="0xFFFF" optional="true">mains voltage max threshold</attribute>
215     <attribute side="server" code="0x0013" define="MAINS_VOLTAGE_DWELL_TRIP_POINT" type="INT16U" min="0x0000" max="0xFFFF" writable="true" default="0x0000" optional="true">mains voltage dwell trip</attribute>
216     <attribute side="server" code="0x0020" define="BATTERY_VOLTAGE" type="INT8U" min="0x00" max="0xFF" writable="false" optional="true">battery voltage</attribute>
217     <attribute side="server" code="0x0021" define="BATTERY_PERCENTAGE_REMAINING" type="INT8U" min="0x00" max="0xFF" writable="false" reportable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery percentage remaining</attribute>
218     <attribute side="server" code="0x0030" define="BATTERY_MANUFACTURER" type="CHAR_STRING" length="16" writable="true" default="" optional="true">battery manufacturer</attribute>
219     <attribute side="server" code="0x0031" define="BATTERY_SIZE" type="ENUM8" min="0x00" max="0xFF" writable="true" default="0xFF" optional="true">battery size</attribute>
220     <attribute side="server" code="0x0032" define="BATTERY_AHR_RATING" type="INT16U" min="0x0000" max="0xFFFF" writable="true" optional="true">battery ahr rating</attribute>
221     <attribute side="server" code="0x0033" define="BATTERY_QUANTITY" type="INT8U" min="0x00" max="0xFF" writable="true" optional="true">battery quantity</attribute>
222     <attribute side="server" code="0x0034" define="BATTERY_RATED_VOLTAGE" type="INT8U" min="0x00" max="0xFF" writable="true" optional="true">battery rated voltage</attribute>
223     <attribute side="server" code="0x0035" define="BATTERY_ALARM_MASK" type="BITMAP8" min="0x00" max="0x01" writable="true" default="0x00" optional="true">battery alarm mask</attribute>
224     <attribute side="server" code="0x0036" define="BATTERY_VOLTAGE_MIN_THRESHOLD" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true">battery voltage min threshold</attribute>
225     <attribute side="server" code="0x0037" define="BATTERY_VOLTAGE_THRESHOLD_1" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery voltage threshold 1</attribute>
226     <attribute side="server" code="0x0038" define="BATTERY_VOLTAGE_THRESHOLD_2" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery voltage threshold 2</attribute>
227     <attribute side="server" code="0x0039" define="BATTERY_VOLTAGE_THRESHOLD_3" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery voltage threshold 3</attribute>
228     <attribute side="server" code="0x003a" define="BATTERY_PERCENTAGE_MIN_THRESHOLD" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery percentage min threshold</attribute>
229     <attribute side="server" code="0x003b" define="BATTERY_PERCENTAGE_THRESHOLD_1" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery percentage threshold 1</attribute>
230     <attribute side="server" code="0x003c" define="BATTERY_PERCENTAGE_THRESHOLD_2" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery percentage threshold 2</attribute>
231     <attribute side="server" code="0x003d" define="BATTERY_PERCENTAGE_THRESHOLD_3" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery percentage threshold 3</attribute>
232     <attribute side="server" code="0x003e" define="BATTERY_ALARM_STATE" type="BITMAP32" min="0x00000000" max="0xFFFFFFFF" writable="false" reportable="true" default="0x00000000" optional="true" introducedIn="ha-1.2-05-3520-29">battery alarm state</attribute>
233     <attribute side="server" code="0x0040" define="BATTERY_2_VOLTAGE" type="INT8U" min="0x00" max="0xFF" writable="false" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 voltage</attribute>
234     <attribute side="server" code="0x0041" define="BATTERY_2_PERCENTAGE_REMAINING" type="INT8U" min="0x00" max="0xFF" writable="false" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 percentage remaining</attribute>
235     <attribute side="server" code="0x0050" define="BATTERY_2_MANUFACTURER" type="CHAR_STRING" length="16" writable="true" default="" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 manufacturer</attribute>
236     <attribute side="server" code="0x0051" define="BATTERY_2_SIZE" type="ENUM8" min="0x00" max="0xFF" writable="true" default="0xFF" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 size</attribute>
237     <attribute side="server" code="0x0052" define="BATTERY_2_AHR_RATING" type="INT16U" min="0x0000" max="0xFFFF" writable="true" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 ahr rating</attribute>
238     <attribute side="server" code="0x0053" define="BATTERY_2_QUANTITY" type="INT8U" min="0x00" max="0xFF" writable="true" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 quantity</attribute>
239     <attribute side="server" code="0x0054" define="BATTERY_2_RATED_VOLTAGE" type="INT8U" min="0x00" max="0xFF" writable="true" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 rated voltage</attribute>
240     <attribute side="server" code="0x0055" define="BATTERY_2_ALARM_MASK" type="BITMAP8" min="0x00" max="0x01" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 alarm mask</attribute>
241     <attribute side="server" code="0x0056" define="BATTERY_2_VOLTAGE_MIN_THRESHOLD" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 voltage min threshold</attribute>
242     <attribute side="server" code="0x0057" define="BATTERY_2_VOLTAGE_THRESHOLD_1" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 voltage threshold 1</attribute>
243     <attribute side="server" code="0x0058" define="BATTERY_2_VOLTAGE_THRESHOLD_2" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 voltage threshold 2</attribute>
244     <attribute side="server" code="0x0059" define="BATTERY_2_VOLTAGE_THRESHOLD_3" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 voltage threshold 3</attribute>
245     <attribute side="server" code="0x005a" define="BATTERY_2_PERCENTAGE_MIN_THRESHOLD" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 percentage min threshold</attribute>
246     <attribute side="server" code="0x005b" define="BATTERY_2_PERCENTAGE_THRESHOLD_1" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 percentage threshold 1</attribute>
247     <attribute side="server" code="0x005c" define="BATTERY_2_PERCENTAGE_THRESHOLD_2" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 percentage threshold 2</attribute>
248     <attribute side="server" code="0x005d" define="BATTERY_2_PERCENTAGE_THRESHOLD_3" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 percentage threshold 3</attribute>
249     <attribute side="server" code="0x005e" define="BATTERY_2_ALARM_STATE" type="BITMAP32" min="0x00000000" max="0xFFFFFFFF" writable="false" default="0x00000000" optional="true" introducedIn="ha-1.2-05-3520-29">battery 2 alarm state</attribute>
250     <attribute side="server" code="0x0060" define="BATTERY_3_VOLTAGE" type="INT8U" min="0x00" max="0xFF" writable="false" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 voltage</attribute>
251     <attribute side="server" code="0x0061" define="BATTERY_3_PERCENTAGE_REMAINING" type="INT8U" min="0x00" max="0xFF" writable="false" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 percentage remaining</attribute>
252     <attribute side="server" code="0x0070" define="BATTERY_3_MANUFACTURER" type="CHAR_STRING" length="16" writable="true" default="" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 manufacturer</attribute>
253     <attribute side="server" code="0x0071" define="BATTERY_3_SIZE" type="ENUM8" min="0x00" max="0xFF" writable="true" default="0xFF" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 size</attribute>
254     <attribute side="server" code="0x0072" define="BATTERY_3_AHR_RATING" type="INT16U" min="0x0000" max="0xFFFF" writable="true" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 ahr rating</attribute>
255     <attribute side="server" code="0x0073" define="BATTERY_3_QUANTITY" type="INT8U" min="0x00" max="0xFF" writable="true" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 quantity</attribute>
256     <attribute side="server" code="0x0074" define="BATTERY_3_RATED_VOLTAGE" type="INT8U" min="0x00" max="0xFF" writable="true" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 rated voltage</attribute>
257     <attribute side="server" code="0x0075" define="BATTERY_3_ALARM_MASK" type="BITMAP8" min="0x00" max="0x01" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 alarm mask</attribute>
258     <attribute side="server" code="0x0076" define="BATTERY_3_VOLTAGE_MIN_THRESHOLD" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 voltage min threshold</attribute>
259     <attribute side="server" code="0x0077" define="BATTERY_3_VOLTAGE_THRESHOLD_1" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 voltage threshold 1</attribute>
260     <attribute side="server" code="0x0078" define="BATTERY_3_VOLTAGE_THRESHOLD_2" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 voltage threshold 2</attribute>
261     <attribute side="server" code="0x0079" define="BATTERY_3_VOLTAGE_THRESHOLD_3" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 voltage threshold 3</attribute>
262     <attribute side="server" code="0x007a" define="BATTERY_3_PERCENTAGE_MIN_THRESHOLD" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 percentage min threshold</attribute>
263     <attribute side="server" code="0x007b" define="BATTERY_3_PERCENTAGE_THRESHOLD_1" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 percentage threshold 1</attribute>
264     <attribute side="server" code="0x007c" define="BATTERY_3_PERCENTAGE_THRESHOLD_2" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 percentage threshold 2</attribute>
265     <attribute side="server" code="0x007d" define="BATTERY_3_PERCENTAGE_THRESHOLD_3" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 percentage threshold 3</attribute>
266     <attribute side="server" code="0x007e" define="BATTERY_3_ALARM_STATE" type="BITMAP32" min="0x00000000" max="0xFFFFFFFF" writable="false" default="0x00000000" optional="true" introducedIn="ha-1.2-05-3520-29">battery 3 alarm state</attribute>
267   </cluster>
268   <cluster>
269     <name>Device Temperature Configuration</name>
270     <domain>General</domain>
271     <description>Attributes for determining information about a device's internal temperature, and for configuring under/over temperature alarms.</description>
272     <code>0x0002</code>
273     <define>DEVICE_TEMP_CLUSTER</define>
274     <client tick="false" init="false">true</client>
275     <server tick="false" tickFrequency="half" init="false">true</server>
276     <attribute side="server" code="0x0000" define="CURRENT_TEMPERATURE" type="INT16S" min="-200" max="200" writable="false" optional="false">current temperature</attribute>
277     <attribute side="server" code="0x0001" define="MIN_TEMP_EXPERIENCED" type="INT16S" min="-200" max="200" writable="false" optional="true">min temp experienced</attribute>
278     <attribute side="server" code="0x0002" define="MAX_TEMP_EXPERIENCED" type="INT16S" min="-200" max="200" writable="false" optional="true">max temp experienced</attribute>
279     <attribute side="server" code="0x0003" define="OVER_TEMP_TOTAL_DWELL" type="INT16U" min="0x0000" max="0xFFFF" writable="false" default="0x0000" optional="true">over temp total dwell</attribute>
280     <attribute side="server" code="0x0010" define="DEVICE_TEMP_ALARM_MASK" type="BITMAP8" min="0x00" max="0x03" writable="true" default="0x00" optional="true">device temp alarm mask</attribute>
281     <attribute side="server" code="0x0011" define="LOW_TEMP_THRESHOLD" type="INT16S" min="-200" max="200" writable="true" optional="true">low temp threshold</attribute>
282     <attribute side="server" code="0x0012" define="HIGH_TEMP_THRESHOLD" type="INT16S" min="-200" max="200" writable="true" optional="true">high temp threshold</attribute>
283     <attribute side="server" code="0x0013" define="LOW_TEMP_DWELL_TRIP_POINT" type="INT24U" min="0x000000" max="0xFFFFFF" writable="true" optional="true">low temp dwell trip point</attribute>
284     <attribute side="server" code="0x0014" define="HIGH_TEMP_DWELL_TRIP_POINT" type="INT24U" min="0x000000" max="0xFFFFFF" writable="true" optional="true">high temp dwell trip point</attribute>
285   </cluster>
286   <cluster>
287     <name>Identify</name>
288     <domain>General</domain>
289     <description>Attributes and commands for putting a device into Identification mode (e.g. flashing a light).</description>
290     <code>0x0003</code>
291     <define>IDENTIFY_CLUSTER</define>
292     <client tick="false" init="false">true</client>
293     <server tick="false" init="false">true</server>
294     <globalAttribute side="either" code="0xFFFD" value="2"/>
295     <attribute side="server" code="0x0000" define="IDENTIFY_TIME" type="INT16U" min="0x0000" max="0xFFFF" writable="true" default="0x0000" optional="false">identify time</attribute>
296     <attribute side="server" code="0x0001" define="COMMISSION_STATE" type="BITMAP8" min="0x00" max="0xFF" writable="false" default="0x00" optional="true">commission state</attribute>
297     <command source="client" code="0x00" name="Identify" optional="false" cli="zcl identify id">
298       <description>
299         Command description for Identify
300       </description>
301       <arg name="identifyTime" type="INT16U"/>
302     </command>
303     <command source="client" code="0x01" name="IdentifyQuery" optional="false" cli="zcl identify query">
304       <description>
305         Command description for IdentifyQuery
306       </description>
307     </command>
308     <command source="client" code="0x02" name="EZModeInvoke" optional="true" cli="zcl identify ez-mode">
309       <description>
310            Invoke EZMode on an Identify Server
311       </description>
312       <arg name="action" type="BITMAP8"/>
313     </command>
314     <command source="client" code="0x03" name="UpdateCommissionState" optional="true">
315       <description>
316           Update Commission State on the server device.
317       </description>
318       <arg name="action" type="ENUM8"/>
319       <arg name="commissionStateMask" type="BITMAP8"/>
320     </command>
321     <command source="server" code="0x00" name="IdentifyQueryResponse" optional="false" disableDefaultResponse="true">
322       <description>
323         Command description for IdentifyQueryResponse
324       </description>
325       <arg name="timeout" type="INT16U"/>
326     </command>
327   </cluster>
328   <cluster>
329     <name>Groups</name>
330     <domain>General</domain>
331     <description>Attributes and commands for group configuration and manipulation.</description>
332     <code>0x0004</code>
333     <define>GROUPS_CLUSTER</define>
334     <client init="false" tick="false">true</client>
335     <server init="false" tick="false">true</server>
336     <globalAttribute side="either" code="0xFFFD" value="3"/>
337     <attribute side="server" code="0x0000" define="GROUP_NAME_SUPPORT" type="BITMAP8" min="0x00" max="0x80" writable="false" optional="false">name support</attribute>
338     <!-- NAME_SUPPORT -->
339     <command source="client" code="0x00" name="AddGroup" optional="false" cli="zcl groups add">
340       <description>
341         Command description for AddGroup
342       </description>
343       <arg name="groupId" type="INT16U"/>
344       <arg name="groupName" type="CHAR_STRING"/>
345     </command>
346     <command source="client" code="0x01" name="ViewGroup" optional="false" cli="zcl groups view">
347       <description>
348         Command description for ViewGroup
349       </description>
350       <arg name="groupId" type="INT16U"/>
351     </command>
352     <command source="client" code="0x02" name="GetGroupMembership" cliFunctionName="zclGroupsGetCommand" optional="false" cli="zcl groups get">
353       <description>
354         Command description for GetGroupMembership
355       </description>
356       <arg name="groupCount" type="INT8U" arrayLength="true"/>
357       <arg name="groupList" type="INT16U" array="true"/>
358     </command>
359     <command source="client" code="0x03" name="RemoveGroup" optional="false" cli="zcl groups remove">
360       <description>
361         Command description for RemoveGroup
362       </description>
363       <arg name="groupId" type="INT16U"/>
364     </command>
365     <command source="client" code="0x04" name="RemoveAllGroups" optional="false" cli="zcl groups rmall">
366       <description>
367         Command description for RemoveAllGroups
368       </description>
369     </command>
370     <command source="client" code="0x05" name="AddGroupIfIdentifying" optional="false" cli="zcl groups add-if-id">
371       <description>
372         Command description for AddGroupIfIdentifying
373       </description>
374       <arg name="groupId" type="INT16U"/>
375       <arg name="groupName" type="CHAR_STRING"/>
376     </command>
377     <command source="server" code="0x00" name="AddGroupResponse" optional="false" disableDefaultResponse="true">
378       <description>
379         Command description for AddGroupResponse
380       </description>
381       <arg name="status" type="Status"/>
382       <arg name="groupId" type="INT16U"/>
383     </command>
384     <command source="server" code="0x01" name="ViewGroupResponse" optional="false" disableDefaultResponse="true">
385       <description>
386         Command description for ViewGroupResponse
387       </description>
388       <arg name="status" type="Status"/>
389       <arg name="groupId" type="INT16U"/>
390       <arg name="groupName" type="CHAR_STRING"/>
391     </command>
392     <command source="server" code="0x02" name="GetGroupMembershipResponse" optional="false" disableDefaultResponse="true">
393       <description>
394         Command description for GetGroupMembershipResponse
395       </description>
396       <arg name="capacity" type="INT8U"/>
397       <arg name="groupCount" type="INT8U" arrayLength="true"/>
398       <arg name="groupList" type="INT16U" array="true"/>
399     </command>
400     <command source="server" code="0x03" name="RemoveGroupResponse" optional="false" disableDefaultResponse="true">
401       <description>
402         Command description for RemoveGroupResponse
403       </description>
404       <arg name="status" type="Status"/>
405       <arg name="groupId" type="INT16U"/>
406     </command>
407   </cluster>
408   <cluster>
409     <name>Scenes</name>
410     <domain>General</domain>
411     <description>Attributes and commands for scene configuration and manipulation.</description>
412     <code>0x0005</code>
413     <define>SCENES_CLUSTER</define>
414     <client tick="false" init="false">true</client>
415     <server tick="false" init="false">true</server>
416     <globalAttribute side="either" code="0xFFFD" value="3"/>
417     <attribute side="server" code="0x0000" define="SCENE_COUNT" type="INT8U" min="0x00" max="0xFF" writable="false" default="0x00" optional="false">scene count</attribute>
418     <attribute side="server" code="0x0001" define="CURRENT_SCENE" type="INT8U" min="0x00" max="0xFF" writable="false" default="0x00" optional="false">current scene</attribute>
419     <attribute side="server" code="0x0002" define="CURRENT_GROUP" type="INT16U" min="0x0000" max="0xFFF7" writable="false" default="0x0000" optional="false">current group</attribute>
420     <attribute side="server" code="0x0003" define="SCENE_VALID" type="BOOLEAN" min="0x00" max="0x01" writable="false" default="0x00" optional="false">scene valid</attribute>
421     <attribute side="server" code="0x0004" define="SCENE_NAME_SUPPORT" type="BITMAP8" min="0x00" max="0x80" writable="false" optional="false">name support</attribute>
422     <!-- NAME_SUPPORT -->
423     <attribute side="server" code="0x0005" define="LAST_CONFIGURED_BY" type="IEEE_ADDRESS" writable="false" optional="true">last configured by</attribute>
424     <command source="client" code="0x00" name="AddScene" optional="false" cli="zcl scenes add">
425       <description>
426         Add a scene to the scene table. Extension field sets are supported, and are inputed as arrays of the form [[cluster ID] [length] [value0...n] ...]
427       </description>
428       <arg name="groupId" type="INT16U"/>
429       <arg name="sceneId" type="INT8U"/>
430       <arg name="transitionTime" type="INT16U"/>
431       <arg name="sceneName" type="CHAR_STRING"/>
432       <arg name="extensionFieldSets" type="SceneExtensionFieldSet" array="true"/>
433     </command>
434     <command source="client" code="0x01" name="ViewScene" optional="false" cli="zcl scenes view">
435       <description>
436         Command description for ViewScene
437       </description>
438       <arg name="groupId" type="INT16U"/>
439       <arg name="sceneId" type="INT8U"/>
440     </command>
441     <command source="client" code="0x02" name="RemoveScene" optional="false" cli="zcl scenes remove">
442       <description>
443         Command description for RemoveScene
444       </description>
445       <arg name="groupId" type="INT16U"/>
446       <arg name="sceneId" type="INT8U"/>
447     </command>
448     <command source="client" code="0x03" name="RemoveAllScenes" optional="false" cli="zcl scenes rmall">
449       <description>
450         Command description for RemoveAllScenes
451       </description>
452       <arg name="groupId" type="INT16U"/>
453     </command>
454     <command source="client" code="0x04" name="StoreScene" optional="false" cli="zcl scenes store">
455       <description>
456         Command description for StoreScene
457       </description>
458       <arg name="groupId" type="INT16U"/>
459       <arg name="sceneId" type="INT8U"/>
460     </command>
461     <command source="client" code="0x05" name="RecallScene" optional="false" cli="zcl scenes recall">
462       <description>
463         Command description for RecallScene
464       </description>
465       <arg name="groupId" type="INT16U"/>
466       <arg name="sceneId" type="INT8U"/>
467       <arg name="transitionTime" type="INT16U" introducedIn="zcl-7.0-07-5123-07" optional="1"/>
468     </command>
469     <command source="client" code="0x06" name="GetSceneMembership" optional="false" cli="zcl scenes get">
470       <description>
471         Command description for GetSceneMembership
472       </description>
473       <arg name="groupId" type="INT16U"/>
474     </command>
475     <command source="server" code="0x00" name="AddSceneResponse" optional="false" disableDefaultResponse="true">
476       <description>
477         Command description for AddSceneResponse
478       </description>
479       <arg name="status" type="Status"/>
480       <arg name="groupId" type="INT16U"/>
481       <arg name="sceneId" type="INT8U"/>
482     </command>
483     <command source="server" code="0x01" name="ViewSceneResponse" optional="false" disableDefaultResponse="true">
484       <description>
485         Command description for ViewSceneResponse
486       </description>
487       <arg name="status" type="Status"/>
488       <arg name="groupId" type="INT16U"/>
489       <arg name="sceneId" type="INT8U"/>
490       <arg name="transitionTime" type="INT16U" presentIf="status==0"/>
491       <arg name="sceneName" type="CHAR_STRING" presentIf="status==0"/>
492       <arg name="extensionFieldSets" type="SceneExtensionFieldSet" array="true" presentIf="status==0"/>
493     </command>
494     <command source="server" code="0x02" name="RemoveSceneResponse" optional="false" disableDefaultResponse="true">
495       <description>
496         Command description for RemoveSceneResponse
497       </description>
498       <arg name="status" type="Status"/>
499       <arg name="groupId" type="INT16U"/>
500       <arg name="sceneId" type="INT8U"/>
501     </command>
502     <command source="server" code="0x03" name="RemoveAllScenesResponse" optional="false" disableDefaultResponse="true">
503       <description>
504         Command description for RemoveAllScenesResponse
505       </description>
506       <arg name="status" type="Status"/>
507       <arg name="groupId" type="INT16U"/>
508     </command>
509     <command source="server" code="0x04" name="StoreSceneResponse" optional="false" disableDefaultResponse="true">
510       <description>
511         Command description for StoreSceneResponse
512       </description>
513       <arg name="status" type="Status"/>
514       <arg name="groupId" type="INT16U"/>
515       <arg name="sceneId" type="INT8U"/>
516     </command>
517     <command source="server" code="0x06" name="GetSceneMembershipResponse" optional="false" disableDefaultResponse="true">
518       <description>
519         Command description for GetSceneMembershipResponse
520       </description>
521       <arg name="status" type="Status"/>
522       <arg name="capacity" type="INT8U"/>
523       <arg name="groupId" type="INT16U"/>
524       <arg name="sceneCount" type="INT8U" arrayLength="true" presentIf="status==0"/>
525       <arg name="sceneList" type="INT8U" array="true" presentIf="status==0"/>
526     </command>
527   </cluster>
528   <cluster>
529     <name>On/off</name>
530     <domain>General</domain>
531     <description>Attributes and commands for switching devices between 'On' and 'Off' states.</description>
532     <code>0x0006</code>
533     <define>ON_OFF_CLUSTER</define>
534     <client tick="false" init="false">true</client>
535     <server tick="false" init="false">true</server>
536     <globalAttribute side="either" code="0xFFFD" value="2"/>
537     <attribute side="server" code="0x0000" define="ON_OFF" type="BOOLEAN" min="0x00" max="0x01" writable="false" reportable="true" default="0x00" optional="false">on/off</attribute>
538     <attribute side="server" code="0x4003" define="START_UP_ON_OFF" type="ENUM8" min="0x00" max="0xFF" writable="true" optional="true" introducedIn="l&amp;o-1.0-15-0014-04">start up on off</attribute>
539     <command source="client" code="0x00" name="Off" optional="false" cli="zcl on-off off">
540       <description>
541         Command description for Off
542       </description>
543     </command>
544     <command source="client" code="0x01" name="On" optional="false" cli="zcl on-off on">
545       <description>
546         Command description for On
547       </description>
548     </command>
549     <command source="client" code="0x02" name="Toggle" optional="false" cli="zcl on-off toggle">
550       <description>
551         Command description for Toggle
552       </description>
553     </command>
554   </cluster>
555   <cluster>
556     <name>On/off Switch Configuration</name>
557     <domain>General</domain>
558     <description>Attributes and commands for configuring On/Off switching devices.</description>
559     <code>0x0007</code>
560     <define>ON_OFF_SWITCH_CONFIG_CLUSTER</define>
561     <client tick="false" init="false">true</client>
562     <server tick="false" init="false">true</server>
563     <attribute side="server" code="0x0000" define="SWITCH_TYPE" type="ENUM8" min="0x00" max="0x01" writable="false" optional="false">switch type</attribute>
564     <attribute side="server" code="0x0010" define="SWITCH_ACTIONS" type="ENUM8" min="0x00" max="0x02" writable="true" default="0x00" optional="false">switch actions</attribute>
565   </cluster>
566   <cluster>
567     <name>Level Control</name>
568     <domain>General</domain>
569     <description>Attributes and commands for controlling devices that can be set to a level between fully 'On' and fully 'Off.'</description>
570     <code>0x0008</code>
571     <define>LEVEL_CONTROL_CLUSTER</define>
572     <client tick="false" init="false">true</client>
573     <server tick="false" init="false">true</server>
574     <globalAttribute side="either" code="0xFFFD" value="3"/>
575     <attribute side="server" code="0x0000" define="CURRENT_LEVEL" type="INT8U" min="0x00" max="0xFF" writable="false" reportable="true" default="0x00" optional="false">current level</attribute>
576     <attribute side="server" code="0x0001" define="LEVEL_CONTROL_REMAINING_TIME" type="INT16U" min="0x0000" max="0xFFFF" writable="false" default="0x0000" optional="true">remaining time</attribute>
577     <!-- REMAINING_TIME -->
578     <attribute side="server" code="0x0010" define="ON_OFF_TRANSITION_TIME" type="INT16U" min="0x0000" max="0xFFFF" writable="true" default="0x0000" optional="true">on off transition time</attribute>
579     <attribute side="server" code="0x0011" define="ON_LEVEL" type="INT8U" min="0x00" max="0xFF" writable="true" default="0xFE" optional="true">on level</attribute>
580     <attribute side="server" code="0x0012" define="ON_TRANSITION_TIME" type="INT16U" min="0x0000" max="0xFFFE" writable="true" optional="true" introducedIn="ha-1.2-05-3520-29">on transition time</attribute>
581     <attribute side="server" code="0x0013" define="OFF_TRANSITION_TIME" type="INT16U" min="0x0000" max="0xFFFE" writable="true" optional="true" introducedIn="ha-1.2-05-3520-29">off transition time</attribute>
582     <attribute side="server" code="0x0014" define="DEFAULT_MOVE_RATE" type="INT8U" min="0x00" max="0xFE" writable="true" optional="true" introducedIn="ha-1.2-05-3520-29">default move rate</attribute>
583     <attribute side="server" code="0x000F" define="OPTIONS" type="BITMAP8" min="0x00" max="0x03" writable="true" default="0x00" optional="true" introducedIn="l&amp;o-1.0-15-0014-04">options</attribute>
584     <attribute side="server" code="0x4000" define="START_UP_CURRENT_LEVEL" type="INT8U" min="0x01" max="0xFF" writable="true" optional="true" introducedIn="l&amp;o-1.0-15-0014-04">start up current level</attribute>
585     <command source="client" code="0x00" name="MoveToLevel" optional="false" cli="zcl level-control mv-to-level">
586       <description>
587         Command description for MoveToLevel
588       </description>
589       <arg name="level" type="INT8U"/>
590       <arg name="transitionTime" type="INT16U"/>
591       <arg name="optionMask" type="BITMAP8" introducedIn="zcl6-errata-14-0129-15" optional="1"/>
592       <arg name="optionOverride" type="BITMAP8" introducedIn="zcl6-errata-14-0129-15" optional="1"/>
593     </command>
594     <command source="client" code="0x01" name="Move" optional="false" cli="zcl level-control move">
595       <description>
596         Command description for Move
597       </description>
598       <arg name="moveMode" type="MoveMode"/>
599       <arg name="rate" type="INT8U"/>
600       <arg name="optionMask" type="BITMAP8" introducedIn="zcl6-errata-14-0129-15" optional="1"/>
601       <arg name="optionOverride" type="BITMAP8" introducedIn="zcl6-errata-14-0129-15" optional="1"/>
602     </command>
603     <command source="client" code="0x02" name="Step" optional="false" cli="zcl level-control step">
604       <description>
605         Command description for Step
606       </description>
607       <arg name="stepMode" type="StepMode"/>
608       <arg name="stepSize" type="INT8U"/>
609       <arg name="transitionTime" type="INT16U"/>
610       <arg name="optionMask" type="BITMAP8" introducedIn="zcl6-errata-14-0129-15" optional="1"/>
611       <arg name="optionOverride" type="BITMAP8" introducedIn="zcl6-errata-14-0129-15" optional="1"/>
612     </command>
613     <command source="client" code="0x03" name="Stop" optional="false" cli="zcl level-control stop">
614       <description>
615         Command description for Stop
616       </description>
617       <arg name="optionMask" type="BITMAP8" introducedIn="zcl6-errata-14-0129-15" optional="1"/>
618       <arg name="optionOverride" type="BITMAP8" introducedIn="zcl6-errata-14-0129-15" optional="1"/>
619     </command>
620     <command source="client" code="0x04" name="MoveToLevelWithOnOff" optional="false" cli="zcl level-control o-mv-to-level">
621       <description>
622         Command description for MoveToLevelWithOnOff
623       </description>
624       <arg name="level" type="INT8U"/>
625       <arg name="transitionTime" type="INT16U"/>
626     </command>
627     <command source="client" code="0x05" name="MoveWithOnOff" optional="false" cli="zcl level-control o-move">
628       <description>
629         Command description for MoveWithOnOff
630       </description>
631       <arg name="moveMode" type="MoveMode"/>
632       <arg name="rate" type="INT8U"/>
633     </command>
634     <command source="client" code="0x06" name="StepWithOnOff" optional="false" cli="zcl level-control o-step">
635       <description>
636         Command description for StepWithOnOff
637       </description>
638       <arg name="stepMode" type="StepMode"/>
639       <arg name="stepSize" type="INT8U"/>
640       <arg name="transitionTime" type="INT16U"/>
641     </command>
642     <command source="client" code="0x07" name="StopWithOnOff" optional="false" cli="zcl level-control o-stop">
643       <description>
644         Command description for StopWithOnOff
645       </description>
646     </command>
647   </cluster>
648   <cluster>
649     <name>Alarms</name>
650     <domain>General</domain>
651     <description>Attributes and commands for sending notifications and configuring alarm functionality.</description>
652     <code>0x0009</code>
653     <define>ALARM_CLUSTER</define>
654     <client tick="false" init="false">true</client>
655     <server tick="false" init="false">true</server>
656     <attribute side="server" code="0x0000" define="ALARM_COUNT" type="INT16U" min="0x00" writable="false" default="0x00" optional="true">alarm count</attribute>
657     <command source="client" code="0x00" name="ResetAlarm" optional="false">
658       <description>
659         Command description for ResetAlarm
660       </description>
661       <arg name="alarmCode" type="ENUM8"/>
662       <arg name="clusterId" type="CLUSTER_ID"/>
663     </command>
664     <command source="client" code="0x01" name="ResetAllAlarms" optional="false">
665       <description>
666         Command description for ResetAllAlarms
667       </description>
668     </command>
669     <command source="client" code="0x02" name="GetAlarm" optional="true">
670       <description>
671         Command description for GetAlarm
672       </description>
673     </command>
674     <command source="client" code="0x03" name="ResetAlarmLog" optional="true">
675       <description>
676         Command description for ResetAlarmLog
677       </description>
678     </command>
679     <command source="server" code="0x00" name="Alarm" optional="false">
680       <description>
681         Command description for Alarm
682       </description>
683       <arg name="alarmCode" type="ENUM8"/>
684       <arg name="clusterId" type="CLUSTER_ID"/>
685     </command>
686     <command source="server" code="0x01" name="GetAlarmResponse" optional="true" disableDefaultResponse="true">
687       <description>
688         Command description for GetAlarmResponse
689       </description>
690       <arg name="status" type="Status"/>
691       <arg name="alarmCode" type="ENUM8"/>
692       <arg name="clusterId" type="CLUSTER_ID"/>
693       <arg name="timeStamp" type="INT32U"/>
694     </command>
695   </cluster>
696   <cluster singleton="true">
697     <name>Time</name>
698     <domain>General</domain>
699     <description>Attributes and commands that provide a basic interface to a real-time clock.</description>
700     <code>0x000A</code>
701     <define>TIME_CLUSTER</define>
702     <client tick="false" init="false">true</client>
703     <server tick="false" init="false">true</server>
704     <globalAttribute side="either" code="0xFFFD" value="2"/>
705     <attribute side="server" code="0x0000" define="TIME" type="UTC_TIME" min="0x00000000" max="0xFFFFFFFE" writable="true" optional="false">time</attribute>
706     <attribute side="server" code="0x0001" define="TIME_STATUS" type="BITMAP8" min="0x00" max="0x0F" writable="true" default="0x00" optional="false">time status</attribute>
707     <attribute side="server" code="0x0002" define="TIME_ZONE" type="INT32S" min="0xFFFEAE80" max="0x00015180" writable="true" default="0x00000000" optional="true">time zone</attribute>
708     <attribute side="server" code="0x0003" define="DST_START" type="INT32U" min="0x00000000" max="0xFFFFFFFE" writable="true" optional="true">dst start</attribute>
709     <attribute side="server" code="0x0004" define="DST_END" type="INT32U" min="0x00000000" max="0xFFFFFFFE" writable="true" optional="true">dst end</attribute>
710     <attribute side="server" code="0x0005" define="DST_SHIFT" type="INT32S" min="0xFFFEAE80" max="0x00015180" writable="true" default="0x00000000" optional="true">dst shift</attribute>
711     <attribute side="server" code="0x0006" define="STANDARD_TIME" type="INT32U" min="0x00000000" max="0xFFFFFFFE" writable="false" optional="true">standard time</attribute>
712     <attribute side="server" code="0x0007" define="LOCAL_TIME" type="INT32U" min="0x00000000" max="0xFFFFFFFE" writable="false" optional="true">local time</attribute>
713     <attribute side="server" code="0x0008" define="LAST_SET_TIME" type="UTC_TIME" min="0x00000000" max="0xFFFFFFFE" writable="false" default="0xFFFFFFFF" optional="true">last set time</attribute>
714     <attribute side="server" code="0x0009" define="VALID_UNTIL_TIME" type="UTC_TIME" min="0x00000000" max="0xFFFFFFFE" writable="true" default="0xFFFFFFFF" optional="true">valid until time</attribute>
715   </cluster>
716   <cluster>
717     <name>RSSI Location</name>
718     <domain>General</domain>
719     <description>Attributes and commands that provide a means for exchanging location information and channel parameters among devices.</description>
720     <code>0x000B</code>
721     <define>RSSI_LOCATION_CLUSTER</define>
722     <client tick="false" init="false">true</client>
723     <server tick="false" init="false">true</server>
724     <attribute side="server" code="0x0000" define="LOCATION_TYPE" type="DATA8" min="0x00" max="0x0F" writable="false" optional="false">location type</attribute>
725     <attribute side="server" code="0x0001" define="LOCATION_METHOD" type="ENUM8" min="0x00" max="0xFF" writable="false" optional="false">location method</attribute>
726     <attribute side="server" code="0x0002" define="LOCATION_AGE" type="INT16U" min="0x0000" max="0xFFFF" writable="false" optional="true">location age</attribute>
727     <attribute side="server" code="0x0003" define="QUALITY_MEASURE" type="INT8U" min="0x00" max="0x64" writable="false" optional="true">quality measure</attribute>
728     <attribute side="server" code="0x0004" define="NUMBER_OF_DEVICES" type="INT8U" min="0x00" max="0xFF" writable="false" optional="true">number of devices</attribute>
729     <attribute side="server" code="0x0010" define="COORDINATE1" type="INT16S" min="0x8000" max="0x7FFF" writable="true" optional="false">coordinate 1</attribute>
730     <attribute side="server" code="0x0011" define="COORDINATE2" type="INT16S" min="0x8000" max="0x7FFF" writable="true" optional="false">coordinate 2</attribute>
731     <attribute side="server" code="0x0012" define="COORDINATE3" type="INT16S" min="0x8000" max="0x7FFF" writable="true" optional="true">coordinate 3</attribute>
732     <attribute side="server" code="0x0013" define="POWER" type="INT16S" min="0x8000" max="0x7FFF" writable="true" optional="false">power</attribute>
733     <attribute side="server" code="0x0014" define="PATH_LOSS_EXPONENT" type="INT16U" min="0x0000" max="0xFFFF" writable="true" optional="false">path loss exponent</attribute>
734     <attribute side="server" code="0x0015" define="REPORTING_PERIOD" type="INT16U" min="0x0000" max="0xFFFF" writable="true" optional="true">reporting period</attribute>
735     <attribute side="server" code="0x0016" define="CALCULATION_PERIOD" type="INT16U" min="0x0000" max="0xFFFF" writable="true" optional="true">calculation period</attribute>
736     <attribute side="server" code="0x0017" define="NUMBER_RSSI_MEASUREMENTS" type="INT8U" min="0x01" max="0xFF" writable="true" optional="false">number rssi measurements</attribute>
737     <command source="client" code="0x00" name="SetAbsoluteLocation" optional="false">
738       <description>
739         Command description for SetAbsoluteLocation
740       </description>
741       <arg name="coordinate1" type="INT16S"/>
742       <arg name="coordinate2" type="INT16S"/>
743       <arg name="coordinate3" type="INT16S"/>
744       <arg name="power" type="INT16S"/>
745       <arg name="pathLossExponent" type="INT16U"/>
746     </command>
747     <command source="client" code="0x01" name="SetDeviceConfiguration" optional="false">
748       <description>
749         Command description for SetDeviceConfiguration
750       </description>
751       <arg name="power" type="INT16S"/>
752       <arg name="pathLossExponent" type="INT16U"/>
753       <arg name="calculationPeriod" type="INT16U"/>
754       <arg name="numberRssiMeasurements" type="INT8U"/>
755       <arg name="reportingPeriod" type="INT16U"/>
756     </command>
757     <command source="client" code="0x02" name="GetDeviceConfiguration" optional="false">
758       <description>
759         Command description for GetDeviceConfiguration
760       </description>
761       <arg name="targetAddress" type="IEEE_ADDRESS"/>
762     </command>
763     <command source="client" code="0x03" name="GetLocationData" optional="false">
764       <description>
765         Command description for GetLocationData
766       </description>
767       <arg name="flags" type="GetLocationDataFlags"/>
768       <arg name="numberResponses" type="INT8U"/>
769       <arg name="targetAddress" type="IEEE_ADDRESS"/>
770     </command>
771     <command source="client" code="0x04" name="RssiResponse" optional="true" disableDefaultResponse="true">
772       <description>
773         Command description for RssiResponse
774       </description>
775       <arg name="replyingDevice" type="IEEE_ADDRESS"/>
776       <arg name="coordinate1" type="INT16S"/>
777       <arg name="coordinate2" type="INT16S"/>
778       <arg name="coordinate3" type="INT16S"/>
779       <arg name="rssi" type="INT8S"/>
780       <arg name="numberRssiMeasurements" type="INT8U"/>
781     </command>
782     <command source="client" code="0x05" name="SendPings" optional="true">
783       <description>
784         Command description for SendPings
785       </description>
786       <arg name="targetAddress" type="IEEE_ADDRESS"/>
787       <arg name="numberRssiMeasurements" type="INT8U"/>
788       <arg name="calculationPeriod" type="INT16U"/>
789     </command>
790     <command source="client" code="0x06" name="AnchorNodeAnnounce" optional="true">
791       <description>
792         Command description for AnchorNodeAnnounce
793       </description>
794       <arg name="anchorNodeIeeeAddress" type="IEEE_ADDRESS"/>
795       <arg name="coordinate1" type="INT16S"/>
796       <arg name="coordinate2" type="INT16S"/>
797       <arg name="coordinate3" type="INT16S"/>
798     </command>
799     <command source="server" code="0x00" name="DeviceConfigurationResponse" optional="false" disableDefaultResponse="true">
800       <description>
801         Command description for DeviceConfigurationResponse
802       </description>
803       <arg name="status" type="Status"/>
804       <arg name="power" type="INT16S"/>
805       <arg name="pathLossExponent" type="INT16U"/>
806       <arg name="calculationPeriod" type="INT16U"/>
807       <arg name="numberRssiMeasurements" type="INT8U"/>
808       <arg name="reportingPeriod" type="INT16U"/>
809     </command>
810     <command source="server" code="0x01" name="LocationDataResponse" optional="false" disableDefaultResponse="true">
811       <description>
812         Command description for LocationDataResponse
813       </description>
814       <arg name="status" type="Status"/>
815       <arg name="locationType" type="LocationType"/>
816       <arg name="coordinate1" type="INT16S"/>
817       <arg name="coordinate2" type="INT16S"/>
818       <arg name="coordinate3" type="INT16S"/>
819       <arg name="power" type="INT16S"/>
820       <arg name="pathLossExponent" type="INT16U"/>
821       <arg name="locationMethod" type="LocationMethod"/>
822       <arg name="qualityMeasure" type="INT8U"/>
823       <arg name="locationAge" type="INT16U"/>
824     </command>
825     <command source="server" code="0x02" name="LocationDataNotification" optional="false">
826       <description>
827         Command description for LocationDataNotification
828       </description>
829       <arg name="locationType" type="LocationType"/>
830       <arg name="coordinate1" type="INT16S"/>
831       <arg name="coordinate2" type="INT16S"/>
832       <arg name="coordinate3" type="INT16S"/>
833       <arg name="power" type="INT16S"/>
834       <arg name="pathLossExponent" type="INT16U"/>
835       <arg name="locationMethod" type="LocationMethod"/>
836       <arg name="qualityMeasure" type="INT8U"/>
837       <arg name="locationAge" type="INT16U"/>
838     </command>
839     <command source="server" code="0x03" name="CompactLocationDataNotification" optional="false">
840       <description>
841         Command description for CompactLocationDataNotification
842       </description>
843       <arg name="locationType" type="LocationType"/>
844       <arg name="coordinate1" type="INT16S"/>
845       <arg name="coordinate2" type="INT16S"/>
846       <arg name="coordinate3" type="INT16S"/>
847       <arg name="qualityMeasure" type="INT8U"/>
848       <arg name="locationAge" type="INT16U"/>
849     </command>
850     <command source="server" code="0x04" name="RssiPing" optional="false">
851       <description>
852         Command description for RssiPing
853       </description>
854       <arg name="locationType" type="LocationType"/>
855     </command>
856     <command source="server" code="0x05" name="RssiRequest" optional="true">
857       <description>
858         Command description for RssiRequest
859       </description>
860     </command>
861     <command source="server" code="0x06" name="ReportRssiMeasurements" optional="true">
862       <description>
863         Command description for ReportRssiMeasurements
864       </description>
865       <arg name="measuringDevice" type="IEEE_ADDRESS"/>
866       <arg name="neighbors" type="INT8U"/>
867       <arg name="neighborsInfo" type="NeighborInfo" array="true"/>
868     </command>
869     <command source="server" code="0x07" name="RequestOwnLocation" optional="true">
870       <description>
871         Command description for RequestOwnLocation
872       </description>
873       <arg name="blindNode" type="IEEE_ADDRESS"/>
874     </command>
875   </cluster>
876   <cluster>
877     <name>Binary Input (Basic)</name>
878     <domain>General</domain>
879     <description>An interface for reading the value of a binary measurement and accessing various characteristics of that measurement. </description>
880     <code>0x000F</code>
881     <define>BINARY_INPUT_BASIC_CLUSTER</define>
882     <client tick="false" init="false">true</client>
883     <server tick="false" init="false">true</server>
884     <attribute side="server" code="0x0004" define="ACTIVE_TEXT" type="CHAR_STRING" length="16" writable="true" default="" optional="true">active text</attribute>
885     <attribute side="server" code="0x001C" define="DESCRIPTION" type="CHAR_STRING" length="16" writable="true" default="" optional="true">description</attribute>
886     <attribute side="server" code="0x002E" define="INACTIVE_TEXT" type="CHAR_STRING" length="16" writable="true" default="" optional="true">inactive text</attribute>
887     <attribute side="server" code="0x0051" define="OUT_OF_SERVICE" type="BOOLEAN" min="0x00" max="0x01" writable="true" default="0x00" optional="false">out of service</attribute>
888     <attribute side="server" code="0x0054" define="POLARITY" type="ENUM8" writable="false" default="0x00" optional="true">polarity</attribute>
889     <attribute side="server" code="0x0055" define="PRESENT_VALUE" type="BOOLEAN" writable="true" reportable="true" optional="false">present value</attribute>
890     <attribute side="server" code="0x0067" define="RELIABILITY" type="ENUM8" writable="true" default="0x00" optional="true">reliability</attribute>
891     <attribute side="server" code="0x006F" define="STATUS_FLAGS" type="BITMAP8" min="0x00" max="0x0F" writable="false" default="0x00" reportable="true" optional="false">status flags</attribute>
892     <attribute side="server" code="0x0100" define="APPLICATION_TYPE" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true">application type</attribute>
893   </cluster>
894   <cluster>
895     <name>Commissioning</name>
896     <domain>General</domain>
897     <description>Attributes and commands for commissioning and managing a ZigBee device.</description>
898     <code>0x0015</code>
899     <define>COMMISSIONING_CLUSTER</define>
900     <client tick="false" init="false">true</client>
901     <server tick="false" init="false">true</server>
902     <globalAttribute side="either" code="0xFFFD" value="2"/>
903     <attribute side="server" code="0x0000" define="SHORT_ADDRESS" type="INT16U" min="0x0000" max="0xFFF7" writable="true" default="0xFFFF" optional="false">short address</attribute>
904     <attribute side="server" code="0x0001" define="EXTENDED_PAN_ID" type="IEEE_ADDRESS" min="0x0000000000000000" max="0xFFFFFFFFFFFFFFFE" writable="true" default="0xFFFFFFFFFFFFFFFF" optional="false">extended pan id</attribute>
905     <attribute side="server" code="0x0002" define="PAN_ID" type="INT16U" min="0x0000" max="0xFFFF" writable="true" default="0xFFFF" optional="false">pan id</attribute>
906     <attribute side="server" code="0x0003" define="CHANNEL_MASK" type="BITMAP32" writable="true" default="0x07FFF800" optional="false">channel mask</attribute>
907     <attribute side="server" code="0x0004" define="PROTOCOL_VERSION" type="INT8U" min="0x02" max="0x02" writable="true" default="0x02" optional="false">protocol version</attribute>
908     <attribute side="server" code="0x0005" define="STACK_PROFILE" type="INT8U" min="0x01" max="0x02" writable="true" default="0x02" optional="false">stack profile</attribute>
909     <attribute side="server" code="0x0006" define="STARTUP_CONTROL" type="ENUM8" min="0x00" max="0x03" writable="true" default="0x03" optional="false">startup control</attribute>
910     <attribute side="server" code="0x0010" define="TRUST_CENTER_ADDRESS" type="IEEE_ADDRESS" writable="true" default="0x0000000000000000" optional="false">trust center address</attribute>
911     <attribute side="server" code="0x0011" define="TRUST_CENTER_MASTER_KEY" type="SECURITY_KEY" writable="true" default="0x00000000000000000000000000000000" optional="true">trust center master key</attribute>
912     <attribute side="server" code="0x0012" define="NETWORK_KEY" type="SECURITY_KEY" writable="true" default="0x00000000000000000000000000000000" optional="false">network key</attribute>
913     <attribute side="server" code="0x0013" define="USE_INSECURE_JOIN" type="BOOLEAN" min="0x00" max="0x01" writable="true" default="0x01" optional="false">use insecure join</attribute>
914     <attribute side="server" code="0x0014" define="PRECONFIGURED_LINK_KEY" type="SECURITY_KEY" writable="true" default="0x00000000000000000000000000000000" optional="false">preconfigured link key</attribute>
915     <attribute side="server" code="0x0015" define="NETWORK_KEY_SEQUENCE_NUMBER" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="false">network key sequence number</attribute>
916     <attribute side="server" code="0x0016" define="NETWORK_KEY_TYPE" type="ENUM8" writable="true" default="0x05" optional="false">network key type</attribute>
917     <attribute side="server" code="0x0017" define="NETWORK_MANAGER_ADDRESS" type="INT16U" writable="true" default="0x0000" optional="false">network manager address</attribute>
918     <attribute side="server" code="0x0020" define="SCAN_ATTEMPTS" type="INT8U" min="0x01" max="0xFF" writable="true" default="0x05" optional="false">scan attempts</attribute>
919     <attribute side="server" code="0x0021" define="TIME_BETWEEN_SCANS" type="INT16U" min="0x0001" max="0xFFFF" writable="true" default="0x0064" optional="false">time between scans</attribute>
920     <attribute side="server" code="0x0022" define="REJOIN_INTERVAL" type="INT16U" min="0x0001" max="0xFFFF" writable="true" default="0x003C" optional="false">rejoin interval</attribute>
921     <attribute side="server" code="0x0023" define="MAX_REJOIN_INTERVAL" type="INT16U" min="0x0001" max="0xFFFF" writable="true" default="0x0E10" optional="false">max rejoin interval</attribute>
922     <attribute side="server" code="0x0030" define="INDIRECT_POLL_RATE" type="INT16U" min="0x0000" max="0xFFFF" writable="true" optional="false">indirect poll rate</attribute>
923     <attribute side="server" code="0x0031" define="PARENT_RETRY_THRESHOLD" type="INT8U" min="0x00" max="0xFF" writable="true" optional="false">parent retry threshold</attribute>
924     <attribute side="server" code="0x0040" define="CONCENTRATOR_FLAG" type="BOOLEAN" min="0x00" max="0x01" writable="true" default="0x00" optional="false">concentrator flag</attribute>
925     <attribute side="server" code="0x0041" define="CONCENTRATOR_RADIUS" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x0F" optional="false">concentrator radius</attribute>
926     <attribute side="server" code="0x0042" define="CONCENTRATOR_DISCOVERY_TIME" type="INT8U" min="0x00" max="0xFF" writable="true" default="0x00" optional="false">concentrator discovery time</attribute>
927     <command source="client" code="0x00" name="RestartDevice" optional="false">
928       <description>
929         Command description for RestartDevice
930       </description>
931       <arg name="options" type="RestartOptions"/>
932       <arg name="delay" type="INT8U"/>
933       <arg name="jitter" type="INT8U"/>
934     </command>
935     <command source="client" code="0x01" name="SaveStartupParameters" optional="true">
936       <description>
937         Command description for SaveStartupParameters
938       </description>
939       <arg name="options" type="BITMAP8"/>
940       <arg name="index" type="INT8U"/>
941     </command>
942     <command source="client" code="0x02" name="RestoreStartupParameters" optional="true">
943       <description>
944         Command description for RestoreStartupParameters
945       </description>
946       <arg name="options" type="BITMAP8"/>
947       <arg name="index" type="INT8U"/>
948     </command>
949     <command source="client" code="0x03" name="ResetStartupParameters" optional="false">
950       <description>
951         Command description for ResetStartupParameters
952       </description>
953       <arg name="options" type="ResetOptions"/>
954       <arg name="index" type="INT8U"/>
955     </command>
956     <command source="server" code="0x00" name="RestartDeviceResponse" optional="false" disableDefaultResponse="true">
957       <description>
958         Command description for RestartDeviceResponse
959       </description>
960       <arg name="status" type="ENUM8"/>
961     </command>
962     <command source="server" code="0x01" name="SaveStartupParametersResponse" optional="false" disableDefaultResponse="true">
963       <description>
964         Command description for SaveStartupParametersResponse
965       </description>
966       <arg name="status" type="ENUM8"/>
967     </command>
968     <command source="server" code="0x02" name="RestoreStartupParametersResponse" optional="false" disableDefaultResponse="true">
969       <description>
970         Command description for RestoreStartupParametersResponse
971       </description>
972       <arg name="status" type="ENUM8"/>
973     </command>
974     <command source="server" code="0x03" name="ResetStartupParametersResponse" optional="false" disableDefaultResponse="true">
975       <description>
976         Command description for ResetStartupParametersResponse
977       </description>
978       <arg name="status" type="ENUM8"/>
979     </command>
980   </cluster>
981 </configurator>