ePaper SPI Display
The epaper_spi
display platform provides a new ePaper display component architecture
with improved state management and non-blocking operation. This component implements a
queue-based state machine that eliminates blocking waits for the busy pin and provides
better integration with ESPHome’s async architecture.
The communication method uses 4-wire SPI, so you need to have an spi:
section in your
configuration.
display:
- platform: epaper_spi
cs_pin: GPIOXX
dc_pin: GPIOXX
busy_pin: GPIOXX
reset_pin: GPIOXX
model: 7.3in-spectra-e6
lambda: |-
it.filled_circle(it.get_width() / 2, it.get_height() / 2, 50, Color::BLACK);
Configuration variables
cs_pin (Required, Pin Schema): The CS pin.
dc_pin (Required, Pin Schema): The DC pin.
model (Required): The model of the ePaper display. Currently supported:
7.3in-spectra-e6
- 7.3" Spectra E6 6-color display (800×480 pixels)
busy_pin (Optional, Pin Schema): The BUSY pin. Defaults to not connected.
reset_pin (Optional, Pin Schema): The RESET pin. Defaults to not connected. Make sure you pull this pin high (by connecting it to 3.3V with a resistor) if not connected to a GPIO pin.
rotation (Optional): Set the rotation of the display. Everything you draw in
lambda:
will be rotated by this option. One of0°
(default),90°
,180°
,270°
.reset_duration (Optional, Time): Duration for the display reset operation. Defaults to
200ms
.lambda (Optional, lambda): The lambda to use for rendering the content on the display. See Display Rendering Engine for more information.
pages (Optional, list): Show pages instead of a single lambda. See Display Pages.
update_interval (Optional, Time): The interval to re-draw the screen. Defaults to
60s
, usenever
to only manually update the screen viacomponent.update
.spi_id (Optional, ID): Manually specify the ID of the SPI Component if you want to use multiple SPI buses.
id (Optional, ID): Manually specify the ID used for code generation.