Skip to content
/ GxEPD2 Public
forked from ZinggJM/GxEPD2

New Simplified Version of GxEPD for Arduino

License

Notifications You must be signed in to change notification settings

h3ndrik/GxEPD2

 
 

Repository files navigation

GxEPD2

New Simplified Version of GxEPD for Arduino

for SPI e-paper displays from Dalian Good Display

and SPI e-paper boards from Waveshare

important note :

- these displays are for 3.3V supply and 3.3V data lines.

- never connect data lines directly to 5V data pins.

Paged Drawing, Picture Loop

- This library uses paged drawing to limit RAM use and cope with missing single pixel update support

- buffer size can be selected in the application by template parameter page_height, see GxEPD2_Example

- Paged drawing is implemented as picture loop, like in U8G2 (Oliver Kraus)

- Paged drawing is also available using drawPaged() and drawCallback(), like in GxEPD

- // GxEPD style paged drawing; drawCallback() is called as many times as needed

- void drawPaged(void (drawCallback)(const void), const void* pv)

- paged drawing is done using Adafruit_GFX methods inside picture loop or drawCallback

Full Screen Buffer Support

- full screen buffer is selected by setting template parameter page_height to display height

- drawing to full screen buffer is done using Adafruit_GFX methods without picture loop or drawCallback

- and then calling method display()

Low Level Bitmap Drawing Support

- bitmap drawing support to the controller memory and screen is available:

- either through the template class instance methods that forward calls to the base display class

- or directy using an instance of a base display class and calling its methods directly

Supporting Arduino Forum Topics:

Version 1.0.4

  • add GxEPD2_GFX base class support (optional, selectable, uses slightly more code)
  • base class GxEPD2_GFX can be used to pass references or pointers to the display instance as parameter
  • add GxEPD2_GFX_MultiDisplayExample, uses GxEPD2_GFX reference parameter
  • modify GxEPD2_MultiDisplayExample for ESP8266 (template issue: class expected instead of typename)

Version 1.0.3

  • fix GxEPD2_SD_Example & GxEPD2_SD_AVR_Example
  • add GxEPD2_MultiDisplayExample (preliminary version)

Version 1.0.2

  • initial release version 1.0.2
  • tested with ESP8266, ESP32, STM32F103C8T6, AVR Arduino (Pro Mini 3.3V)
  • 1.54" 3-color GxEPD2_154c can be used with paging for AVR
  • wave tables in program space, 4.2" b/w can be used with GxEPD2_SD_AVR_Example
  • issues enabled and welcome, please use Forum Topic for enhancement suggestions

Version 1.0.1

  • pre-release test version
  • GxEPD2_SD_AVR_Example added, has no graphics buffer to reduce RAM usage (base display class use)
  • issues disabled so far, use Arduino Forum Topics instead
  • in this version 1.54" 3-color GxEPD2_154c can only be used with full size buffer (or with no buffer base display class)

Version 1.0.0

  • preliminary version, under construction

About

New Simplified Version of GxEPD for Arduino

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 75.7%
  • C++ 24.3%