diff --git a/src/app/zap-templates/zcl/data-model/chip/occupancy-sensing-cluster.xml b/src/app/zap-templates/zcl/data-model/chip/occupancy-sensing-cluster.xml index 414eb2c287e5e7..0f4d7c1d91064b 100644 --- a/src/app/zap-templates/zcl/data-model/chip/occupancy-sensing-cluster.xml +++ b/src/app/zap-templates/zcl/data-model/chip/occupancy-sensing-cluster.xml @@ -1,6 +1,6 @@ <?xml version="1.0"?> <!-- -Copyright (c) 2023 Project CHIP Authors +Copyright (c) 2023-2025 Project CHIP Authors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -14,9 +14,14 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> -<configurator> +<!-- +XML generated by Alchemy; DO NOT EDIT. +Source: src/app_clusters/OccupancySensing.adoc +Parameters: in-progress +Git: +--> +<configurator xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../zcl.xsd"> <domain name="Measurement & Sensing"/> - <bitmap name="OccupancyBitmap" type="bitmap8"> <cluster code="0x0406"/> <field name="Occupied" mask="0x1"/> @@ -38,10 +43,11 @@ limitations under the License. </bitmap> <struct apiMaturity="provisional" name="HoldTimeLimitsStruct"> - <cluster code="0x0406"/> <!-- Occupancy Sensing Cluster --> - <item name="HoldTimeMin" fieldId="0" type="int16u" optional="false"/> - <item name="HoldTimeMax" fieldId="1" type="int16u" optional="false"/> - <item name="HoldTimeDefault" fieldId="2" type="int16u" optional="false"/> + <cluster code="0x0406"/> + <!-- Occupancy Sensing Cluster --> + <item fieldId="0" name="HoldTimeMin" type="int16u" min="1"/> + <item fieldId="1" name="HoldTimeMax" type="int16u" min="1" max="1"/> + <item fieldId="2" name="HoldTimeDefault" type="int16u" min="1" max="1"/> </struct> <cluster> @@ -50,68 +56,48 @@ limitations under the License. <description>The server cluster provides an interface to occupancy sensing functionality based on one or more sensing modalities, including configuration and provision of notifications of occupancy status.</description> <code>0x0406</code> <define>OCCUPANCY_SENSING_CLUSTER</define> - <features> - <feature apiMaturity="provisional" bit="0" code="OTHER" name="Other" summary="Supports sensing using a modality not listed in the other bits"> - <optionalConform choice="a" more="true"/> - </feature> - <feature apiMaturity="provisional" bit="1" code="PIR" name="PassiveInfrared" summary="Supports sensing using PIR (Passive InfraRed)"> - <optionalConform choice="a" more="true"/> - </feature> - <feature apiMaturity="provisional" bit="2" code="US" name="Ultrasonic" summary="Supports sensing using UltraSound"> - <optionalConform choice="a" more="true"/> - </feature> - <feature apiMaturity="provisional" bit="3" code="PHY" name="PhysicalContact" summary="Supports sensing using a physical contact"> - <optionalConform choice="a" more="true"/> - </feature> - <feature apiMaturity="provisional" bit="4" code="AIR" name="ActiveInfrared" summary="Supports sensing using Active InfraRed measurement (e.g. time-of-flight or transflective/reflective IR sensing)"> - <optionalConform choice="a" more="true"/> - </feature> - <feature apiMaturity="provisional" bit="5" code="RAD" name="Radar" summary="Supports sensing using radar waves (microwave)"> - <optionalConform choice="a" more="true"/> - </feature> - <feature apiMaturity="provisional" bit="6" code="RFS" name="RFSensing" summary="Supports sensing based on RF signal analysis"> - <optionalConform choice="a" more="true"/> - </feature> - <feature apiMaturity="provisional" bit="7" code="VIS" name="Vision" summary="Supports sensing based on analyzing images"> - <optionalConform choice="a" more="true"/> - </feature> + <feature bit="0" code="OTHER" name="Other" summary="Supports sensing using a modality not listed in the other bits"> + <optionalConform choice="a" more="true" min="1"/> + </feature> + <feature bit="1" code="PIR" name="PassiveInfrared" summary="Supports sensing using PIR (Passive InfraRed)"> + <optionalConform choice="a" more="true" min="1"/> + </feature> + <feature bit="2" code="US" name="Ultrasonic" summary="Supports sensing using UltraSound"> + <optionalConform choice="a" more="true" min="1"/> + </feature> + <feature bit="3" code="PHY" name="PhysicalContact" summary="Supports sensing using a physical contact"> + <optionalConform choice="a" more="true" min="1"/> + </feature> + <feature bit="4" code="AIR" name="ActiveInfrared" summary="Supports sensing using Active InfraRed measurement (e.g. time-of-flight or transflective/reflective IR sensing)"> + <optionalConform choice="a" more="true" min="1"/> + </feature> + <feature bit="5" code="RAD" name="Radar" summary="Supports sensing using radar waves (microwave)"> + <optionalConform choice="a" more="true" min="1"/> + </feature> + <feature bit="6" code="RFS" name="RFSensing" summary="Supports sensing based on RF signal analysis"> + <optionalConform choice="a" more="true" min="1"/> + </feature> + <feature bit="7" code="VIS" name="Vision" summary="Supports sensing based on analyzing images"> + <optionalConform choice="a" more="true" min="1"/> + </feature> </features> - <client tick="false" init="false">true</client> <server tick="false" tickFrequency="half" init="false">true</server> - <globalAttribute side="either" code="0xFFFD" value="5"/> - - <attribute side="server" code="0x0000" name="Occupancy" define="OCCUPANCY" type="OccupancyBitmap" min="0x00" max="0x01" reportable="true"> - <mandatoryConform/> - </attribute> - <attribute side="server" code="0x0001" name="OccupancySensorType" define="OCCUPANCY_SENSOR_TYPE" type="OccupancySensorTypeEnum" min="0x00" max="0xFE"> - <otherwiseConform> - <mandatoryConform/> - <deprecateConform/> - </otherwiseConform> - </attribute> - <attribute side="server" code="0x0002" name="OccupancySensorTypeBitmap" define="OCCUPANCY_SENSOR_TYPE_BITMAP" type="OccupancySensorTypeBitmap" min="0x00" max="0x07"> - <otherwiseConform> - <mandatoryConform/> - <deprecateConform/> - </otherwiseConform> - </attribute> - - <attribute side="server" code="0x0003" name="HoldTime" define="HOLD_TIME" type="int16u" writable="true" optional="true"> + <attribute side="server" code="0x0000" name="Occupancy" define="OCCUPANCY" type="OccupancyBitmap" min="0x00" max="0x01"/> + <attribute side="server" code="0x0001" name="OccupancySensorType" define="OCCUPANCY_SENSOR_TYPE" type="OccupancySensorTypeEnum" min="0x00" max="0x03"/> + <attribute side="server" code="0x0002" name="OccupancySensorTypeBitmap" define="OCCUPANCY_SENSOR_TYPE_BITMAP" type="OccupancySensorTypeBitmap" min="0x00" max="0x07"/> + <attribute side="server" code="0x0003" name="HoldTime" define="HOLD_TIME" type="int16u" writable="true" optional="true" min="0" max="65535"> <access op="write" privilege="manage"/> <optionalConform/> </attribute> - <attribute side="server" code="0x0004" name="HoldTimeLimits" define="HOLD_TIME_LIMITS" type="HoldTimeLimitsStruct" optional="true"> <mandatoryConform> <attribute name="HoldTime"/> </mandatoryConform> </attribute> - - <attribute side="server" code="0x0010" name="PIROccupiedToUnoccupiedDelay" define="PIR_OCCUPIED_TO_UNOCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true"> - <access op="read" role="view"/> + <attribute side="server" code="0x0010" name="PIROccupiedToUnoccupiedDelay" define="PIR_OCCUPIED_TO_UNOCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true" min="0" max="65535"> <access op="write" role="manage"/> <otherwiseConform> <optionalConform> @@ -136,9 +122,7 @@ limitations under the License. <deprecateConform/> </otherwiseConform> </attribute> - - <attribute side="server" code="0x0011" name="PIRUnoccupiedToOccupiedDelay" define="PIR_UNOCCUPIED_TO_OCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true"> - <access op="read" role="view"/> + <attribute side="server" code="0x0011" name="PIRUnoccupiedToOccupiedDelay" define="PIR_UNOCCUPIED_TO_OCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true" min="0" max="65535"> <access op="write" role="manage"/> <otherwiseConform> <mandatoryConform> @@ -185,9 +169,7 @@ limitations under the License. <deprecateConform/> </otherwiseConform> </attribute> - <attribute side="server" code="0x0012" name="PIRUnoccupiedToOccupiedThreshold" define="PIR_UNOCCUPIED_TO_OCCUPIED_THRESHOLD" type="int8u" min="0x01" max="0xFE" writable="true" default="0x01" optional="true"> - <access op="read" role="view"/> <access op="write" role="manage"/> <otherwiseConform> <mandatoryConform> @@ -234,9 +216,7 @@ limitations under the License. <deprecateConform/> </otherwiseConform> </attribute> - - <attribute side="server" code="0x0020" name="UltrasonicOccupiedToUnoccupiedDelay" define="ULTRASONIC_OCCUPIED_TO_UNOCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true"> - <access op="read" role="view"/> + <attribute side="server" code="0x0020" name="UltrasonicOccupiedToUnoccupiedDelay" define="ULTRASONIC_OCCUPIED_TO_UNOCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true" min="0" max="65535"> <access op="write" role="manage"/> <otherwiseConform> <optionalConform> @@ -248,9 +228,7 @@ limitations under the License. <deprecateConform/> </otherwiseConform> </attribute> - - <attribute side="server" code="0x0021" name="UltrasonicUnoccupiedToOccupiedDelay" define="ULTRASONIC_UNOCCUPIED_TO_OCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true"> - <access op="read" role="view"/> + <attribute side="server" code="0x0021" name="UltrasonicUnoccupiedToOccupiedDelay" define="ULTRASONIC_UNOCCUPIED_TO_OCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true" min="0" max="65535"> <access op="write" role="manage"/> <otherwiseConform> <mandatoryConform> @@ -269,9 +247,7 @@ limitations under the License. <deprecateConform/> </otherwiseConform> </attribute> - <attribute side="server" code="0x0022" name="UltrasonicUnoccupiedToOccupiedThreshold" define="ULTRASONIC_UNOCCUPIED_TO_OCCUPIED_THRESHOLD" type="int8u" min="0x01" max="0xFE" writable="true" default="0x01" optional="true"> - <access op="read" role="view"/> <access op="write" role="manage"/> <otherwiseConform> <mandatoryConform> @@ -290,9 +266,7 @@ limitations under the License. <deprecateConform/> </otherwiseConform> </attribute> - - <attribute side="server" code="0x0030" name="PhysicalContactOccupiedToUnoccupiedDelay" define="PHYSICAL_CONTACT_OCCUPIED_TO_UNOCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true"> - <access op="read" role="view"/> + <attribute side="server" code="0x0030" name="PhysicalContactOccupiedToUnoccupiedDelay" define="PHYSICAL_CONTACT_OCCUPIED_TO_UNOCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true" min="0" max="65535"> <access op="write" role="manage"/> <otherwiseConform> <optionalConform> @@ -304,9 +278,7 @@ limitations under the License. <deprecateConform/> </otherwiseConform> </attribute> - - <attribute side="server" code="0x0031" name="PhysicalContactUnoccupiedToOccupiedDelay" define="PHYSICAL_CONTACT_UNOCCUPIED_TO_OCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true"> - <access op="read" role="view"/> + <attribute side="server" code="0x0031" name="PhysicalContactUnoccupiedToOccupiedDelay" define="PHYSICAL_CONTACT_UNOCCUPIED_TO_OCCUPIED_DELAY" type="int16u" writable="true" default="0x0000" optional="true" min="0" max="65535"> <access op="write" role="manage"/> <otherwiseConform> <mandatoryConform> @@ -325,9 +297,7 @@ limitations under the License. <deprecateConform/> </otherwiseConform> </attribute> - <attribute side="server" code="0x0032" name="PhysicalContactUnoccupiedToOccupiedThreshold" define="PHYSICAL_CONTACT_UNOCCUPIED_TO_OCCUPIED_THRESHOLD" type="int8u" min="0x01" max="0xFE" writable="true" default="0x01" optional="true"> - <access op="read" role="view"/> <access op="write" role="manage"/> <otherwiseConform> <mandatoryConform> @@ -346,11 +316,11 @@ limitations under the License. <deprecateConform/> </otherwiseConform> </attribute> - <event side="server" code="0x00" priority="info" name="OccupancyChanged" optional="true"> <description>If this event is supported, it SHALL be generated when the Occupancy attribute changes.</description> - <field id="0" name="Occupancy" type="OccupancyBitmap"/> + <field id="0" name="Occupancy" type="OccupancyBitmap" min="0x00" max="0x01"/> <optionalConform/> </event> + </cluster> </configurator>