GxEPD examples not working on GoodDisplay GDEW027W3

Hello,

I have a GoodDisplay GDEW027W3. I am trying to use the libraries GxEPD2 or GxEPD to draw text and images on it. However, none of the examples are working. I have tried GxEPD_HelloWorld, GxEPD2_HelloWorld, GxEPD2_MinimumExample, and GxEPD2_NotPagedExample.

I uncommented the line in GxEPD2_display_selection_new_style.h:

#define GxEPD2_DRIVER_CLASS GxEPD2_270     // GDEW027W3   176x264, EK79652 (IL91874)

I am using the following pins.

Signal Number
BUSY 8
RESET 9
D/C 10
CS 12
SCLK 13
SDI 11

And I have made the corresponding change to the following line.

GxEPD2_DISPLAY_CLASS<GxEPD2_DRIVER_CLASS, MAX_HEIGHT(GxEPD2_DRIVER_CLASS)>
display(GxEPD2_DRIVER_CLASS(/*CS=*/ 12, /*DC=*/ 10, /*RST=*/ 9, /*BUSY=*/ 8));

I know the display works and that everything is wired correctly because the example code from GoodDisplay works.

When I say the library doesn't work, I mean that the display does not show anything at all. It does not flash like it normally does when being updated. The code compiles and uploads without error, and I see debugging prints in the terminal.

I have dug around in the code to try to understand it, but it is difficult for me to troubleshoot. I would appreciate some help in where to look to debug this.

I would have asked in this library's thread, but it has closed.

@marcelrobitaille, Hi, welcome!

I have a guess, but I need more information first.

Please provide a link to the display you bought, and to the connection module, if separate.

Please report the processor and processor board you use, and a link if not a standard one.

Please tell what board you select to compile for.

Your could also provide diagnostic from Serial Monitor, in a code window please, preferably from GxEPD2_Example.ino

Jean-Marc

BTW: thanks for the link; Good Display never informed me about their GitHub presence!
https://github.com/abao66669999/Good-Display

@marcelrobitaille, @everyone who has started with Good Display examples,

This is the first time someone has used MISO for CS with GxEPD2 or GxEPD and reported this issue. Seems most users have followed GxEPD2_wiring_examples.h

I will add the needed fix. See GxEPD2_EPD.cpp line 70ff:

  _pSPIx->begin();
  if (_busy == MISO) // may be overridden, to be verified
  {
    pinMode(_busy, INPUT);
  }
  if (_dc == MISO) // may be overridden, TTGO T5 V2.66
  {
    pinMode(_dc, OUTPUT);
  }

Jean-Marc

1 Like

Hi Jean-Marc,

I did not even notice that. It's so obvious. The GoodDisplay example bit-bangs SPI, which I'm assuming is why that example works. I changed the pins from GxEPD2_wiring_examples.h because I already had it wired for the GoodDisplay example and thought it should be fine as long as its any digital pin. It's so obvious in hindsight! I will check it tomorrow.

  • Link to the display I bought: 2.7 inch E Ink display small size 4 grayscale electronic paper display, GDEW027W3 _Good Display
  • Connection module: That's a tricky one. Everything was done through email. I think I was sold an adapter board that isn't release yet. No product page. The schematic is similar to their existing adapter boards, like this one: https://v4.cecdn.yun300.cn/100001_1909185148/DESPI-C03_SCH.pdf
  • Please report the processor and processor board you use, and a link if not a standard one: Arduino Uno. Sorry, I was sure I mentioned that in my original post
  • Please tell what board you select to compile for: I am using PlatformIO. I have board = uno in my platformio.ini.
  • Your could also provide diagnostic from Serial Monitor, in a code window please, preferably from GxEPD2_Example.ino. I think I just bricked my uno clone trying. Sorry

Good Display never informed me about their GitHub presence!

I'm not saying it's great code, but it's nice to have a first-party example to try

I still have this link: DESPI-C02, but I need to go searching to know if it still can be ordered.

It can be found indirectly e.g. on this page: ESP32 Development Kits

https://buy-lcd.com/products/development-kit-connection-adapter-board-for-eaper-display-demo-kit

And here: https://www.aliexpress.com/item/1005004633084221.html

Most of my driver code is taken from Good Display examples. I think their web-pages (now) are good at providing links for download of specs and examples. I downloaded examples for all panels I have from Good Display. Its good to start with, and for verification that a panel works.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.