|
idfxx 1.0.0
Modern C++23 components for ESP-IDF
|
Abstract ePaper panel interface, framebuffers, and shared types. More...
Files | |
| file | color.hpp |
| Pixel value types for ePaper displays. | |
| file | gray4_framebuffer.hpp |
| Framebuffer for 4-level grayscale ePaper displays. | |
| file | mono_framebuffer.hpp |
| Framebuffer for monochrome (1-bpp) ePaper displays. | |
| file | ssd1680.hpp |
| SSD1680 ePaper panel driver. | |
| file | uc8179.hpp |
| UC8179 ePaper panel driver. | |
Namespaces | |
| namespace | idfxx |
| namespace | idfxx::epaper |
| ePaper display driver classes. | |
Abstract ePaper panel interface, framebuffers, and shared types.
Provides a controller-agnostic abstract base class (idfxx::epaper::panel) that concrete drivers — idfxx::epaper::ssd1680, idfxx::epaper::uc8179, and future siblings — implement, plus the framebuffers (idfxx::epaper::mono_framebuffer, idfxx::epaper::gray4_framebuffer) that hold pixel data in the row-major layouts ePaper controllers consume.
The interface models the ePaper update cycle rather than an immediate-mode display: pixel data is first uploaded to the controller's RAM with idfxx::epaper::panel::write (nothing changes on the glass), then made visible with idfxx::epaper::panel::refresh, which drives the physical ink update and blocks until the controller's BUSY line releases. Panels support full refreshes, faster reduced-quality full refreshes, flicker-free partial refreshes, and 4-level grayscale, subject to each driver's capabilities.
Depends on Core Utilities for error handling and GPIO Component for the BUSY and reset lines.