@matter/model 0.13.0-alpha.0-20250311-3eb0af5f2 → 0.13.0-alpha.0-20250322-f085fa576
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/aspects/Quality.d.ts +45 -5
- package/dist/cjs/aspects/Quality.d.ts.map +1 -1
- package/dist/cjs/aspects/Quality.js.map +1 -1
- package/dist/cjs/elements/BaseElement.d.ts +14 -5
- package/dist/cjs/elements/BaseElement.d.ts.map +1 -1
- package/dist/cjs/elements/BaseElement.js.map +1 -1
- package/dist/cjs/elements/ValueElement.d.ts +1 -1
- package/dist/cjs/logic/DefaultValue.js +1 -1
- package/dist/cjs/logic/ModelVariantTraversal.d.ts.map +1 -1
- package/dist/cjs/logic/ModelVariantTraversal.js +18 -8
- package/dist/cjs/logic/ModelVariantTraversal.js.map +1 -1
- package/dist/cjs/logic/Scope.d.ts.map +1 -1
- package/dist/cjs/logic/Scope.js +7 -3
- package/dist/cjs/logic/Scope.js.map +1 -1
- package/dist/cjs/models/AttributeModel.d.ts +1 -0
- package/dist/cjs/models/AttributeModel.d.ts.map +1 -1
- package/dist/cjs/models/CommandModel.d.ts +1 -0
- package/dist/cjs/models/CommandModel.d.ts.map +1 -1
- package/dist/cjs/models/EventModel.d.ts +1 -0
- package/dist/cjs/models/EventModel.d.ts.map +1 -1
- package/dist/cjs/models/Model.d.ts +4 -0
- package/dist/cjs/models/Model.d.ts.map +1 -1
- package/dist/cjs/models/Model.js +1 -0
- package/dist/cjs/models/Model.js.map +1 -1
- package/dist/cjs/standard/elements/AccessControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/AccessControl.js +1 -1
- package/dist/cjs/standard/elements/AccessControl.js.map +1 -1
- package/dist/cjs/standard/elements/Actions.js +1 -1
- package/dist/cjs/standard/elements/AlarmBase.js +4 -4
- package/dist/cjs/standard/elements/ApplicationLauncher.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ApplicationLauncher.js.map +1 -1
- package/dist/cjs/standard/elements/BatteryStorageDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/BatteryStorageDT.js.map +1 -1
- package/dist/cjs/standard/elements/BridgedDeviceBasicInformation.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ColorControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ColorControl.js +0 -4
- package/dist/cjs/standard/elements/ColorControl.js.map +1 -1
- package/dist/cjs/standard/elements/ColorDimmerSwitchDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ColorTemperatureLightDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ContentAppObserver.js +1 -1
- package/dist/cjs/standard/elements/ContentLauncher.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ContentLauncher.js.map +1 -1
- package/dist/cjs/standard/elements/DeviceEnergyManagement.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DeviceEnergyManagement.js +1 -1
- package/dist/cjs/standard/elements/DeviceEnergyManagement.js.map +1 -1
- package/dist/cjs/standard/elements/DimmableLightDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DimmablePlugInUnitDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DimmerSwitchDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DoorLock.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DoorLock.js +29 -14
- package/dist/cjs/standard/elements/DoorLock.js.map +1 -1
- package/dist/cjs/standard/elements/EnergyEvse.d.ts.map +1 -1
- package/dist/cjs/standard/elements/EnergyEvse.js +1 -1
- package/dist/cjs/standard/elements/EnergyEvse.js.map +1 -1
- package/dist/cjs/standard/elements/EthernetNetworkDiagnostics.d.ts.map +1 -1
- package/dist/cjs/standard/elements/EthernetNetworkDiagnostics.js.map +1 -1
- package/dist/cjs/standard/elements/ExtendedColorLightDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/FixedLabel.d.ts.map +1 -1
- package/dist/cjs/standard/elements/FixedLabel.js +1 -1
- package/dist/cjs/standard/elements/FixedLabel.js.map +1 -1
- package/dist/cjs/standard/elements/GeneralCommissioning.d.ts.map +1 -1
- package/dist/cjs/standard/elements/GeneralCommissioning.js +7 -7
- package/dist/cjs/standard/elements/GeneralCommissioning.js.map +1 -1
- package/dist/cjs/standard/elements/GeneralDiagnostics.d.ts.map +1 -1
- package/dist/cjs/standard/elements/GeneralDiagnostics.js.map +1 -1
- package/dist/cjs/standard/elements/GroupKeyManagement.d.ts.map +1 -1
- package/dist/cjs/standard/elements/GroupKeyManagement.js +2 -3
- package/dist/cjs/standard/elements/GroupKeyManagement.js.map +1 -1
- package/dist/cjs/standard/elements/Groups.d.ts.map +1 -1
- package/dist/cjs/standard/elements/Groups.js.map +1 -1
- package/dist/cjs/standard/elements/LevelControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/LevelControl.js.map +1 -1
- package/dist/cjs/standard/elements/MediaPlayback.d.ts.map +1 -1
- package/dist/cjs/standard/elements/MediaPlayback.js +1 -1
- package/dist/cjs/standard/elements/MediaPlayback.js.map +1 -1
- package/dist/cjs/standard/elements/ModeBase.js +1 -1
- package/dist/cjs/standard/elements/MountedDimmableLoadControlDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/MountedOnOffControlDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/NetworkCommissioning.d.ts.map +1 -1
- package/dist/cjs/standard/elements/NetworkCommissioning.js +2 -2
- package/dist/cjs/standard/elements/NetworkCommissioning.js.map +1 -1
- package/dist/cjs/standard/elements/NetworkInfrastructureManagerDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/OnOff.js +1 -1
- package/dist/cjs/standard/elements/OnOffPlugInUnitDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/OperationalCredentials.d.ts.map +1 -1
- package/dist/cjs/standard/elements/OperationalCredentials.js +3 -3
- package/dist/cjs/standard/elements/OperationalCredentials.js.map +1 -1
- package/dist/cjs/standard/elements/OperationalState.js +1 -1
- package/dist/cjs/standard/elements/OtaSoftwareUpdateProvider.js +6 -6
- package/dist/cjs/standard/elements/OtaSoftwareUpdateRequestor.d.ts.map +1 -1
- package/dist/cjs/standard/elements/OtaSoftwareUpdateRequestor.js.map +1 -1
- package/dist/cjs/standard/elements/OvenCavityOperationalState.d.ts.map +1 -1
- package/dist/cjs/standard/elements/PowerSource.d.ts.map +1 -1
- package/dist/cjs/standard/elements/PowerSource.js.map +1 -1
- package/dist/cjs/standard/elements/PumpConfigurationAndControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/PumpConfigurationAndControl.js.map +1 -1
- package/dist/cjs/standard/elements/PumpDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ScenesManagement.js +3 -3
- package/dist/cjs/standard/elements/ScenesManagement.js.map +1 -1
- package/dist/cjs/standard/elements/ServiceArea.js +4 -3
- package/dist/cjs/standard/elements/ServiceArea.js.map +1 -1
- package/dist/cjs/standard/elements/SmokeCoAlarm.d.ts.map +1 -1
- package/dist/cjs/standard/elements/SmokeCoAlarm.js.map +1 -1
- package/dist/cjs/standard/elements/Switch.js +2 -2
- package/dist/cjs/standard/elements/Thermostat.d.ts.map +1 -1
- package/dist/cjs/standard/elements/Thermostat.js +13 -8
- package/dist/cjs/standard/elements/Thermostat.js.map +1 -1
- package/dist/cjs/standard/elements/ThreadNetworkDiagnostics.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ThreadNetworkDiagnostics.js.map +1 -1
- package/dist/cjs/standard/elements/TimeFormatLocalization.d.ts.map +1 -1
- package/dist/cjs/standard/elements/TimeFormatLocalization.js.map +1 -1
- package/dist/cjs/standard/elements/TimeSynchronization.d.ts.map +1 -1
- package/dist/cjs/standard/elements/TimeSynchronization.js.map +1 -1
- package/dist/cjs/standard/elements/ValveConfigurationAndControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ValveConfigurationAndControl.js.map +1 -1
- package/dist/cjs/standard/elements/WaterValveDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/WiFiNetworkManagement.d.ts.map +1 -1
- package/dist/cjs/standard/elements/WiFiNetworkManagement.js +12 -8
- package/dist/cjs/standard/elements/WiFiNetworkManagement.js.map +2 -2
- package/dist/cjs/standard/elements/WildcardPathFlagsBitmap.js +1 -1
- package/dist/cjs/standard/elements/WildcardPathFlagsBitmap.js.map +1 -1
- package/dist/cjs/standard/elements/enum16.d.ts.map +1 -1
- package/dist/cjs/standard/elements/enum8.d.ts.map +1 -1
- package/dist/cjs/standard/elements/epoch-us.js +1 -1
- package/dist/cjs/standard/elements/ipv6pre.js +1 -1
- package/dist/cjs/standard/elements/namespace.d.ts.map +1 -1
- package/dist/cjs/standard/elements/struct.js +1 -1
- package/dist/esm/aspects/Quality.d.ts +45 -5
- package/dist/esm/aspects/Quality.d.ts.map +1 -1
- package/dist/esm/aspects/Quality.js.map +1 -1
- package/dist/esm/elements/BaseElement.d.ts +14 -5
- package/dist/esm/elements/BaseElement.d.ts.map +1 -1
- package/dist/esm/elements/BaseElement.js.map +1 -1
- package/dist/esm/elements/ValueElement.d.ts +1 -1
- package/dist/esm/logic/DefaultValue.js +1 -1
- package/dist/esm/logic/ModelVariantTraversal.d.ts.map +1 -1
- package/dist/esm/logic/ModelVariantTraversal.js +18 -8
- package/dist/esm/logic/ModelVariantTraversal.js.map +1 -1
- package/dist/esm/logic/Scope.d.ts.map +1 -1
- package/dist/esm/logic/Scope.js +7 -3
- package/dist/esm/logic/Scope.js.map +1 -1
- package/dist/esm/models/AttributeModel.d.ts +1 -0
- package/dist/esm/models/AttributeModel.d.ts.map +1 -1
- package/dist/esm/models/CommandModel.d.ts +1 -0
- package/dist/esm/models/CommandModel.d.ts.map +1 -1
- package/dist/esm/models/EventModel.d.ts +1 -0
- package/dist/esm/models/EventModel.d.ts.map +1 -1
- package/dist/esm/models/Model.d.ts +4 -0
- package/dist/esm/models/Model.d.ts.map +1 -1
- package/dist/esm/models/Model.js +1 -0
- package/dist/esm/models/Model.js.map +1 -1
- package/dist/esm/standard/elements/AccessControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/AccessControl.js +1 -1
- package/dist/esm/standard/elements/AccessControl.js.map +1 -1
- package/dist/esm/standard/elements/Actions.js +1 -1
- package/dist/esm/standard/elements/AlarmBase.js +4 -4
- package/dist/esm/standard/elements/ApplicationLauncher.d.ts.map +1 -1
- package/dist/esm/standard/elements/ApplicationLauncher.js.map +1 -1
- package/dist/esm/standard/elements/BatteryStorageDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/BatteryStorageDT.js.map +1 -1
- package/dist/esm/standard/elements/BridgedDeviceBasicInformation.d.ts.map +1 -1
- package/dist/esm/standard/elements/ColorControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/ColorControl.js +0 -4
- package/dist/esm/standard/elements/ColorControl.js.map +1 -1
- package/dist/esm/standard/elements/ColorDimmerSwitchDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/ColorTemperatureLightDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/ContentAppObserver.js +1 -1
- package/dist/esm/standard/elements/ContentLauncher.d.ts.map +1 -1
- package/dist/esm/standard/elements/ContentLauncher.js.map +1 -1
- package/dist/esm/standard/elements/DeviceEnergyManagement.d.ts.map +1 -1
- package/dist/esm/standard/elements/DeviceEnergyManagement.js +1 -1
- package/dist/esm/standard/elements/DeviceEnergyManagement.js.map +1 -1
- package/dist/esm/standard/elements/DimmableLightDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/DimmablePlugInUnitDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/DimmerSwitchDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/DoorLock.d.ts.map +1 -1
- package/dist/esm/standard/elements/DoorLock.js +29 -14
- package/dist/esm/standard/elements/DoorLock.js.map +1 -1
- package/dist/esm/standard/elements/EnergyEvse.d.ts.map +1 -1
- package/dist/esm/standard/elements/EnergyEvse.js +1 -1
- package/dist/esm/standard/elements/EnergyEvse.js.map +1 -1
- package/dist/esm/standard/elements/EthernetNetworkDiagnostics.d.ts.map +1 -1
- package/dist/esm/standard/elements/EthernetNetworkDiagnostics.js.map +1 -1
- package/dist/esm/standard/elements/ExtendedColorLightDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/FixedLabel.d.ts.map +1 -1
- package/dist/esm/standard/elements/FixedLabel.js +1 -1
- package/dist/esm/standard/elements/FixedLabel.js.map +1 -1
- package/dist/esm/standard/elements/GeneralCommissioning.d.ts.map +1 -1
- package/dist/esm/standard/elements/GeneralCommissioning.js +7 -7
- package/dist/esm/standard/elements/GeneralCommissioning.js.map +1 -1
- package/dist/esm/standard/elements/GeneralDiagnostics.d.ts.map +1 -1
- package/dist/esm/standard/elements/GeneralDiagnostics.js.map +1 -1
- package/dist/esm/standard/elements/GroupKeyManagement.d.ts.map +1 -1
- package/dist/esm/standard/elements/GroupKeyManagement.js +2 -3
- package/dist/esm/standard/elements/GroupKeyManagement.js.map +1 -1
- package/dist/esm/standard/elements/Groups.d.ts.map +1 -1
- package/dist/esm/standard/elements/Groups.js.map +1 -1
- package/dist/esm/standard/elements/LevelControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/LevelControl.js.map +1 -1
- package/dist/esm/standard/elements/MediaPlayback.d.ts.map +1 -1
- package/dist/esm/standard/elements/MediaPlayback.js +1 -1
- package/dist/esm/standard/elements/MediaPlayback.js.map +1 -1
- package/dist/esm/standard/elements/ModeBase.js +1 -1
- package/dist/esm/standard/elements/MountedDimmableLoadControlDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/MountedOnOffControlDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/NetworkCommissioning.d.ts.map +1 -1
- package/dist/esm/standard/elements/NetworkCommissioning.js +2 -2
- package/dist/esm/standard/elements/NetworkCommissioning.js.map +1 -1
- package/dist/esm/standard/elements/NetworkInfrastructureManagerDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/OnOff.js +1 -1
- package/dist/esm/standard/elements/OnOffPlugInUnitDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/OperationalCredentials.d.ts.map +1 -1
- package/dist/esm/standard/elements/OperationalCredentials.js +3 -3
- package/dist/esm/standard/elements/OperationalCredentials.js.map +1 -1
- package/dist/esm/standard/elements/OperationalState.js +1 -1
- package/dist/esm/standard/elements/OtaSoftwareUpdateProvider.js +6 -6
- package/dist/esm/standard/elements/OtaSoftwareUpdateRequestor.d.ts.map +1 -1
- package/dist/esm/standard/elements/OtaSoftwareUpdateRequestor.js.map +1 -1
- package/dist/esm/standard/elements/OvenCavityOperationalState.d.ts.map +1 -1
- package/dist/esm/standard/elements/PowerSource.d.ts.map +1 -1
- package/dist/esm/standard/elements/PowerSource.js.map +1 -1
- package/dist/esm/standard/elements/PumpConfigurationAndControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/PumpConfigurationAndControl.js.map +1 -1
- package/dist/esm/standard/elements/PumpDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.d.ts.map +1 -1
- package/dist/esm/standard/elements/ScenesManagement.js +3 -3
- package/dist/esm/standard/elements/ScenesManagement.js.map +1 -1
- package/dist/esm/standard/elements/ServiceArea.js +4 -3
- package/dist/esm/standard/elements/ServiceArea.js.map +1 -1
- package/dist/esm/standard/elements/SmokeCoAlarm.d.ts.map +1 -1
- package/dist/esm/standard/elements/SmokeCoAlarm.js.map +1 -1
- package/dist/esm/standard/elements/Switch.js +2 -2
- package/dist/esm/standard/elements/Thermostat.d.ts.map +1 -1
- package/dist/esm/standard/elements/Thermostat.js +13 -8
- package/dist/esm/standard/elements/Thermostat.js.map +1 -1
- package/dist/esm/standard/elements/ThreadNetworkDiagnostics.d.ts.map +1 -1
- package/dist/esm/standard/elements/ThreadNetworkDiagnostics.js.map +1 -1
- package/dist/esm/standard/elements/TimeFormatLocalization.d.ts.map +1 -1
- package/dist/esm/standard/elements/TimeFormatLocalization.js.map +1 -1
- package/dist/esm/standard/elements/TimeSynchronization.d.ts.map +1 -1
- package/dist/esm/standard/elements/TimeSynchronization.js.map +1 -1
- package/dist/esm/standard/elements/ValveConfigurationAndControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/ValveConfigurationAndControl.js.map +1 -1
- package/dist/esm/standard/elements/WaterValveDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/WiFiNetworkManagement.d.ts.map +1 -1
- package/dist/esm/standard/elements/WiFiNetworkManagement.js +14 -9
- package/dist/esm/standard/elements/WiFiNetworkManagement.js.map +1 -1
- package/dist/esm/standard/elements/WildcardPathFlagsBitmap.js +1 -1
- package/dist/esm/standard/elements/WildcardPathFlagsBitmap.js.map +1 -1
- package/dist/esm/standard/elements/enum16.d.ts.map +1 -1
- package/dist/esm/standard/elements/enum8.d.ts.map +1 -1
- package/dist/esm/standard/elements/epoch-us.js +1 -1
- package/dist/esm/standard/elements/ipv6pre.js +1 -1
- package/dist/esm/standard/elements/namespace.d.ts.map +1 -1
- package/dist/esm/standard/elements/struct.js +1 -1
- package/package.json +4 -4
- package/src/aspects/Quality.ts +56 -5
- package/src/elements/BaseElement.ts +16 -5
- package/src/elements/ValueElement.ts +1 -1
- package/src/logic/DefaultValue.ts +1 -1
- package/src/logic/ModelVariantTraversal.ts +22 -8
- package/src/logic/Scope.ts +7 -3
- package/src/models/Model.ts +4 -0
- package/src/standard/elements/AcceptedCommandList.ts +2 -2
- package/src/standard/elements/AccessControl.ts +71 -73
- package/src/standard/elements/AccountLogin.ts +11 -11
- package/src/standard/elements/Actions.ts +36 -36
- package/src/standard/elements/AdministratorCommissioning.ts +21 -21
- package/src/standard/elements/AggregatorDT.ts +2 -2
- package/src/standard/elements/AlarmBase.ts +18 -18
- package/src/standard/elements/ApplicationBasic.ts +7 -7
- package/src/standard/elements/ApplicationLauncher.ts +6 -7
- package/src/standard/elements/AudioOutput.ts +4 -4
- package/src/standard/elements/BallastConfiguration.ts +6 -6
- package/src/standard/elements/BasicInformation.ts +43 -43
- package/src/standard/elements/BasicVideoPlayerDT.ts +3 -3
- package/src/standard/elements/BatteryStorageDT.ts +2 -5
- package/src/standard/elements/Binding.ts +3 -3
- package/src/standard/elements/BooleanStateConfiguration.ts +4 -4
- package/src/standard/elements/BridgedDeviceBasicInformation.ts +22 -22
- package/src/standard/elements/CastingVideoClientDT.ts +2 -2
- package/src/standard/elements/Channel.ts +32 -32
- package/src/standard/elements/ColorControl.ts +54 -55
- package/src/standard/elements/ColorDimmerSwitchDT.ts +1 -1
- package/src/standard/elements/ColorTemperatureLightDT.ts +1 -1
- package/src/standard/elements/CommissionerControl.ts +15 -15
- package/src/standard/elements/ContentAppObserver.ts +7 -7
- package/src/standard/elements/ContentControl.ts +39 -39
- package/src/standard/elements/ContentLauncher.ts +38 -40
- package/src/standard/elements/DeviceEnergyManagement.ts +108 -111
- package/src/standard/elements/DeviceEnergyManagementMode.ts +4 -4
- package/src/standard/elements/DiagnosticLogs.ts +24 -24
- package/src/standard/elements/DimmableLightDT.ts +1 -1
- package/src/standard/elements/DimmablePlugInUnitDT.ts +4 -4
- package/src/standard/elements/DimmerSwitchDT.ts +3 -3
- package/src/standard/elements/DishwasherMode.ts +2 -2
- package/src/standard/elements/DoorLock.ts +164 -154
- package/src/standard/elements/DoorLockDT.ts +2 -2
- package/src/standard/elements/EcosystemInformation.ts +24 -24
- package/src/standard/elements/ElectricalEnergyMeasurement.ts +18 -18
- package/src/standard/elements/ElectricalMeasurementNS.ts +2 -2
- package/src/standard/elements/ElectricalPowerMeasurement.ts +18 -18
- package/src/standard/elements/EnergyEvse.ts +58 -64
- package/src/standard/elements/EnergyEvseMode.ts +8 -8
- package/src/standard/elements/EthernetNetworkDiagnostics.ts +14 -15
- package/src/standard/elements/ExtendedColorLightDT.ts +3 -3
- package/src/standard/elements/ExtractorHoodDT.ts +2 -2
- package/src/standard/elements/FanControl.ts +14 -14
- package/src/standard/elements/FanDT.ts +2 -2
- package/src/standard/elements/FeatureMap.ts +5 -5
- package/src/standard/elements/FixedLabel.ts +4 -5
- package/src/standard/elements/GeneralCommissioning.ts +79 -80
- package/src/standard/elements/GeneralDiagnostics.ts +17 -18
- package/src/standard/elements/GeneratedCommandList.ts +2 -2
- package/src/standard/elements/GroupKeyManagement.ts +29 -30
- package/src/standard/elements/Groups.ts +13 -14
- package/src/standard/elements/IcdManagement.ts +32 -32
- package/src/standard/elements/Identify.ts +7 -7
- package/src/standard/elements/JointFabricDatastoreCluster.ts +12 -12
- package/src/standard/elements/KeypadInput.ts +9 -9
- package/src/standard/elements/LaundryWasherControls.ts +2 -2
- package/src/standard/elements/LaundryWasherMode.ts +2 -2
- package/src/standard/elements/LevelControl.ts +23 -24
- package/src/standard/elements/LightSensorDT.ts +2 -2
- package/src/standard/elements/LocalizationConfiguration.ts +2 -2
- package/src/standard/elements/MeasurementAccuracyRangeStruct.ts +10 -10
- package/src/standard/elements/MeasurementAccuracyStruct.ts +4 -4
- package/src/standard/elements/MediaPlayback.ts +42 -44
- package/src/standard/elements/Messages.ts +18 -18
- package/src/standard/elements/MicrowaveOvenControl.ts +16 -16
- package/src/standard/elements/ModeBase.ts +21 -21
- package/src/standard/elements/ModeSelect.ts +12 -12
- package/src/standard/elements/MountedDimmableLoadControlDT.ts +4 -4
- package/src/standard/elements/MountedOnOffControlDT.ts +1 -1
- package/src/standard/elements/NetworkCommissioning.ts +68 -69
- package/src/standard/elements/NetworkInfrastructureManagerDT.ts +1 -1
- package/src/standard/elements/OccupancySensing.ts +23 -23
- package/src/standard/elements/OnOff.ts +17 -17
- package/src/standard/elements/OnOffPlugInUnitDT.ts +1 -1
- package/src/standard/elements/OnOffSensorDT.ts +2 -2
- package/src/standard/elements/OperationalCredentials.ts +86 -88
- package/src/standard/elements/OperationalState.ts +31 -31
- package/src/standard/elements/OtaSoftwareUpdateProvider.ts +48 -48
- package/src/standard/elements/OtaSoftwareUpdateRequestor.ts +31 -32
- package/src/standard/elements/OvenCavityOperationalState.ts +1 -1
- package/src/standard/elements/OvenMode.ts +2 -2
- package/src/standard/elements/PositionNS.ts +2 -2
- package/src/standard/elements/PowerSource.ts +37 -38
- package/src/standard/elements/PowerSourceConfiguration.ts +4 -4
- package/src/standard/elements/PowerSourceNS.ts +2 -2
- package/src/standard/elements/ProxyConfiguration.ts +2 -2
- package/src/standard/elements/ProxyDiscovery.ts +5 -5
- package/src/standard/elements/PumpConfigurationAndControl.ts +27 -28
- package/src/standard/elements/PumpDT.ts +1 -1
- package/src/standard/elements/RefrigeratorAlarm.ts +2 -2
- package/src/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.ts +1 -1
- package/src/standard/elements/RefrigeratorNS.ts +2 -2
- package/src/standard/elements/RelativePositionNS.ts +4 -4
- package/src/standard/elements/ResourceMonitoring.ts +4 -4
- package/src/standard/elements/RoomAirConditionerDT.ts +2 -2
- package/src/standard/elements/RootNodeDT.ts +3 -3
- package/src/standard/elements/RvcOperationalState.ts +4 -4
- package/src/standard/elements/RvcRunMode.ts +6 -6
- package/src/standard/elements/ScenesManagement.ts +34 -34
- package/src/standard/elements/SecondaryNetworkInterfaceDT.ts +2 -2
- package/src/standard/elements/ServiceArea.ts +69 -69
- package/src/standard/elements/SmokeCoAlarm.ts +19 -20
- package/src/standard/elements/SmokeCoAlarmDT.ts +2 -2
- package/src/standard/elements/SoftwareDiagnostics.ts +13 -13
- package/src/standard/elements/SpeakerDT.ts +2 -2
- package/src/standard/elements/Switch.ts +21 -21
- package/src/standard/elements/TemperatureControl.ts +5 -5
- package/src/standard/elements/TemperatureMeasurement.ts +2 -2
- package/src/standard/elements/Thermostat.ts +124 -120
- package/src/standard/elements/ThermostatUserInterfaceConfiguration.ts +6 -6
- package/src/standard/elements/ThreadBorderRouterManagement.ts +10 -10
- package/src/standard/elements/ThreadNetworkDiagnostics.ts +50 -51
- package/src/standard/elements/ThreadNetworkDirectory.ts +11 -11
- package/src/standard/elements/TimeFormatLocalization.ts +6 -7
- package/src/standard/elements/TimeSynchronization.ts +27 -28
- package/src/standard/elements/UnitLocalization.ts +2 -2
- package/src/standard/elements/ValveConfigurationAndControl.ts +9 -10
- package/src/standard/elements/WakeOnLan.ts +11 -11
- package/src/standard/elements/WaterHeaterManagement.ts +17 -17
- package/src/standard/elements/WaterHeaterMode.ts +4 -4
- package/src/standard/elements/WaterValveDT.ts +1 -1
- package/src/standard/elements/WiFiNetworkDiagnostics.ts +13 -13
- package/src/standard/elements/WiFiNetworkManagement.ts +21 -16
- package/src/standard/elements/WildcardPathFlagsBitmap.ts +1 -1
- package/src/standard/elements/WindowCovering.ts +19 -19
- package/src/standard/elements/attrib-id.ts +2 -2
- package/src/standard/elements/enum16.ts +1 -1
- package/src/standard/elements/enum8.ts +1 -1
- package/src/standard/elements/epoch-us.ts +9 -9
- package/src/standard/elements/hwadr.ts +2 -2
- package/src/standard/elements/ipv6pre.ts +3 -3
- package/src/standard/elements/locationdesc.ts +10 -10
- package/src/standard/elements/namespace.ts +1 -1
- package/src/standard/elements/semtag.ts +5 -5
- package/src/standard/elements/string.ts +2 -2
- package/src/standard/elements/struct.ts +9 -9
|
@@ -29,9 +29,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
29
29
|
"\n" +
|
|
30
30
|
"Figure 17. Example of the how an EMS is a client of multiple ESAs Device Energy Management clusters." +
|
|
31
31
|
"\n" +
|
|
32
|
-
"This cluster is intended to be generic in nature and could apply to any electrical load or " +
|
|
33
|
-
"
|
|
34
|
-
"
|
|
32
|
+
"This cluster is intended to be generic in nature and could apply to any electrical load or generator " +
|
|
33
|
+
"(e.g. a Battery Electric Storage System - BESS, solar PV inverter, EVSE, HVAC, heat pump, hot water " +
|
|
34
|
+
"heater, white goods appliances etc)." +
|
|
35
35
|
"\n" +
|
|
36
36
|
"It consists of the following areas which shall be supported by all devices implementing this " +
|
|
37
37
|
"cluster:" +
|
|
@@ -52,9 +52,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
52
52
|
"optimizing the home energy to minimize cost, reduce CO2 impact, maximize self-consumption of solar " +
|
|
53
53
|
"PV and provide Demand Side Response (DSR) Grid services." +
|
|
54
54
|
"\n" +
|
|
55
|
-
"It is likely that the ESA may also use the Pricing Cluster to obtain incentive signals such as " +
|
|
56
|
-
"
|
|
57
|
-
"
|
|
55
|
+
"It is likely that the ESA may also use the Pricing Cluster to obtain incentive signals such as 'grid " +
|
|
56
|
+
"carbon intensity', 'time of use' or 'type of use' tariffs to schedule its operation to run at the " +
|
|
57
|
+
"cheapest and greenest times." +
|
|
58
58
|
"\n" +
|
|
59
59
|
"Figure 18. Example of the how an HVAC may use multiple clusters" +
|
|
60
60
|
"\n" +
|
|
@@ -91,8 +91,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
91
91
|
"EVSE Example: An EMS may therefore be able to turn on the EVSE (if the vehicle is plugged in) and " +
|
|
92
92
|
"can start charging the vehicle, and periodically modify the charging power depending on PV " +
|
|
93
93
|
"generation and other home loads, so as to minimize import and export to the grid. An EMS may also " +
|
|
94
|
-
"use this feature to control the discharging (and re-charging) of the vehicle if the EVSE and " +
|
|
95
|
-
"
|
|
94
|
+
"use this feature to control the discharging (and re-charging) of the vehicle if the EVSE and vehicle " +
|
|
95
|
+
"support the V2X feature of the EVSE cluster of the associated EVSE device.",
|
|
96
96
|
|
|
97
97
|
xref: { document: "cluster", section: "9.2.4.1" }
|
|
98
98
|
}),
|
|
@@ -101,9 +101,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
101
101
|
name: "PFR", conformance: "[!PA].a, STA | PAU | FA | CON, O", constraint: "1",
|
|
102
102
|
description: "PowerForecastReporting",
|
|
103
103
|
|
|
104
|
-
details: "For Energy Smart Appliances (ESA) the definition of being 'smart' implies that they can report " +
|
|
105
|
-
"
|
|
106
|
-
"
|
|
104
|
+
details: "For Energy Smart Appliances (ESA) the definition of being 'smart' implies that they can report their " +
|
|
105
|
+
"indicative forecast power demands or generation, to a greater or lesser extent. For some ESAs this " +
|
|
106
|
+
"is highly predictable (in terms of both power and time), in other appliances this is more " +
|
|
107
107
|
"challenging and only a basic level of forecast is possible." +
|
|
108
108
|
"\n" +
|
|
109
109
|
"Forecasts are defined from a current time, using a slot format, where the slot is akin to a " +
|
|
@@ -153,12 +153,11 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
153
153
|
"An external observing EMS may have access to real-time meter readings, and could learn the typical " +
|
|
154
154
|
"power consumption based on the advertised internal state of the ESA." +
|
|
155
155
|
"\n" +
|
|
156
|
-
"To enable this capability, the ESA shall report its internal operational state using an " +
|
|
157
|
-
"
|
|
156
|
+
"To enable this capability, the ESA shall report its internal operational state using an manufacturer " +
|
|
157
|
+
"specific value." +
|
|
158
158
|
"\n" +
|
|
159
|
-
"Once the EMS has built a model of the state vs observed power consumption, it may request a " +
|
|
160
|
-
"
|
|
161
|
-
"alternative times.",
|
|
159
|
+
"Once the EMS has built a model of the state vs observed power consumption, it may request a forecast " +
|
|
160
|
+
"adjustment for particular times of the day, encouraging the ESA to use power at alternative times.",
|
|
162
161
|
|
|
163
162
|
xref: { document: "cluster", section: "9.2.4.3" }
|
|
164
163
|
}),
|
|
@@ -197,8 +196,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
197
196
|
"\n" +
|
|
198
197
|
"Washing machine example: A Washing Machine is in operation, and starting its water heating step." +
|
|
199
198
|
"\n" +
|
|
200
|
-
"However, the EMS becomes aware from the smart meter that the total home load on the grid is close " +
|
|
201
|
-
"
|
|
199
|
+
"However, the EMS becomes aware from the smart meter that the total home load on the grid is close to " +
|
|
200
|
+
"exceeding its allowed total grid load." +
|
|
202
201
|
"\n" +
|
|
203
202
|
"The EMS first requests the Forecast data from each of its registered ESAs. It determines that the " +
|
|
204
203
|
"washing machine has a power profile suggesting its current step in the wash cycle is using power to " +
|
|
@@ -207,8 +206,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
207
206
|
"The EMS can then reduce the grid load by asking the washing machine to pause the wash cycle for a " +
|
|
208
207
|
"short duration." +
|
|
209
208
|
"\n" +
|
|
210
|
-
"It does this by sending a PauseRequest to the washing machine to request pausing the current step " +
|
|
211
|
-
"
|
|
209
|
+
"It does this by sending a PauseRequest to the washing machine to request pausing the current step of " +
|
|
210
|
+
"the forecast power usage for a period to allow other home loads to finish before resuming the " +
|
|
212
211
|
"washing cycle.",
|
|
213
212
|
|
|
214
213
|
xref: { document: "cluster", section: "9.2.4.5" }
|
|
@@ -217,9 +216,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
217
216
|
Field({
|
|
218
217
|
name: "FA", conformance: "O", constraint: "5", description: "ForecastAdjustment",
|
|
219
218
|
|
|
220
|
-
details: "ESAs which support the Forecast adjustment feature, allow an EMS to recommend a change to the " +
|
|
221
|
-
"
|
|
222
|
-
"
|
|
219
|
+
details: "ESAs which support the Forecast adjustment feature, allow an EMS to recommend a change to the start, " +
|
|
220
|
+
"duration and/or power level limits of the steps of the power profile that the ESA has previously " +
|
|
221
|
+
"suggested it would use." +
|
|
223
222
|
"\n" +
|
|
224
223
|
"Heat pump and Solar PV example: A heat pump may have the ability to heat hot water as well as " +
|
|
225
224
|
"heating the home. The heat pump scheduling system may have determined that the home will be " +
|
|
@@ -232,15 +231,15 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
232
231
|
"\n" +
|
|
233
232
|
"The EMS first requests the Forecast data from each of its registered ESAs. It determines that the " +
|
|
234
233
|
"heat pump has a power profile suggesting it needs to heat hot water around 6pm. The solar PV " +
|
|
235
|
-
"inverter has forecast that it will generate 3.6kW of power during the middle of the day and into " +
|
|
236
|
-
"
|
|
234
|
+
"inverter has forecast that it will generate 3.6kW of power during the middle of the day and into the " +
|
|
235
|
+
"afternoon before the sun goes down." +
|
|
237
236
|
"\n" +
|
|
238
|
-
"The EMS can then optimize the home considering other non-ESA loads and can ask the heat pump to " +
|
|
239
|
-
"
|
|
237
|
+
"The EMS can then optimize the home considering other non-ESA loads and can ask the heat pump to heat " +
|
|
238
|
+
"the hot water around 3pm when it has forecast that excess solar power will be available." +
|
|
240
239
|
"\n" +
|
|
241
|
-
"It does this by sending a ModifyForecastRequest to the heat pump and asks the heat pump to expect " +
|
|
242
|
-
"
|
|
243
|
-
"
|
|
240
|
+
"It does this by sending a ModifyForecastRequest to the heat pump and asks the heat pump to expect to " +
|
|
241
|
+
"run at a lower power consumption (within the solar excess power) which requires the heat pump to run " +
|
|
242
|
+
"for a longer duration to achieve its required energy demand.",
|
|
244
243
|
|
|
245
244
|
xref: { document: "cluster", section: "9.2.4.6" }
|
|
246
245
|
}),
|
|
@@ -248,15 +247,15 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
248
247
|
Field({
|
|
249
248
|
name: "CON", conformance: "O", constraint: "6", description: "ConstraintBasedAdjustment",
|
|
250
249
|
|
|
251
|
-
details: "ESAs which support the Constraint-Based Adjustment feature allow an EMS to inform the ESA of " +
|
|
252
|
-
"
|
|
253
|
-
"
|
|
250
|
+
details: "ESAs which support the Constraint-Based Adjustment feature allow an EMS to inform the ESA of periods " +
|
|
251
|
+
"during which power usage should be modified (for example when the EMS has been made aware that the " +
|
|
252
|
+
"grid supplier has requested reduced energy usage due to overall peak grid demand)" +
|
|
254
253
|
"\n" +
|
|
255
254
|
"and may cause the ESA to modify the intended power profile has previously suggested it would use." +
|
|
256
255
|
"\n" +
|
|
257
256
|
"EVSE example: An EVSE scheduling system may have determined that the vehicle would be charged " +
|
|
258
|
-
"starting at a moderate rate at 1am, so that it has enough charge by the time it is needed later " +
|
|
259
|
-
"
|
|
257
|
+
"starting at a moderate rate at 1am, so that it has enough charge by the time it is needed later that " +
|
|
258
|
+
"morning." +
|
|
260
259
|
"\n" +
|
|
261
260
|
"However, the DSR service provider has informed the EMS that due to high forecast winds it is now " +
|
|
262
261
|
"forecast that there will be very cheap energy available from wind generation between 2am and 3am." +
|
|
@@ -281,13 +280,12 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
281
280
|
|
|
282
281
|
details: "Indicates the type of ESA." +
|
|
283
282
|
"\n" +
|
|
284
|
-
"This attribute enables an EMS to understand some of the basic properties about how the energy may " +
|
|
285
|
-
"
|
|
283
|
+
"This attribute enables an EMS to understand some of the basic properties about how the energy may be " +
|
|
284
|
+
"consumed, generated, and stored by the ESA." +
|
|
286
285
|
"\n" +
|
|
287
|
-
"For example, the heat energy converted by a heat pump will naturally be lost through the building " +
|
|
288
|
-
"
|
|
289
|
-
"
|
|
290
|
-
"durations." +
|
|
286
|
+
"For example, the heat energy converted by a heat pump will naturally be lost through the building to " +
|
|
287
|
+
"the outdoor environment relatively quickly, compared to storing heat in a well-insulated hot water " +
|
|
288
|
+
"tank. Similarly, battery storage and EVs can store electrical energy for much longer durations." +
|
|
291
289
|
"\n" +
|
|
292
290
|
"This attribute can also help the EMS display information to a user and to make basic assumptions " +
|
|
293
291
|
"about typical best use of energy. For example, an EVSE may not always have an EV plugged in, so " +
|
|
@@ -310,10 +308,10 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
310
308
|
"power to the consumers may need to present a positive solar production value to the consumer." +
|
|
311
309
|
"\n" +
|
|
312
310
|
"For example, a home battery storage system (BESS) which needs to charge the battery and then " +
|
|
313
|
-
"discharge to the home loads, would be classed as a generator. These types of devices shall have " +
|
|
314
|
-
"
|
|
315
|
-
"
|
|
316
|
-
"
|
|
311
|
+
"discharge to the home loads, would be classed as a generator. These types of devices shall have this " +
|
|
312
|
+
"field set to true. When generating its forecast or advertising its PowerAdjustmentCapability, the " +
|
|
313
|
+
"power values shall be negative to indicate discharging to the loads in the home, and positive to " +
|
|
314
|
+
"indicate when it is charging its battery." +
|
|
317
315
|
"\n" +
|
|
318
316
|
"GRID meter = Σ LoadPowers + Σ GeneratorPowers" +
|
|
319
317
|
"\n" +
|
|
@@ -349,8 +347,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
349
347
|
"NOTE" +
|
|
350
348
|
"\n" +
|
|
351
349
|
"For Generator ESAs that can discharge an internal battery (such as a battery storage inverter) to " +
|
|
352
|
-
"loads in the home, the AbsMinPower will be a negative number representing the maximum power that " +
|
|
353
|
-
"
|
|
350
|
+
"loads in the home, the AbsMinPower will be a negative number representing the maximum power that the " +
|
|
351
|
+
"ESA can discharge its internal battery.",
|
|
354
352
|
|
|
355
353
|
xref: { document: "cluster", section: "9.2.8.4" }
|
|
356
354
|
}),
|
|
@@ -366,8 +364,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
366
364
|
"at which the ESA can charge its internal battery." +
|
|
367
365
|
"\n" +
|
|
368
366
|
"For example, a battery storage inverter that can charge its battery at a maximum power of 2000W and " +
|
|
369
|
-
"can discharge the battery at a maximum power of 3000W, would have a AbsMinPower: -3000, " +
|
|
370
|
-
"
|
|
367
|
+
"can discharge the battery at a maximum power of 3000W, would have a AbsMinPower: -3000, AbsMaxPower: " +
|
|
368
|
+
"2000W.",
|
|
371
369
|
|
|
372
370
|
xref: { document: "cluster", section: "9.2.8.5" }
|
|
373
371
|
}),
|
|
@@ -400,8 +398,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
400
398
|
details: "This attribute allows an ESA to share its intended forecast with a client (such as an Energy " +
|
|
401
399
|
"Management System)." +
|
|
402
400
|
"\n" +
|
|
403
|
-
"A null value indicates that there is no forecast currently available (for example, a program has " +
|
|
404
|
-
"
|
|
401
|
+
"A null value indicates that there is no forecast currently available (for example, a program has not " +
|
|
402
|
+
"yet been selected by the user)." +
|
|
405
403
|
"\n" +
|
|
406
404
|
"A server may reset this value attribute to null on a reboot, and it does not need to persist any " +
|
|
407
405
|
"previous forecasts." +
|
|
@@ -414,8 +412,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
414
412
|
"\n" +
|
|
415
413
|
" • As a result of a command which causes the forecast to be updated, or" +
|
|
416
414
|
"\n" +
|
|
417
|
-
" • As a result of a change in the opt-out status which in turn may cause the ESA to recalculate " +
|
|
418
|
-
"
|
|
415
|
+
" • As a result of a change in the opt-out status which in turn may cause the ESA to recalculate its " +
|
|
416
|
+
" forecast.",
|
|
419
417
|
|
|
420
418
|
xref: { document: "cluster", section: "9.2.8.7" }
|
|
421
419
|
}),
|
|
@@ -424,8 +422,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
424
422
|
name: "OptOutState", id: 0x7, type: "OptOutStateEnum", access: "R V",
|
|
425
423
|
conformance: "PA | STA | PAU | FA | CON", constraint: "desc", default: 0,
|
|
426
424
|
|
|
427
|
-
details: "Indicates the current Opt-Out state of the ESA. The ESA may have a local user interface to allow " +
|
|
428
|
-
"
|
|
425
|
+
details: "Indicates the current Opt-Out state of the ESA. The ESA may have a local user interface to allow the " +
|
|
426
|
+
"user to control this OptOutState. An EMS may subscribe to the OptOutState to get notified about " +
|
|
429
427
|
"changes in operational state." +
|
|
430
428
|
"\n" +
|
|
431
429
|
"If the ESA is in the LocalOptOut or OptOut states, so it cannot be controlled by an EMS for local " +
|
|
@@ -435,17 +433,17 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
435
433
|
"AdjustmentCauseEnum value GridOptimization." +
|
|
436
434
|
"\n" +
|
|
437
435
|
"If the user changes the Opt-Out state of the ESA which is currently operating with a Forecast that " +
|
|
438
|
-
"is due to a previous StartTimeAdjustRequest, ModifyForecastRequest or " +
|
|
439
|
-
"
|
|
436
|
+
"is due to a previous StartTimeAdjustRequest, ModifyForecastRequest or RequestConstraintBasedForecast " +
|
|
437
|
+
"command that would now not be permitted due to the new Opt-out state" +
|
|
440
438
|
"\n" +
|
|
441
439
|
"attribute ForecastUpdateReason field currently contains a reason which is now opted out), the ESA " +
|
|
442
440
|
"shall behave as if it had received a CancelRequest command." +
|
|
443
441
|
"\n" +
|
|
444
442
|
"If the user changes the Opt-Out state of the ESA which currently has the ESAStateEnum with value " +
|
|
445
|
-
"Paused due to a previous PauseRequest command that would now not be permitted due to the new " +
|
|
446
|
-
"
|
|
447
|
-
"ForecastUpdateReason field currently contains a reason which is now opted out), the ESA shall " +
|
|
448
|
-
"
|
|
443
|
+
"Paused due to a previous PauseRequest command that would now not be permitted due to the new Opt-out " +
|
|
444
|
+
"state, and the ESA supports the PFR or SFR features (i.e. the Forecast attribute " +
|
|
445
|
+
"ForecastUpdateReason field currently contains a reason which is now opted out), the ESA shall behave " +
|
|
446
|
+
"as if it had received a ResumeRequest command." +
|
|
449
447
|
"\n" +
|
|
450
448
|
"If the user changes the Opt-Out state of the ESA which currently has the ESAStateEnum with value " +
|
|
451
449
|
"PowerAdjustActive due to a previous PowerAdjustRequest command that would now not be permitted due " +
|
|
@@ -567,14 +565,14 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
567
565
|
Field({
|
|
568
566
|
name: "RequestedStartTime", id: 0x0, type: "epoch-s", conformance: "M", constraint: "desc",
|
|
569
567
|
|
|
570
|
-
details: "This field shall indicate the requested start time, in UTC, that the client would like the " +
|
|
571
|
-
"
|
|
568
|
+
details: "This field shall indicate the requested start time, in UTC, that the client would like the appliance " +
|
|
569
|
+
"to shift its Forecast to. This value MUST be in the future." +
|
|
572
570
|
"\n" +
|
|
573
571
|
"A client can estimate the entire Forecast sequence duration by computing the EndTime - StartTime " +
|
|
574
572
|
"fields from the Forecast attribute, and therefore avoid scheduling the start time too late." +
|
|
575
573
|
"\n" +
|
|
576
|
-
"This value shall be after the EarliestStartTime in the Forecast attribute. The new EndTime, that " +
|
|
577
|
-
"
|
|
574
|
+
"This value shall be after the EarliestStartTime in the Forecast attribute. The new EndTime, that can " +
|
|
575
|
+
"be computed from the RequestedStartTime and the Forecast sequence duration, shall be before the " +
|
|
578
576
|
"LatestEndTime.",
|
|
579
577
|
|
|
580
578
|
xref: { document: "cluster", section: "9.2.9.3.1" }
|
|
@@ -597,9 +595,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
597
595
|
|
|
598
596
|
Field({
|
|
599
597
|
name: "Duration", id: 0x0, type: "elapsed-s", conformance: "M", constraint: "desc",
|
|
600
|
-
details: "This field shall indicate the duration that the ESA shall be paused for. This value shall be " +
|
|
601
|
-
"
|
|
602
|
-
"
|
|
598
|
+
details: "This field shall indicate the duration that the ESA shall be paused for. This value shall be between " +
|
|
599
|
+
"the MinPauseDuration and MaxPauseDuration indicated in the ActiveSlotNumber index in the Slots list " +
|
|
600
|
+
"in the Forecast.",
|
|
603
601
|
xref: { document: "cluster", section: "9.2.9.4.1" }
|
|
604
602
|
}),
|
|
605
603
|
|
|
@@ -665,9 +663,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
665
663
|
"asked to constrain its operation within. These requests shall be in the future, shall be in " +
|
|
666
664
|
"chronological order, starting with the earliest start time, and shall NOT overlap in time." +
|
|
667
665
|
"\n" +
|
|
668
|
-
"For example, a grid event which requires devices to reduce power (turn down) between 4pm and 6pm " +
|
|
669
|
-
"
|
|
670
|
-
"
|
|
666
|
+
"For example, a grid event which requires devices to reduce power (turn down) between 4pm and 6pm and " +
|
|
667
|
+
"due to excess power on the grid overnight, may request ESAs to increase their power demand (turn up) " +
|
|
668
|
+
"between midnight and 6am." +
|
|
671
669
|
"\n" +
|
|
672
670
|
"If this ESA supports PFR this would have 2 entries in the list as follows:" +
|
|
673
671
|
"\n" +
|
|
@@ -715,8 +713,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
715
713
|
details: "This value shall indicate that the cost is related to some abstract sense of comfort expressed by " +
|
|
716
714
|
"the consumer; a higher value indicates more discomfort. For example, a consumer may be more " +
|
|
717
715
|
"comfortable knowing that their EV is charged earlier in the day in case there is a sudden need to " +
|
|
718
|
-
"depart and drive to the hospital. Or the consumer may feel inconvenienced by the fact that they " +
|
|
719
|
-
"
|
|
716
|
+
"depart and drive to the hospital. Or the consumer may feel inconvenienced by the fact that they need " +
|
|
717
|
+
"to wait for the washing machine to finish its load so that they can use it again.",
|
|
720
718
|
xref: { document: "cluster", section: "9.2.7.1.3" }
|
|
721
719
|
}),
|
|
722
720
|
|
|
@@ -875,16 +873,15 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
875
873
|
|
|
876
874
|
Field({
|
|
877
875
|
name: "DecimalPoints", id: 0x2, type: "uint8", conformance: "M", default: 0,
|
|
878
|
-
details: "This field shall indicate the number of digits to the right of the decimal point in the Value " +
|
|
879
|
-
"
|
|
880
|
-
"of 1.02.",
|
|
876
|
+
details: "This field shall indicate the number of digits to the right of the decimal point in the Value field. " +
|
|
877
|
+
"For example, if the Value was 102 and DecimalPoints was 2, then this would represent a cost of 1.02.",
|
|
881
878
|
xref: { document: "cluster", section: "9.2.7.9.3" }
|
|
882
879
|
}),
|
|
883
880
|
|
|
884
881
|
Field({
|
|
885
882
|
name: "Currency", id: 0x3, type: "uint16", conformance: "O", constraint: "max 999", default: 0,
|
|
886
|
-
details: "Indicates the currency for the value in the Value field. The value of the currency field shall " +
|
|
887
|
-
"
|
|
883
|
+
details: "Indicates the currency for the value in the Value field. The value of the currency field shall match " +
|
|
884
|
+
"the values defined by [ISO 4217]." +
|
|
888
885
|
"\n" +
|
|
889
886
|
"This is an optional field. It shall be included if CostType is Financial.",
|
|
890
887
|
xref: { document: "cluster", section: "9.2.7.9.4" }
|
|
@@ -981,9 +978,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
981
978
|
{
|
|
982
979
|
name: "ForecastStruct", type: "struct",
|
|
983
980
|
|
|
984
|
-
details: "This indicates a list of 'slots' describing the overall timing of the ESA’s planned energy and " +
|
|
985
|
-
"
|
|
986
|
-
"
|
|
981
|
+
details: "This indicates a list of 'slots' describing the overall timing of the ESA’s planned energy and power " +
|
|
982
|
+
"use, with different power and energy demands per slot. For example, slots might be used to describe " +
|
|
983
|
+
"the distinct stages of a washing machine cycle." +
|
|
987
984
|
"\n" +
|
|
988
985
|
"Where an ESA does not know the actual power and energy use of the system, it may support the SFR" +
|
|
989
986
|
"\n" +
|
|
@@ -1043,9 +1040,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1043
1040
|
|
|
1044
1041
|
Field({
|
|
1045
1042
|
name: "IsPausable", id: 0x6, type: "bool", conformance: "M",
|
|
1046
|
-
details: "This field shall indicate that some part of the Forecast can be paused. It aims to allow a client " +
|
|
1047
|
-
"
|
|
1048
|
-
"
|
|
1043
|
+
details: "This field shall indicate that some part of the Forecast can be paused. It aims to allow a client to " +
|
|
1044
|
+
"read this flag and if it is false, then none of the slots contain SlotIsPausable set to true. This " +
|
|
1045
|
+
"can save a client from having to check each slot in the list.",
|
|
1049
1046
|
xref: { document: "cluster", section: "9.2.7.13.7" }
|
|
1050
1047
|
}),
|
|
1051
1048
|
|
|
@@ -1099,8 +1096,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1099
1096
|
Field({
|
|
1100
1097
|
name: "ElapsedSlotTime", id: 0x3, type: "elapsed-s", conformance: "M",
|
|
1101
1098
|
|
|
1102
|
-
details: "This field shall indicate the time (in seconds) that has already elapsed whilst in this slot. If " +
|
|
1103
|
-
"
|
|
1099
|
+
details: "This field shall indicate the time (in seconds) that has already elapsed whilst in this slot. If the " +
|
|
1100
|
+
"slot has not yet been started, then it shall be 0. Once the slot has been completed, then this " +
|
|
1104
1101
|
"reflects how much time was spent in this slot." +
|
|
1105
1102
|
"\n" +
|
|
1106
1103
|
"When subscribed to, a change in this field value shall NOT cause the Forecast attribute to be " +
|
|
@@ -1160,9 +1157,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1160
1157
|
"Some appliances, such as smart thermostats, may not know how much power is being drawn by the HVAC " +
|
|
1161
1158
|
"system, but do know what they have asked the HVAC system to do." +
|
|
1162
1159
|
"\n" +
|
|
1163
|
-
"Manufacturers can use this value to indicate a variety of states in an unspecified way. For " +
|
|
1164
|
-
"
|
|
1165
|
-
"
|
|
1160
|
+
"Manufacturers can use this value to indicate a variety of states in an unspecified way. For example, " +
|
|
1161
|
+
"they may choose to use values between 0-100 as a percentage of compressor modulation, or could use " +
|
|
1162
|
+
"these values as Enum states meaning heating with fan, heating without fan etc." +
|
|
1166
1163
|
"\n" +
|
|
1167
1164
|
"NOTE An ESA shall always use the same value to represent the same operating state." +
|
|
1168
1165
|
"\n" +
|
|
@@ -1177,16 +1174,16 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1177
1174
|
|
|
1178
1175
|
Field({
|
|
1179
1176
|
name: "NominalPower", id: 0x9, type: "power-mW", conformance: "PFR",
|
|
1180
|
-
details: "This field shall indicate the expected power that the appliance will use during this slot. It may " +
|
|
1181
|
-
"
|
|
1177
|
+
details: "This field shall indicate the expected power that the appliance will use during this slot. It may be " +
|
|
1178
|
+
"considered the average value over the slot, and some variation from this would be expected (for " +
|
|
1182
1179
|
"example, as it is ramping up).",
|
|
1183
1180
|
xref: { document: "cluster", section: "9.2.7.14.10" }
|
|
1184
1181
|
}),
|
|
1185
1182
|
|
|
1186
1183
|
Field({
|
|
1187
1184
|
name: "MinPower", id: 0xa, type: "power-mW", conformance: "PFR",
|
|
1188
|
-
details: "This field shall indicate the lowest power that the appliance expects to use during this slot. " +
|
|
1189
|
-
"
|
|
1185
|
+
details: "This field shall indicate the lowest power that the appliance expects to use during this slot. (e.g. " +
|
|
1186
|
+
"during a ramp up it may be 0W)." +
|
|
1190
1187
|
"\n" +
|
|
1191
1188
|
"Some appliances (e.g. battery inverters which can charge and discharge) may have a negative power.",
|
|
1192
1189
|
xref: { document: "cluster", section: "9.2.7.14.11" }
|
|
@@ -1220,8 +1217,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1220
1217
|
"to estimate the cost of energy for this slot in the power forecast." +
|
|
1221
1218
|
"\n" +
|
|
1222
1219
|
"When an Energy Management System requests a change in the schedule, then the device may suggest a " +
|
|
1223
|
-
"change in the cost as a result of shifting its energy. This can allow a demand side response " +
|
|
1224
|
-
"
|
|
1220
|
+
"change in the cost as a result of shifting its energy. This can allow a demand side response service " +
|
|
1221
|
+
"to be informed of the relative cost to use energy at a different time." +
|
|
1225
1222
|
"\n" +
|
|
1226
1223
|
"The Costs field is a list of CostStruct structures which allows multiple CostTypeEnum and Values to " +
|
|
1227
1224
|
"be shared by the energy appliance. These could be based on GHG emissions, comfort value for the " +
|
|
@@ -1232,8 +1229,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1232
1229
|
"require a top-up heating event to occur later in the day (which may incur additional cost)." +
|
|
1233
1230
|
"\n" +
|
|
1234
1231
|
"If the ESA cannot calculate its cost for any reason (such as losing its connection to a Price " +
|
|
1235
|
-
"server) it may omit this field. This is treated as extra meta data that an EMS may use to optimize " +
|
|
1236
|
-
"
|
|
1232
|
+
"server) it may omit this field. This is treated as extra meta data that an EMS may use to optimize a " +
|
|
1233
|
+
"system.",
|
|
1237
1234
|
|
|
1238
1235
|
xref: { document: "cluster", section: "9.2.7.14.14" }
|
|
1239
1236
|
},
|
|
@@ -1273,9 +1270,9 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1273
1270
|
details: "This field shall indicate the minimum time, in seconds, that the slot can be requested to shortened " +
|
|
1274
1271
|
"to." +
|
|
1275
1272
|
"\n" +
|
|
1276
|
-
"For example, if the slot indicates a NominalPower of 0W (indicating it is expecting to be off), " +
|
|
1277
|
-
"
|
|
1278
|
-
"
|
|
1273
|
+
"For example, if the slot indicates a NominalPower of 0W (indicating it is expecting to be off), this " +
|
|
1274
|
+
"would allow an ESA to specify the minimum time it could be switched on for. This is to help protect " +
|
|
1275
|
+
"the appliance from being damaged by short cycling times." +
|
|
1279
1276
|
"\n" +
|
|
1280
1277
|
"For example, a heat pump compressor may have a minimum cycle time of order a few minutes.",
|
|
1281
1278
|
|
|
@@ -1288,11 +1285,11 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1288
1285
|
details: "This field shall indicate the maximum time, in seconds, that the slot can be requested to extended " +
|
|
1289
1286
|
"to." +
|
|
1290
1287
|
"\n" +
|
|
1291
|
-
"For example, if the slot indicates a NominalPower of 0W (indicating it is expecting to be off), " +
|
|
1292
|
-
"
|
|
1293
|
-
"
|
|
1294
|
-
"
|
|
1295
|
-
"
|
|
1288
|
+
"For example, if the slot indicates a NominalPower of 0W (indicating it is expecting to be off), this " +
|
|
1289
|
+
"allows an ESA to specify the maximum time it could be switched on for. This may allow a battery or " +
|
|
1290
|
+
"water heater to indicate the maximum duration that it can charge for before becoming full. In the " +
|
|
1291
|
+
"case of a battery inverter which can be discharged, it may equally indicate the maximum time the " +
|
|
1292
|
+
"battery could be discharged for (at the MaxPowerAdjustment power level).",
|
|
1296
1293
|
|
|
1297
1294
|
xref: { document: "cluster", section: "9.2.7.14.18" }
|
|
1298
1295
|
})
|
|
@@ -1304,8 +1301,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1304
1301
|
Field({
|
|
1305
1302
|
name: "SlotIndex", id: 0x0, type: "uint8", conformance: "M", constraint: "desc",
|
|
1306
1303
|
details: "This field shall indicate the index into the Slots list within the Forecast that is to be modified. " +
|
|
1307
|
-
"It shall be less than the actual length of the Slots list (implicitly it must be in the range 0 to " +
|
|
1308
|
-
"
|
|
1304
|
+
"It shall be less than the actual length of the Slots list (implicitly it must be in the range 0 to 9 " +
|
|
1305
|
+
"based on the maximum length of the Slots list constraint).",
|
|
1309
1306
|
xref: { document: "cluster", section: "9.2.7.15.1" }
|
|
1310
1307
|
}),
|
|
1311
1308
|
|
|
@@ -1322,8 +1319,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1322
1319
|
Field({
|
|
1323
1320
|
name: "Duration", id: 0x2, type: "elapsed-s", conformance: "M", constraint: "desc",
|
|
1324
1321
|
details: "This field shall indicate the new requested duration, in seconds, that the ESA shall extend or " +
|
|
1325
|
-
"shorten the slot duration to. It MUST be between the MinDurationAdjustment and " +
|
|
1326
|
-
"
|
|
1322
|
+
"shorten the slot duration to. It MUST be between the MinDurationAdjustment and MaxDurationAdjustment " +
|
|
1323
|
+
"for the slot as advertised by the ESA.",
|
|
1327
1324
|
xref: { document: "cluster", section: "9.2.7.15.3" }
|
|
1328
1325
|
})
|
|
1329
1326
|
),
|
|
@@ -1378,8 +1375,8 @@ export const DeviceEnergyManagement = Cluster(
|
|
|
1378
1375
|
"ESA during the constraint period." +
|
|
1379
1376
|
"\n" +
|
|
1380
1377
|
"This is expressed as a signed value between -100 to +100. A value of 0 would indicate no bias to " +
|
|
1381
|
-
"using more or less energy. A negative value indicates a request to use less energy. A positive " +
|
|
1382
|
-
"
|
|
1378
|
+
"using more or less energy. A negative value indicates a request to use less energy. A positive value " +
|
|
1379
|
+
"indicates a request to use more energy." +
|
|
1383
1380
|
"\n" +
|
|
1384
1381
|
"Note that the mapping between values and operation is manufacturer specific.",
|
|
1385
1382
|
|
|
@@ -77,15 +77,15 @@ export const DeviceEnergyManagementMode = Cluster(
|
|
|
77
77
|
|
|
78
78
|
Field({
|
|
79
79
|
name: "NoOptimization", id: 0x4000,
|
|
80
|
-
details: "The device prohibits optimization of energy usage management: its energy usage is determined only " +
|
|
81
|
-
"
|
|
80
|
+
details: "The device prohibits optimization of energy usage management: its energy usage is determined only by " +
|
|
81
|
+
"the user configuration and internal device needs.",
|
|
82
82
|
xref: { document: "cluster", section: "9.8.7.1.1" }
|
|
83
83
|
}),
|
|
84
84
|
|
|
85
85
|
Field({
|
|
86
86
|
name: "DeviceOptimization", id: 0x4001,
|
|
87
|
-
details: "The device is permitted to manage its own energy usage. For example, using tariff information it " +
|
|
88
|
-
"
|
|
87
|
+
details: "The device is permitted to manage its own energy usage. For example, using tariff information it may " +
|
|
88
|
+
"obtain.",
|
|
89
89
|
xref: { document: "cluster", section: "9.8.7.1.2" }
|
|
90
90
|
}),
|
|
91
91
|
|