Go Down

Topic: Waveshare e-paper displays with SPI (Read 334995 times) previous topic - next topic

ZinggJM

@lordofdav11,

The only missing information is the physical connection of the HAT to the ESP32 processor.
The default connections or connection suggestion may differ between GxEPD2 and the Waveshare code.

Just make sure the constructor parameters correspond to your wiring.

Jean-Marc
No personal message please; any question may be useful for other users. Use code tags for code. Make links clickable with URL tags. Provide links to the product in question.

ZinggJM

Version 1.2.8 of GxEPD2 is ready on GitHub and will be available with Library Manager soon.

- improved transfer speed for the bigger displays (3.71" and up)

Jean-Marc
No personal message please; any question may be useful for other users. Use code tags for code. Make links clickable with URL tags. Provide links to the product in question.

lordofdav11

#1787
Apr 15, 2020, 07:09 pm Last Edit: Apr 15, 2020, 07:57 pm by lordofdav11
@ZinggJM

Well, so I checked wiring and code configuration again and It's 100% correct. Also I connected logic analyzer and still don't see a problem. There is some communication (see screenshot).

Plus added to code:
  digitalWrite(RST_PIN, HIGH);
  pinMode(RST_PIN, OUTPUT);
  delay(20);
  digitalWrite(RST_PIN, LOW);
  delay(20);
  digitalWrite(RST_PIN, HIGH);
  delay(200);
before
 display.init(115200)

https://imgur.com/a/mMlmwZ2

Any idea?

EDIT: I tried multiple times and getting always after reset same signal pattern.

ZinggJM

#1788
Apr 16, 2020, 06:48 am Last Edit: Apr 16, 2020, 07:19 am by ZinggJM
@lordofdav11,

I had tested my 7.5" b/w/r e-paper display GDEW075Z08 800x480 yesterday with Wemos D1 mini ESP8266 for release tests. It worked.

I have just repeated this test with ESP32  Wemos LOLIN32 Lite. It works.

For the test I use the example GxEPD2_Example.ino and compile for Wemos LOLIN32.
For connection I use DESPI-C02.

I do have a Waveshare E-Paper HAT, but the previous version without level converters and LDO.

If you use the actual Waveshare E-Paper HAT connecting a 3.3V processor such as ESP32 through the wired connector, the supply to the e-paper panel is marginal because of the LDO. This can lead to failure with the big e-paper panels such as the 7.5" ones, with their current usage peaks.
For connection of 3.3V processors you could use the RasPi connector, which is on the 3.3V side of the LDO and level converter. But the RasPi 3.3V pin is unconnected.See schematics available here 2.13inch_e-Paper_(D)_Datasheet.pdf.

Why it works more reliably with the Waveshare demo code is unclear. Maybe because it uses SW SPI.

Or maybe you have a different error or issue.

Jean-Marc

The actual Wavehare E-paper HAT has a severe design error: a reset on the wired reset line switches OFF the supply to the e-paper. Release of reset to the e-paper panel occurs at the same time as powering up the e-paper panel. Independent reset to the e-paper controller is impossible.
No personal message please; any question may be useful for other users. Use code tags for code. Make links clickable with URL tags. Provide links to the product in question.

lordofdav11

@ZinggJM

Thank you for so much information. I will order DESPI-C02 and I will let you know how did it end up.
In the meantime, I'll try other options.

David

axelleap

Hi,

I am using the Waveshare 1.54'' Black and White eInk screen
Code: [Select]
#include <GxGDEP015OC1/GxGDEP015OC1.h>

with the GxEPD library
Code: [Select]
#include <GxEPD.h>

with a Wemo D1 mini.

I find out that I cannot have both the screen connected with screen CS -> Wemo D8, and Deep Sleep with Wemo D0 -> Wemo RST. I tested that independantly, both  work, i.e:

- I can have Deep Sleep work if I disconnect D8/CS (thus the screen won't work). Deep sleep works and my board "reboots" correctly after deep sleep.

example:
Code: [Select]
ESP.deepSleep(PERIOD_SEC * 1000000, WAKE_RF_DEFAULT);

-I can have the screen work fine if Deep Sleep is disconnected (D0 is not connected to RST). In that case, the screen works fine of course, but I don't have deep sleep (of course).

Is there any reason for this not being able to work together?

Thanks,

Axelle.


ZinggJM

Hi Axelle,

you didn't tell if you have a 1.54" panel on a Waveshare board, or how you connect your panel to your Wemos D1 mini.

Most likely you have a Waveshare 1.54" board with level converters. This can interfere with ESP8266 boot modes if D8 (SS) is used for CS, as D8 is a "strapping pin" and its pull down resistor is too week for use with the level converter. You can try with a 3.3k pull down resistor, or use a different pin for CS.

Jean-Marc
No personal message please; any question may be useful for other users. Use code tags for code. Make links clickable with URL tags. Provide links to the product in question.

axelleap

#1792
Apr 18, 2020, 03:32 pm Last Edit: May 08, 2020, 03:23 pm by axelleap
Most likely you have a Waveshare 1.54" board with level converters. This can interfere with ESP8266 boot modes if D8 (SS) is used for CS, as D8 is a "strapping pin" and its pull down resistor is too week for use with the level converter. You can try with a 3.3k pull down resistor, or use a different pin for CS.
Hi Jean-Marc,

So, the idea is to replace D8 by D6.
My understanding is that I then have to modify the GxIO_Class object and I wrote this:

Code: [Select]

GxIO_Class io(SPI, /*CS=D6*/ D6, /*DC=D3*/ 0, /*RST=D4*/ 2);


But it is incorrect: the screen is no longer working.
How do I specify D6 correctly? I'm sorry, this is probably a newbie question, but I don't get it.

Here https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/ I see that D6 is 12. I also tried 12 but it didn't work either.

Axelle.

ZinggJM

Quote
What other pin can I use for CS? Anything?
You can use any other free pin for CS, but you can't use SS for anything else, if you use HW SPI on ESP8266 or ESP32.

GPIO0 (D3) is the other strapping pin afaik, but I don't have the ESP8266 docs at hand right now.

Jean-Marc
No personal message please; any question may be useful for other users. Use code tags for code. Make links clickable with URL tags. Provide links to the product in question.

maksmist

Hi ZinggJM! Add please GDEM029E97 display to your library. I checked for capability your modules and find, that GxEPD2_213_B72 work fine, but with wrong resolution. Here datasheet for my display http://www.e-paper-display.cn/downloadRepository/0c3dd104-78d7-4f2c-a6df-00b3f6f2ef6d.pdf

Thank you.

ZinggJM

Hi ZinggJM! Add please GDEM029E97 display to your library. I checked for capability your modules and find, that GxEPD2_213_B72 work fine, but with wrong resolution. Here datasheet for my display http://www.e-paper-display.cn/downloadRepository/0c3dd104-78d7-4f2c-a6df-00b3f6f2ef6d.pdf

Thank you.
Hi maksmist,

Please ask Good Display to send a free sample of GDEM029E97 to me.

As written in the README.MD of my libraries, I can only support e-paper panels that I have.

Jean-Marc
No personal message please; any question may be useful for other users. Use code tags for code. Make links clickable with URL tags. Provide links to the product in question.

damjanmi

Jean-Marc

The actual Wavehare E-paper HAT has a severe design error: a reset on the wired reset line switches OFF the supply to the e-paper. Release of reset to the e-paper panel occurs at the same time as powering up the e-paper panel. Independent reset to the e-paper controller is impossible.

Hi ZinggJM,

According to my test, not only that it's not possible to reset IC, but current consumption on reset pin is around 4mA. Also, LDO voltage regulator is using around 80 uA. I have to do some more tests with deep sleep mode and voltage regulator bypass. But that is not good for low powered apps.

I was testing 2.9 inch epaper. And I think that almost all displays and hats released in 2020 are using the same circuit.


Damjan

ZinggJM

For low power use with 3.3V processors I recommend to use the DESPI-C02 adapter board with raw panels.

Jean-Marc
No personal message please; any question may be useful for other users. Use code tags for code. Make links clickable with URL tags. Provide links to the product in question.

jinology

#1798
Apr 21, 2020, 01:32 pm Last Edit: Apr 21, 2020, 04:39 pm by jinology Reason: Missing link on my devices and where i downloaded the codes
Hi everyone, I am new to Arduino and limited knowledge on programming.

I having this problem using flexible 2.9inch epaper, it is not using the full texture space and its flipped horizontally, I am not sure where went wrong. I downloaded the codes from GitHub and used Image2Lcd to generate the codes.

I downsized the size of image and positioned it to bottom left corner and mirrored it, so its show correctly on the epaper.

Anyone can teach me the correct way to do it?

I brought the flexible epaper from here https://www.waveshare.com/product/2.9inch-e-paper-hat-d.htm

I downloaded the code from here https://github.com/ZinggJM/GxEPD

I am used GxEPD_SPI_TestExample

> #include <GxGDEW029Z10/GxGDEW029Z10.cpp>    // 2.9" b/w/r
At first i wanted to use 2.9" b/w for this epaper but it didn't work, end up I use b/w/r

ZinggJM

Hi everyone, I am new to Arduino and limited knowledge on programming.

I having this problem using flexible 2.9inch epaper, it is not using the full texture space and its flipped horizontally, I am not sure where went wrong. I downloaded the codes from GitHub and used Image2Lcd to generate the codes.

I downsized the size of image and positioned it to bottom left corner and mirrored it, so its show correctly on the epaper.

Anyone can teach me the correct way to do it?
@jinology,

Anyone able to guess what library you used, and understand what you mean? Sorry, not me.

If you haven't done yet, please read General Guidance and How to use the Forum and Learn How To Use The Forum.

Provide a link to the e-paper you use, clickable using "insert a link" symbol, and tell what library or code you use.

Jean-Marc
No personal message please; any question may be useful for other users. Use code tags for code. Make links clickable with URL tags. Provide links to the product in question.

Go Up