V1.3.0 online - Divoom Pixoo 64 Integration

Moin, die Änderung zum config Flow haben wir mit 1.5.0 ich glaube ein gespielt wir sind jetzt bei 1.10.0 da hast du bisher einiges verpasst

Ja, was soll ich sagen,lief ja alles so wie es sollte. Habe jetzt eine neue Heizungsanlage bekommen und schon hab ich wieder Lust was an Homeassistant zu schrauben.

- page_type: components
  components:
    - type: text
      content: "{{ states('sensor.tasmota_sml_power_curr') | float(0) }}"
      position:
        - 20
        - 6
      font: GICKO
      color:
        - 202
        - 14
        - 77
    - type: text
      content: "{{ states('sensor.balkonsolar_power') | float(0) }}"
      position:
        - 20
        - 22
      font: GICKO
      color:
        - 242
        - 229
        - 40
    - type: text
      content: "{{ states('sensor.tasmota_sml_total_in') | float(0) }}"
      position:
        - 20
        - 38
      font: GICKO
      color:
        - 85
        - 85
        - 85
    - type: text
      content: "{{ states('sensor.solvisben_aussentemperatur') | float(0) }}"
      position:
        - 20
        - 54
      font: GICKO
      color:
        - 250
        - 136
        - 10
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Verbrauch2.png
      position:
        - 0
        - 0
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Solar2.png
      position:
        - 0
        - 16
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Zaehler2.png
      position:
        - 0
        - 32
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Temperatur2.png
      position:
        - 0
        - 48
    - type: conditional
      conditions: null
    - entity: switch.steckdose_keller
      state: "on"
      components: null
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Entfeuchter2.png
      position:
        - 48
        - 48
    - type: conditional
      conditions: null
    - entity: switch.steckdose_keller
      state: "off"
      components: null
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Entfeuchter2Off.png
      position:
        - 48
        - 48

Ich möchte mir rechts unten ein Icon anzeigen lassen wenn der Zustand der Steckdose "on"ist. Wenn der Zustand “off” ist soll ein ausgegrautes Icon angezeigt werden. Kann ich das so machen?

Hey @spidy ich habe hier ein Ausschnitt mit if Bedingungen beim - Type: image

  - type: image
    image_path: "{{ '/config/custom_components/divoom_pixoo/img/akku80-100.png' if storage|int >= 80 else '/config/custom_components/divoom_pixoo/img/akku60-80.png' if storage|int >= 60 else '/config/custom_components/divoom_pixoo/img/akku40-60.png' if storage|int >= 40 else '/config/custom_components/divoom_pixoo/img/akku20-40.png' if storage|int >= 20 else '/config/custom_components/divoom_pixoo/img/akku00-20.png'}}"
    position: [2, 17]

Anstelle von Storage kannst du dort direkt dein states() verwenden oder du schreibst die eine variable

Probiere dich mal aus ansonsten helfe ich am späten Abend gerne

EDIT: @spidy

so hier nochmal ein update jetzt habe ich mehr Zeit, probier es mal so:

- page_type: components
  variables:
    steckdose_keller: "{{ states('switch.steckdose_keller') }}"
  components:
# dein bisheriger code
    - type: image
      image_path: "{{ '/config/custom_components/divoom_pixoo/img/Entfeuchter2Off.png' if  steckdose_keller = off else '/config/custom_components/divoom_pixoo/img/Entfeuchter2.png' }}"
      position:
        - 48
        - 48

Dankeschön erstmal für Deine Mühe.
Ich habe die Variable am Anfang definiert. Wenn ich jetzt den Rest einfüge macht der Parser da folgendes draus:

- page_type: components
  variables:
    steckdose_keller: "{{ states('switch.steckdose_keller') }}"
  components:
    - type: text
      content: "{{ states('sensor.tasmota_sml_power_curr') | float(0) }}"
      position:
        - 20
        - 6
      font: GICKO
      color:
        - 202
        - 14
        - 77
    - type: text
      content: "{{ states('sensor.balkonsolar_power') | float(0) }}"
      position:
        - 20
        - 22
      font: GICKO
      color:
        - 242
        - 229
        - 40
    - type: text
      content: "{{ states('sensor.tasmota_sml_total_in') | float(0) }}"
      position:
        - 20
        - 38
      font: GICKO
      color:
        - 85
        - 85
        - 85
    - type: text
      content: "{{ states('sensor.solvisben_aussentemperatur') | float(0) }}"
      position:
        - 20
        - 54
      font: GICKO
      color:
        - 250
        - 136
        - 10
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Verbrauch2.png
      position:
        - 0
        - 0
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Solar2.png
      position:
        - 0
        - 16
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Zaehler2.png
      position:
        - 0
        - 32
    - type: image
      image_path: /config/custom_components/divoom_pixoo/img/Temperatur2.png
      position:
        - 0
    - type: image
      image_path: >-
        {{ '/config/custom_components/divoom_pixoo/img/Entfeuchter2Off.png' if 
        steckdose_keller = off else
        '/config/custom_components/divoom_pixoo/img/Entfeuchter2.png' }}
      position:
        - 48
        - 48

