Waveshare ESP32-C6-LCD-1.47 With ESPHome

I recently bought a Waveshare ESP32-C6-LCD-1.47 LCD display on Amazon and wanted to use it with ESPHome. When I bought it, I mistakenly thought it was a tactile display, but it’s just an LCD display. Still a great way to display Home Assistant data, in a compact package.

The characteristics of the display are as follows:

  • processor: ESP32-C6
  • flash: 4MB
  • Resolution: 172×320
  • Interface: SPI
  • Power and programming: USB-C
  • SD card slot
  • On-board RGB led

The waveshare support page is here: https://www.waveshare.com/wiki/ESP32-C6-LCD-1.47

Online store link: https://www.waveshare.com/esp32-c6-lcd-1.47.htm

ESPHome Configuration

Here is a simple configuration to make it works with ESPHome

Once loaded it will display a “Hello World!” message on the screen with LVGL.

esphome:
  name: display-bathroom
  friendly_name: display bathroom

esp32:
  board: esp32-c6-devkitc-1
  framework:
    type: esp-idf

# Add OTA params and HA params (often generated by esphome quickstart)

# Define a PWM output on the ESP32
output:
  - platform: ledc
    pin: GPIO22
    id: backlight_pwm

light:
  # Define a monochromatic, dimmable light for the backlight
  - platform: monochromatic
    output: backlight_pwm
    name: "Display Backlight"
    id: back_light
    restore_mode: RESTORE_DEFAULT_OFF

  # RGB Status light
  - platform: esp32_rmt_led_strip
    name: Status LED
    pin: GPIO8
    rgb_order: RGB
    num_leds: 1
    chipset: ws2812

spi:
  clk_pin: GPIO7
  mosi_pin: GPIO6

display:
  - platform: mipi_spi
    model: ST7789V
    rotation: 90
    dc_pin:
      number: GPIO15
      ignore_strapping_warning: true
    cs_pin: GPIO14
    reset_pin: GPIO21
    # Backlight is managed by light+output plateform
    # backlight_pin: GPIO22
    id: tft_ha

lvgl:
  displays:
    - tft_ha
  pages:
    - id: main_page
      widgets:
        - label:
            align: CENTER
            text: 'Hello World!'

Once compiled and install you get this message:

esphome on the ESP32-C6-LCD-1.47

If you use the drive st7789v and add a rotation a 90 degree rotation to use the display as an horizontal screen, the esp will run out of memory. It is required to use the mipi_spi driver.


This article may contain affiliate links. If you buy something through one of these links, I may earn a commission at no additional cost to you. Thank you for supporting my work!