From 7e0e04dd1d7af07e54a1a063aca4f83f902f29b8 Mon Sep 17 00:00:00 2001 From: Petr <5851137+pvyleta@users.noreply.github.com> Date: Thu, 28 Mar 2024 21:03:32 +0100 Subject: [PATCH] Extend mqtt-hassio.cfg for Heat Recovery Units Heat Recovery Units (HRUs) from Brink Climate Systems are using ebusd protocol, and can be successfully integrated into home automations through ebusd. Their parameters and units are however different from the typical boilers or heat pumps, the ebusd is typically used for. This requires manual edits of mqtt-hassio.cfg even for the most basic operations, which makes the learning curve way steeper for new users. This proposal adds the basic parameters and units typical for HRUs. --- contrib/etc/ebusd/mqtt-hassio.cfg | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/contrib/etc/ebusd/mqtt-hassio.cfg b/contrib/etc/ebusd/mqtt-hassio.cfg index ab000d8bb..c15c12e55 100644 --- a/contrib/etc/ebusd/mqtt-hassio.cfg +++ b/contrib/etc/ebusd/mqtt-hassio.cfg @@ -105,7 +105,7 @@ filter-seen = 5 #filter-non-circuit = # include only messages having the specified name (partial match, alternatives and wildcard supported). # HA integration: filter to some useful names for monitoring the heating circuit -filter-name = status|temp|humidity|yield|count|energy|power|runtime|hours|starts|mode|curve|^load$|^party$|sensor|timer +filter-name = status|temp|humidity|yield|count|energy|power|runtime|hours|starts|mode|curve|^load$|^party$|sensor|timer|co2|air|flow|filter|inlet|exhaust|pressure|reset # exclude messages having the specified name (partial match, alternatives and wildcard supported). #filter-non-name = # include only messages having the specified level (partial match, alternatives and wildcard supported). @@ -169,8 +169,7 @@ type_switch-names = type_topic,type_class,type_state,type_sub # matches at all, the variable(s) are set to the empty string. # HA integration: the mapping list for (potentially) writable number entities by field type, name, message, and unit. type_switch-w-number = - number,temperature, = temp|,°C$ - number,temperature, = temp|,K$ + number,temperature, = temp|,°C$|,K$ number,, = integral|,°min$ number,power_factor, = power*%% number,power, = power|,kW$|,W$ @@ -178,14 +177,15 @@ type_switch-w-number = number,current, = current,|,A$ number,pressure, = bar$ number,gas, = gas*/min$ + number,volume, = m³$ + number,volume_flow_rate, = m³/h$ number,humidity, = humid*%%$ - number,, = curve, + number,, = # HA integration: the mapping list for numeric sensor entities by field type, name, message, and unit. type_switch-number = sensor,,total_increasing = poweron|count, - sensor,temperature,measurement = temp|,°C$ - sensor,temperature,measurement = temp|,K$ + sensor,temperature,measurement = temp|,°C$|,K$ sensor,power_factor,measurement = power*%% sensor,power,measurement = power|,kW$|,W$ sensor,voltage,measurement = volt|,V$ @@ -193,10 +193,13 @@ type_switch-number = sensor,,measurement = integral|,°min$ sensor,energy,total_increasing = energy|,Wh$ sensor,yield,total_increasing = total*,Wh$ - sensor,,total_increasing = hours|,h$ + sensor,duration,total_increasing = hours|days|,h$ sensor,,total_increasing = starts*,$ - sensor,pressure,measurement = bar$ - sensor,gas,measurement = gas*/min$ + sensor,pressure,measurement = bar$|Pa$ + sensor,volume,total_increasing = total*,m³$ + sensor,volume,measurement = m³$ + sensor,volume_flow_rate,measurement = m³/h$ + sensor,carbon_dioxide,measurement = CO2*,ppm$ sensor,humidity,measurement = humid*%%$ sensor,, = @@ -214,12 +217,12 @@ type_switch-list = # HA integration: the mapping list for (potentially) writable string entities containing a time value by field type, name, message, and unit. type_switch-w-time = - text,,,time = from,|to,|time2,|timer - text,,,time3 = time, + text,,,time = from,|to,|time2,|timer + text,,,time3 = time, type_switch-time = - sensor,,,time = from,|to,|time2,|timer - sensor,,,time3 = time, + sensor,,,time = from,|to,|time2,|timer + sensor,,,time3 = time, # HA integration: currently unused mapping lists for non-numeric/non-binary entities. #type_switch-string = @@ -379,6 +382,7 @@ def_global_running-payload = %global_prefix, "device_class":"running"%global_boolean_suffix def_global_version-topic = def_global_uptime-payload = %global_prefix, + "device_class":"duration", "state_class":"total_increasing", "unit_of_measurement":"s" }