| <?xml version="1.0"?> |
| <!-- |
| Copyright (c) 2021 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. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| 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> |
| <domain name="CHIP"/> |
| <cluster> |
| <domain>CHIP</domain> |
| <name>Power Source</name> |
| <code>0x002F</code> |
| <define>POWER_SOURCE_CLUSTER</define> |
| <client init="false" tick="false">true</client> |
| <server init="false" tick="false">true</server> |
| <description>This cluster is used to describe the configuration and capabilities of a physical power source that provides power to the Node.</description> |
| |
| <attribute side="server" code="0x0000" define="POWER_SOURCE_STATUS" type="PowerSourceStatus" writable="false">Status</attribute> |
| <attribute side="server" code="0x0001" define="POWER_SOURCE_ORDER" type="INT8U" min="0x00" max="0xFF" writable="false">Order</attribute> |
| <attribute side="server" code="0x0002" define="POWER_SOURCE_DESCRIPTION" type="CHAR_STRING" length="60" writable="false">Description</attribute> |
| |
| <attribute side="server" code="0x0003" define="POWER_SOURCE_WIRED_ASSESSED_INPUT_VOLTAGE" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true" isNullable="true">WiredAssessedInputVoltage</attribute> |
| <attribute side="server" code="0x0004" define="POWER_SOURCE_WIRED_ASSESSED_INPUT_FREQUENCY" type="INT16U" min="0x0000" max="0xFFFF" writable="false" optional="true" isNullable="true">WiredAssessedInputFrequency</attribute> |
| <attribute side="server" code="0x0005" define="POWER_SOURCE_WIRED_CURRENT_TYPE" type="WiredCurrentType" writable="false" optional="true">WiredCurrentType</attribute> |
| <attribute side="server" code="0x0006" define="POWER_SOURCE_WIRED_ASSESSED_CURRENT" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true" isNullable="true">WiredAssessedCurrent</attribute> |
| <attribute side="server" code="0x0007" define="POWER_SOURCE_WIRED_NOMINAL_VOLTAGE" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true">WiredNominalVoltage</attribute> |
| <attribute side="server" code="0x0008" define="POWER_SOURCE_WIRED_MAXIMUM_CURRENT" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true">WiredMaximumCurrent</attribute> |
| <attribute side="server" code="0x0009" define="POWER_SOURCE_WIRED_PRESENT" type="BOOLEAN" writable="false" optional="true">WiredPresent</attribute> |
| <attribute side="server" code="0x000A" define="POWER_SOURCE_ACTIVE_WIRED_FAULTS" type="ARRAY" entryType="WiredFault" length="8" writable="false" optional="true">ActiveWiredFaults</attribute> |
| |
| <attribute side="server" code="0x000B" define="POWER_SOURCE_BAT_VOLTAGE" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true" isNullable="true">BatVoltage</attribute> |
| <attribute side="server" code="0x000C" define="POWER_SOURCE_BAT_PERCENT_REMAINING" type="INT8U" min="0x00" max="0xC8" writable="false" optional="true" isNullable="true">BatPercentRemaining</attribute> |
| <attribute side="server" code="0x000D" define="POWER_SOURCE_BAT_TIME_REMAINING" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true" isNullable="true">BatTimeRemaining</attribute> |
| <attribute side="server" code="0x000E" define="POWER_SOURCE_BAT_CHARGE_LEVEL" type="BatChargeLevel" writable="false" optional="true">BatChargeLevel</attribute> |
| <attribute side="server" code="0x000F" define="POWER_SOURCE_BAT_REPLACEMENT_NEEDED" type="BOOLEAN" writable="false" optional="true">BatReplacementNeeded</attribute> |
| <attribute side="server" code="0x0010" define="POWER_SOURCE_BAT_REPLACEABILITY" type="BatReplaceability" writable="false" optional="true">BatReplaceability</attribute> |
| <attribute side="server" code="0x0011" define="POWER_SOURCE_BAT_PRESENT" type="BOOLEAN" writable="false" optional="true">BatPresent</attribute> |
| <attribute side="server" code="0x0012" define="POWER_SOURCE_ACTIVE_BAT_FAULTS" type="ARRAY" entryType="BatFault" length="8" writable="false" optional="true">ActiveBatFaults</attribute> |
| <attribute side="server" code="0x0013" define="POWER_SOURCE_BAT_REPLACEMENT_DESCRIPTION" type="CHAR_STRING" length="60" writable="false" optional="true">BatReplacementDescription</attribute> |
| <attribute side="server" code="0x0014" define="POWER_SOURCE_BAT_COMMON_DESIGNATION" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true">BatCommonDesignation</attribute> |
| <attribute side="server" code="0x0015" define="POWER_SOURCE_BAT_ANSI_DESIGNATION" type="CHAR_STRING" length="20" writable="false" optional="true">BatANSIDesignation</attribute> |
| <attribute side="server" code="0x0016" define="POWER_SOURCE_BAT_IEC_DESIGNATION" type="CHAR_STRING" length="20" writable="false" optional="true">BatIECDesignation</attribute> |
| <attribute side="server" code="0x0017" define="POWER_SOURCE_BAT_APPROVED_CHEMISTRY" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true">BatApprovedChemistry</attribute> |
| <attribute side="server" code="0x0018" define="POWER_SOURCE_BAT_CAPACITY" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true">BatCapacity</attribute> |
| <attribute side="server" code="0x0019" define="POWER_SOURCE_BAT_QUANTITY" type="INT8U" min="0x00" max="0xFF" writable="false" optional="true">BatQuantity</attribute> |
| <attribute side="server" code="0x001A" define="POWER_SOURCE_BAT_CHARGE_STATE" type="BatChargeState" writable="false" optional="true">BatChargeState</attribute> |
| <attribute side="server" code="0x001B" define="POWER_SOURCE_BAT_TIME_TO_FULL_CHARGE" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true" isNullable="true">BatTimeToFullCharge</attribute> |
| <attribute side="server" code="0x001C" define="POWER_SOURCE_BAT_FUNCTIONAL_WHILE_CHARGING" type="BOOLEAN" writable="false" optional="true">BatFunctionalWhileCharging</attribute> |
| <attribute side="server" code="0x001D" define="POWER_SOURCE_BAT_CHARGING_CURRENT" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" optional="true" isNullable="true">BatChargingCurrent</attribute> |
| <attribute side="server" code="0x001E" define="POWER_SOURCE_ACTIVE_BAT_CHARGE_FAULTS" type="ARRAY" entryType="BatChargeFault" length="16" writable="false" optional="true">ActiveBatChargeFaults</attribute> |
| |
| <!-- TODO: Do events work? |
| <event code="0x0000" name="WiredFaultChange" priority="info" side="server"> |
| <description>The WiredFaultChange Event SHALL indicate a change in the set of wired faults currently detected by the Node on this wired power source.</description> |
| <field id="1" name="WiredFaultChangeType" type="WiredFaultChangeType"/> |
| </event> |
| |
| <event code="0x0001" name="BatFaultChange" priority="info" side="server"> |
| <description>The BatFaultChange Event SHALL indicate a change in the set of battery faults currently detected by the Node on this battery power source.</description> |
| <field id="1" name="BatFaultChangeType" type="BatFaultChangeType"/> |
| </event> |
| |
| <event code="0x0002" name="BatChargeFaultChange" priority="info" side="server"> |
| <description>The BatChargeFaultChange Event SHALL indicate a change in the set of charge faults currently detected by the Node on this battery power source.</description> |
| <field id="1" name="BatChargeFaultChangeType" type="BatChargeFaultChangeType"/> |
| </event> |
| --> |
| |
| </cluster> |
| |
| <bitmap name="PowerSourceFeature" type="BITMAP32"> |
| <cluster code="0x002F"/> |
| <field name="Wired" mask="0x1"/> |
| <field name="Battery" mask="0x2"/> |
| <field name="Rechargeable" mask="0x4"/> |
| <field name="Replaceable" mask="0x8"/> |
| </bitmap> |
| |
| <enum name="WiredFault" type="ENUM8"> |
| <cluster code="0x002F"/> |
| <item name="Unspecfied" value="0x00"/> |
| <item name="OverVoltage" value="0x01"/> |
| <item name="UnderVoltage" value="0x02"/> |
| </enum> |
| |
| <enum name="BatFault" type="ENUM8"> |
| <cluster code="0x002F"/> |
| <item name="Unspecfied" value="0x00"/> |
| <item name="OverTemp" value="0x01"/> |
| <item name="UnderTemp" value="0x02"/> |
| </enum> |
| |
| <enum name="BatChargeFault" type="ENUM8"> |
| <cluster code="0x002F"/> |
| <item name="Unspecfied" value="0x00"/> |
| <item name="AmbientTooHot" value="0x01"/> |
| <item name="AmbientTooCold" value="0x02"/> |
| <item name="BatteryTooHot" value="0x03"/> |
| <item name="BatteryTooCold" value="0x04"/> |
| <item name="BatteryAbsent" value="0x05"/> |
| <item name="BatteryOverVoltage" value="0x06"/> |
| <item name="BatteryUnderVoltage" value="0x07"/> |
| <item name="ChargerOverVoltage" value="0x08"/> |
| <item name="ChargerUnderVoltage" value="0x09"/> |
| <item name="SafetyTimeout" value="0x0A"/> |
| </enum> |
| |
| <enum name="PowerSourceStatus" type="ENUM8"> |
| <cluster code="0x002F"/> |
| <item name="Unspecfied" value="0x00"/> |
| <item name="Active" value="0x01"/> |
| <item name="Standby" value="0x02"/> |
| <item name="Unavailable" value="0x03"/> |
| </enum> |
| |
| <enum name="WiredCurrentType" type="ENUM8"> |
| <cluster code="0x002F"/> |
| <item name="AC" value="0x00"/> |
| <item name="DC" value="0x01"/> |
| </enum> |
| |
| <enum name="BatChargeLevel" type="ENUM8"> |
| <cluster code="0x002F"/> |
| <item name="Ok" value="0x00"/> |
| <item name="Warning" value="0x01"/> |
| <item name="Critical" value="0x02"/> |
| </enum> |
| |
| <enum name="BatReplaceability" type="ENUM8"> |
| <cluster code="0x002F"/> |
| <item name="Unspecified" value="0x00"/> |
| <item name="NotReplaceable" value="0x01"/> |
| <item name="UserReplaceable" value="0x02"/> |
| <item name="FactoryReplaceable" value="0x03"/> |
| </enum> |
| |
| <enum name="BatChargeState" type="ENUM8"> |
| <cluster code="0x002F"/> |
| <item name="Unknown" value="0x00"/> |
| <item name="IsCharging" value="0x01"/> |
| <item name="IsAtFullCharge" value="0x02"/> |
| <item name="IsNotCharging" value="0x03"/> |
| </enum> |
| |
| <struct name="WiredFaultChangeType"> |
| <cluster code="0x002F"/> |
| <item name="current" type="WiredFault" array="true" length="8"/> |
| <item name="previous" type="WiredFault" array="true" length="8"/> |
| </struct> |
| |
| <struct name="BatFaultChangeType"> |
| <cluster code="0x002F"/> |
| <item name="current" type="BatFault" array="true" length="8"/> |
| <item name="previous" type="BatFault" array="true" length="8"/> |
| </struct> |
| |
| <struct name="BatChargeFaultChangeType"> |
| <cluster code="0x002F"/> |
| <item name="current" type="BatChargeFault" array="true" length="16"/> |
| <item name="previous" type="BatChargeFault" array="true" length="16"/> |
| </struct> |
| |
| </configurator> |