Hilfe beim Code für Openhasp benötigt

Hallo zusammen,

ich versuche gerade ein Energie-Dashboard mit den Daten einer Anker-Solarbank auf ein 2,8" TFT Display ohne Touch zu bringen und nutze dazu HA mit Openhasp.

Ich komme auch ganz gut vorran, aber finde aktuell keine Lösung für 2 Anforderungen.

Ich lass die Farbe des Akkusymbol, je nach Wert der Variable ändern.
Das sieht wie folgt aus:
Im Fileeditor Openhasp:

{"comment":" -----------Grafik Batterie ------------"}
{"page":1,"id":101,"obj":"label","x":150,"y":75,"h":80,"w":60,"text":"\uE08E","text_color":"gray","bg_opa":0,"border_width":0, "text_font":80,"bg_color":"#2C3E50","text_color":"#FFFFFF"}

und in HA .yaml

      - obj: "p1b101"
        properties:
          "text_color": "{% if 75 >= states('sensor.solarbank_2_e1600_pro_ladestand') |int(0) %}green{% elif 49 < states('sensor.solarbank_2_e1600_pro_ladestand') |int(0) >= 30 %}orange{% elif 29 < states('sensor.solarbank_2_e1600_pro_ladestand') |int(0) >= 0 %}tomato{% else %}red{% endif %}"

Soweit so gut.
Aber wie kann ich den nun den Text in Form des Zahlenwertes auch farblich anpassen?

Aktuell sieht es so aus:
Im Fileeditor Openhasp:

{"page":1,"id":11,"obj":"label","x":178,"y":98,"h":30,"w":95,"text":"Akku %","align":0,"bg_color":"#2C3E50", "text_font":24, "text_color":"#FFFFFF"}

und in HA .yaml

      - obj: "p1b11"
        properties:
          "text": " {{ states('sensor.solarbank_2_e1600_pro_ladestand')}}"

Ich habe es schon mit dem gleichen Code, wie oben versucht, aber ohne Erfolg. Und ich weiß nicht, wie ich den Code anpassen muss.
Kann mir da jemand helfen?

Und des Weiteren würde ich gerne das Display nur zu einer bestimmten Uhrzeit ein und zu einer anderen wieder ausschalten.
Kann mir jemand erklären, ob und wie ich das schaffe?

Vielen Dank.

Grüße

Hallo Knallfrosch,

Bin leider nicht wirklich gut in .yaml Bedingungen. Die Textfarbe lege ich wie folgt fest:

      - obj: "p1b15"  
        properties:
          "val": '{{ 1 if states("light.laterne_2") == "on" else 0 }}'
          "text": '{{ "#FF6347 \uE6E8#\nLaterne 2" if is_state("light.laterne_2", "on") else "\uE335\nLaterne 2" | e }}'

Wobei das
image
die Farbe Tomato festlegt.

          "text": >
            {% if 75>=states('sensor.solarbank_2_e1600_pro_ladestand') |int(0) %}}
            {{ "#FF6347{ states('sensor.solarbank_2_e1600_pro_ladestand')}" | e }}
            {%-elif %}
            ........
            {%-endif %}


Eventuell geht es so?
Habe ich aber nicht getestet…
Wenn du es hinbekommst bitte den Code hier teilen :wink:

Das an und ausschalten bezieht sich nur auf das Display.

Dafür nutze ich eine Automatisierung:

description: "Display Umschalten"
mode: single
triggers:
  - trigger: time
    at: "12:00:00"
    id: an
  - trigger: time
    at: "13:00:00"
    id: aus
conditions: [  ]
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - an
        sequence:
          - type: turn_on
            device_id: 3642cfa5e26bf7a35f92f15919638850
            entity_id: 83307244cf843de78d21c5ad75d28758
            domain: light
      - conditions:
          - condition: trigger
            id:
              - aus
        sequence:
          - type: turn_off
            device_id: 3642cfa5e26bf7a35f92f15919638850
            entity_id: 83307244cf843de78d21c5ad75d28758
            domain: light

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)

1 „Gefällt mir“

Hi,

Danke für die Hilfe.
Ich werde es mir anschauen, versuchen umzusetzen und mich dann nochmal melden.

Grüße

