kamaradclimber / heishamon-homeassistant

An integration for heatpumps handled by heishamon
Apache License 2.0
44 stars 24 forks source link

Breaking change/ Can climate cards be used in HA anymore #106

Closed MEKadan closed 1 year ago

MEKadan commented 1 year ago

Breaking change: the domestic water heater entity is now represented the correct entity type. The "climate" entity will disappear

Does this mean I cannot use climate cards anymore, e.g. Simple Thermostat.

image

geduxas commented 1 year ago

It's changed with 2023.9 homeasistant, new class has been created water_heater.. it's almost same as climate.. i think it's depends to your climate card possibilities. Control will be renamed after update, so you will need reconfigure your card too.

kamaradclimber commented 1 year ago

ksnip_20230909-125748

I've just tested with the new water_entity, simple-thermostat works correctly

MEKadan commented 1 year ago

OK, thanks, it seems to work. What is the leftmost of those big numbers (44.0 in the picture)?

EDIT: there seems to be 3 modes selectable: performance, eco and super eco. These, however, are not displayed in the card as control buttons below? This probably goes to Simple-Thermostat code owner...

kamaradclimber commented 1 year ago

The 44° corresponds to the low end of the heater range (it will start heating when temperature in the tank reach that value). I'm not sure HA knows how to change this value at the moment for heishamon but it could be doable.

And yes, modes are driven easily from the standard HA card

MEKadan commented 1 year ago

Actually the settings do not work. Trying to adjust from the Simple-Thermostat card results in

Referenced entities water_heater.panasonic_aquarea_main_dhw_target_temp are missing or not currently available

error in the log and the value does not change.

Secondly, and more importantly: The leftmost value I also expected to be as you described , and was hoping to get a description of the inner logic behind it. Obviously it is: Target value + delta, where delta is a negative value describing temp drop to start heating again. Setting a value in the leftmost value then alters the delta?

Unfortunately, this is not that simple. For target temps over 51 deg the logic works, IF the external resistor is enabled. If it is not the logic is: reheat start temp = (target value OR 51, which is lower) + delta and then reheat start when temp drops one degree below this. This is based on my one monitoring, i did not find anything about this in the manuals.

E.g. for target temp 55 and delta -3 the reheat start temp would be 51 (NOT 55) - 3 = 48 deg. Then when the temp drops from 48 to 47, reheating starts.

I have Aquarea H-series T-CAP IDU: WH-SXC09H3E8 ODU: WH-UX09HE8 connected to external boiler

However, and regardless of the unit type, in SOME units and SOME setting combinations the logic could be as described or something else. I do not know. Still it opens a question, is it useful to try to set the target temp and reheat temp in general like now in the integration (actually in the card) , because the outcome may vary? On the other hand, this should also go to the dev of Simple-Thermostat. Since it has been developed for heat pumps, it is probably not in their interest to take into consideration all the other details that may come from whataever-they-may-be - cases people try to utilize the card

Thirdly, after changing the entity from climate.panasonic_aquarea_main_dhw_target_temp to water_heater.panasonic_aquarea_main_dhw_target_temp the Simple-Thermostat seems not to be recognizing e.g. the modes anymore and HA original Thermostat card does not recognize water_heater.panasonic_aquarea_main_dhw_target_temp at all.

Just as an idea thrown, could it be worth of the effort to also develop a card for HA for this integration? Most people might be using the in-build thermostat -like card, entities card e.g. e.g., though, so probably not.

kamaradclimber commented 1 year ago

Thanks for your feedback. Indeed the lower bound is target temperature + delta. When I wrote HA does not know how to change it, it's because I've not wired anything to react to a change on this setting yet.

I'm not willing to develop a lovelace card but if someone does it I would surely make what's necessary to collaborate easily.

kamaradclimber commented 1 year ago

Actually, I think it's something we cannot control via HA main card nor with simple-thermosthat so https://github.com/nervetattoo/simple-thermostat/blob/master/README.md#usage-of-the-control-config is probably the right way to disable this view.

geduxas commented 1 year ago

@kamaradclimber yes you're right, this integration requires custom thermostat card.. i think it could be forked from native HA, or simple thermostat and made changes.. but which is best one? :)

geduxas commented 1 year ago

@kamaradclimber i have litle bit looked around for water_heater component.. also looked for other integrations officialy in HA, and have some ideas for DHW implementation.. i think it beeter to use state values to directly config heatpump.. Here is available states in component:

VALID_STATES = {
    STATE_ECO,
    STATE_ELECTRIC,
    STATE_GAS,
    STATE_HEAT_PUMP,
    STATE_HIGH_DEMAND,
    STATE_OFF,
    STATE_ON,
    STATE_PERFORMANCE,
}

state on/off is self explain. State_heat_pump.. it could be safe ranges for heatpump (30-50) with normal delta value maybe 5k? State_ECO it could be with bigger delta, 10k? and maybe with lower reheat value? 30-40?. STATE_HIGH_DEMAND force DHW? or decrease reheat delta. I would stick to Force DHW, to reheat on demand. STATE_PERFORMANCE it could be for lower delta, 2-3k? STATE_ELECTRIC could be available if heat resistor is enabled for DHW, and user could turn on to use it, also range should increase to 60-65 deg.