Page 1 of 1

waveshare eInk display is stuck powering on with BUSY pin on high

Posted: Thu Apr 08, 2021 10:50 pm
by firstmonkey
Hey guys,

first time here! I'm having some problems with my eInk project, this seemed like a good place to ask.
I have a 7.5 inch epaper display from waveshare (waveshare wiki), connected to an ESP32 driver board (wiki) running Micropython. Now to the problem:

I can't get the display to do anything - the code gets stuck in the init process while waiting for the eInk display to power on. The code waits for the display to set the BUSY pin back to low (=idle) and never finishes.

Waveshare only provides RPI/full-fledged python samples, but mcauser ported them to Micropython. His code only provides drivers for the lower resolution V1 of the display, but according to the waveshare wiki V2 displays should be compatible with V1 software after minor changes (whatever that means besides changing resolution constants, wiki didn't specify).
Pin config I took from the ESP32 driver board data sheet: https://www.waveshare.com/w/upload/4/4a ... ual_en.pdf

Here is the code I am running: https://github.com/JulianNaumann/microp ... in5b_HD.py , init is in line 110, power on happens in 115, 116 waits for idle that never comes.

Thanks for reading this far, anybody got any ideas?

Re: waveshare eInk display is stuck powering on with BUSY pin on high

Posted: Fri Apr 09, 2021 6:45 pm
by marcidy
Waveshare is busy = 0, idle = 1
BUSY Busy state output pin (Low for busy)
so it should be waiting for high, not low.

Re: waveshare eInk display is stuck powering on with BUSY pin on high

Posted: Sat Apr 10, 2021 1:18 pm
by pythoncoder
As a general comment, having ported several display drivers to MicroPython, the way forward is to sit down with the hardware, the datasheet, and the code for the similar display. Check the code line by line against the datasheet.

That said, my limited experience with Waveshare boards was bad. Maybe I was just unlucky, but I bought two samples of an ePaper HAT from different sources - both had hardware problems. @mcauser is the expert on Waveshare but unfortunately he is busy at the moment - I'm hoping to compare notes with him when he becomes available again.

Re: waveshare eInk display is stuck powering on with BUSY pin on high

Posted: Sun Apr 11, 2021 6:42 pm
by firstmonkey
marcidy wrote:
Fri Apr 09, 2021 6:45 pm
so it should be waiting for high, not low.
You are absolutely right, slight mistake on my wording (code is still correct though).
pythoncoder wrote:
Sat Apr 10, 2021 1:18 pm
As a general comment, having ported several display drivers to MicroPython, the way forward is to sit down with the hardware, the datasheet, and the code for the similar display. Check the code line by line against the datasheet.

That said, my limited experience with Waveshare boards was bad. Maybe I was just unlucky, but I bought two samples of an ePaper HAT from different sources - both had hardware problems. @mcauser is the expert on Waveshare but unfortunately he is busy at the moment - I'm hoping to compare notes with him when he becomes available again.
Okay I tested the Arduino example provided by waveshare to confirm the hardware actually works. It worked, I will report back once I get the Arduino code ported to python and post here so that others can benefit as well.

Thanks for your input guys :D

Re: waveshare eInk display is stuck powering on with BUSY pin on high

Posted: Fri Apr 16, 2021 4:43 pm
by Taylen
I just started using micropython too, specifically for a project involving the Waveshare 7.5 v2 display. And I also ran into the fun fact that there hasn't been a driver ported for it yet.

After banging my head against the wall with it for a couple days I finally plugged it into a pi I had laying around and ran the Waveshare test python script and the hardware actually works, so that's a plus.

I know basically nothing about driver development but apparently need to learn if I'm gonna stick with micropython for my IOT devices moving forward. (always just used esphome)

Re: waveshare eInk display is stuck powering on with BUSY pin on high

Posted: Fri Apr 16, 2021 6:34 pm
by Taylen
Well, here's some good news!

Someone already rewrote the driver for the V2 update!

Turns out that when I'm looking for something new I should look in the PR section first....would've saved me a few days of going in circles

https://github.com/mcauser/micropython- ... er/pull/12

Just tried it out and works.