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
Lenguaje del código: YAML (yaml)

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
Lenguaje del código: YAML (yaml)

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

Deja un comentario