So wird mir kein Bild angezeigt. Wenn ich allerdings == off eingebe, wird das 1. Bild angezeigt.

Probiere es mal so aus

    - type: image
      image_path: >-
        {{ '/config/custom_components/divoom_pixoo/img/Entfeuchter2Off.png' if 
        steckdose_keller = 'off' else
        '/config/custom_components/divoom_pixoo/img/Entfeuchter2.png' }}

Danke nochmal! Jetzt funktioniert es. Es hat an der Variable gelegen. Ich habe sie ausgelesen und anzeigen lassen. Das ergab den Wert “unknown” die Entität die der Variablen zugrunde liegt heißt " switch.steckdose_keller_switch" D.h. das zweite"switch"fehlte.
Vielen Dank für Deine Hilfe! :grinning:

1 „Gefällt mir“

(Beitrag vom Verfasser gelöscht)

Tolle Arbeit, Gicko! Nur für deine Integration des Pixoo 64 in Homeassistant habe ich mir das Pixoo 64 erst geholt. Nach einigen Startschwierigkeiten habe ich mir jetzt aber schon etwas für mich Brauchbares hingebastelt. Jedoch stoße ich an einige Grenzen u. A. was deine Schriftart “gicko” angeht. Mir fehlen das Sonderzeichen für z. B.: Grad, Euro, Prozent. Zudem wären Kleinbuchstaben hilfreich.

Außerdem habe ich Probleme mit den Bildchen. Ich habe mir testweise einen 9x9 Pixel großen Blitz als png erstellt. Wenn ich diesen in der Konfi referenziere, hängt sich das Pixoo auf. Kannst du mir das ggf. noch einmal helfen, wie ich die Bildchen richtig erstelle? Ich habe das an dieser Stelle mit einem Onlinetool gemacht.

Ansonsten erst einmal soweit; großartige Arbeit und vielen Dank für deine Mühen! Ein Sternchen habe ich auf Github natürlich da gelassen!

Nachtrag:
Habe mich da etwas reingefuchst und habe die Schriftart um die gewünschten Sonderzeichen selbst ergänz. Zudem habe ich die fivepx Schriftart, bzw. dessen Inhalt komplett gelöscht und mir eine eigene Schriftart erstellt, mit der man nun einfache Symbole auf dem Pixoo anzeigen lassen kann. Eine komplett eigene Schriftart erstellen habe ich leider nicht hinbekommen.

Hier das neue eleven_pix, evt. kann das jemand gebrauchen:

ELEVEN_PIX =  {'B': [0,0,0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,8],
               'L': [0,0,1,1,1,1,0,0,0,1,1,1,1,1,1,0,0,1,0,0,0,0,1,0,0,1,0,0,0,0,1,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,8],
               'D': [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,1,0,0,0,0,1,0,0,1,1,1,1,1,1,0,8],
               'S': [0,0,1,0,0,1,0,0,0,1,1,1,1,1,1,0,0,1,0,0,0,0,1,0,0,1,1,1,1,0,0,0,0,0,0,1,1,1,1,0,0,1,0,0,0,0,1,0,0,1,1,1,1,1,1,0,0,0,1,0,0,1,0,0,8],
               'K': [0,0,0,1,1,1,1,0,0,0,1,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,1,1,0,8],
               'T': [0,0,1,1,1,1,0,0,0,0,1,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,0,1,0,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,8],}

Und hier die Sonderzeichen, die ich dem font "gicko" hinzugefügt habe:
 '€': [0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 6],
               '%': [1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 6],
               '°': [1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6],

:crayon:by HarryP:
. Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)
. Codezeilen formatiert (bitte immer in </> einbinden)

Hey,

Kannst du die Integration des Displays auch für den iobroker integrieren ?

Das wäre als Konkurrenz zu homeassistant super und man muss nicht beides betreiben.

Hallo!
Ich habe die Integration auf die neuste 1.11.1 geupdatet. Leider läuft bei mir jetzt wieder garnichts mehr.
Irgendeine Idee?
LG Spidy

hallo zusammen
Als newbie habe ich drei Fragen:

  1. ich habe plötzlich eine Dezimalstelle, obwohl die Entität dies nicht ausgibt. Die Dezimalstelle will ich jedoch nur in der Akkuladung sehen. Wie behebe ich das?
  2. ist es möglich tausender Trennzeichen einzufügen?
  3. wie kann ich die Akkuladung invertieren? ich habe bisher nur binäre Ausgaben invertieren können.
    Danke!

Zu 1.: Anstatt einem | float ein | int hinter deinen Sensor setzen.
Zu 3.: einfach {{ ( states('sensor.xyz') | float(0) ) * -1 }}

Vielen Dank. Es hat geklappt!

Das mit der Dezimalstelle konnte ich nicht beheben. dürfte mit der Dezimalstelle des Akkustandes sein.
Auch stürzt das Divoom manchmal ab, wenn es nicht weis ob es die Zahl null als 0 oder -0 anzeigen soll.