Generic Thermostat Presets

Hey community

This may sound like a stupid question, but so far, I didn’t find any answer on that.
How can I create a preset for the generic_thermostat climate component?
So far I only have away and normal with no clue where they’re from.

  - platform: generic_thermostat
    name: Heating
    heater: switch.heating
    target_sensor: sensor.inside_temperature
    target_temp: 22.5
    min_temp: 15
    max_temp: 25
    away_temp: 16
    cold_tolerance: 0.3
    hot_tolerance: 0.0
      seconds: 30

Could one of you direct me to the appropriate docs?

Still no idea :frowning:

Hey, I’m looking for the same thing. Wondering how the things on your side, have you found instructions?

Preset Modes are defined by each climate integration.

For example, the Ecobee integration contains several Preset Modes whereas the Generic Thermostat integration contains just two: Away and None. There’s a service call to set a Preset Mode, but not to create a new mode.

1 Like

Hey @LukasQ did you ever figure this out? I am looking for the same thing.

Unfortunately not. Seems like we have to open a feature request.

Count me in…I need presets which would be changed with the electricity tariff price :slight_smile:

Might be worth looking at Schedy which is a nice way to programatically change the set temperatures based on timings / other sensor states.

There is one Pull Request for adding presets in the configuration, I hope it will be merged soon:

do you have found a solution ? The generic Thermostat doc say always only away preset mode.
Since a long time I use set temperature in my programmation instead of this, but it will be nice to have it

Looks like there’ll be more presets in an upcoming release: Generic thermostat presets by brianegge · Pull Request #56080 · home-assistant/core (

1 Like

Looking for the same thing and seeing all these comments tell me that Hass should really do something to makes the heating management easier and already integrated.
We are too dependent of external library to do something that should be considered as a basic of Home Automation…

I do not know if i understand your problem, but preset modes will be added if there is a set temperature for these modes like:

away_temp: 15
sleep_temp: 14

1 Like

I can confirm this.

May I get your confirmation:
When you are within a certain preset, change the target temp, then change the preset and then return to the previous preset… the target temp will then always be set to temperature configured within yaml for the preset-mode, not to the last temperature manually set for the preset-mode within the UI. Only the preset “none” returns to the previous set temperature within the UI within the preset “none”.

My question:
Is there any way to change the target_temp of a preset for the user within the UI or can the target_temp of a preset be changed via service.
I think this is not possible.

Did anyone find an answer on how to add new preset_modes? I have some Tuya heated towel radiators. All works fine except the preset modes in Home Assistant do not align with those on the device. The only way I can change the preset mode is by creating a scene in SmartLife and calling that scene from HA.

As you can see from screenshot, all the modes on the device show correctly within HA e.g. antifreezin, but because eco is the only preset mode defined with the service, any attempt to trigger a different preset mode fails with an error saying only available mode is eco.

Feels like it should be really simple to add to the preset_modes list but for the life of me I can see where. Any help would be appreciated. Thanks.