Icon Farbe in einer Template Mushroomcard nach Temperatur ändern

Schönen Tag euch allen!
Kann mir jemand im Forum einen Tipp geben, wie ich die Iconfarbe nach bestimmten Temperaturwerten ändern kann. Mit on bzw. off Status bekomme ich das hin, aber leider nicht mit Temp.- Grenzwerten.
Ich sage schon mal im Voraus vielen Dank!
So sieht mein aktuelles nicht funktionierendes Template aus:

{% if is_states(‘sensor.ble_temperature_t_and_h_pv_raum’) | float <= 28 %}
green
{% elif is_states(‘sensor.ble_temperature_t_and_h_pv_raum’) float >= 29 %}
red
{% endif %}

1 „Gefällt mir“

is_states ist falsch. Frag nur states ab. Und vor dem zweiten float fehlt der |.
Was soll zwischen 28 und 29 Grad passieren?

Vielen Dank für die schnelle Lösung, das if musste weg. Die Werte sind nur durch das ewige rumprobieren willkürlich gelegt. Ich will bis zur Raumtemperatur von 28 Grad das grüne Icon und ab 28.01 das rote Icon.
Das funktioniert Dank deiner Hilfe jetzt prächtig.

Das if muss weg? Was hast du mit dem elif und endif gemacht?

Das ist geblieben. Ich habe nur das is_ weggenommen. Das ist das Template das funktioniert.

{% if states(‘sensor.ble_temperature_t_and_h_pv_raum’) | float <= 26 %}
green
{% elif states(‘sensor.ble_temperature_t_and_h_pv_raum’) | float >= 26.01 %}
red
{% endif %}

Alles klar, dann passt es.

Danke nochmal!
Ich bastle da schon ewig rum und in zwei Minuten ist mit Fachkompetenz alles erledigt. :grinning:

1 „Gefällt mir“

ein “elif” braucht es doch gar nicht, ein “else” reicht doch vollkommen.

Servus,
habe etwas aehnliches in einer normalen Lovelace entity card probiert. Da wollte ich dynamisch das icon aendern, je nachdem ob Tuer auf oder zu. Da die Tuer eine Schiebetuer ist will ich das sliding-door icon verwenden. Aber bei offener Tuer wechselt es nicht in “sliding door open”.

type: entities
entities:
  - entity: binary_sensor.haustur_sensor_state_any
    icon: |-
      {%if is_state("binary_sensor.haustur_sensor_state_any", "open") %}
        mdi:door-sliding-open
      {% else %} 
        mdi:door-sliding
      {% endif %}

Klappt das nicht mit den regulaeren Karten und man muss/sollte Mushroom Cards verwenden?

Sicher das du mit “open” arbeiten musst? Mein Sensor zeigt zum Beispiel “on” an. Schau mal unter Entwicklerwerkzeuge - Zustände welche Zustände dein binary_sensor hat/kennt.

Danke für den Tipp, das geht natürlich auch, aber ich bin am basteln damit am Ende 3 Farben zu unterschiedlichen Temperaturen angezeigt werden können. Ich glaube dann geht das nicht mehr mit else. Bin aber nicht so firm, wenn es um Templates geht. Wichtig ist für mich mal, dass ich durch “sirector” eine Lösung für mein Problem habe.

@maxe hat eigentlich recht. Es gibt
if - else - endif
oder
if - elif - … - else - endif
Es endet also normalerweise mit else. Funktioniert aber auch so.

1 „Gefällt mir“

Oder kurz und bündig:
(vorrausgesetzt der Sensor ist als entity definiert)

{{ ‘orange’ if states(entity) | float > 0 else ‘blue’ }}

Icon:
{{ ‘mdi:radiator’ if states(entity) | float > 0 else ‘mdi:radiator-off’ }}

Hallo Leute!Hänge mich ans Thema.Ziel:Temperatur in °C anzeigen,Icon(Klassisches Thermometer),Farbe wechseln bei 0,12,20 und 26 °C in blaugrün,orange und rot(Beispiel).
Es wird bei mir immer nur der erste “wahr” Wert angezeigt.D.h. bei 21°C wird die Farbe von größer 12 °C angezeigt und größer 20°C ignoriert.Auch die Isttemperatur in der 2ten Zeile schaffe ich nicht.(template card)

Wie sieht dein if else aus?

Du müsstest den größten Wert zuerst abfragen und dann der Reihe nach runter, also 26, 20, 12, 0. Wenn du andersrum abfragst, stimmt das erste wahr (über 0 bzw. über 12) und er prüft den elif bzw. den else nicht mehr.

Danke für den Tipp.Werde ich versuchen.Klingt logisch.

Moin,

ich würde mich gern mal hier mit Anhängen ich möchte gern wenn das Thermostat geöffnet ist die Farbe des Temperaturicons ändern, im Template Test wird mir der richtige Wert zurück gegeben…leider klappt es nicht:

    cards:
      - type: custom:mushroom-entity-card
        entity: sensor.temperatursensor_charly_temperatur
        primary_info: state
        secondary_info: name
        name: Temperatur
        icon_color: |-
          {% if is_state('valve.charly_valve', 'open') %}
            green         
          {% elif is_state('valve.charly_valve', 'close') %}
            yellow
          {% endif %}

:crayon:by HarryP: Code-/Logzeilen formatiert (bitte immer in </> einbinden)

        icon_color: |-
          {%if is_state("valve.charly_valve", "open") %}
            green
          {% else %} 
            red
          {% endif %}

Meine Alternative funktioniert auch nicht :pensive:


 icon_color: |-
          {% if states("sensor.charly_valvetappet") | float <= 5 %}
          green
          {% elif states("sensor.charly_valvetappet") | float >= 5 %}
          red
          {% endif %}

Template Editor gibt auch hier die richtigen Werte zurück, leider geht es nicht!

:crayon:by HarryP: Zusammenführung Doppelpost

gibt es die Entität wirklich?
Wenn ja, bekommt sie auch wirklich den Status open?

Edit: ich vermute die mushroom-entity-card unterstützt bei der icon-color kein templating.

Du könntest es dann über card_mod machen:

card_mod:
  style: |
    ha-card {
      {% if states("sensor.charly_valvetappet") | float <= 5 %}
        --card-mod-icon-color: green;
      {% else %}
        --card-mod-icon-color: red;
      {% endif %}
    }

Vielen Dank! Ja die Entität existiert wirklich, habe dies geprüft zwecks Zustände etc. Wenn ich dies in einem Mushroom-Template Card baue funktioniert es mit den Farben.

Wo trägt man den card_mod ein? Ich möchte ja nur das Temperatursymbol färben, sofern dies überhaupt geht!

type: custom:stack-in-card
cards:
  - type: grid
    square: false
    columns: 2
    cards:
      - type: custom:mushroom-entity-card
        entity: sensor.temperatursensor_charly_temperatur_v2
        primary_info: state
        secondary_info: name
        name: Temperatur
        icon_color: red
      - type: custom:mushroom-entity-card
        entity: sensor.temperatursensor_charly_luftfeuchtigkeit
        primary_info: state
        secondary_info: name
        name: Luftfeuchte
        icon_color: blue
      - type: custom:mushroom-entity-card
        entity: sensor.charly_valvetappet
        primary_info: state
        secondary_info: name
        name: Heizung
        icon_color: yellow
      - type: custom:mushroom-entity-card
        entity: binary_sensor.fensterkontakt_charly_offnung
        icon: mdi:window-closed-variant
        icon_color: green
        name: Fenster