Filtrar valores de sensores a cero en Home Assistant

Tengo actualmente cuatro sensores Xiaomi para la temperatura y la humedad en varias zonas y cada vez que reiniciaba la maquina virtual o reiniciaba Home Assistant devolvían valores a cero , después de mirar que posible solución podía encontrar decidí filtrar los valores de entrada , si estaba a cero dejaría el valor anterior del sensor

Este es el código que tenia antes de filtrar

  - platform: template
    sensors:
      temperatura_trastero_calibrada:
        friendly_name: 'Temperatura Trastero'
        value_template: >
            {% set T = (states.sensor.temperatura_trastero_temperatura.state|float) %}
            {% set Ajuste  =  0.0 %}
            {% set Resultado =  T + Ajuste | round(1)  %}
            {{Resultado |round(1) }}
        unit_of_measurement: '°C'
        icon_template: mdi:thermometer

Y aquí el código con el filtro puesto , se acabaron los valores a cero al reiniciar

  - platform: template
    sensors:
      temperatura_trastero_calibrada:
        friendly_name: 'Temperatura Trastero'
        value_template: >
          {% if states('sensor.temperatura_trastero_temperatura') | float == 0 %}
            {{ states('sensor.temperatura_trastero_calibrada') }}
          {% else %}                
            {% set T = (states.sensor.temperatura_trastero_temperatura.state|float) %}
            {% set Ajuste  =  0.0 %}
            {% set Resultado =  T + Ajuste | round(1)  %}
            {{Resultado |round(1) }}
          {% endif %}  
        unit_of_measurement: '°C'
        icon_template: mdi:thermometer

Este es el resultado tras varios días en funcionamiento del filtro , podemos observar el antes y el después

Deja un comentario