eglib¶
A portable C library for interfacing with LCD, OLED, e-ink / e-paper displays, usable from microcontrollers to Linux.
Its design provides a simple but coherent interface enjoyable from both the perspective of end users or HAL / display driver developers.
The name eglib originally came from Experimental Graphics Library, but as it matured, e can stand for exceptional, extraordinary, exquisite, elegant…
Features¶
Hardware Abstraction Layer (HAL).
Supports different data buses such as 4-Wire SPI and I2C.
Easy to develop reusable drivers for different platforms. - Drivers have accept configuration for things like I/O pins. - Display drivers provide bus specific configuration.
Display drivers.
Common interface regardless of data bus.
Supports configuration
Same controller driver works with different screen sizes or boards.
Allows configuration of things like color depth.
Support for specific commands: color inversion, scrolling, brightness etc.
Accelerated line drawing routines.
Supports a wide range of:
Display types: LCD, OLED, e-ink/e-paper.
Color depths: black/white, black/white/red|yellow (e-ink / e-paper), grayscale to full color.
Frame buffer
Can be used on top of any display driver.
Faster refresh rates.
No visual artifacts from drawing directly on the display memory.
Partial display updates.
Drawing
Many functions for lines, boxes, circle etc.
Clipping box support.