This commit is contained in:
Neil Ségard 2024-05-07 14:15:49 +12:00 committed by GitHub
commit 81f4833f48
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 27 additions and 4 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

View File

@ -14,8 +14,9 @@ version (see below).
The 1.54" `Good Display gdew0154m09 <https://www.good-display.com/product/206.html>`__ The 1.54" `Good Display gdew0154m09 <https://www.good-display.com/product/206.html>`__
as used in the `M5Stack Core Ink <https://shop.m5stack.com/products/m5stack-esp32-core-ink-development-kit1-54-elnk-display>`__ as used in the `M5Stack Core Ink <https://shop.m5stack.com/products/m5stack-esp32-core-ink-development-kit1-54-elnk-display>`__
is also supported. is also supported.
Similar modules sold by other vendors might also work but not have been tested yet. Currently only Similar modules sold by other vendors might also work but not have been tested yet.
single-color E-Ink displays are implemented and of those only a few modules.
Currently, most displays managed by Esphome are single-color E-Ink displays; but Esphome also supports E-Ink displays capable of showing up to 7 colors.
.. figure:: images/waveshare_epaper-full.jpg .. figure:: images/waveshare_epaper-full.jpg
:align: center :align: center
@ -23,6 +24,12 @@ single-color E-Ink displays are implemented and of those only a few modules.
Waveshare E-Paper 2.9 Inch E-Paper Display. Waveshare E-Paper 2.9 Inch E-Paper Display.
.. figure:: images/waveshare_epaper_7color_acep-full.jpg
:align: center
:width: 75.0%
Waveshare E-Paper 7.3 Inch ACeP 7-Color E-Paper Display.
The communication ESPHome has chosen to use for this integration is 4-wire :ref:`SPI <spi>`, as it's the most stable The communication ESPHome has chosen to use for this integration is 4-wire :ref:`SPI <spi>`, as it's the most stable
and high-speed. So you need to make sure your board is set to the 4-wire SPI mode and have an ``spi:`` section in your and high-speed. So you need to make sure your board is set to the 4-wire SPI mode and have an ``spi:`` section in your
configuration. configuration.
@ -74,6 +81,22 @@ configuration.
lambda: |- lambda: |-
it.print(0, 0, id(font1), "Hello World!"); it.print(0, 0, id(font1), "Hello World!");
For the 7-color display, the color can be defined like this in the lambda function:
.. code-block:: yaml
lambda: |-
const auto BLACK = Color(0, 0, 0, 0);
const auto RED = Color(255, 0, 0, 0);
const auto GREEN = Color(0, 255, 0, 0);
const auto BLUE = Color(0, 0, 255, 0);
const auto YELLOW = Color(255, 255, 0, 0);
const auto ORANGE = Color(255, 127, 0, 0);
const auto WHITE = Color(255, 255, 255, 0);
it.print(0, 0, id(font1), BLUE, "Hello World in blue!");
it.print(100, 100, id(font1), RED, "Hello World in red!");
Configuration variables: Configuration variables:
------------------------ ------------------------
@ -105,6 +128,7 @@ Configuration variables:
- ``4.20in-bV2`` - B/W rendering only - ``4.20in-bV2`` - B/W rendering only
- ``5.83in`` - ``5.83in``
- ``5.83inv2`` - ``5.83inv2``
- ``7.30in-f`` - 7.3in 7-color display (black, white, red, yellow, blue, green, and orange)
- ``7.50in`` - ``7.50in``
- ``7.50in-bV2`` - also supports v3, B/W rendering only - ``7.50in-bV2`` - also supports v3, B/W rendering only
- ``7.50in-bV3`` - display with the '(V3)' sticker on the back, B/W rendering only - ``7.50in-bV3`` - display with the '(V3)' sticker on the back, B/W rendering only
@ -117,8 +141,7 @@ Configuration variables:
.. warning:: .. warning::
The BUSY pin on the gdew0154m09 and Waveshare 7.50in V2 models must be inverted to prevent permanent display damage. Set the pin to The BUSY pin on the ``gdew0154m09``, the ``Waveshare 7.30in-f`` and the ``Waveshare 7.50in V2`` models must be inverted to prevent permanent display damage. Set the busy pin to ``inverted: true`` in the config.
``inverted: true`` in the config.
- **busy_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The BUSY pin. Defaults to not connected. - **busy_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The BUSY pin. Defaults to not connected.
- **reset_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The RESET pin. Defaults to not connected. - **reset_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The RESET pin. Defaults to not connected.