Generic thermostat heat/cold tolerance and precision

Hi all!. I have two minor issues / doubts :slight_smile:

My thermostat setup:

  - platform: generic_thermostat
    name: Vijus
    heater: light.zigbeeonoff03
    target_sensor: sensor.temperature_vijauskamb_offset #sensor.temperature_vijauskamb
    min_temp: 5
    max_temp: 30
    cold_tolerance: 0.4 #set thermostat at 28 to start heating when it's 27 or less
    hot_tolerance: 0.4 # can turn of when bathroom is 29 and more 
    #target_temp: 21 #would reset to this after HA restart
    away_temp: 20
    precision: 0.1

Generic thesmostat manual example states the following:

For example, if the target temperature is 25 and the tolerance is 0.5 the heater will start when the sensor equals or goes below 24.5.

So I have two questions.

  1. Why did it start heating 22.0, but not on 22.1. Target temp: 22.5, while tolerance is 0.4?. See heating graph at the end
  2. Why precision is not working in UI? It’s still adjusting every 0.5 degrees, not 0.1

Thanks in advance! :slight_smile:

1 Like

Anybody? I am too interested…

1 Like

I also expected precision 0.1 to allow adjustment in 0.1 steps but you can only set in 0.5 steps. You can set other values such as 22.4 with a service call or Google assistant command last time I tried. If you then use the GUI to change you can change up and down to 21.9 or 22.9

The Thermostat card in Lovelace UI allows setting in 0.5 steps, although the climate behind it can be set to operate at 0.1 steps.
You can try the Simple Thermostat card in Lovelace UI (needs manual configuration) that allows setting at any step values you want, it can be configured separately, even to 0.1 steps.

1 Like

Answering the OP’s questions:

  1. There was a bug.
  2. It is actually, I have 0.1 in climate.yaml and can change it in Lovelace UI with 0.1 step (standard card)

I have the same issue. If it was a bug, I guess it’s back. I can only adjust the temperature of a generic thermostat card with 0.5 steps even though the thermostat is configured with 0.1 precision.

It is a known bug. I have a PR waiting to be merged since mid of October that will take care of that:

There seems to be a workaround though:


Wow… :rofl: Customization! Who would’ve thought?!? Thanks so much! Works perfectly. :+1: :wink:

FYI: PR has been merged now and will be part of the upcoming release.