Add missing Water Heater device to matter-devices.xml (#36125)
* Add missing Water Heater device to matter-devices.xml
This PR adds the missing Water Heater device to matter-devices.xml.
The description was generated using the Alchemy tool
(https://github.com/project-chip/alchemy) with the following command:
`alchemy zap --attribute="in-progress" --sdkRoot=./connectedhomeip/
--specRoot=./connectedhomeip-spec/
./connectedhomeip-spec/src/device_types/WaterHeater.adoc`
I manually fixed the device nae from `Matter Water Heater` to `Water
Heater`.
* zap regen
diff --git a/src/app/zap-templates/zcl/data-model/chip/matter-devices.xml b/src/app/zap-templates/zcl/data-model/chip/matter-devices.xml
index f7f5699..ff485bb 100644
--- a/src/app/zap-templates/zcl/data-model/chip/matter-devices.xml
+++ b/src/app/zap-templates/zcl/data-model/chip/matter-devices.xml
@@ -2698,4 +2698,47 @@
<include cluster="Device Energy Management Mode" client="false" server="true" clientLocked="true" serverLocked="false"></include>
</clusters>
</deviceType>
+ <deviceType>
+ <name>MA-waterheater</name>
+ <domain>CHIP</domain>
+ <typeName>Water Heater</typeName>
+ <profileId editable="false">0x0103</profileId>
+ <deviceId editable="false">0x050F</deviceId>
+ <class>Simple</class>
+ <scope>Endpoint</scope>
+ <clusters>
+ <include cluster="Descriptor" client="false" server="true" clientLocked="true" serverLocked="true">
+ <requireAttribute>CLIENT_LIST</requireAttribute>
+ <requireAttribute>DEVICE_TYPE_LIST</requireAttribute>
+ <requireAttribute>PARTS_LIST</requireAttribute>
+ <requireAttribute>SERVER_LIST</requireAttribute>
+ </include>
+ <include cluster="Identify" client="false" server="true" clientLocked="true" serverLocked="false">
+ <requireAttribute>IDENTIFY_TIME</requireAttribute>
+ <requireAttribute>IDENTIFY_TYPE</requireAttribute>
+ <requireCommand>Identify</requireCommand>
+ </include>
+ <include cluster="Thermostat" client="false" server="true" clientLocked="true" serverLocked="true">
+ <requireAttribute>CONTROL_SEQUENCE_OF_OPERATION</requireAttribute>
+ <requireAttribute>LOCAL_TEMPERATURE</requireAttribute>
+ <requireAttribute>SYSTEM_MODE</requireAttribute>
+ <requireCommand>SetpointRaiseLower</requireCommand>
+ </include>
+ <include cluster="Water Heater Management" client="false" server="true" clientLocked="true" serverLocked="true">
+ <requireAttribute>BOOST_STATE</requireAttribute>
+ <requireAttribute>HEATER_TYPES</requireAttribute>
+ <requireAttribute>HEAT_DEMAND</requireAttribute>
+ <requireEvent>BoostEnded</requireEvent>
+ <requireEvent>BoostStarted</requireEvent>
+ <requireCommand>Boost</requireCommand>
+ <requireCommand>CancelBoost</requireCommand>
+ </include>
+ <include cluster="Water Heater Mode" client="false" server="true" clientLocked="true" serverLocked="true">
+ <requireAttribute>CURRENT_MODE</requireAttribute>
+ <requireAttribute>SUPPORTED_MODES</requireAttribute>
+ <requireCommand>ChangeToMode</requireCommand>
+ <requireCommand>ChangeToModeResponse</requireCommand>
+ </include>
+ </clusters>
+ </deviceType>
</configurator>
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h b/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h
index b1d26e9..da2ce72 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h
@@ -7625,6 +7625,7 @@
MTRDeviceTypeIDTypeHumiditySensorID MTR_NEWLY_AVAILABLE = 0x00000307,
MTRDeviceTypeIDTypeEVSEID MTR_NEWLY_AVAILABLE = 0x0000050C,
MTRDeviceTypeIDTypeDeviceEnergyManagementID MTR_NEWLY_AVAILABLE = 0x0000050D,
+ MTRDeviceTypeIDTypeWaterHeaterID MTR_PROVISIONALLY_AVAILABLE = 0x0000050F,
MTRDeviceTypeIDTypeElectricalSensorID MTR_NEWLY_AVAILABLE = 0x00000510,
MTRDeviceTypeIDTypeControlBridgeID MTR_NEWLY_AVAILABLE = 0x00000840,
MTRDeviceTypeIDTypeOnOffSensorID MTR_NEWLY_AVAILABLE = 0x00000850,
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRDeviceTypeMetadata.mm b/src/darwin/Framework/CHIP/zap-generated/MTRDeviceTypeMetadata.mm
index f0530c4..b4ea67c 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRDeviceTypeMetadata.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRDeviceTypeMetadata.mm
@@ -85,6 +85,7 @@
{ 0x00000307, MTRDeviceTypeClass::Simple, "Humidity Sensor" },
{ 0x0000050C, MTRDeviceTypeClass::Simple, "EVSE" },
{ 0x0000050D, MTRDeviceTypeClass::Simple, "Device Energy Management" },
+ { 0x0000050F, MTRDeviceTypeClass::Simple, "Water Heater" },
{ 0x00000510, MTRDeviceTypeClass::Utility, "Electrical Sensor" },
{ 0x00000840, MTRDeviceTypeClass::Simple, "Control Bridge" },
{ 0x00000850, MTRDeviceTypeClass::Simple, "On/Off Sensor" },
diff --git a/zzz_generated/chip-tool/zap-generated/cluster/logging/EntryToText.cpp b/zzz_generated/chip-tool/zap-generated/cluster/logging/EntryToText.cpp
index 0b5178d..7c4c38a 100644
--- a/zzz_generated/chip-tool/zap-generated/cluster/logging/EntryToText.cpp
+++ b/zzz_generated/chip-tool/zap-generated/cluster/logging/EntryToText.cpp
@@ -6495,6 +6495,8 @@
return "EVSE";
case 0x0000050D:
return "Device Energy Management";
+ case 0x0000050F:
+ return "Water Heater";
case 0x00000510:
return "Electrical Sensor";
case 0x00000840: