From 4f8396f9dba2febdd6b5634695e651d1d4051c6d Mon Sep 17 00:00:00 2001 From: fmoulin Date: Thu, 18 Jul 2024 08:02:23 +0200 Subject: [PATCH] Add cooling energy input and second heat generator amount counter --- custom_components/luxtronik/const.py | 6 ++-- .../luxtronik/sensor_entities_predefined.py | 28 +++++++++++++++++++ .../luxtronik/translations/en.json | 6 ++++ 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/custom_components/luxtronik/const.py b/custom_components/luxtronik/const.py index e7bf86a..87e9d0e 100644 --- a/custom_components/luxtronik/const.py +++ b/custom_components/luxtronik/const.py @@ -379,8 +379,8 @@ class LuxParameter(StrEnum): P1136_HEAT_ENERGY_INPUT: Final = "parameters.Unknown_Parameter_1136" P1137_DHW_ENERGY_INPUT: Final = "parameters.Unknown_Parameter_1137" # ? P1138_SWIMMING_POOL_ENERGY_INPUT: Final = "parameters.Unknown_Parameter_1138" --> - # ? P1139_COOLING_ENERGY_INPUT: Final = "parameters.Unknown_Parameter_1139" - # ? P1140_SECOND_HEAT_SOURCE_DHW_ENERGY_INPUT: Final = "parameters.Unknown_Parameter_1140" + P1139_COOLING_ENERGY_INPUT: Final = "parameters.Unknown_Parameter_1139" + P1140_SECOND_HEAT_GENERATOR_AMOUNT_COUNTER: Final = "parameters.Unknown_Parameter_1140" # endregion Lux parameters @@ -603,6 +603,7 @@ class SensorKey(StrEnum): ADDITIONAL_HEAT_GENERATOR_AMOUNT_COUNTER = ( "additional_heat_generator_amount_counter" ) + SECOND_HEAT_GENERATOR_AMOUNT_COUNTER= "second_heat_generator_amount_counter" ANALOG_OUT1 = "analog_out1" ANALOG_OUT2 = "analog_out2" CURRENT_HEAT_OUTPUT = "current_heat_output" @@ -625,6 +626,7 @@ class SensorKey(StrEnum): DHW_HEAT_AMOUNT = "dhw_heat_amount" HEAT_ENERGY_INPUT = "heat_energy_input" DHW_ENERGY_INPUT = "dhw_energy_input" + COOLING_ENERGY_INPUT = "cooling_energy_input" DHW_TEMPERATURE = "dhw_temperature" SOLAR_COLLECTOR_TEMPERATURE = "solar_collector_temperature" SOLAR_BUFFER_TEMPERATURE = "solar_buffer_temperature" diff --git a/custom_components/luxtronik/sensor_entities_predefined.py b/custom_components/luxtronik/sensor_entities_predefined.py index f06e669..c7393eb 100644 --- a/custom_components/luxtronik/sensor_entities_predefined.py +++ b/custom_components/luxtronik/sensor_entities_predefined.py @@ -343,6 +343,20 @@ native_precision=1, update_interval=UPDATE_INTERVAL_VERY_SLOW, ), + descr( + key=SensorKey.SECOND_HEAT_GENERATOR_AMOUNT_COUNTER, + luxtronik_key=LP.P1140_SECOND_HEAT_GENERATOR_AMOUNT_COUNTER, + icon="mdi:lightning-bolt-circle", + state_class=SensorStateClass.TOTAL_INCREASING, + device_class=SensorDeviceClass.ENERGY, + entity_category=EntityCategory.DIAGNOSTIC, + native_unit_of_measurement=UnitOfEnergy.KILO_WATT_HOUR, + invisible_if_value=0.0, + factor=0.1, + native_precision=1, + min_firmware_version_minor=FirmwareVersionMinor.minor_88, + update_interval=UPDATE_INTERVAL_VERY_SLOW, + ), descr( key=SensorKey.ANALOG_OUT1, luxtronik_key=LC.C0156_ANALOG_OUT1, @@ -654,5 +668,19 @@ native_precision=2, update_interval=UPDATE_INTERVAL_VERY_SLOW, ), + descr( + key=SensorKey.COOLING_ENERGY_INPUT, + luxtronik_key=LP.P1139_COOLING_ENERGY_INPUT, + device_key=DeviceKey.cooling, + icon="mdi:circle-slice-3", + state_class=SensorStateClass.TOTAL_INCREASING, + device_class=SensorDeviceClass.ENERGY, + entity_category=EntityCategory.DIAGNOSTIC, + native_unit_of_measurement=UnitOfEnergy.KILO_WATT_HOUR, + native_precision=2, + factor=0.01, + min_firmware_version_minor=FirmwareVersionMinor.minor_88, + update_interval=UPDATE_INTERVAL_VERY_SLOW, + ), # endregion Cooling ] diff --git a/custom_components/luxtronik/translations/en.json b/custom_components/luxtronik/translations/en.json index ba288b0..8d2bb6a 100644 --- a/custom_components/luxtronik/translations/en.json +++ b/custom_components/luxtronik/translations/en.json @@ -448,6 +448,9 @@ "additional_heat_generator_amount_counter": { "name": "Additional heat generator amount counter" }, + "second_heat_generator_amount_counter": { + "name": "Second heat generator amount counter" + }, "heat_source_output_temperature": { "name": "Heat source output" }, @@ -508,6 +511,9 @@ "operation_hours_cooling": { "name": "Operation hours" }, + "cooling_energy_input": { + "name": "Energy input" + }, "room_thermostat_temperature": { "name": "Room thermostat" },