esphome / issues

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

Waveshare long delay before refresh #4923

Closed cbhiii closed 11 months ago

cbhiii commented 11 months ago

The problem

Since 2023.9.1 and likely change #5283 my 7.5" screens (all 4 of them) are taking a long time to refresh when triggered to do so. No longer do they update within a couple seconds after being triggered. Now there is a long wait. See log detail.

Which version of ESPHome has the issue?

2023.9.1

What type of installation are you using?

Home Assistant Add-on

Which version of Home Assistant has the issue?

2023.9.3

What platform are you using?

ESP32

Board

waveshare Universal e-Paper Driver Board

Component causing the issue

Waveshare E-Paper Display

Example YAML snippet

No response

Anything in the logs that might be useful for us?

[12:38:04][D][main:126]: Skipping display refresh...
[12:38:06][D][main:126]: Skipping display refresh...
[12:38:08][D][main:126]: Skipping display refresh...
[12:38:10][D][main:126]: Skipping display refresh...
[12:38:10][D][homeassistant.binary_sensor:026]: 'binary_sensor.office_e_ink_frame_motion': Got state ON
[12:38:10][D][binary_sensor:036]: 'motion_detected': Sending state ON

[12:38:12][D][main:120]: Refreshing display...
[12:38:12][I][waveshare_epaper:1628]: Power on the display and hat
[12:38:22][E][waveshare_epaper:1573]: Timeout while displaying image!
[12:38:33][E][waveshare_epaper:1573]: Timeout while displaying image!
[12:38:33][W][component:204]: Component time took a long time for an operation (21.48 s).
[12:38:33][W][component:205]: Components should block for at most 20-30ms.
[12:38:33][D][esp32.preferences:114]: Saving 1 preferences to flash...
[12:38:33][D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed
[12:38:33][D][sensor:094]: 'Recorded Display Refresh': Sending state 10541.00000 Refreshes with 0 decimals of accuracy

[12:38:33][D][main:126]: Skipping display refresh...
[12:38:33][D][main:126]: Skipping display refresh...
[12:38:33][D][main:126]: Skipping display refresh...
[12:38:33][D][main:126]: Skipping display refresh...
[12:38:33][D][main:126]: Skipping display refresh...
[12:38:33][D][main:126]: Skipping display refresh...

Additional information

No response

cbhiii commented 11 months ago

Didn't realize that 2023.9.1 had a breaking change just for the 7.5"V2 Waveshare e-paper screens.

Had to invert busy pin per docs now.

    busy_pin:
      number: GPIO25
      inverted: true 
haiirogray commented 10 months ago

Hi, can you elaborate on how you fixed this, i am facing the same issue. Where exactly in the yaml did you put those lines of code?

cbhiii commented 10 months ago

I put the busy pin change under the display component as seen in this screenshot. image