Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. ePaper Statusdisplay Hausflur

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

ePaper Statusdisplay Hausflur

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
62 Beiträge 18 Kommentatoren 17.9k Aufrufe 27 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • H Hansi1234

    @draexler siehst du wie lange es noch halten sollte?

    draexlerD Nicht stören
    draexlerD Nicht stören
    draexler
    schrieb am zuletzt editiert von
    #27

    @hansi1234 nö, leider nicht. Ich sehe nur die Spannung die noch anliegt und die ist immer gleich seit Wochen.

    1 Antwort Letzte Antwort
    0
    • D Offline
      D Offline
      DoHo
      schrieb am zuletzt editiert von
      #28

      Echt super. Meine Hardware ist mittlerweile auch angekommen und ich mache die ersten Schritte mit dem ESP32 Board.

      draexlerD 1 Antwort Letzte Antwort
      0
      • D DoHo

        Echt super. Meine Hardware ist mittlerweile auch angekommen und ich mache die ersten Schritte mit dem ESP32 Board.

        draexlerD Nicht stören
        draexlerD Nicht stören
        draexler
        schrieb am zuletzt editiert von
        #29

        90 Tage also 3 Monate und es läuft immer noch. MEGA Begeistert

        draexlerD 1 Antwort Letzte Antwort
        1
        • draexlerD draexler

          90 Tage also 3 Monate und es läuft immer noch. MEGA Begeistert

          draexlerD Nicht stören
          draexlerD Nicht stören
          draexler
          schrieb am zuletzt editiert von
          #30

          So Freunde der Automatisierung...
          Gestern ist es passiert -> 98 Tage und die Akkus waren leer.

          Also für die wo es interessiert, mit meinem Deep Sleep Setup kommt man bei einer stündlichen Aktualisierung des Displays und einer "Run Duration" von 15 Sekunden ca. 100 Tage.
          Für mich ein Super Ergebnis :+1:

          1 Antwort Letzte Antwort
          3
          • D Offline
            D Offline
            DoHo
            schrieb am zuletzt editiert von
            #31

            Hallo @draexler ,

            kannst du mir ein gutes Tutorial empfehlen? Ich bekomme einfach keinen Text auf dem Display angezeigt. Ich konnte den ESP32 in ESPHome integrieren, bekomme es aber einfach nicht hin, dass auch nur irgendetwas angezeigt wird. Hier mal meine YAML:

            esphome:
              name: esphome-web-26a54c
              friendly_name: E-Paper
            
            esp32:
              board: esp32dev
              framework:
                type: arduino
            
            # Enable logging
            logger:
            
            # Enable Home Assistant API
            api:
            
            ota:
            
            
            wifi:
              ssid: !secret wifi_ssid
              password: !secret wifi_password
            
              # Enable fallback hotspot (captive portal) in case wifi connection fails
              ap:
                ssid: "Esphome-Web-26A54C"
                password: "jeIX4go8jH8i"
            
            captive_portal:
            
            # Example configuration entry
            font:
              - file: 'fonts/Comic Sans MS.ttf'
                id: font1
                size: 8
                   
            spi:
              clk_pin: 5
              mosi_pin: 19
              
            display:
              - platform: waveshare_epaper
                id: epaper
                cs_pin: 20
                busy_pin: 39
                reset_pin: 14
                dc_pin: 22
                model: 7.50in
                update_interval: 5s
                lambda: |-
                  it.print(5, 5, id(font1), "Hello World!");
            

            Font ist vorhanden und auch die PIN-Belegung passt. Anfangs hatte ich Fehlermeldungen bzgl. API encryption und diese darauf einfach entfernt.
            Momentan kommt es immer wieder zu Verbindungsabbrüchen. Ich denke allerdings nicht, dass das mein Problem ist. Für den ersten Schritt würde ich einfach mal gerne einen statischen Text ausgeben.
            Kannst du mir deine Quellen nennen? DANKE!

            2023-06-08 15_43_02-ESPHome Web 26a54c and 6 more pages - Work - Microsoft​ Edge.png

            draexlerD 1 Antwort Letzte Antwort
            0
            • D DoHo

              Hallo @draexler ,

              kannst du mir ein gutes Tutorial empfehlen? Ich bekomme einfach keinen Text auf dem Display angezeigt. Ich konnte den ESP32 in ESPHome integrieren, bekomme es aber einfach nicht hin, dass auch nur irgendetwas angezeigt wird. Hier mal meine YAML:

              esphome:
                name: esphome-web-26a54c
                friendly_name: E-Paper
              
              esp32:
                board: esp32dev
                framework:
                  type: arduino
              
              # Enable logging
              logger:
              
              # Enable Home Assistant API
              api:
              
              ota:
              
              
              wifi:
                ssid: !secret wifi_ssid
                password: !secret wifi_password
              
                # Enable fallback hotspot (captive portal) in case wifi connection fails
                ap:
                  ssid: "Esphome-Web-26A54C"
                  password: "jeIX4go8jH8i"
              
              captive_portal:
              
              # Example configuration entry
              font:
                - file: 'fonts/Comic Sans MS.ttf'
                  id: font1
                  size: 8
                     
              spi:
                clk_pin: 5
                mosi_pin: 19
                
              display:
                - platform: waveshare_epaper
                  id: epaper
                  cs_pin: 20
                  busy_pin: 39
                  reset_pin: 14
                  dc_pin: 22
                  model: 7.50in
                  update_interval: 5s
                  lambda: |-
                    it.print(5, 5, id(font1), "Hello World!");
              

              Font ist vorhanden und auch die PIN-Belegung passt. Anfangs hatte ich Fehlermeldungen bzgl. API encryption und diese darauf einfach entfernt.
              Momentan kommt es immer wieder zu Verbindungsabbrüchen. Ich denke allerdings nicht, dass das mein Problem ist. Für den ersten Schritt würde ich einfach mal gerne einen statischen Text ausgeben.
              Kannst du mir deine Quellen nennen? DANKE!

              2023-06-08 15_43_02-ESPHome Web 26a54c and 6 more pages - Work - Microsoft​ Edge.png

              draexlerD Nicht stören
              draexlerD Nicht stören
              draexler
              schrieb am zuletzt editiert von draexler
              #32

              @doho sagte in ePaper Statusdisplay Hausflur:

              display: - platform: waveshare_epaper id: epaper cs_pin: 20 busy_pin: 39 reset_pin: 14 dc_pin: 22 model: 7.50in update_interval: 5s lambda: |- it.print(5, 5, id(font1), "Hello World!");

              Hi,

              also die API Einstellungen nimm mal weg. Das ganze läuft dann eh über MQTT (find ich besser)

              nimm mal diese Einstellungen:

              Entferne mal die Fragmente "api:" und "ota:" (Keine Ahnung ob das was ausmacht, aber brauchen tust du es gerade eh nicht)

              logger:
                level: INFO
              
              display:
                - platform: waveshare_epaper
                  id: epaper
                  cs_pin: 20
                  busy_pin: 39
                  reset_pin: 14
                  dc_pin: 22
                  model: 7.50inV2
                  update_interval: 5s
                  reset_duration: 2ms
                  lambda: |-
                    it.print(5, 5, id(font1), "Hello World!");
              

              Wenn das nicht klappt schick mal gute Bilder von der Verkabelung des ESP´s und die "Schiebereglereinstellungen" des HAT.

              EDIT: Ich denke mal du hast auch das V2 Display. Also habe ich das angepasst. BITTE beachten ;-)

              1 Antwort Letzte Antwort
              0
              • D Offline
                D Offline
                DoHo
                schrieb am zuletzt editiert von
                #33

                Hallo @draexler,

                danke für die schnelle Antwort. Woran erkenne ich denn, ob ich ein V2 Display habe? Ich have weder auf Display, noch auf Verpackung oder in der Artikelbeschreibung eine Info diesbezüglich gesehen (link).

                Die Programmanpassung hat leider keinen Erfolg gebracht. Das Programm wird erfolgreich hochgeladen (über USB) aber das Display bleibt dunkel. Ich werde am Wochenende einfach nochmal alles von Grund auf neu aufsetzen (ESP-Adapter, Feather neu anlernen, YAML etc.)

                2023-06-09 10_27_23-esphome-0 - raspberrypi and 10 more pages - Work - Microsoft​ Edge.png

                Um sicher zu gehen, könntest du mal meine Verkabelung prüfen? Das wäre nett! DANKE!!!

                2023-06-09 10_22_09-Adafruit Learning System and 10 more pages - Work - Microsoft​ Edge.png

                # Example configuration entry
                font:
                  - file: 'fonts/Comic Sans MS.ttf'
                    id: font1
                    size: 8
                spi:
                  clk_pin: 5
                  mosi_pin: 19
                  
                display:
                  - platform: waveshare_epaper
                    id: epaper
                    cs_pin: 20
                    busy_pin: 39
                    reset_pin: 14
                    dc_pin: 22
                    model: 7.50inV2
                    update_interval: 5s
                    lambda: |-
                      it.print(0, 0, id(font1), "Hello World!");
                

                MicrosoftTeams-image (4).png

                MicrosoftTeams-image (5).png

                MicrosoftTeams-image (6).png

                MicrosoftTeams-image (7).png

                MicrosoftTeams-image (8).png

                MicrosoftTeams-image (9).png

                MicrosoftTeams-image (10).png

                draexlerD 1 Antwort Letzte Antwort
                0
                • D DoHo

                  Hallo @draexler,

                  danke für die schnelle Antwort. Woran erkenne ich denn, ob ich ein V2 Display habe? Ich have weder auf Display, noch auf Verpackung oder in der Artikelbeschreibung eine Info diesbezüglich gesehen (link).

                  Die Programmanpassung hat leider keinen Erfolg gebracht. Das Programm wird erfolgreich hochgeladen (über USB) aber das Display bleibt dunkel. Ich werde am Wochenende einfach nochmal alles von Grund auf neu aufsetzen (ESP-Adapter, Feather neu anlernen, YAML etc.)

                  2023-06-09 10_27_23-esphome-0 - raspberrypi and 10 more pages - Work - Microsoft​ Edge.png

                  Um sicher zu gehen, könntest du mal meine Verkabelung prüfen? Das wäre nett! DANKE!!!

                  2023-06-09 10_22_09-Adafruit Learning System and 10 more pages - Work - Microsoft​ Edge.png

                  # Example configuration entry
                  font:
                    - file: 'fonts/Comic Sans MS.ttf'
                      id: font1
                      size: 8
                  spi:
                    clk_pin: 5
                    mosi_pin: 19
                    
                  display:
                    - platform: waveshare_epaper
                      id: epaper
                      cs_pin: 20
                      busy_pin: 39
                      reset_pin: 14
                      dc_pin: 22
                      model: 7.50inV2
                      update_interval: 5s
                      lambda: |-
                        it.print(0, 0, id(font1), "Hello World!");
                  

                  MicrosoftTeams-image (4).png

                  MicrosoftTeams-image (5).png

                  MicrosoftTeams-image (6).png

                  MicrosoftTeams-image (7).png

                  MicrosoftTeams-image (8).png

                  MicrosoftTeams-image (9).png

                  MicrosoftTeams-image (10).png

                  draexlerD Nicht stören
                  draexlerD Nicht stören
                  draexler
                  schrieb am zuletzt editiert von
                  #34

                  @doho Da müsste ein Sticker "V2" auf der Rückseite sein.

                  GANZ WICHTIG: Du musst die reset_duration angeben (Siehe meinen Post von gestern)

                  reset_duration: 2ms
                  

                  Wenn das auch nichts bringt schaue ich mir deine Fotos genauer an :-) Aber zuerst mache bitte das noch. Ohne dem geht es nicht ;-)

                  Bitte füge auch noch:

                  # Enable logging
                  logger:
                    level: INFO
                  

                  hinzu. Damit die eine Fehlermeldung auch weg ist.

                  Und schiebe beim HAT auch noch den Regler einmal hin und her aber die Einstellung soll wieder auf "4-line SPI" und "0.47R" stehen.

                  1 Antwort Letzte Antwort
                  0
                  • D Offline
                    D Offline
                    DoHo
                    schrieb am zuletzt editiert von
                    #35

                    Hallo @draexler ,

                    ich hab die Zeile reset_duration übersehen. Danke für den Hinweis!

                    Hier das Ergebnis:
                    MicrosoftTeams-image (11).png

                    Vielen Dank für die Hilfe!

                    draexlerD 1 Antwort Letzte Antwort
                    1
                    • D DoHo

                      Hallo @draexler ,

                      ich hab die Zeile reset_duration übersehen. Danke für den Hinweis!

                      Hier das Ergebnis:
                      MicrosoftTeams-image (11).png

                      Vielen Dank für die Hilfe!

                      draexlerD Nicht stören
                      draexlerD Nicht stören
                      draexler
                      schrieb am zuletzt editiert von draexler
                      #36

                      @doho Super, Perfekt :-) Damit ist das schwerste geschafft. Jetzt heißt es das ganz mit Inhalt zu füllen.
                      Kleiner TIP. Lege dir eine VIS an mit der Pixelgröße des ePapers. Du kannst dann alles dort einfacher "vormodelieren" und brauchst nur die X/Y Koordinaten übernehmen. Ansonsten flasht du ziemlich oft ;-)

                      Achja, du hast oben mal mach einen Tutorial gefragt. Ich habe mit eigentlich nur an die offizielle ESP Home Doku gehalten. Damit fährt man am besten.

                      Wenn du sowas ähnliches wie ich machen willst, kannst du ja bereits viele Teile aus meiner YAML nehmen (MQTT Config und Aufbau etc.)

                      D S 2 Antworten Letzte Antwort
                      0
                      • draexlerD draexler

                        @doho Super, Perfekt :-) Damit ist das schwerste geschafft. Jetzt heißt es das ganz mit Inhalt zu füllen.
                        Kleiner TIP. Lege dir eine VIS an mit der Pixelgröße des ePapers. Du kannst dann alles dort einfacher "vormodelieren" und brauchst nur die X/Y Koordinaten übernehmen. Ansonsten flasht du ziemlich oft ;-)

                        Achja, du hast oben mal mach einen Tutorial gefragt. Ich habe mit eigentlich nur an die offizielle ESP Home Doku gehalten. Damit fährt man am besten.

                        Wenn du sowas ähnliches wie ich machen willst, kannst du ja bereits viele Teile aus meiner YAML nehmen (MQTT Config und Aufbau etc.)

                        D Offline
                        D Offline
                        DoHo
                        schrieb am zuletzt editiert von
                        #37

                        @draexler
                        Danke für den Tipp. Ich werde berichten :blush:

                        1 Antwort Letzte Antwort
                        0
                        • D Offline
                          D Offline
                          DoHo
                          schrieb am zuletzt editiert von
                          #38

                          So, auch ich bin mit meinem Projekt fertig 😊
                          Wie es so ist, hat sich die Aufgabenstellung im Projektverlauf geändert, sodass ich einiges anders gemacht habe als ursprünglich geplant. Andere Daten, anderer Standort, etc..
                          Ich aktualisiere das Display alle 15 Minuten und zusätzlich kann man es über einen kleinen Taster oben rechts im Rahmen aktualisieren.
                          Auf die Batterie habe ich auch verzichtet, weil am neuen Standort eine Steckdose vorhanden ist.
                          Vielleicht für den ein oder anderen noch interessant; Aus Interesse habe ich die Leistungsaufnahme gemessen => im Schnitt 0.8W (über USB Netzteil versorgt).

                          Alles in allem ein sehr gelungenes Projekt und eine super Anwendung. Danke nochmal an @draexler , für die Unterstützung!

                          IMG_7668.jpeg

                          IMG_7669.jpeg

                          IMG_7670.jpeg

                          draexlerD A 2 Antworten Letzte Antwort
                          6
                          • D DoHo

                            So, auch ich bin mit meinem Projekt fertig 😊
                            Wie es so ist, hat sich die Aufgabenstellung im Projektverlauf geändert, sodass ich einiges anders gemacht habe als ursprünglich geplant. Andere Daten, anderer Standort, etc..
                            Ich aktualisiere das Display alle 15 Minuten und zusätzlich kann man es über einen kleinen Taster oben rechts im Rahmen aktualisieren.
                            Auf die Batterie habe ich auch verzichtet, weil am neuen Standort eine Steckdose vorhanden ist.
                            Vielleicht für den ein oder anderen noch interessant; Aus Interesse habe ich die Leistungsaufnahme gemessen => im Schnitt 0.8W (über USB Netzteil versorgt).

                            Alles in allem ein sehr gelungenes Projekt und eine super Anwendung. Danke nochmal an @draexler , für die Unterstützung!

                            IMG_7668.jpeg

                            IMG_7669.jpeg

                            IMG_7670.jpeg

                            draexlerD Nicht stören
                            draexlerD Nicht stören
                            draexler
                            schrieb am zuletzt editiert von
                            #39

                            @doho gefällt mir sehr gut 👍 Gute idee mit dem Knopf. Vielleicht setze ich das auch noch um. Muss dann schauen wie ich das mit WakeUp mit Deep Sleep mache.

                            1 Antwort Letzte Antwort
                            0
                            • D DoHo

                              So, auch ich bin mit meinem Projekt fertig 😊
                              Wie es so ist, hat sich die Aufgabenstellung im Projektverlauf geändert, sodass ich einiges anders gemacht habe als ursprünglich geplant. Andere Daten, anderer Standort, etc..
                              Ich aktualisiere das Display alle 15 Minuten und zusätzlich kann man es über einen kleinen Taster oben rechts im Rahmen aktualisieren.
                              Auf die Batterie habe ich auch verzichtet, weil am neuen Standort eine Steckdose vorhanden ist.
                              Vielleicht für den ein oder anderen noch interessant; Aus Interesse habe ich die Leistungsaufnahme gemessen => im Schnitt 0.8W (über USB Netzteil versorgt).

                              Alles in allem ein sehr gelungenes Projekt und eine super Anwendung. Danke nochmal an @draexler , für die Unterstützung!

                              IMG_7668.jpeg

                              IMG_7669.jpeg

                              IMG_7670.jpeg

                              A Offline
                              A Offline
                              appi
                              schrieb am zuletzt editiert von
                              #40

                              @doho super schön realisiert, würdest du allenfass den Code zur Verfügung stellen?
                              Besten Dank und Gruss

                              D 1 Antwort Letzte Antwort
                              0
                              • A appi

                                @doho super schön realisiert, würdest du allenfass den Code zur Verfügung stellen?
                                Besten Dank und Gruss

                                D Offline
                                D Offline
                                DoHo
                                schrieb am zuletzt editiert von
                                #41

                                @appi, klar.

                                esphome:
                                  name: e-paper
                                  friendly_name: E-Paper
                                
                                esp32:
                                  board: esp32dev
                                  framework:
                                    type: arduino
                                
                                # Enable logging
                                logger:
                                  level: INFO
                                
                                # Enable Home Assistant API
                                ota:
                                  password: "1097d7787d8aa56c814fc456ac0d4bdf"
                                
                                # Enable wifi
                                wifi:
                                  ssid: !secret wifi_ssid
                                  password: !secret wifi_password
                                
                                  # Enable fallback hotspot (captive portal) in case wifi connection fails
                                  ap:
                                    ssid: "E-Paper Fallback Hotspot"
                                    password: "7vHBNRjddp61"
                                
                                # Enable MQTT 
                                mqtt:
                                  broker: 192.168.10.40
                                  username: ESP
                                  password: !secret mqtt
                                  client_id: e-paper
                                  topic_prefix: esphome/e-paper
                                  on_message:
                                     - topic: subscribe_text_sensor/E-Paper/Trigger
                                       then:
                                        - component.update: epaper
                                
                                # Konfiguration ESP32
                                captive_portal:
                                spi:
                                  clk_pin: 5
                                  mosi_pin: 19
                                
                                binary_sensor:
                                  - platform: gpio
                                    pin:
                                      number: 32
                                      mode:
                                        input: true
                                        pulldown: true
                                    name: "Taster"
                                    on_press:
                                     then:
                                     # - component.update: epaper
                                
                                # Schriftarten
                                font:
                                  - file: 'fonts/Lato-Regular.ttf'
                                    id: font1
                                    glyphs:
                                     ['&', '@', '!', ',', '.', '?', '"', '%', '(', ')', '+', '-', '_', ':', '°', '0',
                                       '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E',
                                       'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
                                       'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
                                       'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
                                       'u', 'v', 'w', 'x', 'y', 'z','å', 'Ä', 'ä', 'Ö', 'ö', 'Ü', 'ü', '/', 'ß']  
                                    size: 23
                                
                                  - file: 'fonts/Lato-Regular.ttf'
                                    id: font2
                                    glyphs:
                                     ['&', '@', '!', ',', '.', '?', '"', '%', '(', ')', '+', '-', '_', ':', '°', '0',
                                       '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E',
                                       'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
                                       'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
                                       'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
                                       'u', 'v', 'w', 'x', 'y', 'z','å', 'Ä', 'ä', 'Ö', 'ö', 'Ü', 'ü', '/', 'ß']  
                                    size: 40
                                
                                  - file: 'fonts/Lato-Regular.ttf'
                                    id: font3
                                    glyphs:
                                     ['&', '@', '!', ',', '.', '?', '"', '%', '(', ')', '+', '-', '_', ':', '°', '0',
                                       '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E',
                                       'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
                                       'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
                                       'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
                                       'u', 'v', 'w', 'x', 'y', 'z','å', 'Ä', 'ä', 'Ö', 'ö', 'Ü', 'ü', '/', 'ß']  
                                    size: 20
                                  
                                  - file: 'fonts/Lato-Regular.ttf'
                                    id: font4
                                    glyphs:
                                     ['&', '@', '!', ',', '.', '?', '"', '%', '(', ')', '+', '-', '_', ':', '°', '0',
                                       '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E',
                                       'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
                                       'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
                                       'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
                                       'u', 'v', 'w', 'x', 'y', 'z','å', 'Ä', 'ä', 'Ö', 'ö', 'Ü', 'ü', '/', 'ß']  
                                    size: 23
                                
                                # Variablen
                                globals:
                                  - id: photovoltaik_symbols_x_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: photovoltaik_symbols_y_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                    
                                  - id: photovoltaik_data_x_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: photovoltaik_data_y_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: icon_heute_x_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: icon_heute_y_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: icon_morgen_x_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: icon_morgen_y_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: icon_uebermorgen_x_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: icon_uebermorgen_y_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: muell_x_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: muell_y_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: icons_x_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                  - id: icons_y_int
                                    type: int
                                    restore_value: no
                                    initial_value: '0'
                                
                                # MQTT Variablen ioBroker => E-Paper
                                text_sensor:
                                  # Allgemein
                                  - platform: mqtt_subscribe
                                    id: Datum
                                    topic: subscribe_text_sensor/E-Paper/Allgemein/Datum
                                
                                  - platform: mqtt_subscribe
                                    id: Tag_morgen
                                    topic: subscribe_text_sensor/E-Paper/Allgemein/Tag_morgen
                                
                                  - platform: mqtt_subscribe
                                    id: Tag_uebermorgen
                                    topic: subscribe_text_sensor/E-Paper/Allgemein/Tag_uebermorgen
                                
                                  - platform: mqtt_subscribe
                                    id: Foto
                                    topic: subscribe_text_sensor/E-Paper/Allgemein/Foto
                                
                                  # Photovoltaik
                                  - platform: mqtt_subscribe
                                    id: Momentanleistung
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Momentanleistung
                                
                                  - platform: mqtt_subscribe
                                    id: Hausverbrauch
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Hausverbrauch
                                
                                  - platform: mqtt_subscribe
                                    id: Einspeisung_Bezug
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Einspeisung_Bezug
                                
                                  - platform: mqtt_subscribe
                                    id: Einspeisung_Heute
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Einspeisung_Heute
                                
                                  - platform: mqtt_subscribe
                                    id: Ertrag_Heute
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Ertrag_Heute
                                
                                  - platform: mqtt_subscribe
                                    id: Eigenverbrauch_Heute
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Eigenverbrauch_Heute
                                
                                  - platform: mqtt_subscribe
                                    id: Eigenverbrauch_Heute_Prozent
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Eigenverbrauch_Heute_Prozent
                                
                                  - platform: mqtt_subscribe
                                    id: Netzbezug_Heute
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Netzbezug_Heute
                                
                                  - platform: mqtt_subscribe
                                    id: Deckungsgrad_Heute
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Deckungsgrad_Heute
                                
                                  - platform: mqtt_subscribe
                                    id: Pfeil_PV_Netz
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Pfeil_PV_Netz
                                
                                  - platform: mqtt_subscribe
                                    id: Pfeil_PV_Haus
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Pfeil_PV_Haus
                                
                                  - platform: mqtt_subscribe
                                    id: Pfeil_Netz_Haus
                                    topic: subscribe_text_sensor/E-Paper/Photovoltaik/Pfeil_Netz_Haus
                                
                                  # Wetter heute
                                  - platform: mqtt_subscribe
                                    id: Wettericon_now
                                    topic: subscribe_text_sensor/E-Paper/Wetter/Wettericon_now
                                
                                  - platform: mqtt_subscribe
                                    id: Actual_Temp
                                    topic: subscribe_text_sensor/E-Paper/Wetter/Actual_Temp
                                
                                  - platform: mqtt_subscribe
                                    id: MinMax_Temp_Heute
                                    topic: subscribe_text_sensor/E-Paper/Wetter/MinMax_Temp_Heute
                                
                                  - platform: mqtt_subscribe
                                    id: Regen_Heute
                                    topic: subscribe_text_sensor/E-Paper/Wetter/Regen_Heute
                                
                                  - platform: mqtt_subscribe
                                    id: Unwetter
                                    topic: subscribe_text_sensor/E-Paper/Wetter/Unwetter
                                
                                  # Wetter morgen
                                  - platform: mqtt_subscribe
                                    id: Wettericon_morgen
                                    topic: subscribe_text_sensor/E-Paper/Wetter/Wettericon_morgen
                                
                                  - platform: mqtt_subscribe
                                    id: MinMax_Temp_morgen
                                    topic: subscribe_text_sensor/E-Paper/Wetter/MinMax_Temp_morgen
                                
                                  - platform: mqtt_subscribe
                                    id: Regen_morgen
                                    topic: subscribe_text_sensor/E-Paper/Wetter/Regen_morgen
                                
                                  # Wetter uebermorgen
                                  - platform: mqtt_subscribe
                                    id: Wettericon_uebermorgen
                                    topic: subscribe_text_sensor/E-Paper/Wetter/Wettericon_uebermorgen
                                
                                  - platform: mqtt_subscribe
                                    id: MinMax_Temp_uebermorgen
                                    topic: subscribe_text_sensor/E-Paper/Wetter/MinMax_Temp_uebermorgen
                                
                                  - platform: mqtt_subscribe
                                    id: Regen_uebermorgen
                                    topic: subscribe_text_sensor/E-Paper/Wetter/Regen_uebermorgen
                                    
                                  # Muell
                                  - platform: mqtt_subscribe
                                    id: Termin_Restmuell
                                    topic: subscribe_text_sensor/E-Paper/Muell/Termin_Restmuell
                                
                                  - platform: mqtt_subscribe
                                    id: Termin_Papier
                                    topic: subscribe_text_sensor/E-Paper/Muell/Termin_Papier
                                
                                  - platform: mqtt_subscribe
                                    id: Termin_Gruenabfall
                                    topic: subscribe_text_sensor/E-Paper/Muell/Termin_Gruenabfall
                                
                                  - platform: mqtt_subscribe
                                    id: Termin_Sperrmuell
                                    topic: subscribe_text_sensor/E-Paper/Muell/Termin_Sperrmuell
                                
                                  - platform: mqtt_subscribe
                                    id: Termin_Gruen_Sperr
                                    topic: subscribe_text_sensor/E-Paper/Muell/Termin_Gruen_Sperr
                                
                                  - platform: mqtt_subscribe
                                    id: Tage_bis_Restmuell
                                    topic: subscribe_text_sensor/E-Paper/Muell/Tage_bis_Restmuell
                                
                                  - platform: mqtt_subscribe
                                    id: Tage_bis_Papier
                                    topic: subscribe_text_sensor/E-Paper/Muell/Tage_bis_Papier
                                
                                  - platform: mqtt_subscribe
                                    id: Tage_bis_Gruenabfall
                                    topic: subscribe_text_sensor/E-Paper/Muell/Tage_bis_Gruenabfall
                                
                                  - platform: mqtt_subscribe
                                    id: Tage_bis_Sperrmuell
                                    topic: subscribe_text_sensor/E-Paper/Muell/Tage_bis_Sperrmuell
                                
                                # Bilder
                                image:
                                  # Foto
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_farbig.jpg"
                                    resize: 800x480
                                    id: Bild
                                
                                  # Photovoltaik  
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Photovoltaik.png"
                                    resize: 120x73
                                    id: Bild_Photovoltaik
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Haus.png"
                                    resize: 100x98
                                    id: Bild_Haus
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Strommast.png"
                                    resize: 60x96
                                    id: Bild_Strommast
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Pfeil_rechts.png"
                                    resize: 98x30
                                    id: Bild_Pfeil_rechts
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Pfeil_rechts_unten.png"
                                    resize: 70x70
                                    id: Bild_Pfeil_rechts_unten
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Pfeil_links_unten.png"
                                    resize: 70x70
                                    id: Bild_Pfeil_links_unten
                                    
                                  # Wetter 
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Tropfen.png"
                                    resize: 18x18
                                    id: Bild_Tropfen
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Ausrufezeichen.png"
                                    resize: 50x50
                                    id: Bild_Ausrufezeichen
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne.png"
                                    resize: 150x150
                                    id: Bild_Sonne
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Gewitter.png"
                                    resize: 150x150
                                    id: Bild_Sonne_Gewitter
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Regen.png"
                                    resize: 150x150
                                    id: Bild_Sonne_Regen
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Schnee.png"
                                    resize: 150x150
                                    id: Bild_Sonne_Schnee
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Wolken.png"
                                    resize: 150x150
                                    id: Bild_Sonne_Wolken
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond.png"
                                    resize: 110x110
                                    id: Bild_Mond
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Gewitter.png"
                                    resize: 150x150
                                    id: Bild_Mond_Gewitter
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Regen.png"
                                    resize: 150x150
                                    id: Bild_Mond_Regen
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Schnee.png"
                                    resize: 150x150
                                    id: Bild_Mond_Schnee
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Wolken.png"
                                    resize: 150x150
                                    id: Bild_Mond_Wolken
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Gewitter.png"
                                    resize: 120x120
                                    id: Bild_Gewitter
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Regen.png"
                                    resize: 135x135
                                    id: Bild_Regen
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Schnee.png"
                                    resize: 135x135
                                    id: Bild_Schnee
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Wolke.png"
                                    resize: 150x150
                                    id: Bild_Wolke
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Wolken.png"
                                    resize: 150x150
                                    id: Bild_Wolken
                                    
                                  # Wetter-Vorhersage
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne.png"
                                    resize: 55x55
                                    id: Bild_Sonne_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Gewitter.png"
                                    resize: 75x75
                                    id: Bild_Sonne_Gewitter_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Regen.png"
                                    resize: 65x65
                                    id: Bild_Sonne_Regen_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Schnee.png"
                                    resize: 75x75
                                    id: Bild_Sonne_Schnee_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Wolken.png"
                                    resize: 75x75
                                    id: Bild_Sonne_Wolken_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond.png"
                                    resize: 47x47
                                    id: Bild_Mond_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Gewitter.png"
                                    resize: 75x75
                                    id: Bild_Mond_Gewitter_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Regen.png"
                                    resize: 65x65
                                    id: Bild_Mond_Regen_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Schnee.png"
                                    resize: 75x75
                                    id: Bild_Mond_Schnee_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Wolken.png"
                                    resize: 60x60
                                    id: Bild_Mond_Wolken_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Gewitter.png"
                                    resize: 55x55
                                    id: Bild_Gewitter_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Regen.png"
                                    resize: 55x55
                                    id: Bild_Regen_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Schnee.png"
                                    resize: 57x57
                                    id: Bild_Schnee_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Wolke.png"
                                    resize: 71x71
                                    id: Bild_Wolke_klein
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Wolken.png"
                                    resize: 75x75
                                    id: Bild_Wolken_klein
                                    
                                  # Muell
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Muelltonne.png"
                                    resize: 75x75
                                    id: Bild_Muelltonne_gross
                                
                                  - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Muelltonne.png"
                                    resize: 57x57
                                    id: Bild_Muelltonne_klein
                                
                                # Display x-, y-
                                display:
                                  - platform: waveshare_epaper
                                    id: epaper
                                    cs_pin: 20
                                    busy_pin: 39
                                    reset_pin: 14
                                    dc_pin: 22
                                    model: 7.50inV2
                                    update_interval: never
                                    reset_duration: 2ms
                                    lambda: |-
                                      if (id(Foto).state != "1") {
                                        //Photovoltaik
                                        it.image((id(photovoltaik_symbols_x_int)+400), (id(photovoltaik_symbols_y_int)+85), id(Bild_Photovoltaik));
                                        it.printf((id(photovoltaik_symbols_x_int)+455), (id(photovoltaik_symbols_y_int)+45), id(font1),TextAlign::TOP_CENTER,"%s", id(Momentanleistung).state.c_str());
                                        it.image((id(photovoltaik_symbols_x_int)+550), (id(photovoltaik_symbols_y_int)+171), id(Bild_Haus));
                                        it.printf((id(photovoltaik_symbols_x_int)+601), (id(photovoltaik_symbols_y_int)+263), id(font1),TextAlign::TOP_CENTER,"%s", id(Hausverbrauch).state.c_str());
                                        it.image((id(photovoltaik_symbols_x_int)+692), (id(photovoltaik_symbols_y_int)+78), id(Bild_Strommast));
                                        it.printf((id(photovoltaik_symbols_x_int)+723), (id(photovoltaik_symbols_y_int)+45), id(font1),TextAlign::TOP_CENTER,"%s", id(Einspeisung_Bezug).state.c_str());
                                        if (id(Pfeil_PV_Netz).state == "1") {
                                          it.image((id(photovoltaik_symbols_x_int)+554), (id(photovoltaik_symbols_y_int)+115), id(Bild_Pfeil_rechts));}
                                        if (id(Pfeil_PV_Haus).state == "1") {
                                          it.image((id(photovoltaik_symbols_x_int)+448), (id(photovoltaik_symbols_y_int)+185), id(Bild_Pfeil_rechts_unten));}
                                        if (id(Pfeil_Netz_Haus).state == "1") {
                                          it.image((id(photovoltaik_symbols_x_int)+680), (id(photovoltaik_symbols_y_int)+185), id(Bild_Pfeil_links_unten));}
                                        it.printf((id(photovoltaik_data_x_int)+470), (id(photovoltaik_data_y_int)+320), id(font1),TextAlign::TOP_LEFT, "Tagesertrag: %s", id(Ertrag_Heute).state.c_str());
                                        it.printf((id(photovoltaik_data_x_int)+470), (id(photovoltaik_data_y_int)+350), id(font1),TextAlign::TOP_LEFT, "Eigenv.: %s", id(Eigenverbrauch_Heute).state.c_str());
                                        it.printf((id(photovoltaik_data_x_int)+470), (id(photovoltaik_data_y_int)+380), id(font1),TextAlign::TOP_LEFT, "Netzbezug: %s", id(Netzbezug_Heute).state.c_str());
                                        it.printf((id(photovoltaik_data_x_int)+470), (id(photovoltaik_data_y_int)+410), id(font1),TextAlign::TOP_LEFT, "Deckungsgrad: %s", id(Deckungsgrad_Heute).state.c_str());
                                
                                        //Unwetter
                                        if (id(Unwetter).state != "0") {
                                          id(icon_heute_y_int) = 0;
                                          id(icon_morgen_y_int) = 60;
                                          id(icon_uebermorgen_y_int) = 60;
                                          it.printf((id(icon_heute_x_int)+125), (id(icon_heute_y_int)+155), id(font1),TextAlign::TOP_LEFT, "%s", id(Unwetter).state.c_str());
                                          it.image((id(icon_heute_x_int)+60), (id(icon_heute_y_int)+148), id(Bild_Ausrufezeichen));}
                                        else {
                                          id(icon_heute_y_int) = 10;
                                          id(icon_morgen_y_int) = 20;
                                          id(icon_uebermorgen_y_int) = 20;}
                                
                                        //Wetter heute
                                        if (id(Wettericon_now).state == "01d") {
                                          it.image((id(icon_heute_x_int)+40), (id(icon_heute_y_int)+0), id(Bild_Sonne));}
                                        if (id(Wettericon_now).state == "01n") {
                                          it.image((id(icon_heute_x_int)+60), (id(icon_heute_y_int)+15), id(Bild_Mond));}
                                        if (id(Wettericon_now).state == "02d") {
                                          it.image((id(icon_heute_x_int)+40), (id(icon_heute_y_int)-25), id(Bild_Sonne_Wolken));}
                                        if (id(Wettericon_now).state == "02n") {
                                          it.image((id(icon_heute_x_int)+40), (id(icon_heute_y_int)-10), id(Bild_Mond_Wolken));}
                                        if (id(Wettericon_now).state == "03dn") {
                                          it.image((id(icon_heute_x_int)+43), (id(icon_heute_y_int)-20), id(Bild_Wolke));}
                                        if (id(Wettericon_now).state == "04dn") {
                                          it.image((id(icon_heute_x_int)+50), (id(icon_heute_y_int)-30), id(Bild_Wolken));}
                                        if (id(Wettericon_now).state == "09dn") {
                                          it.image((id(icon_heute_x_int)+50), (id(icon_heute_y_int)+10), id(Bild_Regen));}
                                        if (id(Wettericon_now).state == "10d") {
                                          it.image((id(icon_heute_x_int)+45), (id(icon_heute_y_int)-5), id(Bild_Sonne_Regen));}
                                        if (id(Wettericon_now).state == "10n") {
                                          it.image((id(icon_heute_x_int)+45), (id(icon_heute_y_int)-5), id(Bild_Mond_Regen));}
                                        if (id(Wettericon_now).state == "11dn") {
                                          it.image((id(icon_heute_x_int)+65), (id(icon_heute_y_int)+20), id(Bild_Gewitter));}
                                        if (id(Wettericon_now).state == "13dn") {
                                          it.image((id(icon_heute_x_int)+55), (id(icon_heute_y_int)+10), id(Bild_Schnee));}
                                        if (id(Wettericon_now).state == "50dn") {
                                          it.image((id(icon_heute_x_int)+45), (id(icon_heute_y_int)-30), id(Bild_Wolken));}
                                        it.printf((id(icon_heute_x_int)+210), (id(icon_heute_y_int)+33), id(font2),TextAlign::TOP_LEFT, "%s", id(Actual_Temp).state.c_str());
                                        it.printf((id(icon_heute_x_int)+210), (id(icon_heute_y_int)+78), id(font3),TextAlign::TOP_LEFT, "%s", id(MinMax_Temp_Heute).state.c_str());
                                        it.printf((id(icon_heute_x_int)+230), (id(icon_heute_y_int)+100), id(font3),TextAlign::TOP_LEFT, "%s", id(Regen_Heute).state.c_str());
                                        it.image((id(icon_heute_x_int)+210), (id(icon_heute_y_int)+104), id(Bild_Tropfen));
                                
                                        //Wetter morgen
                                        if (id(Wettericon_morgen).state == "01d") {
                                          it.image((id(icon_morgen_x_int)+78), (id(icon_morgen_y_int)+178), id(Bild_Sonne_klein));}
                                        if (id(Wettericon_morgen).state == "01n") {
                                          it.image((id(icon_morgen_x_int)+6), (id(icon_morgen_y_int)+180), id(Bild_Mond_klein));}
                                        if (id(Wettericon_morgen).state == "02d") {
                                          it.image((id(icon_morgen_x_int)+68), (id(icon_morgen_y_int)+154), id(Bild_Sonne_Wolken_klein));}
                                        if (id(Wettericon_morgen).state == "02n") {
                                          it.image((id(icon_morgen_x_int)+73), (id(icon_morgen_y_int)+173), id(Bild_Mond_Wolken_klein));}
                                        if (id(Wettericon_morgen).state == "03dn") {
                                          it.image((id(icon_morgen_x_int)+68), (id(icon_morgen_y_int)+159), id(Bild_Wolke_klein));}
                                        if (id(Wettericon_morgen).state == "04dn") {
                                          it.image((id(icon_morgen_x_int)+68), (id(icon_morgen_y_int)+152), id(Bild_Wolken_klein));}
                                        if (id(Wettericon_morgen).state == "09dn") {
                                          it.image((id(icon_morgen_x_int)+75), (id(icon_morgen_y_int)+180), id(Bild_Regen_klein));}
                                        if (id(Wettericon_morgen).state == "10d") {
                                          it.image((id(icon_morgen_x_int)+70), (id(icon_morgen_y_int)+169), id(Bild_Sonne_Regen_klein));}
                                        if (id(Wettericon_morgen).state == "10n") {
                                          it.image((id(icon_morgen_x_int)+70), (id(icon_morgen_y_int)+169), id(Bild_Mond_Regen_klein));}
                                        if (id(Wettericon_morgen).state == "11dn") {
                                          it.image((id(icon_morgen_x_int)+75), (id(icon_morgen_y_int)+181), id(Bild_Gewitter_klein));}
                                        if (id(Wettericon_morgen).state == "13dn") {
                                          it.image((id(icon_morgen_x_int)+75), (id(icon_morgen_y_int)+177), id(Bild_Schnee_klein));}
                                        if (id(Wettericon_morgen).state == "50dn") {
                                          it.image(id(icon_morgen_x_int)+68, (id(icon_morgen_y_int)+152), id(Bild_Wolken_klein));}     
                                        it.printf(id(icon_morgen_x_int)+58, (id(icon_morgen_y_int)+233), id(font3),TextAlign::TOP_LEFT, "%s", id(MinMax_Temp_morgen).state.c_str());
                                        it.printf((id(icon_morgen_x_int)+78), (id(icon_morgen_y_int)+255), id(font3),TextAlign::TOP_LEFT, "%s", id(Regen_morgen).state.c_str());
                                        it.image(id(icon_morgen_x_int)+58, (id(icon_morgen_y_int)+259), id(Bild_Tropfen));
                                        it.printf((id(icon_morgen_x_int)+73), (id(icon_morgen_y_int)+150), id(font3),TextAlign::TOP_LEFT, "%s", id(Tag_morgen).state.c_str());
                                        it.line((id(icon_morgen_x_int)+58), (id(icon_morgen_y_int)+176), (id(icon_morgen_x_int)+158), (id(icon_morgen_y_int)+176));
                                
                                        //Wetter uebermorgen
                                        if (id(Wettericon_uebermorgen).state == "01d") {
                                          it.image((id(icon_uebermorgen_x_int)+238), (id(icon_uebermorgen_y_int)+178), id(Bild_Sonne_klein));}
                                        if (id(Wettericon_uebermorgen).state == "01n") {
                                          it.image((id(icon_uebermorgen_x_int)+236), (id(icon_uebermorgen_y_int)+180), id(Bild_Mond_klein));}
                                        if (id(Wettericon_uebermorgen).state == "02d") {
                                          it.image((id(icon_uebermorgen_x_int)+228), (id(icon_uebermorgen_y_int)+154), id(Bild_Sonne_Wolken_klein));}
                                        if (id(Wettericon_uebermorgen).state == "02n") {
                                          it.image((id(icon_uebermorgen_x_int)+233), (id(icon_uebermorgen_y_int)+171), id(Bild_Mond_Wolken_klein));}
                                        if (id(Wettericon_uebermorgen).state == "03dn") {
                                          it.image((id(icon_uebermorgen_x_int)+228), (id(icon_uebermorgen_y_int)+159), id(Bild_Wolke_klein));}
                                        if (id(Wettericon_uebermorgen).state == "04dn") {
                                          it.image((id(icon_uebermorgen_x_int)+228), (id(icon_uebermorgen_y_int)+152), id(Bild_Wolken_klein));}
                                        if (id(Wettericon_uebermorgen).state == "09dn") {
                                          it.image((id(icon_uebermorgen_x_int)+235), (id(icon_uebermorgen_y_int)+180), id(Bild_Regen_klein));}
                                        if (id(Wettericon_uebermorgen).state == "10d") {
                                          it.image((id(icon_uebermorgen_x_int)+230), (id(icon_uebermorgen_y_int)+169), id(Bild_Sonne_Regen_klein));}
                                        if (id(Wettericon_uebermorgen).state == "10n") {
                                          it.image((id(icon_uebermorgen_x_int)+230), (id(icon_uebermorgen_y_int)+169), id(Bild_Mond_Regen_klein));}
                                        if (id(Wettericon_uebermorgen).state == "11dn") {
                                          it.image((id(icon_uebermorgen_x_int)+235), (id(icon_uebermorgen_y_int)+181), id(Bild_Gewitter_klein));}
                                        if (id(Wettericon_uebermorgen).state == "13dn") {
                                          it.image((id(icon_uebermorgen_x_int)+235), (id(icon_uebermorgen_y_int)+177), id(Bild_Schnee_klein));}
                                        if (id(Wettericon_uebermorgen).state == "50dn") {
                                          it.image((id(icon_uebermorgen_x_int)+228), (id(icon_uebermorgen_y_int)+152), id(Bild_Wolken_klein));}   
                                        it.printf(id(icon_uebermorgen_x_int)+218, (id(icon_uebermorgen_y_int)+233), id(font3),TextAlign::TOP_LEFT, "%s", id(MinMax_Temp_uebermorgen).state.c_str());
                                        it.printf((id(icon_uebermorgen_x_int)+238), (id(icon_uebermorgen_y_int)+255), id(font3),TextAlign::TOP_LEFT, "%s", id(Regen_uebermorgen).state.c_str());
                                        it.image(id(icon_uebermorgen_x_int)+218, (id(icon_uebermorgen_y_int)+259), id(Bild_Tropfen));
                                        it.printf((id(icon_uebermorgen_x_int)+233), (id(icon_uebermorgen_y_int)+150), id(font3),TextAlign::TOP_LEFT, "%s", id(Tag_uebermorgen).state.c_str());
                                        it.line((id(icon_uebermorgen_x_int)+218), (id(icon_uebermorgen_y_int)+176), (id(icon_uebermorgen_x_int)+318), (id(icon_uebermorgen_y_int)+176));
                                
                                        //Muell
                                        //Keine Unwetterwarnung
                                        if (id(Unwetter).state == "0") {
                                            //Kein Grün- und kein Sperrmüll-Termin
                                            if ((id(Termin_Gruenabfall).state == "Grünabfall: Kein Termin") && (id(Termin_Sperrmuell).state == "Sperrmüll: Kein Termin")) {
                                              it.image((id(muell_x_int)+63), (id(muell_y_int)+337), id(Bild_Muelltonne_klein));
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+335), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+365), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());}
                                            //Nur Grünabfall-Termin
                                            else if ((id(Termin_Gruenabfall).state != "Grünabfall: Kein Termin") && (id(Termin_Sperrmuell).state == "Sperrmüll: Kein Termin")) {
                                              it.image((id(muell_x_int)+45), (id(muell_y_int)+340), id(Bild_Muelltonne_gross));
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+335), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+365), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+395), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Gruenabfall).state.c_str());}
                                            //Nur Sperrmüll-Termin
                                            else if ((id(Termin_Gruenabfall).state == "Grünabfall: Kein Termin") && (id(Termin_Sperrmuell).state != "Sperrmüll: Kein Termin")) {
                                              it.image((id(muell_x_int)+45), (id(muell_y_int)+340), id(Bild_Muelltonne_gross));
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+335), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+365), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+395), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Sperrmuell).state.c_str());}
                                            //Grün- und Sperrmüll-Termine
                                            else if ((id(Termin_Gruenabfall).state != "Grünabfall: Kein Termin") && (id(Termin_Sperrmuell).state != "Sperrmüll: Kein Termin")) {
                                              it.image((id(muell_x_int)+45), (id(muell_y_int)+340), id(Bild_Muelltonne_gross));
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+320), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+350), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+380), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Gruenabfall).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+410), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Sperrmuell).state.c_str());}}
                                
                                        //Unwetterwarnung aktiv
                                        else {
                                            //Nur Rest- und Papiermüll-Termine
                                            if (id(Termin_Gruen_Sperr).state == "Kein Termin") {
                                              it.image((id(muell_x_int)+63), (id(muell_y_int)+367), id(Bild_Muelltonne_klein));
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+365), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+395), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());}      
                                            else {
                                            ////Rest-, Papier-, Grün- und/oder Sperrmüll-Termine
                                            it.image((id(muell_x_int)+45), (id(muell_y_int)+357), id(Bild_Muelltonne_gross));
                                            it.printf((id(muell_x_int)+105), (id(muell_y_int)+350), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                            it.printf((id(muell_x_int)+105), (id(muell_y_int)+380), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());
                                            it.printf((id(muell_x_int)+105), (id(muell_y_int)+410), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Gruen_Sperr).state.c_str());}}}
                                      else {it.image(75, 0, id(Bild));}
                                
                                A 1 Antwort Letzte Antwort
                                -1
                                • D DoHo

                                  @appi, klar.

                                  esphome:
                                    name: e-paper
                                    friendly_name: E-Paper
                                  
                                  esp32:
                                    board: esp32dev
                                    framework:
                                      type: arduino
                                  
                                  # Enable logging
                                  logger:
                                    level: INFO
                                  
                                  # Enable Home Assistant API
                                  ota:
                                    password: "1097d7787d8aa56c814fc456ac0d4bdf"
                                  
                                  # Enable wifi
                                  wifi:
                                    ssid: !secret wifi_ssid
                                    password: !secret wifi_password
                                  
                                    # Enable fallback hotspot (captive portal) in case wifi connection fails
                                    ap:
                                      ssid: "E-Paper Fallback Hotspot"
                                      password: "7vHBNRjddp61"
                                  
                                  # Enable MQTT 
                                  mqtt:
                                    broker: 192.168.10.40
                                    username: ESP
                                    password: !secret mqtt
                                    client_id: e-paper
                                    topic_prefix: esphome/e-paper
                                    on_message:
                                       - topic: subscribe_text_sensor/E-Paper/Trigger
                                         then:
                                          - component.update: epaper
                                  
                                  # Konfiguration ESP32
                                  captive_portal:
                                  spi:
                                    clk_pin: 5
                                    mosi_pin: 19
                                  
                                  binary_sensor:
                                    - platform: gpio
                                      pin:
                                        number: 32
                                        mode:
                                          input: true
                                          pulldown: true
                                      name: "Taster"
                                      on_press:
                                       then:
                                       # - component.update: epaper
                                  
                                  # Schriftarten
                                  font:
                                    - file: 'fonts/Lato-Regular.ttf'
                                      id: font1
                                      glyphs:
                                       ['&', '@', '!', ',', '.', '?', '"', '%', '(', ')', '+', '-', '_', ':', '°', '0',
                                         '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E',
                                         'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
                                         'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
                                         'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
                                         'u', 'v', 'w', 'x', 'y', 'z','å', 'Ä', 'ä', 'Ö', 'ö', 'Ü', 'ü', '/', 'ß']  
                                      size: 23
                                  
                                    - file: 'fonts/Lato-Regular.ttf'
                                      id: font2
                                      glyphs:
                                       ['&', '@', '!', ',', '.', '?', '"', '%', '(', ')', '+', '-', '_', ':', '°', '0',
                                         '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E',
                                         'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
                                         'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
                                         'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
                                         'u', 'v', 'w', 'x', 'y', 'z','å', 'Ä', 'ä', 'Ö', 'ö', 'Ü', 'ü', '/', 'ß']  
                                      size: 40
                                  
                                    - file: 'fonts/Lato-Regular.ttf'
                                      id: font3
                                      glyphs:
                                       ['&', '@', '!', ',', '.', '?', '"', '%', '(', ')', '+', '-', '_', ':', '°', '0',
                                         '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E',
                                         'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
                                         'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
                                         'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
                                         'u', 'v', 'w', 'x', 'y', 'z','å', 'Ä', 'ä', 'Ö', 'ö', 'Ü', 'ü', '/', 'ß']  
                                      size: 20
                                    
                                    - file: 'fonts/Lato-Regular.ttf'
                                      id: font4
                                      glyphs:
                                       ['&', '@', '!', ',', '.', '?', '"', '%', '(', ')', '+', '-', '_', ':', '°', '0',
                                         '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E',
                                         'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
                                         'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
                                         'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
                                         'u', 'v', 'w', 'x', 'y', 'z','å', 'Ä', 'ä', 'Ö', 'ö', 'Ü', 'ü', '/', 'ß']  
                                      size: 23
                                  
                                  # Variablen
                                  globals:
                                    - id: photovoltaik_symbols_x_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: photovoltaik_symbols_y_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                      
                                    - id: photovoltaik_data_x_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: photovoltaik_data_y_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: icon_heute_x_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: icon_heute_y_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: icon_morgen_x_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: icon_morgen_y_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: icon_uebermorgen_x_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: icon_uebermorgen_y_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: muell_x_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: muell_y_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: icons_x_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                    - id: icons_y_int
                                      type: int
                                      restore_value: no
                                      initial_value: '0'
                                  
                                  # MQTT Variablen ioBroker => E-Paper
                                  text_sensor:
                                    # Allgemein
                                    - platform: mqtt_subscribe
                                      id: Datum
                                      topic: subscribe_text_sensor/E-Paper/Allgemein/Datum
                                  
                                    - platform: mqtt_subscribe
                                      id: Tag_morgen
                                      topic: subscribe_text_sensor/E-Paper/Allgemein/Tag_morgen
                                  
                                    - platform: mqtt_subscribe
                                      id: Tag_uebermorgen
                                      topic: subscribe_text_sensor/E-Paper/Allgemein/Tag_uebermorgen
                                  
                                    - platform: mqtt_subscribe
                                      id: Foto
                                      topic: subscribe_text_sensor/E-Paper/Allgemein/Foto
                                  
                                    # Photovoltaik
                                    - platform: mqtt_subscribe
                                      id: Momentanleistung
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Momentanleistung
                                  
                                    - platform: mqtt_subscribe
                                      id: Hausverbrauch
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Hausverbrauch
                                  
                                    - platform: mqtt_subscribe
                                      id: Einspeisung_Bezug
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Einspeisung_Bezug
                                  
                                    - platform: mqtt_subscribe
                                      id: Einspeisung_Heute
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Einspeisung_Heute
                                  
                                    - platform: mqtt_subscribe
                                      id: Ertrag_Heute
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Ertrag_Heute
                                  
                                    - platform: mqtt_subscribe
                                      id: Eigenverbrauch_Heute
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Eigenverbrauch_Heute
                                  
                                    - platform: mqtt_subscribe
                                      id: Eigenverbrauch_Heute_Prozent
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Eigenverbrauch_Heute_Prozent
                                  
                                    - platform: mqtt_subscribe
                                      id: Netzbezug_Heute
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Netzbezug_Heute
                                  
                                    - platform: mqtt_subscribe
                                      id: Deckungsgrad_Heute
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Deckungsgrad_Heute
                                  
                                    - platform: mqtt_subscribe
                                      id: Pfeil_PV_Netz
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Pfeil_PV_Netz
                                  
                                    - platform: mqtt_subscribe
                                      id: Pfeil_PV_Haus
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Pfeil_PV_Haus
                                  
                                    - platform: mqtt_subscribe
                                      id: Pfeil_Netz_Haus
                                      topic: subscribe_text_sensor/E-Paper/Photovoltaik/Pfeil_Netz_Haus
                                  
                                    # Wetter heute
                                    - platform: mqtt_subscribe
                                      id: Wettericon_now
                                      topic: subscribe_text_sensor/E-Paper/Wetter/Wettericon_now
                                  
                                    - platform: mqtt_subscribe
                                      id: Actual_Temp
                                      topic: subscribe_text_sensor/E-Paper/Wetter/Actual_Temp
                                  
                                    - platform: mqtt_subscribe
                                      id: MinMax_Temp_Heute
                                      topic: subscribe_text_sensor/E-Paper/Wetter/MinMax_Temp_Heute
                                  
                                    - platform: mqtt_subscribe
                                      id: Regen_Heute
                                      topic: subscribe_text_sensor/E-Paper/Wetter/Regen_Heute
                                  
                                    - platform: mqtt_subscribe
                                      id: Unwetter
                                      topic: subscribe_text_sensor/E-Paper/Wetter/Unwetter
                                  
                                    # Wetter morgen
                                    - platform: mqtt_subscribe
                                      id: Wettericon_morgen
                                      topic: subscribe_text_sensor/E-Paper/Wetter/Wettericon_morgen
                                  
                                    - platform: mqtt_subscribe
                                      id: MinMax_Temp_morgen
                                      topic: subscribe_text_sensor/E-Paper/Wetter/MinMax_Temp_morgen
                                  
                                    - platform: mqtt_subscribe
                                      id: Regen_morgen
                                      topic: subscribe_text_sensor/E-Paper/Wetter/Regen_morgen
                                  
                                    # Wetter uebermorgen
                                    - platform: mqtt_subscribe
                                      id: Wettericon_uebermorgen
                                      topic: subscribe_text_sensor/E-Paper/Wetter/Wettericon_uebermorgen
                                  
                                    - platform: mqtt_subscribe
                                      id: MinMax_Temp_uebermorgen
                                      topic: subscribe_text_sensor/E-Paper/Wetter/MinMax_Temp_uebermorgen
                                  
                                    - platform: mqtt_subscribe
                                      id: Regen_uebermorgen
                                      topic: subscribe_text_sensor/E-Paper/Wetter/Regen_uebermorgen
                                      
                                    # Muell
                                    - platform: mqtt_subscribe
                                      id: Termin_Restmuell
                                      topic: subscribe_text_sensor/E-Paper/Muell/Termin_Restmuell
                                  
                                    - platform: mqtt_subscribe
                                      id: Termin_Papier
                                      topic: subscribe_text_sensor/E-Paper/Muell/Termin_Papier
                                  
                                    - platform: mqtt_subscribe
                                      id: Termin_Gruenabfall
                                      topic: subscribe_text_sensor/E-Paper/Muell/Termin_Gruenabfall
                                  
                                    - platform: mqtt_subscribe
                                      id: Termin_Sperrmuell
                                      topic: subscribe_text_sensor/E-Paper/Muell/Termin_Sperrmuell
                                  
                                    - platform: mqtt_subscribe
                                      id: Termin_Gruen_Sperr
                                      topic: subscribe_text_sensor/E-Paper/Muell/Termin_Gruen_Sperr
                                  
                                    - platform: mqtt_subscribe
                                      id: Tage_bis_Restmuell
                                      topic: subscribe_text_sensor/E-Paper/Muell/Tage_bis_Restmuell
                                  
                                    - platform: mqtt_subscribe
                                      id: Tage_bis_Papier
                                      topic: subscribe_text_sensor/E-Paper/Muell/Tage_bis_Papier
                                  
                                    - platform: mqtt_subscribe
                                      id: Tage_bis_Gruenabfall
                                      topic: subscribe_text_sensor/E-Paper/Muell/Tage_bis_Gruenabfall
                                  
                                    - platform: mqtt_subscribe
                                      id: Tage_bis_Sperrmuell
                                      topic: subscribe_text_sensor/E-Paper/Muell/Tage_bis_Sperrmuell
                                  
                                  # Bilder
                                  image:
                                    # Foto
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_farbig.jpg"
                                      resize: 800x480
                                      id: Bild
                                  
                                    # Photovoltaik  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Photovoltaik.png"
                                      resize: 120x73
                                      id: Bild_Photovoltaik
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Haus.png"
                                      resize: 100x98
                                      id: Bild_Haus
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Strommast.png"
                                      resize: 60x96
                                      id: Bild_Strommast
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Pfeil_rechts.png"
                                      resize: 98x30
                                      id: Bild_Pfeil_rechts
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Pfeil_rechts_unten.png"
                                      resize: 70x70
                                      id: Bild_Pfeil_rechts_unten
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Pfeil_links_unten.png"
                                      resize: 70x70
                                      id: Bild_Pfeil_links_unten
                                      
                                    # Wetter 
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Tropfen.png"
                                      resize: 18x18
                                      id: Bild_Tropfen
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Ausrufezeichen.png"
                                      resize: 50x50
                                      id: Bild_Ausrufezeichen
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne.png"
                                      resize: 150x150
                                      id: Bild_Sonne
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Gewitter.png"
                                      resize: 150x150
                                      id: Bild_Sonne_Gewitter
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Regen.png"
                                      resize: 150x150
                                      id: Bild_Sonne_Regen
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Schnee.png"
                                      resize: 150x150
                                      id: Bild_Sonne_Schnee
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Wolken.png"
                                      resize: 150x150
                                      id: Bild_Sonne_Wolken
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond.png"
                                      resize: 110x110
                                      id: Bild_Mond
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Gewitter.png"
                                      resize: 150x150
                                      id: Bild_Mond_Gewitter
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Regen.png"
                                      resize: 150x150
                                      id: Bild_Mond_Regen
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Schnee.png"
                                      resize: 150x150
                                      id: Bild_Mond_Schnee
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Wolken.png"
                                      resize: 150x150
                                      id: Bild_Mond_Wolken
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Gewitter.png"
                                      resize: 120x120
                                      id: Bild_Gewitter
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Regen.png"
                                      resize: 135x135
                                      id: Bild_Regen
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Schnee.png"
                                      resize: 135x135
                                      id: Bild_Schnee
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Wolke.png"
                                      resize: 150x150
                                      id: Bild_Wolke
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Wolken.png"
                                      resize: 150x150
                                      id: Bild_Wolken
                                      
                                    # Wetter-Vorhersage
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne.png"
                                      resize: 55x55
                                      id: Bild_Sonne_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Gewitter.png"
                                      resize: 75x75
                                      id: Bild_Sonne_Gewitter_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Regen.png"
                                      resize: 65x65
                                      id: Bild_Sonne_Regen_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Schnee.png"
                                      resize: 75x75
                                      id: Bild_Sonne_Schnee_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Sonne+Wolken.png"
                                      resize: 75x75
                                      id: Bild_Sonne_Wolken_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond.png"
                                      resize: 47x47
                                      id: Bild_Mond_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Gewitter.png"
                                      resize: 75x75
                                      id: Bild_Mond_Gewitter_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Regen.png"
                                      resize: 65x65
                                      id: Bild_Mond_Regen_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Schnee.png"
                                      resize: 75x75
                                      id: Bild_Mond_Schnee_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Mond+Wolken.png"
                                      resize: 60x60
                                      id: Bild_Mond_Wolken_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Gewitter.png"
                                      resize: 55x55
                                      id: Bild_Gewitter_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Regen.png"
                                      resize: 55x55
                                      id: Bild_Regen_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Schnee.png"
                                      resize: 57x57
                                      id: Bild_Schnee_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Wolke.png"
                                      resize: 71x71
                                      id: Bild_Wolke_klein
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Wolken.png"
                                      resize: 75x75
                                      id: Bild_Wolken_klein
                                      
                                    # Muell
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Muelltonne.png"
                                      resize: 75x75
                                      id: Bild_Muelltonne_gross
                                  
                                    - file: "/opt/iobroker/iobroker-data/esphome.0/Pictures/Bild_Muelltonne.png"
                                      resize: 57x57
                                      id: Bild_Muelltonne_klein
                                  
                                  # Display x-, y-
                                  display:
                                    - platform: waveshare_epaper
                                      id: epaper
                                      cs_pin: 20
                                      busy_pin: 39
                                      reset_pin: 14
                                      dc_pin: 22
                                      model: 7.50inV2
                                      update_interval: never
                                      reset_duration: 2ms
                                      lambda: |-
                                        if (id(Foto).state != "1") {
                                          //Photovoltaik
                                          it.image((id(photovoltaik_symbols_x_int)+400), (id(photovoltaik_symbols_y_int)+85), id(Bild_Photovoltaik));
                                          it.printf((id(photovoltaik_symbols_x_int)+455), (id(photovoltaik_symbols_y_int)+45), id(font1),TextAlign::TOP_CENTER,"%s", id(Momentanleistung).state.c_str());
                                          it.image((id(photovoltaik_symbols_x_int)+550), (id(photovoltaik_symbols_y_int)+171), id(Bild_Haus));
                                          it.printf((id(photovoltaik_symbols_x_int)+601), (id(photovoltaik_symbols_y_int)+263), id(font1),TextAlign::TOP_CENTER,"%s", id(Hausverbrauch).state.c_str());
                                          it.image((id(photovoltaik_symbols_x_int)+692), (id(photovoltaik_symbols_y_int)+78), id(Bild_Strommast));
                                          it.printf((id(photovoltaik_symbols_x_int)+723), (id(photovoltaik_symbols_y_int)+45), id(font1),TextAlign::TOP_CENTER,"%s", id(Einspeisung_Bezug).state.c_str());
                                          if (id(Pfeil_PV_Netz).state == "1") {
                                            it.image((id(photovoltaik_symbols_x_int)+554), (id(photovoltaik_symbols_y_int)+115), id(Bild_Pfeil_rechts));}
                                          if (id(Pfeil_PV_Haus).state == "1") {
                                            it.image((id(photovoltaik_symbols_x_int)+448), (id(photovoltaik_symbols_y_int)+185), id(Bild_Pfeil_rechts_unten));}
                                          if (id(Pfeil_Netz_Haus).state == "1") {
                                            it.image((id(photovoltaik_symbols_x_int)+680), (id(photovoltaik_symbols_y_int)+185), id(Bild_Pfeil_links_unten));}
                                          it.printf((id(photovoltaik_data_x_int)+470), (id(photovoltaik_data_y_int)+320), id(font1),TextAlign::TOP_LEFT, "Tagesertrag: %s", id(Ertrag_Heute).state.c_str());
                                          it.printf((id(photovoltaik_data_x_int)+470), (id(photovoltaik_data_y_int)+350), id(font1),TextAlign::TOP_LEFT, "Eigenv.: %s", id(Eigenverbrauch_Heute).state.c_str());
                                          it.printf((id(photovoltaik_data_x_int)+470), (id(photovoltaik_data_y_int)+380), id(font1),TextAlign::TOP_LEFT, "Netzbezug: %s", id(Netzbezug_Heute).state.c_str());
                                          it.printf((id(photovoltaik_data_x_int)+470), (id(photovoltaik_data_y_int)+410), id(font1),TextAlign::TOP_LEFT, "Deckungsgrad: %s", id(Deckungsgrad_Heute).state.c_str());
                                  
                                          //Unwetter
                                          if (id(Unwetter).state != "0") {
                                            id(icon_heute_y_int) = 0;
                                            id(icon_morgen_y_int) = 60;
                                            id(icon_uebermorgen_y_int) = 60;
                                            it.printf((id(icon_heute_x_int)+125), (id(icon_heute_y_int)+155), id(font1),TextAlign::TOP_LEFT, "%s", id(Unwetter).state.c_str());
                                            it.image((id(icon_heute_x_int)+60), (id(icon_heute_y_int)+148), id(Bild_Ausrufezeichen));}
                                          else {
                                            id(icon_heute_y_int) = 10;
                                            id(icon_morgen_y_int) = 20;
                                            id(icon_uebermorgen_y_int) = 20;}
                                  
                                          //Wetter heute
                                          if (id(Wettericon_now).state == "01d") {
                                            it.image((id(icon_heute_x_int)+40), (id(icon_heute_y_int)+0), id(Bild_Sonne));}
                                          if (id(Wettericon_now).state == "01n") {
                                            it.image((id(icon_heute_x_int)+60), (id(icon_heute_y_int)+15), id(Bild_Mond));}
                                          if (id(Wettericon_now).state == "02d") {
                                            it.image((id(icon_heute_x_int)+40), (id(icon_heute_y_int)-25), id(Bild_Sonne_Wolken));}
                                          if (id(Wettericon_now).state == "02n") {
                                            it.image((id(icon_heute_x_int)+40), (id(icon_heute_y_int)-10), id(Bild_Mond_Wolken));}
                                          if (id(Wettericon_now).state == "03dn") {
                                            it.image((id(icon_heute_x_int)+43), (id(icon_heute_y_int)-20), id(Bild_Wolke));}
                                          if (id(Wettericon_now).state == "04dn") {
                                            it.image((id(icon_heute_x_int)+50), (id(icon_heute_y_int)-30), id(Bild_Wolken));}
                                          if (id(Wettericon_now).state == "09dn") {
                                            it.image((id(icon_heute_x_int)+50), (id(icon_heute_y_int)+10), id(Bild_Regen));}
                                          if (id(Wettericon_now).state == "10d") {
                                            it.image((id(icon_heute_x_int)+45), (id(icon_heute_y_int)-5), id(Bild_Sonne_Regen));}
                                          if (id(Wettericon_now).state == "10n") {
                                            it.image((id(icon_heute_x_int)+45), (id(icon_heute_y_int)-5), id(Bild_Mond_Regen));}
                                          if (id(Wettericon_now).state == "11dn") {
                                            it.image((id(icon_heute_x_int)+65), (id(icon_heute_y_int)+20), id(Bild_Gewitter));}
                                          if (id(Wettericon_now).state == "13dn") {
                                            it.image((id(icon_heute_x_int)+55), (id(icon_heute_y_int)+10), id(Bild_Schnee));}
                                          if (id(Wettericon_now).state == "50dn") {
                                            it.image((id(icon_heute_x_int)+45), (id(icon_heute_y_int)-30), id(Bild_Wolken));}
                                          it.printf((id(icon_heute_x_int)+210), (id(icon_heute_y_int)+33), id(font2),TextAlign::TOP_LEFT, "%s", id(Actual_Temp).state.c_str());
                                          it.printf((id(icon_heute_x_int)+210), (id(icon_heute_y_int)+78), id(font3),TextAlign::TOP_LEFT, "%s", id(MinMax_Temp_Heute).state.c_str());
                                          it.printf((id(icon_heute_x_int)+230), (id(icon_heute_y_int)+100), id(font3),TextAlign::TOP_LEFT, "%s", id(Regen_Heute).state.c_str());
                                          it.image((id(icon_heute_x_int)+210), (id(icon_heute_y_int)+104), id(Bild_Tropfen));
                                  
                                          //Wetter morgen
                                          if (id(Wettericon_morgen).state == "01d") {
                                            it.image((id(icon_morgen_x_int)+78), (id(icon_morgen_y_int)+178), id(Bild_Sonne_klein));}
                                          if (id(Wettericon_morgen).state == "01n") {
                                            it.image((id(icon_morgen_x_int)+6), (id(icon_morgen_y_int)+180), id(Bild_Mond_klein));}
                                          if (id(Wettericon_morgen).state == "02d") {
                                            it.image((id(icon_morgen_x_int)+68), (id(icon_morgen_y_int)+154), id(Bild_Sonne_Wolken_klein));}
                                          if (id(Wettericon_morgen).state == "02n") {
                                            it.image((id(icon_morgen_x_int)+73), (id(icon_morgen_y_int)+173), id(Bild_Mond_Wolken_klein));}
                                          if (id(Wettericon_morgen).state == "03dn") {
                                            it.image((id(icon_morgen_x_int)+68), (id(icon_morgen_y_int)+159), id(Bild_Wolke_klein));}
                                          if (id(Wettericon_morgen).state == "04dn") {
                                            it.image((id(icon_morgen_x_int)+68), (id(icon_morgen_y_int)+152), id(Bild_Wolken_klein));}
                                          if (id(Wettericon_morgen).state == "09dn") {
                                            it.image((id(icon_morgen_x_int)+75), (id(icon_morgen_y_int)+180), id(Bild_Regen_klein));}
                                          if (id(Wettericon_morgen).state == "10d") {
                                            it.image((id(icon_morgen_x_int)+70), (id(icon_morgen_y_int)+169), id(Bild_Sonne_Regen_klein));}
                                          if (id(Wettericon_morgen).state == "10n") {
                                            it.image((id(icon_morgen_x_int)+70), (id(icon_morgen_y_int)+169), id(Bild_Mond_Regen_klein));}
                                          if (id(Wettericon_morgen).state == "11dn") {
                                            it.image((id(icon_morgen_x_int)+75), (id(icon_morgen_y_int)+181), id(Bild_Gewitter_klein));}
                                          if (id(Wettericon_morgen).state == "13dn") {
                                            it.image((id(icon_morgen_x_int)+75), (id(icon_morgen_y_int)+177), id(Bild_Schnee_klein));}
                                          if (id(Wettericon_morgen).state == "50dn") {
                                            it.image(id(icon_morgen_x_int)+68, (id(icon_morgen_y_int)+152), id(Bild_Wolken_klein));}     
                                          it.printf(id(icon_morgen_x_int)+58, (id(icon_morgen_y_int)+233), id(font3),TextAlign::TOP_LEFT, "%s", id(MinMax_Temp_morgen).state.c_str());
                                          it.printf((id(icon_morgen_x_int)+78), (id(icon_morgen_y_int)+255), id(font3),TextAlign::TOP_LEFT, "%s", id(Regen_morgen).state.c_str());
                                          it.image(id(icon_morgen_x_int)+58, (id(icon_morgen_y_int)+259), id(Bild_Tropfen));
                                          it.printf((id(icon_morgen_x_int)+73), (id(icon_morgen_y_int)+150), id(font3),TextAlign::TOP_LEFT, "%s", id(Tag_morgen).state.c_str());
                                          it.line((id(icon_morgen_x_int)+58), (id(icon_morgen_y_int)+176), (id(icon_morgen_x_int)+158), (id(icon_morgen_y_int)+176));
                                  
                                          //Wetter uebermorgen
                                          if (id(Wettericon_uebermorgen).state == "01d") {
                                            it.image((id(icon_uebermorgen_x_int)+238), (id(icon_uebermorgen_y_int)+178), id(Bild_Sonne_klein));}
                                          if (id(Wettericon_uebermorgen).state == "01n") {
                                            it.image((id(icon_uebermorgen_x_int)+236), (id(icon_uebermorgen_y_int)+180), id(Bild_Mond_klein));}
                                          if (id(Wettericon_uebermorgen).state == "02d") {
                                            it.image((id(icon_uebermorgen_x_int)+228), (id(icon_uebermorgen_y_int)+154), id(Bild_Sonne_Wolken_klein));}
                                          if (id(Wettericon_uebermorgen).state == "02n") {
                                            it.image((id(icon_uebermorgen_x_int)+233), (id(icon_uebermorgen_y_int)+171), id(Bild_Mond_Wolken_klein));}
                                          if (id(Wettericon_uebermorgen).state == "03dn") {
                                            it.image((id(icon_uebermorgen_x_int)+228), (id(icon_uebermorgen_y_int)+159), id(Bild_Wolke_klein));}
                                          if (id(Wettericon_uebermorgen).state == "04dn") {
                                            it.image((id(icon_uebermorgen_x_int)+228), (id(icon_uebermorgen_y_int)+152), id(Bild_Wolken_klein));}
                                          if (id(Wettericon_uebermorgen).state == "09dn") {
                                            it.image((id(icon_uebermorgen_x_int)+235), (id(icon_uebermorgen_y_int)+180), id(Bild_Regen_klein));}
                                          if (id(Wettericon_uebermorgen).state == "10d") {
                                            it.image((id(icon_uebermorgen_x_int)+230), (id(icon_uebermorgen_y_int)+169), id(Bild_Sonne_Regen_klein));}
                                          if (id(Wettericon_uebermorgen).state == "10n") {
                                            it.image((id(icon_uebermorgen_x_int)+230), (id(icon_uebermorgen_y_int)+169), id(Bild_Mond_Regen_klein));}
                                          if (id(Wettericon_uebermorgen).state == "11dn") {
                                            it.image((id(icon_uebermorgen_x_int)+235), (id(icon_uebermorgen_y_int)+181), id(Bild_Gewitter_klein));}
                                          if (id(Wettericon_uebermorgen).state == "13dn") {
                                            it.image((id(icon_uebermorgen_x_int)+235), (id(icon_uebermorgen_y_int)+177), id(Bild_Schnee_klein));}
                                          if (id(Wettericon_uebermorgen).state == "50dn") {
                                            it.image((id(icon_uebermorgen_x_int)+228), (id(icon_uebermorgen_y_int)+152), id(Bild_Wolken_klein));}   
                                          it.printf(id(icon_uebermorgen_x_int)+218, (id(icon_uebermorgen_y_int)+233), id(font3),TextAlign::TOP_LEFT, "%s", id(MinMax_Temp_uebermorgen).state.c_str());
                                          it.printf((id(icon_uebermorgen_x_int)+238), (id(icon_uebermorgen_y_int)+255), id(font3),TextAlign::TOP_LEFT, "%s", id(Regen_uebermorgen).state.c_str());
                                          it.image(id(icon_uebermorgen_x_int)+218, (id(icon_uebermorgen_y_int)+259), id(Bild_Tropfen));
                                          it.printf((id(icon_uebermorgen_x_int)+233), (id(icon_uebermorgen_y_int)+150), id(font3),TextAlign::TOP_LEFT, "%s", id(Tag_uebermorgen).state.c_str());
                                          it.line((id(icon_uebermorgen_x_int)+218), (id(icon_uebermorgen_y_int)+176), (id(icon_uebermorgen_x_int)+318), (id(icon_uebermorgen_y_int)+176));
                                  
                                          //Muell
                                          //Keine Unwetterwarnung
                                          if (id(Unwetter).state == "0") {
                                              //Kein Grün- und kein Sperrmüll-Termin
                                              if ((id(Termin_Gruenabfall).state == "Grünabfall: Kein Termin") && (id(Termin_Sperrmuell).state == "Sperrmüll: Kein Termin")) {
                                                it.image((id(muell_x_int)+63), (id(muell_y_int)+337), id(Bild_Muelltonne_klein));
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+335), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+365), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());}
                                              //Nur Grünabfall-Termin
                                              else if ((id(Termin_Gruenabfall).state != "Grünabfall: Kein Termin") && (id(Termin_Sperrmuell).state == "Sperrmüll: Kein Termin")) {
                                                it.image((id(muell_x_int)+45), (id(muell_y_int)+340), id(Bild_Muelltonne_gross));
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+335), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+365), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+395), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Gruenabfall).state.c_str());}
                                              //Nur Sperrmüll-Termin
                                              else if ((id(Termin_Gruenabfall).state == "Grünabfall: Kein Termin") && (id(Termin_Sperrmuell).state != "Sperrmüll: Kein Termin")) {
                                                it.image((id(muell_x_int)+45), (id(muell_y_int)+340), id(Bild_Muelltonne_gross));
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+335), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+365), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+395), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Sperrmuell).state.c_str());}
                                              //Grün- und Sperrmüll-Termine
                                              else if ((id(Termin_Gruenabfall).state != "Grünabfall: Kein Termin") && (id(Termin_Sperrmuell).state != "Sperrmüll: Kein Termin")) {
                                                it.image((id(muell_x_int)+45), (id(muell_y_int)+340), id(Bild_Muelltonne_gross));
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+320), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+350), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+380), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Gruenabfall).state.c_str());
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+410), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Sperrmuell).state.c_str());}}
                                  
                                          //Unwetterwarnung aktiv
                                          else {
                                              //Nur Rest- und Papiermüll-Termine
                                              if (id(Termin_Gruen_Sperr).state == "Kein Termin") {
                                                it.image((id(muell_x_int)+63), (id(muell_y_int)+367), id(Bild_Muelltonne_klein));
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+365), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                                it.printf((id(muell_x_int)+105), (id(muell_y_int)+395), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());}      
                                              else {
                                              ////Rest-, Papier-, Grün- und/oder Sperrmüll-Termine
                                              it.image((id(muell_x_int)+45), (id(muell_y_int)+357), id(Bild_Muelltonne_gross));
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+350), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Restmuell).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+380), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Papier).state.c_str());
                                              it.printf((id(muell_x_int)+105), (id(muell_y_int)+410), id(font4),TextAlign::TOP_LEFT, "%s", id(Termin_Gruen_Sperr).state.c_str());}}}
                                        else {it.image(75, 0, id(Bild));}
                                  
                                  A Offline
                                  A Offline
                                  appi
                                  schrieb am zuletzt editiert von
                                  #42

                                  @doho besten Dank, sind die PNG's als Standart verfügbar oder selber gezeichnet?

                                  1 Antwort Letzte Antwort
                                  0
                                  • D Offline
                                    D Offline
                                    DoHo
                                    schrieb am zuletzt editiert von DoHo
                                    #43

                                    Die Bilder hab ich von freepik.com

                                    1 Antwort Letzte Antwort
                                    0
                                    • D Offline
                                      D Offline
                                      DoHo
                                      schrieb am zuletzt editiert von
                                      #44

                                      Hallo Zusammen,
                                      Mein Display macht seit einiger Zeit Probleme und ich komme nicht dahinter, was es ist.
                                      Über den Tag hinweg, verliert das Display seinen Kontrast. Morgens ist der Kontrast ok und Abends ist das Display unscharf. Update Intervall 15 Minuten tagsüber. Nachts (22:30 Uhr bis 06:00 Uhr) keine Refresh’s.

                                      Verkabelung und Software habe ich geprüft und scheint ok zu sein. Direkt nach dem Refresh ist das Display für wenige ms scharf und wird dann schlagartig „unscharf“. Darum denke ich, es ist ein Konfigurationsthema.
                                      Kennst Du das Phänomen vielleicht @draexler? Oder evtl. sonst jemand?

                                      Vielen Dank vorab!

                                      IMG_7785.jpeg

                                      IMG_7786.jpeg

                                      draexlerD 1 Antwort Letzte Antwort
                                      0
                                      • D DoHo

                                        Hallo Zusammen,
                                        Mein Display macht seit einiger Zeit Probleme und ich komme nicht dahinter, was es ist.
                                        Über den Tag hinweg, verliert das Display seinen Kontrast. Morgens ist der Kontrast ok und Abends ist das Display unscharf. Update Intervall 15 Minuten tagsüber. Nachts (22:30 Uhr bis 06:00 Uhr) keine Refresh’s.

                                        Verkabelung und Software habe ich geprüft und scheint ok zu sein. Direkt nach dem Refresh ist das Display für wenige ms scharf und wird dann schlagartig „unscharf“. Darum denke ich, es ist ein Konfigurationsthema.
                                        Kennst Du das Phänomen vielleicht @draexler? Oder evtl. sonst jemand?

                                        Vielen Dank vorab!

                                        IMG_7785.jpeg

                                        IMG_7786.jpeg

                                        draexlerD Nicht stören
                                        draexlerD Nicht stören
                                        draexler
                                        schrieb am zuletzt editiert von
                                        #45

                                        @doho Ja, das tritt bei meinen Geräten auf, auf denen kein DeepSleep verwendet wird.

                                        Fehler ist bekannt und wird mit einer der nächsten Version gefixt.
                                        Aktuell musst du auf die 2023.7.0 esphome Version updaten -> Dazu musst du den ioBroker Adapter deinstallieren und wieder installieren. Keine Angst die YAMLS sind danach noch da. Aber trotzdem vielleicht sichern.

                                        Anschließen ergänzt du in der YAML folgendes:

                                        # Interim solution until solution comes centrally
                                        external_components:
                                          - source:
                                              type: git
                                              url: https://github.com/prapador/esphome_waveshare_fix
                                              ref: dev
                                            components: [ waveshare_epaper ]
                                        

                                        Und als Display Version verwendest du folgendes:

                                        model: 7.50inV2alt
                                        

                                        Damit sollte das Problem behoben. Es kommt aber irgendwann ein Update. Ein Pull Request dazu läuft schon.

                                        1 Antwort Letzte Antwort
                                        0
                                        • D Offline
                                          D Offline
                                          DoHo
                                          schrieb am zuletzt editiert von
                                          #46

                                          Danke für den Hinweis @draexler. Laut changelog müsste es mit der neusten Version 2023.7.1 behoben sein. Ich werde es ausprobieren :-)

                                          2023-08-04 08_40_22-Releases · esphome_esphome – Mozilla Firefox.png

                                          draexlerD 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          633

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe