Expand description
epd-datafuri: Adafruit ePaper Display Driver
Supports Adafruit ThinkInk 2.9“ Mono / 4 Grayscale display and Adafruit MagTag 2.9“.
For a complete example see the example.
This driver is loosely modeled after the epd-waveshare drivers.
§Architecture
This driver separates hardware control from graphics rendering:
- Driver structs (
ThinkInk2in9Mono,MagTag2in9) handle hardware interface and controller commands - Graphics structs (
Display2in9Mono,Display2in9Gray2) handle frame buffers and embedded-graphics integration
This allows multiple graphics buffers (e.g., for grayscale planes) to share a single hardware driver.
§Usage
§Adafruit ThinkInk 2.9“ Display (Mono/Grayscale, SSD1680)
ⓘ
use epd_datafuri::displays::adafruit_thinkink_290_mfgn::{ThinkInk2in9Mono, Display2in9Mono};
// Create driver and graphics buffer
let mut driver = ThinkInk2in9Mono::new(spi, busy, dc, rst)?;
let mut display = Display2in9Mono::new();
// Draw and update in one command
driver.update_and_display(display.buffer(), &mut delay)?;For advanced use cases, you can also use the individual update_bw(), update_red(),
update(), and update_display() methods for more granular control.
Modules§
- color
- B/W Color for EPDs
- displays
- Graphics Support for EPDs
- driver
- Driver trait and chip-specific implementations
- graphics
- graphics module
- interface
- Display interface using SPI
- prelude
- Useful exports
Constants§
- MAX_
HEIGHT - Maximum display height this driver supports
- MAX_
WIDTH - Maximum display width this driver supports