;***************************************************;
; D1 R32 ESP32 with Waveshare ILI9486 Touch Shield  ;
;               - D1-R32 board aka ESPDUINO-32      ;
;               - ili9486 TFT 3.5" or 4"            ;
;               - xpt2046 touch controller          ;
;***************************************************;

[env:d1-r32-waveshare_ili9486]
extends = arduino_esp32_v2, flash_4mb
board = wemos_d1_mini32

build_flags =
    -D HASP_MODEL="ESP32 D1 R32 ILI9486"
    ${arduino_esp32_v2.build_flags}
    ${esp32.no_ps_ram}

;region -- TFT_eSPI build options ------------------------
    ${esp32.vspi}        ; Use VSPI hardware SPI bus

    -D RPI_DISPLAY_TYPE=1
    -D ILI9486_DRIVER=1
    -D TFT_WIDTH=320
    -D TFT_HEIGHT=480
    -D TFT_ROTATION=0 ; Use default, see TFT_ROTATION values
    -D SPI_FREQUENCY=20000000 ; Some displays will operate at higher frequencies
    -D SPI_TOUCH_FREQUENCY=2500000
    -D USER_SETUP_LOADED=1
    -D TOUCH_DRIVER=0x2046 ; XPT2046
    ;-D SUPPORT_TRANSACTIONS   ; Default on ESP32

    -D TFT_DC=14
    -D TFT_CS=5 
    -D TFT_RST=12
    -D TFT_BCKL=13       ; Default, configurable via web UI
    -D TOUCH_CS=17
;endregion

lib_deps =
    ${arduino_esp32_v2.lib_deps}
    ${tft_espi.lib_deps}
    ; ${lovyangfx.lib_deps}
