E-Ink waveshare display refreshes but no text/image shows
- Dominant language
- No language data
- Stars
- 313
- Forks
- 40
- PR merge metrics
- No merged PRs in 30d
Description
### The problem
I have a black and white 2.9in waveshare epaper display that I would like to use within ESPHome, however I've ran into an issue.
When I tried setting the model to either `2.9in` or `2.9inv2`, I receive serial errors saying `[E][waveshare_epaper:119]: Timeout while displaying image!` and the display does not do anything.
Interestingly, when I try `2.9in-b` the error goes away, and the screen refreshes but appears to never draw the text to the display. It goes from full white, to black, to white again, and after the `update_interval` has passed, the cycle repeats.
I have been able to use this display with GxEPD2, which helped me identify it as a `GDEW029T5` display using a `UC8151` as it's driver. I would love to use this in ESPHome but can't until this is fixed.
### Which version of ESPHome has the issue?
v2022.8.0
### What type of installation are you using?
Home Assistant Add-on
### Which version of Home Assistant has the issue?
2022.8.6
### What platform are you using?
ESP32
### Board
lolin_d32
### Component causing the issue
waveshare_epaper
### Example YAML snippet
Device config:
```yaml
esphome:
name: esp32-epaper
esp32:
board: lolin_d32
framework:
type: arduino
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "REDACTED"
ota:
password: "REDACTED"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Esp32-Epaper Fallback Hotspot"
password: "REDACTED"
font:
- file: 'slkscr.ttf'
id: font1
size: 24
spi:
clk_pin: 22
mosi_pin: 23
display:
- platform: waveshare_epaper
cs_pin: 21
dc_pin: 19
busy_pin: 5
reset_pin: 18
model: 2.90in-b
update_interval: 30s
lambda: |-
it.print(10, 10, id(font1), "Hello, will it work? Nope...");
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the waveshare_epaper component and reproduce the supplied ESP32 YAML using the 2.9in, 2.9inv2, and 2.9in-b models. Compare the observed behavior with the GDEW029T5 display and UC8151 driver details; done means the display refreshes without timeout and renders the configured text or image.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, yaml
- Domain
- embedded-iot
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100