esphome / issues

Issue Tracker for ESPHome
https://esphome.io/
291 stars 34 forks source link

Waveshare 7.5" display: Wifi stops working when display is enabled #5910

Open eikowagenknecht opened 2 weeks ago

eikowagenknecht commented 2 weeks ago

The problem

I bought a Waveshare 7.5" display set (https://www.amazon.de/dp/B0CN96WHRC?psc=1&ref=ppx_yo2ov_dt_b_product_details):

I tried setting it up with ESPHome for quite some time now. Unfortunately, I can't get it to work properly.

What works:

What doesn't work:

I tried:

How can I debug this further or even fix it?

Which version of ESPHome has the issue?

2024.5.5

What type of installation are you using?

Home Assistant Add-on

Which version of Home Assistant has the issue?

2024.6.3

What platform are you using?

ESP32

Board

Waveshare e-Paper ESP32 Driver Board

Component causing the issue

display

Example YAML snippet

substitutions:
  name: "epaper-display-buero"
  friendly_name: KG.Büro ePaper Display

esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  name_add_mac_suffix: false
  project:
    name: esphome.web
    version: '1.0'

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:

# Allow Over-The-Air updates
ota:

# Allow provisioning Wi-Fi via serial
improv_serial:

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  domain: ""

  manual_ip:
    static_ip: 192.168.40.95
    gateway: 192.168.40.1
    subnet: 255.255.255.0
    dns1: 192.168.40.1

  # Fallback wifi access point in case wifi connection fails
  ap:
    ssid: "ePaper Fallback Hotspot"
    password: "password"

# In combination with the `ap` this allows the user
# to provision wifi credentials to the device via WiFi AP.
captive_portal:

dashboard_import:
  package_import_url: github://esphome/example-configs/esphome-web/esp32.yaml@main
  import_full_config: true

# Sets up Bluetooth LE (Only on ESP32) to allow the user
# to provision wifi credentials to the device.
esp32_improv:
  authorizer: none

# To have a "next url" for improv serial
web_server:

# Google Fonts
font:
 - file: "gfonts://Inter@900"
   id: medium
   size: 60

# Pins for Waveshare ePaper ESP Board
spi:
 # SPI Clock Pin
 clk_pin: GPIO13
 # SPI Master Out Slave In Pin
 mosi_pin: GPIO14

# Pins for Waveshare ePaper ESP Board
display:
 - platform: waveshare_epaper
   id: screen
   # Chip Select Pin
   cs_pin: GPIO15
   # Data/Command Pin
   dc_pin: GPIO27
   # Busy Pin
   busy_pin:
     number: GPIO25
     inverted: true
   # Reset Pin
   reset_pin: GPIO26
   reset_duration: 2ms
   model: 7.50inV2
   update_interval: 60s
   rotation: 90°
   lambda: |-
     it.print(40, 10, id(medium), "Hello World!");

Anything in the logs that might be useful for us?

ESP Logs (attached with USB to PC because wifi doesn't work)

[10:06:08][I][waveshare_epaper:2464]: Power on the display and hat
[10:06:14][W][component:237]: Component display took a long time for an operation (6721 ms).
[10:06:14][W][component:238]: Components should block for at most 30 ms.

(this repeats on every display refresh)

Ping example:

Reply from 192.168.40.95: bytes=32 time=39ms TTL=255
Reply from 192.168.40.95: bytes=32 time=52ms TTL=255
Reply from 192.168.40.95: bytes=32 time=64ms TTL=255
Reply from 192.168.40.95: bytes=32 time=76ms TTL=255
Request timed out.
Request timed out.
Request timed out.
Reply from 192.168.40.110: Destination host unreachable.
Request timed out.
Request timed out.
Reply from 192.168.40.110: Destination host unreachable.
Request timed out.
Reply from 192.168.40.110: Destination host unreachable.
Reply from 192.168.40.95: bytes=32 time=1820ms TTL=255
Reply from 192.168.40.95: bytes=32 time=5ms TTL=255
Reply from 192.168.40.95: bytes=32 time=77ms TTL=255
Request timed out.
Reply from 192.168.40.95: bytes=32 time=42ms TTL=255
Reply from 192.168.40.95: bytes=32 time=356ms TTL=255
Reply from 192.168.40.95: bytes=32 time=369ms TTL=255
Request timed out.
Request timed out.
Reply from 192.168.40.95: bytes=32 time=47ms TTL=255
Reply from 192.168.40.95: bytes=32 time=62ms TTL=255
Reply from 192.168.40.95: bytes=32 time=78ms TTL=255
Reply from 192.168.40.95: bytes=32 time=85ms TTL=255

Additional information

No response

guevara777 commented 3 days ago

i have exactly the same problem. Did you make any progress on your problem?

eikowagenknecht commented 2 days ago

Unfortunately not. My "build a smart display" project has been set aside for that reason (for now). Please let me know if you manage to find a solution.