New boards Wishlist

Support Waveshare ESP32-S3-Touch-LCD-5B

BotapSuggested this wish ·

I’d like to use the Waveshare ESP32-S3-Touch-LCD-5B as a Tessera screen. It’s a 5" 1024×600 capacitive touch display board with an ESP32-S3 (16 MB flash, 8 MB PSRAM), powered via a 7–36 V input.

I tested the board with ESPHome (YAML) and the display, touch and backlight all work. I can run further tests on my own hardware if that helps with adding support.

Board: Waveshare ESP32-S3-Touch-LCD-5B Status: display, touch and backlight confirmed working in ESPHome

Hardware testing

We often do not have this board ourselves. Community testing helps establish what actually works. A successful report is evidence for the maintainer to review, not an automatic compatibility claim.

Board details & configuration
Model
Waveshare ESP32-S3-Touch-LCD-5B
Chip, RAM and flash
High-performance Xtensa 32-bit LX7 dual-core processor, up to 240 MHz
Display and touch
5" 1024 x 600 Supports I2C interface control for capacitive touch, 5-point touch, interrupt support
Already tried
Tried the Waveshare 7" - 1024 x 600 ESP32-S3-Touch-LCD-7B. It gets connected to WIFI and Home Assistant but screen stays black
Configuration status
working
View shared configuration
esphome:
  name: waveshare-lcd-5b
  friendly_name: Waveshare LCD 5B
  platformio_options:
    board_build.flash_mode: dio

esp32:
  board: esp32-s3-devkitc-1
  flash_size: 16MB
  framework:
    type: esp-idf
    sdkconfig_options:
      CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240: "y"
      CONFIG_ESP32S3_DATA_CACHE_64KB: "y"
      CONFIG_ESP32S3_DATA_CACHE_LINE_64B: "y"
      CONFIG_SPIRAM_FETCH_INSTRUCTIONS: "y"
      CONFIG_SPIRAM_RODATA: "y"

psram:
  mode: octal
  speed: 80MHz

logger:
  level: DEBUG
api:
ota:
  - platform: esphome

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  ap:
    ssid: "Waveshare-Fallback"
    password: "<your-ap-password>"

i2c:
  sda: GPIO8
  scl: GPIO9
  scan: true
  frequency: 400kHz

# IO expander: controls backlight, touch reset, LCD reset and SD CS
ch422g:
  - id: ch422g_hub

switch:
  - platform: gpio
    name: "Backlight"
    id: backlight
    restore_mode: ALWAYS_ON
    pin:
      ch422g: ch422g_hub
      number: 2
      mode: output

display:
  - platform: rpi_dpi_rgb
    id: main_display
    color_order: RGB
    invert_colors: true
    update_interval: never
    auto_clear_enabled: false
    dimensions:
      width: 1024
      height: 600
    de_pin: GPIO5
    hsync_pin: GPIO46
    vsync_pin: GPIO3
    pclk_pin: GPIO7
    pclk_frequency: 30MHz  # lower to 16-20MHz if you see flicker/noise
    pclk_inverted: true
    hsync_pulse_width: 10
    hsync_back_porch: 160
    hsync_front_porch: 160
    vsync_pulse_width: 1
    vsync_back_porch: 23
    vsync_front_porch: 12
    data_pins:
      red: [GPIO1, GPIO2, GPIO42, GPIO41, GPIO40]
      green: [GPIO39, GPIO0, GPIO45, GPIO48, GPIO47, GPIO21]
      blue: [GPIO14, GPIO38, GPIO18, GPIO17, GPIO10]

touchscreen:
  - platform: gt911
    id: my_touch
    display: main_display
    interrupt_pin: GPIO4
    reset_pin:
      ch422g: ch422g_hub
      number: 1
    on_touch:
      - logger.log:
          format: "Touch at x=%d y=%d"
          args: ['touch.x', 'touch.y']

1 owner has volunteered to test.

Sign in to volunteer

Discussion 0

Add a comment

Start the conversation

Share an example, ask a question or explain how you would use this.

Add your thoughts, a screenshot or a useful link.

Markdown & basic HTML
Paste or drop images · URLs on their own line become previews0 / 10,000
Create your account to join in

We need a verified email address to reach you about your contribution. Your address stays private.

Continue with GitHub

Your draft stays in this tab. Return here after verification.