Update:
Also, das “Problem” mit dem Display ein- und auszuschalten konnte ich nun umsetzen. Ich hatte allerdings den LED-PIN mit 3,3V verbunden, daher hat das nicht funktioniert.
Die Automatisierung funktioniert nun, aber nach dem Ändern der Verdrahtung. :slight_smile:

Allerdings bekomme ich das mit der Farbänderung des Text nicht hin.
Ich kann das mit deinem Codeschnipsel nicht anpassen, dass es funktioniert.

Falls hier jemand meinen Code so anpassen kann, dass es klappt, wäre ich sehr dankbar.

Meine Kenntnisse sind einfach nicht ausreichend.

Danke.

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)

Hallo,

Ich versuche es gerade nachzubauen, leider verstehe ich nicht ganz wann welche Farbe angezeigt werden soll.

  • Sensorwert > 75 = red
  • Sensorwert 75-50 green
  • Sensorwert 49-30 orange
  • Sensorwert 29-0 tomato

Ist das so richtig?

1 „Gefällt mir“

Fast :slight_smile:
Aber ich habe oben in meinem Code zu dem Icon auch noch ein Fehler.
Aber wie folgt soll es darstellen:

    Sensorwert > 75 = green
    Sensorwert 75-50 orange
    Sensorwert 49-30 tomato
    Sensorwert 29-0 red

Wobei die Zahlenwerte natürlich ja dann noch anpassbar sind.

Tada:

      - obj: "p1b11"  # Akkustandsanzeige Farbig in (green,orange,tomato,red)
        properties:
          "text": '{{ states("sensor.solarbank_2_e1600_pro_ladestand")}}'
          "text_color": >
# Sensorwert >75%
            {% if 75 < states('sensor.solarbank_2_e1600_pro_ladestand') |int(0) %}
            {{ "green" }}
# Sensorwert 75% - 50%
            {% elif 75 >= states('sensor.solarbank_2_e1600_pro_ladestand') |int(0) >= 50 %}
            {{ "orange" }}
# Sensorwert 49% - 30%
            {% elif 50 > states('sensor.solarbank_2_e1600_pro_ladestand') |int(0) >= 30 %}
            {{ "tomato" }}
# Sensorwert 29% - 0%
            {%-else %}
            {{ "red"}}
            {%-endif %}

Sehr cool!
Es funktioniert. :+1: :+1:
Ich hätte das niemals hingebracht.
Ich verzeifele sowieso schon immer an den x-fachen Klammern usw.

Vielen Dank für deine Unterstützung und Mühe die du dir gemacht hast.

Werde gleich mal noch ein Foto von meinem Projekt und dem Ergebnis deiner Hilfe einstellen.

Hi,

Sehr gerne.
Kannst dein Ergebnis auch gerne in folgendem Thread veröffentlichen:

OpenHasp Designbeispiele

Ah, den Thread kannte ich noch nicht.
Werde das Foto auch dann noch dort hochladen.

Den Farbwechsel habe ich über die Vorgabe der Zustände getestet, dass funktioniert perfekt.

Gerne auch deinen Gesamten Code…
Vielleicht will das noch jemand nachbauen.

Man kann übrigens auch Screenshots über den Browser machen:


image

Schon erledigt.

Stimmt, die Screenshotfunktion habe ich schon gesehen.
Warum einfach, wenn es auch umständlich mit der Smartphonekamera geht!? :smiley:

Screenshot 2024-12-15 at 15-03-39 screenshot

ich werde jetzt noch versuchen, die hier rot angezeigten Pfeile darzustellen.

Bei der unteren Wirklinie zwischen Haus und Strommast müssten die Pfeile aber dynamisch sein. Also wenn der Wert (hier 53W) positiv ist, zeigt der Pfeil in Richtung Haus und wenn er Wert negativ ist muss der Pfeil in Richtung Strommast zeigen.

Diese Abhängigkeit ist dann sicherlich komplizierter als die Farbzuweisung.

Wobei ich mal schauen muss ob ich nicht sogar die Pfeile aus der Font-Bibliothek nehme. Dann könnte ich das umsetzen, wie bei dem Icon für den Akku.

Ich melde mich nochmal, wenn ich das Grundgerüst stehen habe. :smiley:

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)