Esphome 2023.2.4 -> ESP32 -> waveshare eink 2.13" partial update working

I try in the last days a lot and finaly got a BW waveshare eink with 2.13 inch and 250x122 pixel working even with partial update.

This display, with the printed hardware version 2.1 on the backside:
https://www.amazon.de/dp/B07Q5PZMGT?psc=1&ref=ppx_yo2ov_dt_b_product_details

wired as shown here:

to a ESP32 from here:
https://www.amazon.de/dp/B09PLDKPNT?psc=1&ref=ppx_yo2ov_dt_b_product_details

and this esphome code:

########################################################################
font: ##################################################################
########################################################################
  # gfonts://family[@weight]
  - file: 
      type: gfonts
      family: Roboto
      weight: 500
    id: roboto
    size: 32

########################################################################    
spi: ###################################################################
########################################################################    
  clk_pin: GPIO18
  mosi_pin: GPIO23

########################################################################
display: ###############################################################
########################################################################
  - platform: waveshare_epaper
    id: eink_display
    cs_pin: GPIO5
    dc_pin: GPIO17
    busy_pin: GPIO4
    reset_pin: GPIO16
    # model: 2.90inv2
    model: 2.13in-ttgo-dke
    full_update_every: 30
    update_interval: 60 sec
    rotation: 270°
    reset_duration: 2ms
    lambda: |-
      it.print(0, 0, id(roboto), "Hello World!");

I am really happy with it now, but it was a long journey.

image

5 Likes