Good Display - GDEW101C01 - DES - GxEPD2

Hi guys,

I found this display GDEW101C01 ( https://www.good-display.com/product/385.html ). Even when it is probably difficult to order. Anyway in case I can get it. Is there a way to use the muticolor display with the GxEPD2 library? Probably it would need some updates. There are already some DES displays in the supported devices. Is there probably another e-ink multicolor display?

It would be also interesting how this display can be connected to an Arduino, ESP32 or ESP8266

Maybe @ZinggJM can help since he is probably deep in the topic developing the GxEPD2 library or someone else have an idea.

Best
mmalcm

@mmalcm, Hi, welcome to the forum!

As far as I have been told by my sales contact at Good Display, there should be some 4-color displays becoming available this month. And I should get free samples.

However, the situation with DES displays is unclear. Good Display has the habit to put e-paper displays on their website, without indication that these may be "presale" or "presale for a long or prolonged time", like some other DES displays.

Full color e-paper displays (in contrast to 7-color) are at the edge of current development. And it may take time until manufacturers such as Good Display get a license to produce them, I think.

This highly depends of the interface, parallel or SPI.
Parallel will require a matched driver board, at least to start with.
SPI may need a new matched connection board, with the booster circuit for panel driving voltages.

Jean-Marc

On the English website it is marked presale: https://www.good-display.com/product/385.html.
Oops: my default browser needs to get switched (back) to English. Got lost somehow.

Number of views: 10868

that's why they do this, maybe.

Hi @ZinggJM ,

thank you for welcoming me and all the details. I also talked shortly with them since they offer it already on alibaba.
But they said soon ... some month. Not detailed at all :smiley: Even when they write availble within 90 days their. But probably just to get visibility. But it is parallel. So this driver board would be also necessary. Feels like it will take a long time until avaialble

They advertised their display instead of the multicolor display ( 7-Color E-paper Display 7.3 inch Large Electronic Paper Screen, GDEY073D46_Good Display ) - 7 color. For me alternativly this loogs also interesting ( https://www.waveshare.com/product/displays/e-paper/epaper-1/7.3inch-e-paper-f.htm ) What do you think is the better choice?

Both are not yet supported by the GxEPD2. Do you think it is doable with reasonable effort? For sure I would also support. Even when I did not do programming recently I have for sure knowledge in embedded programming.

Just another thing. I was thinking to use the ready microcontroller ( https://www.waveshare.com/product/displays/e-paper-esp8266-driver-board.htm ). But this proably won't work with the 7.3inch with 7 colors. So it is proabably more useful to buy this display with connection board (HAT) ( waveshare. com/product/displays/e-paper/epaper-1/7.3inch-e-paper-hat-f.htm ) and then use a development board e.g. https://www.amazon.de/AZDelivery-NodeMCU-ESP8266-ESP-12E-Development/dp/B06Y1ZPNMS

Or what be your hardware suggestion for this display and use of all colors (to have enough storage). Important would be that I can bring the board to deep sleep, do not have voltage on the display during deep sleep, and wake the board up just by timers every 2-3 hours to update the content.

Thank you for your effort!

Yes, it is (the GDEY073D46). It will be supported in GxEPD2. I just received one as free sample. But the connection module is currently missing. See also post Waveshare e-paper displays with SPI - #3370 by ZinggJM.
Maybe the Waveshare one will also work, but they don't tell anything about a connection module.
They do: 7.3inch_e-Paper_HAT.pdf.
And it has the "clever" reset circuit.
7.3inch e-Paper HAT (F)

You can't connect it to the FPC connector of a Waveshare ESP8266 or ESP32 Driver board, else I would recommend the ESP32 one. Therefore I suggest a ESP32 board connected to the connection module that should come with the display. Even with ESP32 GxEPD2 will use paged drawing for this display, but needs less pages, faster.
You would set the panel to deep sleep but keep powered, see specs for its low consumption during sleep.

Jean-Marc

Thats cool that you got a free sample for all your effort @ZinggJM :slight_smile:

I was pretty sure that the Waveshare ESP8266 FPC connector will not work. Not to buy something wrong can you answer the following questions?

  1. Should I get the Wavshare 7.3 HAT together with the display or the DESPI-C73? I am not that deep in the display specification to understand the "clever" or non-clever reset circuit. Additional the question is where to get the DESPI-C73 in case necessary

  2. Since there are several ESP32? Which do you suggest - maybe this? waveshare.com/nodemcu-32s.htm Earlier I worked mostly with STM32. But this would be to expensive for the project. Just to make sure. I can run the board using the 3.3V Pins and I do not need 5V? I just need to take care that it is 3.3V since they do not have a protection. Then I can run everything with a 3.7V LiPo and just need to take care that the voltage is stable 3.3V with a MT3608 DC-DC Converter

  3. Do you have any idea how long it will take you to support this 7.3inch 7 color EPD with the GxEPD2 library? Probabaly I start ordering and until it is there and I have some time you are already done.

Best
mmalcm

@mmalcm

Congratulations for asking these questions before buying an e-paper display!

But this is the kind of questions that consume time for me to answer.

The 7.3" 7-color display panel from Waveshare and the GDEY073D46 from Good Display may be equivalent and interchangeable. I hope so. But the Waveshare one may be (currently?) from E-Ink, whereas the Good Display is or will be a licensed copy manufactured by Good Display, if I understand correctly. Parts of it may be identical, e.g. the TFT glass layer with controller and connector.

  1. You will need to either buy the complete Waveshare 7.3 HAT with display panel, or the GDEY073D46 that should come complete with the DESPI-C73. I don't know if Good Display would sell the DESPI-C73 separately, if asked. Maybe later, if more panels work with that connection module.
    In general, I do not recommend the Waveshare HATs or boards with the "clever" reset circuit for use with 3.3V processors. I nearly hate that solution, as it is cause for many questions and posts. Search for these, if interested.

  2. Yes, this ESP32 board looks ok. It looks standard. But boards with the CP2102 USB-serial chip can cause program upload problems. Avoid cheap clones (I have many). I like ESP32 (and ESP8266) boards from LOLIN.

  3. No, I don't know how long this will take. I never promise anything. This is voluntary work. And there are always surprises and interruptions.

Jean-Marc

Hi Jean-Marc,

I know this kind of questions are annoying and time consuming. I appriciate it a lot. Thank you! I ordered an ESP32 and the display a bit later when it is better available. Now I have some time to get used with the ESP32. Maybe some wiki/info pages would be helpful for the EPDs topic with ESP32/ESP8266. Is there any possibile space here or for your library in github? I can proabably also support writing some starter pages @ZinggJM

I also got some news. I was in contact for the 7.3 inch 7 color display with good display. I also got the DESPI-C73 schematic. Should I share it or you have it already? It looks on the first view that it can maybe work with the waveshare EPD but does not have the "clever" reset circle. I am just not sure if both EPD are really the same at the end. I was just wondering if it would make sense to get that DESPI-C73 and the waveshare 7.3 inch 7 color display. Since the waveshare is easier to order and also way cheaper. Currently good display want 90 for the display + 45 for shipping. Since FedEx also adds fees for collecting tax it will get pretty expensive for just 1 display and slow shipping would be also totally ok for me.

Best
mmalcm

I propose you fork GxEPD2 on GitHub. Then you can add whatever wiki or documentation you like. I will take a look at it and maybe add a link to it.

Yes, I noticed that relevant price difference. Maybe I will ask my sales contact about this, after I have added support to GxEPD2.

I would welcome if you buy the Waveshare 7.3" 7-color display complete with HAT.
This would allow me to know if the support added to GxEPD2 really also works on it.
The demo example from Good Display looks rather simple, so I think it might. But there are many parameters set in the init code, and these may be panel specific.
I don't know what controller is used, and if the controller specs can be found.
The GDEY073D46 panel specs are very short: GDEY073D46.pdf, no mention of the controller. But it contains the reference circuit, that might correspond to the DESPI-C73.
LCD controller/driver: 0110-53000018 on Mechanical Drawing.

You could try to get a DESPI-C73 later to have a low power option with ESP32.

Jean-Marc

I know that that the datasheet did not mention the DESPI-C73. But I got the schematic. I just attach it for @ZinggJM
DESPI-C73.pdf (204,4 KB)

If it helps you for sure I can buy the waveshare 7.3" 7 color with the coresponding HAT. Even when it probably will not work correcly with the ESP32 with 3.3V. But I have somewhere an older Arduino Model MEGA 2560. That should have 5V and should work correctly with the waveshare HAT.

I will do a fork and start working on a documentation to get started in general with the EPDs and the possible Hardware probably next week. I think the main information of the forum about possibilities and issues is probably a big help for starters and will cause hopefully less questions in the forum.

It may work, if you use the init() method with the parameter for shortened reset pulse.
If it doesn't, you could connect 5V to the HAT VCC, but use a voltage divider on the BUSY line to protect your ESP32. Or at least a 10k series resistor.

Thanks for the schematic.

I will try. So I ordered the display and probably I can also order seperate the DESPI-C73. I will keep ypu updated when I receive hardware. In case I get the Waveshare display with HAT and the DESPI-C73 I can check the library (whenever available) with the WaveShare 7.3" 7 color EPD in combination with the WaveShare HAT and the DESPI-C73

Thanks for the details to run the display with the HAT.

Hi @ZinggJM

just as an update. I received the Waveshare 7.3" 7 color display with HAT. Poorly I could not get the DESPI-C73 since good display said they do not have it in stock. a bit strange since they wanted to sell the display and board (with a seperate pricing for each part) and when I said I take just the board it was currently not available.

So in case there is something to test already just let me know.

Best
mmalcm

Yes, you could test it with the support for GDEY073D46 in GxEPD2. See:

(not nice to read, added:)

  • added support for GDEY0154D67 1.54" b/w 200x200
  • added support for GDEY0213B74 2.13" b/w 128x250
  • updated support for GDEY027T91 2.7" b/w 176x264
  • renamed driver class for GDEY027T91 to GxEPD2_270_GDEY027T91
  • added support for GDEY029T94 2.9" b/w 128x296
  • added support for GDEY042T91 4.2" b/w 400x300
  • added support for GDEQ0583T31 5.83" b/w 648x480
  • these panels have fast full refresh capability
  • fast full refresh can be disabled in the class header for low temperature use
  • added support for GDEY073D46 7.3" 800x480 7-color
  • all these new panels have been donated by Good Display
  • added __has_include test to GxEPD2_BW.h, GxEPD2_3C.h, GxEPD2_7C
  • this allows to remove or put aside unused driver classes for faster compile
  • several fixes and improvements

Hi @ZinggJM, I have good news. I got the display with the Waveshare HAT to work. Also by using the 3.3V Pins of the Lolin S3 Pro.

So far just got the colors with the function draw7colors() to work, which uses display.fillRect(0, 0, display.width(), h, GxEPD_BLACK);

Since I do not get any of the bitmap arrays (C arrays in header files) completly colorfull I was wondering how I can do that since I already prepared on my server a script creating pictures with the limited 7 colors. Now I need to translate this in an array to submit over WIFI. Then I can save processing of bitmaps. Or you say it is worth to save as bitmap and then using showBitmapFrom_HTTP. But how can I know the color values to use in the bitmap.

In general I was thinking I can use this binary values for each pixel:


// color definitions for GxEPD, GxEPD2 and GxEPD_HD, values correspond to RGB565 values for TFTs
#define GxEPD_BLACK     0x0000
#define GxEPD_WHITE     0xFFFF
// values for 3-color or 7-color EPDs
#define GxEPD_RED       0xF800 // 255,   0,   0
#define GxEPD_YELLOW    0xFFE0 // 255, 255,   0 !!no longer same as GxEPD_RED!!
#define GxEPD_COLORED   GxEPD_RED
// values for 7-color EPDs only
#define GxEPD_BLUE      0x001F //   0,   0, 255
#define GxEPD_GREEN     0x07E0 //   0, 255,   0
#define GxEPD_ORANGE    0xFC00 // 255, 128,   0

and then create an array I can get from my server as follows and draw it using display.epd2.drawDemoBitmap(my_picture_array, 0, 0, 0, 800, 480, 0, false, true); or display.drawNative(my_picture_array, 0, 0, 0, 800, 480, false, false, true); even when I do not get yet the difference between drawDemoBitmap and drawNative. Here the example array of my thoughts for the first 7 pixel in the display in this order red, green, orange, blue, white, black, yellow:

unsigned int my_picture_array[384000] = {
0XF800,0X07E0,0XFC00,0X001F,0XFFFF,0X0000,0XFFE0, ... };

Probably I am completly wrong but before I try forever I would like to understand what will be the best way to prepare the array / data to display own images on the 7 color display with this library with data saved in a backend updated over WIFI.

One last thing. If I have have this array/image data and display them. Is the library also offering a posibility to input in this image some costum box and text like the battery lever before drawing. Sorry that it was very long. I hope this will help also other users.

@mmalcm, Hi,

Ok, I think I understood so far. You got the GDEW101C01 display working with GxEPD2.
And most likely you used a driver class derived from GxEPD2_730c_GDEY073D46.

GxEPD2 uses the same most compact raw pixel representation, 4-bits per pixel, as the controller for its graphics memory buffer. writeNative() is used to transfer the buffer to the controller. drawNative() does transfer and screen refresh.
The Good Display demo picture uses a less compact raw pixel representation of one byte per pixel. For this I have added drawDemoBitmap().

You could use either format for your application.

But it might be easier to keep the picture in 16bit RGB565 BMP format and download it either to SPIFFS or to an SD card, and use the code from the examples to render.
The examples take care of any white-filling or cropping of the picture dimensions needed.

The controller of these 7-color displays, and also for the 4-color displays, has no sub-window addressing capability (at least no documented). The whole controller buffer needs be transferred in one go, one transfer command followed by all the buffer data.

If you want to combine a picture with added text or graphics, you need to use buffered drawing to do this. And it needs be paged drawing with all in one startPage()..nextPage() loop, because of the size.
(Repeatedly) drawing the picture to the buffer will be rather slow, as all goes through drawPixel.
This could be improved for this application, I think, but not by me in the near future.

Jean-Marc

Oops, I spend too much time in the forum! I need to reduce and recover.

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