Couleur icone en fonction d'une valeur numérique de sensor

Si tu ne nous mets pas le code de ta carte ça va être compliqué de t’en dire plus.

la carte en elle-même n’a pas d’intérêt cest un test pour arriver (un jour) a comprendre la syntaxe et a faire des test à partir de valeurs d’entité numériques

j’ai de très jolies persos (chacun ses goûts) à partir de valeurs ‹ texte › : tempo, alerte météo mais je n’arrive à rien si le déclencheur (states(entity)) est numérique

type: custom:mushroom-template-card
entity: sensor.t_h_salon_temperature
primary: essai couleur icone
secondary: "{{ states('sensor.t_h_salon_temperature') }}"
icon: mdi:power-off
icon_color: >
  {% if states('sensor.t_h_salon_temperature')|int(0) < 15 %}
    blue
  {% elif (states('sensor.t_h_salon_temperature')|int(0) => 15 and
  states('sensor.t_h_salon_temperature')|int(0) <= 19) %}
    orange
  {% elif (states('sensor.t_h_salon_temperature')|int(0) > 19 and
  states('sensor.t_h_salon_temperature')|int(0) <= 25) %}
    yellow 
  {% elif states('sensor.t_h_salon_temperature')|int(0) > 25 %}
    red
  {% endif %}

Tu as un problème dans tes comparaisons :

states('sensor.t_h_salon_temperature')|int(0) => 15

La syntaxe correcte est :

states('sensor.t_h_salon_temperature')|int(0) >= 15

Ok, bien vu mais il doit y avoir une autre erreur , parce que maintenant j’ai bien la couleur > 15 MAIS comme il fait 19, 7 je devrais être dans la 3ème condition or là l’icone est en orange (soit pour une valeur entre 15 et 19)

au temps pour moi à 20° tout rond c’est passé dans la bonne couleur, donc c’est un problème de décimale : 19,7 c’est 19 pour le code . Si je mets FLOAT à la place de INT et que je compare avec des valeurs décimales (19,00) ça va marcher ?

Oui si tu veux du décimal tu mets float a la place de int.
Pas besoin de changer tes valeurs cibles.

1 « J'aime »

parfait merci beaucoup, ça faisait un moment que je galérais là dessus