1- # ########################################
2- # #
3- # Substitutions #
4- # #
5- # ########################################
6- substitutions :
7- can_bus_bit_rate : 50kbps
8-
9- # ########################################
10- # #
11- # CAN Bus #
12- # #
13- # ########################################
14- canbus :
15- - id : !extend wp_can
16- bit_rate : $can_bus_bit_rate
17-
181# ########################################
192# #
203# ESPHome Base Setup #
@@ -51,9 +34,10 @@ esphome:
5134# #
5235# ########################################
5336packages :
54- CORE : !include { file: core.yaml }
55- MANAGER : !include { file: templates/wp_can_id.yaml, vars: { can_node: "Manager" , can_id: "0x480" }}
37+ WXX_BASE : !include { file: wxx_base.yaml }
5638
39+ # Plant status bits reported by the Manager. Not every member of the WPM
40+ # family serves this word, so it stays out of the shared base.
5741 HEIZKREISPUMPE_1 : !include { file: templates/wp_binary.yaml, vars: { name: "HEIZKREISPUMPE_1" }}
5842 HEIZKREISPUMPE_2 : !include { file: templates/wp_binary.yaml, vars: { name: "HEIZKREISPUMPE_2" }}
5943 PUFFERLADEPUMPE_1 : !include { file: templates/wp_binary.yaml, vars: { name: "PUFFERLADEPUMPE_1" }}
@@ -67,101 +51,8 @@ packages:
6751 NHZ_3 : !include { file: templates/wp_binary.yaml, vars: { name: "NHZ_3" }}
6852 EVU_SPERRE : !include { file: templates/wp_binary.yaml, vars: { name: "EVU_SPERRE" }}
6953
70- ISTTEMPERATUR_HK1 : !include { file: templates/wp_temperature.yaml, vars: { property: "ISTTEMPERATUR" , name_suffix: "_HK1" , target: "HK1" }}
71- SOLLTEMPERATUR_HK1 : !include { file: templates/wp_temperature.yaml, vars: { property: "SOLLTEMPERATUR" , name_suffix: "_HK1" , target: "HK1" }}
72- KOMFORTTEMPERATUR_HK1 : !include { file: templates/wp_temperature.yaml, vars: { property: "KOMFORTTEMPERATUR" , name_suffix: "_HK1" , target: "HK1" }}
73- ECOTEMPERATUR_HK1 : !include { file: templates/wp_temperature.yaml, vars: { property: "ECOTEMPERATUR" , name_suffix: "_HK1" , target: "HK1" }}
74- ISTTEMPERATUR_HK2 : !include { file: templates/wp_temperature.yaml, vars: { property: "ISTTEMPERATUR" , name_suffix: "_HK2" , target: "HK2" }}
75- SOLLTEMPERATUR_HK2 : !include { file: templates/wp_temperature.yaml, vars: { property: "SOLLTEMPERATUR" , name_suffix: "_HK2" , target: "HK2" }}
76- KOMFORTTEMPERATUR_HK2 : !include { file: templates/wp_temperature.yaml, vars: { property: "KOMFORTTEMPERATUR" , name_suffix: "_HK2" , target: "HK2" }}
77- ECOTEMPERATUR_HK2 : !include { file: templates/wp_temperature.yaml, vars: { property: "ECOTEMPERATUR" , name_suffix: "_HK2" , target: "HK2" }}
78- RAUMISTTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "RAUMISTTEMP" , target: "FET" }}
79- RAUMSOLLTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "RAUMSOLLTEMP" , target: "FET" }}
80- PUFFERISTTEMPERATUR : !include { file: templates/wp_temperature.yaml, vars: { property: "PUFFERISTTEMPERATUR" }}
81- FROSTSCHUTZ : !include { file: templates/wp_temperature.yaml, vars: { property: "FROSTSCHUTZ" , target: "MFG" }}
82- VORLAUFTEMP_QUELLE : !include { file: templates/wp_temperature.yaml, vars: { property: "VORLAUFTEMP_QUELLE" , target: "Heizmodul" }}
83- RUECKLAUFTEMP_QUELLE : !include { file: templates/wp_temperature.yaml, vars: { property: "RUECKLAUFTEMP_QUELLE" , target: "Heizmodul" }}
84- VORLAUFISTTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "VORLAUFISTTEMP" , update_interval: $interval_medium, target: "MFG" }}
85- VORLAUFSOLLTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "VORLAUFSOLLTEMP" , target: "HK1" }}
86- VERDAMPFERTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "VERDAMPFERTEMP" , target: "Heizmodul" }}
87- RUECKLAUFISTTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "RUECKLAUFISTTEMP" , update_interval: $interval_medium , target: "MFG" }}
88- MAXVORLAUFTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "MAXVORLAUFTEMP" , target: "Kessel" }}
89- MAXRUECKLAUFTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "MAXRUECKLAUFTEMP" , target: "Kessel" }}
90- AUSSENTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "AUSSENTEMP" , update_interval: $interval_medium , target: "Kessel" }}
91- HEISSGAS_TEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "HEISSGAS_TEMP" , update_interval: $interval_medium , target: "Heizmodul" }}
92- VORLAUFTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "VORLAUFTEMP" , update_interval: $interval_medium , target: "Heizmodul" }}
93- VERFLUESSIGER_TEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "VERFLUESSIGER_TEMP" , update_interval: $interval_medium , target: "Heizmodul" }}
94- OELSUMPFTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "OELSUMPFTEMP" , update_interval: $interval_medium , target: "Heizmodul" }}
95- VORLAUFISTTEMP_WP : !include { file: templates/wp_temperature.yaml, vars: { property: "VORLAUFISTTEMP_WP" , update_interval: $interval_medium , target: "Kessel" }}
96- RUECKLAUFISTTEMP_WP : !include { file: templates/wp_temperature.yaml, vars: { property: "RUECKLAUFISTTEMP_WP", update_interval: $interval_medium , target: "Kessel" }}
97- RUECKLAUFTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "RUECKLAUFTEMP" , update_interval: $interval_medium , target: "Heizmodul" }}
98- KUEHLEN_SOLLTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "KUEHLEN_SOLLTEMP" , update_interval: $interval_medium , target: "Kessel" }}
99- KUEHLEN_ISTTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "KUEHLEN_ISTTEMP" , update_interval: $interval_medium , target: "Kessel" }}
100- ISTTEMPERATUR_KK_2 : !include { file: templates/wp_temperature.yaml, vars: { property: "ISTTEMPERATUR_KK_2" , update_interval: $interval_medium , target: "HK2" }}
101- SOLLTEMPERATUR_KK_2 : !include { file: templates/wp_temperature.yaml, vars: { property: "SOLLTEMPERATUR_KK_2", update_interval: $interval_medium , target: "HK2" }}
102- ANLAGEFROST : !include { file: templates/wp_temperature.yaml, vars: { property: "ANLAGEFROST" , update_interval: $interval_medium , target: "Kessel" }}
103- VORLAUFISTTEMP_NHZ : !include { file: templates/wp_temperature.yaml, vars: { property: "VORLAUFISTTEMP_NHZ" , update_interval: $interval_medium , target: "Kessel" }}
104- HYSTERESE_VORLAUFTEMP_KUEHLEN : !include { file: templates/wp_temperature.yaml, vars: { property: "HYSTERESE_VORLAUFTEMP_KUEHLEN", target: "Kessel", unit: "°K" }}
105- STARTTEMPERATUR : !include { file: templates/wp_temperature.yaml, vars: { property: "STARTTEMPERATUR" , target: "HK2" }}
106- VERDICHTER_EINTRITTSTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "VERDICHTER_EINTRITTSTEMP", target: "Heizmodul" }}
107- TAUPUNKTTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "TAUPUNKTTEMP", target: "HK2" }}
108- RAUMSOLLTEMP_KUEHLEN : !include { file: templates/wp_temperature.yaml, vars: { property: "RAUMSOLLTEMP_KUEHLEN", target: "HK2" }}
109- BIVALENZTEMPERATUR_HZG : !include { file: templates/wp_temperature.yaml, vars: { property: "BIVALENZTEMPERATUR_HZG", target: "Kessel" }}
110- UMGEBUNGSTEMPERATUR_INVERTER : !include { file: templates/wp_temperature.yaml, vars: { property: "UMGEBUNGSTEMPERATUR_INVERTER" , target: "Heizmodul" }}
111- UNTERK_COND : !include { file: templates/wp_temperature.yaml, vars: { property: "UNTERK_COND" , target: "Heizmodul" }}
112- TEMPERATUR_INV_VERDICHTER : !include { file: templates/wp_temperature.yaml, vars: { property: "TEMPERATUR_INV_VERDICHTER" , target: "Heizmodul" }}
113- IST_UEBERHITZUNG_SAUGGAS_VERDICHTER : !include { file: templates/wp_temperature.yaml, vars: { property: "IST_UEBERHITZUNG_SAUGGAS_VERDICHTER", target: "Heizmodul", unit: "°K" }}
114- SOLL_UEBERHITZUNG_SAUGGAS_VERDICHTER : !include { file: templates/wp_temperature.yaml, vars: { property: "SOLL_UEBERHITZUNG_SAUGGAS_VERDICHTER", target: "Heizmodul", unit: "°K" }}
115- ADAPTION_UEBERHITZUNG : !include { file: templates/wp_temperature.yaml, vars: { property: "ADAPTION_UEBERHITZUNG", target: "Heizmodul", unit: "°K" }}
116- MINTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "MINTEMP" , target: "HK2" }}
117- MAXTEMP : !include { file: templates/wp_temperature.yaml, vars: { property: "MAXTEMP" , target: "HK2" }}
118-
119- EL_NACHERW_VERZ_ZEIT : !include { file: templates/wp_generic.yaml, vars: { property: "EL_NACHERW_VERZ_ZEIT", unit: "min" , target: "Kessel" }}
120- EL_NACHERW_ANZ_STUFEN : !include { file: templates/wp_generic.yaml, vars: { property: "EL_NACHERW_ANZ_STUFEN", target: "Kessel" }}
121- ISTDREHZAHL_VERDICHTER : !include { file: templates/wp_generic.yaml, vars: { property: "ISTDREHZAHL_VERDICHTER" , unit: "Hz", target: "Heizmodul" }}
122- SOLLDREHZAHL_VERDICHTER : !include { file: templates/wp_generic.yaml, vars: { property: "SOLLDREHZAHL_VERDICHTER", unit: "Hz", target: "Heizmodul" }}
123- LEISTUNG_KUEHLEN : !include { file: templates/wp_generic.yaml, vars: { property: "LEISTUNG_KUEHLEN", unit: "kW", target: "Manager" }}
124- STEIGUNG_KUEHLKURVE : !include { file: templates/wp_generic.yaml, vars: { property: "STEIGUNG_KUEHLKURVE" , target: "HK2" , scaler: "0.1", accuracy_decimals: "2" }}
125- LAUFZEIT_PASSIVKUEHLUNG : !include { file: templates/wp_generic.yaml, vars: { property: "LAUFZEIT_PASSIVKUEHLUNG", scaler: "10", unit: "h", target: "Heizmodul" }}
126- RAUMFEUCHTE : !include { file: templates/wp_generic.yaml, vars: { property: "RAUMFEUCHTE" , update_interval: $interval_very_slow, unit: "%", icon: "mdi:water-percent", accuracy_decimals: "1", target: "FET" }}
127- HEIZEN_EFFIZIENZ_TAG : !include { file: templates/wp_generic.yaml, vars: { property: "HEIZEN_EFFIZIENZ_TAG" , target: "Manager", accuracy_decimals: "2" }}
128- HEIZEN_EFFIZIENZ_JAHR : !include { file: templates/wp_generic.yaml, vars: { property: "HEIZEN_EFFIZIENZ_JAHR" , target: "Manager", accuracy_decimals: "2" }}
129- DRUCK_NIEDERDRUCK : !include { file: templates/wp_generic.yaml, vars: { property: "DRUCK_NIEDERDRUCK" , unit: "bar" , icon: "mdi:water-pressure", scaler: "0.1" , accuracy_decimals: "2", target: "Heizmodul" }}
130- DRUCK_HOCHDRUCK : !include { file: templates/wp_generic.yaml, vars: { property: "DRUCK_HOCHDRUCK" , unit: "bar" , icon: "mdi:water-pressure", scaler: "0.1" , accuracy_decimals: "2", target: "Heizmodul" }}
131- HEIZUNGSDRUCK : !include { file: templates/wp_generic.yaml, vars: { property: "HEIZUNGSDRUCK" , unit: "bar" , icon: "mdi:water-pressure" , accuracy_decimals: "2", target: "Kessel" }}
132- QUELLENDRUCK : !include { file: templates/wp_generic.yaml, vars: { property: "QUELLENDRUCK" , unit: "bar" , icon: "mdi:water-pressure" , accuracy_decimals: "1", target: "Heizmodul" }}
133- LEISTUNG_QUELLENPUMPE : !include { file: templates/wp_generic.yaml, vars: { property: "LEISTUNG_QUELLENPUMPE" , unit: "%" , icon: "mdi:water-percent", accuracy_decimals: "1", target: "Heizmodul" }}
134- VOLUMENSTROM : !include { file: templates/wp_generic.yaml, vars: { property: "VOLUMENSTROM" , unit: "l/min", icon: "mdi:flow" , accuracy_decimals: "2", target: "Kessel" }}
135- STROM_INVERTER : !include { file: templates/wp_generic.yaml, vars: { property: "STROM_INVERTER" , unit: "A" , target: "Heizmodul" , accuracy_decimals: "1" }}
136- SPANNUNG_INVERTER : !include { file: templates/wp_generic.yaml, vars: { property: "SPANNUNG_INVERTER" , unit: "V" , target: "Heizmodul" , accuracy_decimals: "1" }}
137- ZEITINTERVALL : !include { file: templates/wp_generic.yaml, vars: { property: "ZEITINTERVALL", scaler: "10", target: "Manager" }}
138- STROM_MOTOR : !include { file: templates/wp_generic.yaml, vars: { property: "STROM_MOTOR" , unit: "A" , target: "Heizmodul" , accuracy_decimals: "1" }}
139- VERDICHTERDREHZAHLGRENZE : !include { file: templates/wp_generic.yaml, vars: { property: "VERDICHTERDREHZAHLGRENZE", target: "Heizmodul" }}
140- STEIGUNG_HEIZKURVE_HK1 : !include { file: templates/wp_generic.yaml, vars: { property: "STEIGUNG_HEIZKURVE" , target: "HK1" , name_suffix: "_HK1", scaler: "0.1", accuracy_decimals: "2" }}
141- STEIGUNG_HEIZKURVE_HK2 : !include { file: templates/wp_generic.yaml, vars: { property: "STEIGUNG_HEIZKURVE" , target: "HK2" , name_suffix: "_HK2", scaler: "0.1", accuracy_decimals: "2" }}
142- MISCHERDYNAMIK : !include { file: templates/wp_generic.yaml, vars: { property: "MISCHERDYNAMIK", target: "HK2" }}
143-
144- RAUMEINFLUSS : !include { file: templates/wp_number.yaml, vars: { property: "RAUMEINFLUSS", target: "HK2" }}
145-
146- VERDICHTER_STARTS : !include { file: templates/wp_generic_combined.yaml, vars: { sensor_name: "VERDICHTER_STARTS" , scaled_property: "VERDICHTER_STARTS_K" , property: "VERDICHTER_STARTS" , unit: "" , accuracy_decimals: "0", scaler: "1000", icon: "mdi:counter" , target: "Heizmodul", state_class: "total_increasing" }}
54+ # Domestic hot water. Models without an integrated DHW tank lack these.
14755 WAERMEERTRAG_WW_SUMME_MWH : !include { file: templates/wp_generic_combined.yaml, vars: { sensor_name: "WAERMEERTRAG_WW_SUMME_MWH" , scaled_property: "WAERMEERTRAG_WW_SUM_KWH" , property: "WAERMEERTRAG_WW_SUM_MWH" , unit: "MWh", accuracy_decimals: "3", icon: "mdi:fire" , target: "Heizmodul", state_class: "total_increasing" }}
148- WAERMEERTRAG_HEIZ_SUMME_MWH : !include { file: templates/wp_generic_combined.yaml, vars: { sensor_name: "WAERMEERTRAG_HEIZ_SUMME_MWH" , scaled_property: "WAERMEERTRAG_HEIZ_SUM_KWH" , property: "WAERMEERTRAG_HEIZ_SUM_MWH" , unit: "MWh", accuracy_decimals: "3", icon: "mdi:fire" , target: "Heizmodul", state_class: "total_increasing" }}
14956 EL_ENERGIEAUFNAHME_WW_SUMME_KWH : !include { file: templates/wp_generic_combined.yaml, vars: { sensor_name: "EL_ENERGIEAUFNAHME_WW_SUMME_KWH" , scaled_property: "EL_ENERGIEAUFNAHME_WW_SUM_MWH" , property: "EL_ENERGIEAUFNAHME_WW_SUM_KWH" , unit: "kWh", accuracy_decimals: "0", scaler: "1000", icon: "mdi:flash", target: "Heizmodul", state_class: "total_increasing" }}
150- EL_ENERGIEAUFNAHME_HEIZ_SUMME_KWH : !include { file: templates/wp_generic_combined.yaml, vars: { sensor_name: "EL_ENERGIEAUFNAHME_HEIZ_SUMME_KWH" , scaled_property: "EL_ENERGIEAUFNAHME_HEIZ_SUM_MWH" , property: "EL_ENERGIEAUFNAHME_HEIZ_SUM_KWH" , unit: "kWh", accuracy_decimals: "0", scaler: "1000", icon: "mdi:flash", target: "Heizmodul", state_class: "total_increasing" }}
151-
15257 EL_ENERGIEAUFNAHME_WW_TAG_SUMME_KWH : !include { file: templates/wp_daily_energy_combined.yaml, vars: { sensor_name: "EL_ENERGIEAUFNAHME_WW_TAG_SUMME_KWH" , property_wh: "EL_ENERGIEAUFNAHME_WW_TAG_WH" , property_kwh: "EL_ENERGIEAUFNAHME_WW_TAG_KWH" , target: "Heizmodul" }}
153- EL_ENERGIEAUFNAHME_HEIZ_TAG_SUMME_KWH : !include { file: templates/wp_daily_energy_combined.yaml, vars: { sensor_name: "EL_ENERGIEAUFNAHME_HEIZ_TAG_SUMME_KWH" , property_wh: "EL_ENERGIEAUFNAHME_HEIZ_TAG_WH" , property_kwh: "EL_ENERGIEAUFNAHME_HEIZ_TAG_KWH" , target: "Heizmodul" }}
15458 WAERMEERTRAG_WW_TAG_SUMME_KWH : !include { file: templates/wp_daily_energy_combined.yaml, vars: { sensor_name: "WAERMEERTRAG_WW_TAG_SUMME_KWH" , property_wh: "WAERMEERTRAG_WW_TAG_WH" , property_kwh: "WAERMEERTRAG_WW_TAG_KWH" , target: "Heizmodul" }}
155- WAERMEERTRAG_HEIZ_TAG_SUMME_KWH : !include { file: templates/wp_daily_energy_combined.yaml, vars: { sensor_name: "WAERMEERTRAG_HEIZ_TAG_SUMME_KWH" , property_wh: "WAERMEERTRAG_HEIZ_TAG_WH" , property_kwh: "WAERMEERTRAG_HEIZ_TAG_KWH" , target: "Heizmodul" }}
156-
157- HEATPUMP_DATETIME : !include { file: templates/wp_datetime.yaml }
158-
159- PROGRAMMSCHALTER : !include { file: templates/wp_select.yaml, vars: { property: PROGRAMMSCHALTER, target: "Manager", mapper_func_set: getBetriebsartId, mapper_func_get: getBetriebsart, options: ["Notbetrieb", "Bereitschaft", "Programm", "Komfort", "Eco", "Unbekannt"] }}
160-
161- text :
162- - id : !extend HK1_CAN_ID
163- initial_value : " 0x601"
164- - id : !extend HK2_CAN_ID
165- initial_value : " 0x602"
166- - id : !extend Heizmodul_CAN_ID
167- initial_value : " 0x514"
0 commit comments