IF - ELSE clauses in template - and how to use when created?

Yes, your code goes there but it must be indented by two spaces:

  - platform: template
    sensors:
      temperature_HVAC:
        friendly_name: "Whatever"
        value_template: >-
          {% set t = states('sensor.pana_mek_outside_temperature') | float(0) %}
          {% if 0.1 > t > -2.1 %} 18.5
          {% elif -2.3 > t > -4.1 %} 19
          {% elif -4.3 > t > -6.1 %} 20
          {% elif -6.3 > t > -8.1 %} 21
          {% elif -8.3 > t > -10.1 %} 22
          {% elif -10 > t > -12.1 %} 23
          {% elif -2.3 > t > -14.1 %} 24
          {% elif -14.3 > t > -16.1 %} 25
          {% elif -16.3 > t > -18.1 %} 26
          {% elif -18.3 > t > -20.1 %} 28
          {% else %} 22
          {% endif %}
2 Likes