Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. Wetterdisplay mit Waveshare Epaper

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wetterdisplay mit Waveshare Epaper

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      g.pitzer last edited by

      Re: [Gelöst] Wetter Display
      Re: [Gelöst] Wetter Display
      Hallo,
      Ich beziehe mich auf den oben genannten Eintrag. Ich habe versucht das nachzubeuen, scheitere aber kläglich.
      Anbei meine Konfig:

      esphome:
        name: waveshare-display
        platform: ESP32
        board: esp32dev
      
      
      wifi:
          ssid: !secret wifi_ssid
          password: !secret wifi_password
      
       
          # Enable fallback hotspot (captive portal) in case wifi connection fails
          ap:
            ssid: !secret wifi_ap_ssid
            password: !secret wifi_ap_password
      
      
      captive_portal:
      
      
      # Enable logging
      logger:
        level: DEBUG
      
      # Enable Home Assistant API
      api:
        password: !secret api_password
      
      ota:
        - platform: esphome
          password: !secret ota_password
      
      # Example configuration entry
      web_server:
        port: 80
      
      
      mqtt:
        broker: 192.168.2.9
      
      
      #time:
      #  - platform: homeassistant
      #    id: hass_time 
      
      time:
        - platform: sntp
          id: sntp_time
          timezone: Europe/Berlin
          servers : 0.pool.ntp.org
          # Every 5 minutes
          on_time:
            - seconds: 0
              minutes: /1
              then:
                - logger.log: "On_time sntp clock schedule"
          on_time_sync:
            then:
              - logger.log: "Synchronized sntp clock"
      
      text_sensor:
        #TemperaturLueftungAussen
        - platform: mqtt_subscribe
          name: "Temperatur aussen"
          id: TemperaturLueftungAussen
          topic: iobprovides/TemperaturLueftungAussen
        #LuftfeuchtigkeitLueftungInnen
        - platform: mqtt_subscribe
          name: "Luftfeuchtigkeit Innen Lüftung"
          id: LuftfeuchtigkeitLueftungInnen
          topic: iobprovides/LuftfeuchtigkeitLueftungInnen
        #TemperaturWetterdienstMin
        - platform: mqtt_subscribe
          name: "Temperatur Min Wetterdienst"
          id: TemperaturWetterdienstMin
          topic: iobprovides/TemperaturWetterdienstMin
        #TemperaturWetterdienstMax
        - platform: mqtt_subscribe
          name: "Temperatur Max Wetterdienst"
          id: TemperaturWetterdienstMax
          topic: iobprovides/TemperaturWetterdienstMax
        #Wettersymbol_WetterAktuell
        - platform: mqtt_subscribe
          name: "Wettersymbol Wetter Aktuell"
          id: WettersymbolAktuell
          topic: iobprovides/WettersymbolAktuell
        - platform: mqtt_subscribe
          name: "Wettertext Wetter Aktuell"
          id: WettertextAktuell
          topic: iobprovides/WettertextAktuell
          #Wettersymbol_WetterHeute
        - platform: mqtt_subscribe
          name: "Wettersymbol Wetter Heute"
          id: WettersymbolHeute
          topic: iobprovides/WettersymbolHeute  
        - platform: mqtt_subscribe
          name: "Wettertext Wetter Heute"
          id: WettertextHeute
          topic: iobprovides/WettertextHeute 
      
          
      
      # Example configuration entry
      sensor:
        - platform: wifi_signal
          name: "WiFi Signal Sensor"
          update_interval: 60s
      
      
      font:
        - file: "fonts/VerdanaBold.ttf"
          id: VerandanaBold20
          #glyphs ist notwendig um Sonderzeichen und Umlaute darzustellen
          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/materialdesignicons-webfont.ttf"
          id: Icons120
          size: 120
          glyphs:
          #Codes für Icons https://pictogrammers.github.io/@mdi/font/5.3.45/
          - "\U000F0599" # Sonne,
          - "\U000F0595" # Sonne bewölkt, Sonne stark bewölkt
          - "\U000F0590" # bewölkt		
          - "\U000F0597" # Sonne bewölkt leichter Regen, Sonne stark bewölkt leichter Regen, bewölkt leichter Regen
          - "\U000F0596" # Sonne bewölkt starker Regen, Sonne stark bewölkt starker Regen, stark bewölkt starker Regen
          - "\U000F0593" # Sonne bewölkt Unwetter, Sonne stark bewölkt Unwetter, stark bewölkt Unwetter
          - "\U000F0592" # Sonne bewölkt Eisregen, Sonne stark bewölkt Eisregen, stark bewölkt Eisregen, Sonne bewölkt Schneeregen, Sonne stark bewölkt Schneeregen, stark bewölkt Schneeregen
          - "\U000F0598" # Sonne bewölkt Schnee, Sonne stark bewölkt Schnee, stark bewölkt Schnee
        - file: "fonts/materialdesignicons-webfont.ttf"
          id: Icons90
          size: 90
          glyphs:
          #Codes für Icons https://pictogrammers.github.io/@mdi/font/5.3.45/
          - "\U000F0599" # Sonne,
          - "\U000F0595" # Sonne bewölkt, Sonne stark bewölkt
          - "\U000F0590" # bewölkt		
          - "\U000F0597" # Sonne bewölkt leichter Regen, Sonne stark bewölkt leichter Regen, bewölkt leichter Regen
          - "\U000F0596" # Sonne bewölkt starker Regen, Sonne stark bewölkt starker Regen, stark bewölkt starker Regen
          - "\U000F0593" # Sonne bewölkt Unwetter, Sonne stark bewölkt Unwetter, stark bewölkt Unwetter
          - "\U000F0592" # Sonne bewölkt Eisregen, Sonne stark bewölkt Eisregen, stark bewölkt Eisregen, Sonne bewölkt Schneeregen, Sonne stark bewölkt Schneeregen, stark bewölkt Schneeregen
          - "\U000F0598" # Sonne bewölkt Schnee, Sonne stark bewölkt Schnee, stark bewölkt Schnee
      
      
      
      image:
        - file: "images/visweather.png"
          id: visweather
          resize: 800x480
        - file: "images/nadel.png"
          id: nadel
          resize: 95x95    
      
      
      #deep_sleep:
      #  id: deep_sleep_1
      #  run_duration: 22s
      #  sleep_duration: 2min 
          
      
      spi:
        clk_pin: 13
        mosi_pin: 14
           
      display:
        - platform: waveshare_epaper
          id: epaper
          cs_pin: 15
          busy_pin: 25
          reset_pin: 26
          dc_pin: 27
          model: 4.20in-bV2
          #rotation: 180°
          update_interval: 30s
          lambda: |-
            // HINTERGRUNDBILD
            it.image(0, 0, id(visweather));
            
      
            
            
            // Print the string "Temperatur!" at [0,10]
            it.print(0, 10, id(VerandanaBold20), "Temperatur!");
      
      
            
            it.printf(40, 80, id(VerandanaBold20), TextAlign::BOTTOM_LEFT, "%s", id(TemperaturLueftungAussen).state.c_str());
      
            it.printf(40, 100, id(VerandanaBold20), TextAlign::BOTTOM_LEFT, "%s", id(LuftfeuchtigkeitLueftungInnen).state.c_str());
      
            it.printf(40, 120, id(VerandanaBold20), TextAlign::BOTTOM_LEFT, "%s", id(TemperaturWetterdienstMin).state.c_str());
      
            it.printf(40, 140, id(VerandanaBold20), TextAlign::BOTTOM_LEFT, "%s", id(TemperaturWetterdienstMax).state.c_str());
      
      
            //Time
            it.strftime(200, 28, id(VerandanaBold20),TextAlign::BOTTOM_LEFT, "%H:%M", id(sntp_time).now());
            it.strftime(150, 68, id(VerandanaBold20),TextAlign::BOTTOM_LEFT, "%A, %d.%m.%y, KW %W", id(sntp_time).now());
      
      
      
            //Wetter Aktuell SYMBOL WERTE
            //SYMBOL Aktuell STATE 1
            if (id(WettersymbolAktuell).state == "1") {
            it.print(200, 120, id(Icons120), "\U000F0599");}
      
            //SYMBOL Aktuell STATE 2
            if (id(WettersymbolAktuell).state == "2") {
            it.print(200, 120, id(Icons120), "\U000F0595");}
            //SYMBOL Aktuell STATE 3
            if (id(WettersymbolAktuell).state == "3") {
            it.print(200, 120, id(Icons120), "\U000F0590");}
            //SYMBOL Aktuell STATE 4
            if (id(WettersymbolAktuell).state == "4") {
            it.print(200, 120, id(Icons120), "\U000F0597");}
            //SYMBOL Aktuell STATE 5
            if (id(WettersymbolAktuell).state == "5") {
            it.print(200, 120, id(Icons120), "\U000F0596");}
            //SYMBOL Aktuell STATE 6
            if (id(WettersymbolAktuell).state == "6") {
            it.print(200, 120, id(Icons120), "\U000F0593");}
            //SYMBOL Aktuell STATE 7
            if (id(WettersymbolAktuell).state == "7") {
            it.print(200, 120, id(Icons120), "\U000F0592");}
            //SYMBOL Aktuell STATE 8
            if (id(WettersymbolAktuell).state == "8") {
            it.print(200, 120, id(Icons120), "\U000F0598");}
      
            it.printf(60, 120, id(VerandanaBold20), TextAlign::BOTTOM_LEFT, "%s", id(WettertextAktuell).state.c_str());
          
      
      
            //it.print(60, 180, id(Icons90), "\U000F0599");
      
            //it.printf(60, 160, id(VerandanaBold20), TextAlign::BOTTOM_LEFT, "%s", id(WettertextHeute).state.c_str());
      
      
      
      1. Ich bekomme keine Anzeige auf dem Display, egal was ich mache.
      2. Ich bekomme auf meinen MQTT Server ~1000 Einträge pro Sekunde

        INFO ESPHome 2024.12.2
        INFO Reading configuration /config/esphome/waveshare-display.yaml...
        WARNING GPIO15 is a strapping PIN and should only be used for I/O with care.
        Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
        See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
        INFO Starting log output from 192.168.2.15 using esphome API
        INFO Successfully connected to waveshare-display @ 192.168.2.15 in 0.060s
        INFO Successful handshake with waveshare-display @ 192.168.2.15 in 0.039s
        [16:09:26][I][app:100]: ESPHome version 2024.12.2 compiled on Jan 12 2025, 15:56:06
        [16:09:26][C][wifi:600]: WiFi:
        [16:09:26][C][wifi:428]: Local MAC: 08:F9:E0:E0:E6:E0
        [16:09:26][C][wifi:433]: SSID: 'Pitzer'[redacted]
        [16:09:26][C][wifi:436]: IP Address: 192.168.2.15
        [16:09:26][C][wifi:440]: BSSID: 74:83:C2:B4:82:0B[redacted]
        [16:09:26][C][wifi:441]: Hostname: 'waveshare-display'
        [16:09:26][C][wifi:443]: Signal strength: -69 dB ▂▄▆█
        [16:09:26][C][wifi:447]: Channel: 6
        [16:09:26][C][wifi:448]: Subnet: 255.255.255.0
        [16:09:26][C][wifi:449]: Gateway: 192.168.2.2
        [16:09:26][C][wifi:450]: DNS1: 192.168.2.2
        [16:09:26][C][wifi:451]: DNS2: 0.0.0.0
        [16:09:26][C][logger:185]: Logger:
        [16:09:26][C][logger:186]: Level: DEBUG
        [16:09:26][C][logger:188]: Log Baud Rate: 115200
        [16:09:26][C][logger:189]: Hardware UART: UART0
        [16:09:26][C][spi:064]: SPI bus:
        [16:09:26][C][spi:065]: CLK Pin: GPIO13
        [16:09:26][C][spi:066]: SDI Pin:
        [16:09:26][C][spi:067]: SDO Pin: GPIO14
        [16:09:26][C][spi:072]: Using HW SPI: SPI
        [16:09:26][C][waveshare_epaper:1988]: Waveshare E-Paper
        [16:09:26][C][waveshare_epaper:1988]: Rotations: 0 °
        [16:09:26][C][waveshare_epaper:1988]: Dimensions: 400px x 300px
        [16:09:26][C][waveshare_epaper:1989]: Model: 4.2in (B V2)
        [16:09:26][C][waveshare_epaper:1990]: Reset Pin: GPIO26
        [16:09:26][C][waveshare_epaper:1991]: DC Pin: GPIO27
        [16:09:26][C][waveshare_epaper:1992]: Busy Pin: GPIO25
        [16:09:26][C][waveshare_epaper:1993]: Update Interval: 30.0s
        [16:09:26][C][captive_portal:089]: Captive Portal:
        [16:09:26][C][web_server:153]: Web Server:
        [16:09:26][C][web_server:154]: Address: waveshare-display.local:80
        [16:09:26][C][sntp:042]: SNTP Time:
        [16:09:26][C][sntp:045]: Server 0: '0.pool.ntp.org'
        [16:09:26][C][mdns:116]: mDNS:
        [16:09:26][C][mdns:117]: Hostname: waveshare-display
        [16:09:26][C][esphome.ota:073]: Over-The-Air updates:
        [16:09:26][C][esphome.ota:074]: Address: waveshare-display.local:3232
        [16:09:26][C][esphome.ota:075]: Version: 2
        [16:09:26][C][esphome.ota:078]: Password configured
        [16:09:26][C][safe_mode:018]: Safe Mode:
        [16:09:26][C][safe_mode:020]: Boot considered successful after 60 seconds
        [16:09:26][C][safe_mode:021]: Invoke after 10 boot attempts
        [16:09:26][C][safe_mode:023]: Remain in safe mode for 300 seconds
        [16:09:26][C][api:140]: API Server:
        [16:09:26][C][api:141]: Address: waveshare-display.local:6053
        [16:09:26][C][api:145]: Using noise encryption: NO
        [16:09:26][C][mqtt:148]: MQTT:
        [16:09:26][C][mqtt:150]: Server Address: 192.168.2.9:1883 (192.168.2.9)
        [16:09:26][C][mqtt:151]: Username: ''[redacted]
        [16:09:26][C][mqtt:152]: Client ID: 'waveshare-display-08f9e0e0e6e0'[redacted]
        [16:09:26][C][mqtt:153]: Clean Session: NO
        [16:09:26][C][mqtt:155]: Discovery IP enabled
        [16:09:26][C][mqtt:158]: Discovery prefix: 'homeassistant'
        [16:09:26][C][mqtt:159]: Discovery retain: YES
        [16:09:26][C][mqtt:161]: Topic Prefix: 'waveshare-display'
        [16:09:26][C][mqtt:163]: Log Topic: 'waveshare-display/debug'
        [16:09:26][C][mqtt:166]: Availability: 'waveshare-display/status'
        [16:09:26][C][wifi_signal.sensor:010]: WiFi Signal 'WiFi Signal Sensor'
        [16:09:26][C][wifi_signal.sensor:010]: Device Class: 'signal_strength'
        [16:09:26][C][wifi_signal.sensor:010]: State Class: 'measurement'
        [16:09:26][C][wifi_signal.sensor:010]: Unit of Measurement: 'dBm'
        [16:09:26][C][wifi_signal.sensor:010]: Accuracy Decimals: 0
        [16:09:26][C][mqtt.text_sensor:027]: MQTT Text Sensor 'Temperatur aussen':
        [16:09:26][C][mqtt.text_sensor:028]: State Topic: 'waveshare-display/sensor/temperatur_aussen/state'
        [16:09:26][C][mqtt_subscribe.text_sensor:021]: MQTT Subscribe Text Sensor 'Temperatur aussen'
        [16:09:26][C][mqtt_subscribe.text_sensor:022]: Topic: iobprovides/TemperaturLueftungAussen
        [16:09:26][C][mqtt.text_sensor:027]: MQTT Text Sensor 'Luftfeuchtigkeit Innen Lüftung':
        [16:09:26][C][mqtt.text_sensor:028]: State Topic: 'waveshare-display/sensor/luftfeuchtigkeit_innen_l__ftung/state'
        [16:09:26][C][mqtt_subscribe.text_sensor:021]: MQTT Subscribe Text Sensor 'Luftfeuchtigkeit Innen Lüftung'
        [16:09:26][C][mqtt_subscribe.text_sensor:022]: Topic: iobprovides/LuftfeuchtigkeitLueftungInnen
        [16:09:26][C][mqtt.text_sensor:027]: MQTT Text Sensor 'Temperatur Min Wetterdienst':
        [16:09:26][C][mqtt.text_sensor:028]: State Topic: 'waveshare-display/sensor/temperatur_min_wetterdienst/state'
        [16:09:26][C][mqtt_subscribe.text_sensor:021]: MQTT Subscribe Text Sensor 'Temperatur Min Wetterdienst'
        [16:09:26][C][mqtt_subscribe.text_sensor:022]: Topic: iobprovides/TemperaturWetterdienstMin
        [16:09:26][C][mqtt.text_sensor:027]: MQTT Text Sensor 'Temperatur Max Wetterdienst':
        [16:09:26][C][mqtt.text_sensor:028]: State Topic: 'waveshare-display/sensor/temperatur_max_wetterdienst/state'
        [16:09:27][C][mqtt_subscribe.text_sensor:021]: MQTT Subscribe Text Sensor 'Temperatur Max Wetterdienst'
        [16:09:27][C][mqtt_subscribe.text_sensor:022]: Topic: iobprovides/TemperaturWetterdienstMax
        [16:09:27][C][mqtt.text_sensor:027]: MQTT Text Sensor 'Wettersymbol Wetter Aktuell':
        [16:09:27][C][mqtt.text_sensor:028]: State Topic: 'waveshare-display/sensor/wettersymbol_wetter_aktuell/state'
        [16:09:27][C][mqtt_subscribe.text_sensor:021]: MQTT Subscribe Text Sensor 'Wettersymbol Wetter Aktuell'
        [16:09:27][C][mqtt_subscribe.text_sensor:022]: Topic: iobprovides/WettersymbolAktuell
        [16:09:27][C][mqtt.text_sensor:027]: MQTT Text Sensor 'Wettertext Wetter Aktuell':
        [16:09:27][C][mqtt.text_sensor:028]: State Topic: 'waveshare-display/sensor/wettertext_wetter_aktuell/state'
        [16:09:27][C][mqtt_subscribe.text_sensor:021]: MQTT Subscribe Text Sensor 'Wettertext Wetter Aktuell'
        [16:09:27][C][mqtt_subscribe.text_sensor:022]: Topic: iobprovides/WettertextAktuell
        [16:09:27][C][mqtt.text_sensor:027]: MQTT Text Sensor 'Wettersymbol Wetter Heute':
        [16:09:27][C][mqtt.text_sensor:028]: State Topic: 'waveshare-display/sensor/wettersymbol_wetter_heute/state'
        [16:09:27][C][mqtt_subscribe.text_sensor:021]: MQTT Subscribe Text Sensor 'Wettersymbol Wetter Heute'
        [16:09:27][C][mqtt_subscribe.text_sensor:022]: Topic: iobprovides/WettersymbolHeute
        [16:09:27][C][mqtt.text_sensor:027]: MQTT Text Sensor 'Wettertext Wetter Heute':
        [16:09:27][C][mqtt.text_sensor:028]: State Topic: 'waveshare-display/sensor/wettertext_wetter_heute/state'
        [16:09:27][C][mqtt_subscribe.text_sensor:021]: MQTT Subscribe Text Sensor 'Wettertext Wetter Heute'
        [16:09:27][C][mqtt_subscribe.text_sensor:022]: Topic: iobprovides/WettertextHeute
        [16:09:27][C][mqtt.sensor:028]: MQTT Sensor 'WiFi Signal Sensor':
        [16:09:27][C][mqtt.sensor:032]: State Topic: 'waveshare-display/sensor/wifi_signal_sensor/state'
        [16:09:36][W][component:237]: Component display took a long time for an operation (876 ms).
        [16:09:36][W][component:238]: Components should block for at most 30 ms.
        [16:10:00][D][main:467]: On_time sntp clock schedule
        [16:10:06][W][component:237]: Component display took a long time for an operation (876 ms).
        [16:10:06][W][component:238]: Components should block for at most 30 ms.


      Meine verwendete Hardware:
      https://www.waveshare.com/e-paper-esp32-driver-board.htm
      https://www.waveshare.com/4.26inch-e-Paper.htm

      Kann mir hier wer weiterhelfen?

      lg g.pitzer

      1 Reply Last reply Reply Quote 0
      • First post
        Last post

      Support us

      ioBroker
      Community Adapters
      Donate

      567
      Online

      31.7k
      Users

      79.7k
      Topics

      1.3m
      Posts

      1
      1
      127
      Loading More Posts
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes
      Reply
      • Reply as topic
      Log in to reply
      Community
      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
      The ioBroker Community 2014-2023
      logo