Hi,
I bought a waveshare ESP32-C6-Touch-LCD-1.69, but have failed to make it display anything, its always dark.
Im trying to do a minimum working example, but so far no luck. I am completely new to this, so I really dont know what Im doing.
There's a flicker on the screen when it updates, but otherwise its dark.
I have tried different display platforms (MIPI_SPI etc) and setting the the SPI_MODE to 0 or 3, but no results so far.
Any idea how I can make this work? My config is as below:
esphome:
name: ${devicename}
friendly_name: "ESP Display"
esp32:
board: esp32-c6-devkitc-1
framework:
type: esp-idf
substitutions:
devicename: espdisplay
# SPI bus for LCD and SD Card
miso_pin: GPIO5
mosi_pin: GPIO6
clk_pin: GPIO7
# LCD Pinout
lcd_cs_pin: GPIO14
lcd_dc_pin: GPIO15
lcd_reset_pin: GPIO21
lcd_backlight_pin: GPIO22
logger: "DEBUG"
logger:
level: $logger
api:
encryption:
key: !secret api_encryption_key
ota:
- platform: esphome
password: !secret ota_password
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
fast_connect: true
ap:
ssid: "Espdisplay Fallback Hotspot"
password: !secret wifi_fallback_hotspot_password
captive_portal:
color:
- id: my_color_white
hex: 'FFFFFF'
- id: color_blue
hex: '0000FF'
- id: my_color_red
hex: "FF0000"
font:
- file: "gfonts://Roboto"
id: font1
size: 24
spi:
clk_pin: $clk_pin
miso_pin: $miso_pin
mosi_pin: $mosi_pin
output:
- platform: ledc
pin: $lcd_backlight_pin
id: backlight_lcd
light:
- platform: monochromatic
output: backlight_lcd
name: "Display Backlight"
id: "display_backlight"
restore_mode: ALWAYS_ON
switch:
- platform: template
name: "Display ON/OFF"
id: screen_switch
icon: mdi:screen-rotation
optimistic: true
turn_on_action:
- output.turn_on: backlight_lcd
turn_off_action:
- output.turn_off: backlight_lcd
display:
- platform: mipi_spi
model: ST7789V
id: my_display
dimensions:
width: 240
height: 280
offset_width: 0
offset_height: 20
cs_pin: $lcd_cs_pin
dc_pin:
number: $lcd_dc_pin
ignore_strapping_warning: true
reset_pin: $lcd_reset_pin
invert_colors: true # Required so black doesn't show as white
#rotation: 0
data_rate: 5MHz
update_interval: 5s
spi_mode: 3
lambda: |-
// Fill the screen with blue to easily verify it is working
it.fill(Color(255,0,0));
