Cant get my waveshare ESP32-C6 to display anything, its always dark

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));

These pins worked for me on the non-touch model. They look to be the same for the touch version based on this example as well. ESP32-C6-Touch-LCD-1.69/Examples/ESP-IDF/02_lvgl_example_v8/components/esp_bsp/bsp_display.h at main · waveshareteam/ESP32-C6-Touch-LCD-1.69

spi:
  id: bus_a
  clk_pin: GPIO1
  mosi_pin: GPIO2

display:
  - platform: mipi_spi
    model: st7789v
    cs_pin: GPIO5
    dc_pin: GPIO3
    reset_pin: GPIO4
    color_order: bgr
    invert_colors: true
    dimensions: 
      width: 240
      height: 280
      offset_height: 20
      offset_width: 0

Thanks for the help - it worked!