HVAC mapping question


i’m the developer of vaillant component. I have some doubts about how to map the vaillant mode to HA HVAC modes and I would like your help :slight_smile:

So let me try to explain the vaillant modes i’m struggling with.

From heating point of view, you can configure 2 temperatures (setback and setpoint) also named DAY temperature and NIGHT temperature.
From cooling point of view, you can only configure one (setpoint) temperature.

Then there are different modes:

  • AUTO mode, very common, based on a schedule, the installation switch from setpoint to setback temperature. (For cooling, it switches from setpoint to no cooling).
  • DAY mode. The setpoint temperature will be applied as long as the mode is active.
  • NIGHT mode. The setback temperature will be applied as long as the mode is active.
  • QUICK_VETO: this is actually an override of all the modes. You can override the target temperature for a certain amount of time and after that time the system will go back to what was set previously. (As far as I know, this is only for heating).

So now I’m wondering how to map DAY, NIGHT and QUICK_VETO. As far as I understand, theses 3 modes could be mapped to HVAC_MODE_HEAT (only focusing on heating here, but same question for cooling), according to the doc The device is set to heat to a target temperature.. But what if it actually doesn’t heat ?

Actually, the annoying thing to me are the color in the UI. If I set DAY mode and if the current temperature is higher then the setpoint, it won’t heat, but the color will still be orange in the UI, giving the impression something is heating.



Sorry for my double post, but I have another question.

Vaillant has the concept of zones (an area you can heat or cool). A zone can have 2 functions: heating or cooling (or both), depending on your installation. The API provides the active function of the zone (heating, cooling or standby). But cooling and heating are configured separately…

So I would like to know how I can map the heating and cooling association to a single HVAC mode in HA. Here are some examples:

  • cooling is AUTO, heating is AUTO, function is standby: what should be the HVAC mode ?
  • cooling is OFF, heating is AUTO (or the opposite), function is standby: what should be the HVAC mode (AUTO or OFF ?)

I really would like to only have one climate entity per zone which can handle heating and cooling. This is also possible to split a zone into 2 climate entities, one responsible for cooling, the other one for heating, but I find that really unfriendly and It also breaks the concept of HVAC (IMO).



This is me again :stuck_out_tongue:

I really would like to have answers or tips for my question. This is actually blocking my devs :frowning:

Who know who I can ping to get some help on that topic ?

Maybe @balloob or @pvizeli (sorry to directly ping you :frowning:), I saw you did some work on climate. I know this is a vaillant api’s specific question/analysis, maybe you can give me some tips or ping somebody else who can help me.



You’re confusing HVAC modes and preset modes. Day/night/quick veto are preset modes.

If the device is going to heat if target temp is not reached, HVAC mode is heat.

HVAC action is if it is currently heating or not.

You should not be worried about the UI colors and instead represent the data as accurate as possible from the API. If the colors are still wrong, then open an issue there.

For more descriptions, see the climate docs https://developers.home-assistant.io/docs/core/entity/climate#hvac-modes

First, thanks for your reply ! Second, thanks for reading all tu stuff :slight_smile:
I think your answer opened my eyes. I was focused on trying to map all the modes coming to vaillant to an HA HVAC modes. Actually all the vaillant modes should be mapped to an HVAC mode and/or presets.

Regarding to your answer, I have an extra question: you said DAY/NIGHT/QUICK_VETO are presets (you mean custom presets ?), but then, why not AUTO (~= COMFORT preset) ?

I also have an extra question regarding the split of the configuration at vaillant side (cooling and heating are 2 separate config). Actually, from the API I receive 2 different modes - one for heating and one for cooling - and I also receive what the device is doing (heat, cool or idle).
How would you map this kind of association (for example, you could have DAY (for heating) and ON (for cooling) ?