; Seeed Studio SenseCAP Indicator
[env:seeed-sensecap-indicator]
custom_meshtastic_hw_model = 70
custom_meshtastic_hw_model_slug = SENSECAP_INDICATOR
custom_meshtastic_architecture = esp32-s3
custom_meshtastic_actively_supported = true
custom_meshtastic_support_level = 1
custom_meshtastic_display_name = Seeed SenseCAP Indicator
custom_meshtastic_images = seeed-sensecap-indicator.svg
custom_meshtastic_tags = Seeed
custom_meshtastic_partition_scheme = 8MB
custom_meshtastic_has_mui = true

extends = esp32s3_base
platform_packages =
    platformio/framework-arduinoespressif32 @ https://github.com/mverch67/arduino-esp32/archive/aef7fef6de3329ed6f75512d46d63bba12b09bb5.zip ; add_tca9535 (based on 2.0.16)

board = seeed-sensecap-indicator
board_check = true
board_build.partitions = partition-table-8MB.csv
upload_protocol = esptool

build_flags = ${esp32s3_base.build_flags}
  -Ivariants/esp32s3/seeed-sensecap-indicator
  -DSENSECAP_INDICATOR
  -DCONFIG_ARDUHAL_LOG_COLORS
  -DRADIOLIB_DEBUG_SPI=0
  -DRADIOLIB_DEBUG_PROTOCOL=0
  -DRADIOLIB_DEBUG_BASIC=0
  -DRADIOLIB_VERBOSE_ASSERT=0
  -DRADIOLIB_SPI_PARANOID=0
  -DIO_EXPANDER=0x40
  -DIO_EXPANDER_IRQ=42
  ;-DIO_EXPANDER_DEBUG
  -DUSE_ARDUINO_HAL_GPIO

lib_deps = ${esp32s3_base.lib_deps}
  ; TODO switch back to official LovyanGFX
  https://github.com/mverch67/LovyanGFX/archive/4c76238c1344162a234ae917b27651af146d6fb2.zip
  # renovate: datasource=git-refs depName=ESP8266Audio packageName=https://github.com/meshtastic/ESP8266Audio gitBranch=meshtastic-2.0.0-dacfix
  https://github.com/meshtastic/ESP8266Audio/archive/343024632ee78d6216907b2353fc943a62422d80.zip
  # renovate: datasource=custom.pio depName=ESP8266SAM packageName=earlephilhower/library/ESP8266SAM
  earlephilhower/ESP8266SAM@1.1.0

[env:seeed-sensecap-indicator-tft]
extends = env:seeed-sensecap-indicator
board_level = pr
upload_speed = 460800

build_flags =
  ${env:seeed-sensecap-indicator.build_flags}
  -D INPUTDRIVER_BUTTON_TYPE=38
  -D CONFIG_DISABLE_HAL_LOCKS=1
  -D HAS_SCREEN=1
  -D HAS_TFT=1
  -D DISPLAY_SET_RESOLUTION
  -D RAM_SIZE=4096
	-D LV_LVGL_H_INCLUDE_SIMPLE
	-D LV_CONF_INCLUDE_SIMPLE
	-D LV_COMP_CONF_INCLUDE_SIMPLE
  -D LV_USE_SYSMON=0
  -D LV_USE_PROFILER=0
  -D LV_USE_PERF_MONITOR=0
  -D LV_USE_MEM_MONITOR=0
  -D LV_USE_LOG=0
  -D USE_LOG_DEBUG
  -D LOG_DEBUG_INC=\"DebugConfiguration.h\"
  -D CUSTOM_TOUCH_DRIVER
  -D LGFX_SCREEN_WIDTH=480
  -D LGFX_SCREEN_HEIGHT=480
  -D DISPLAY_SIZE=480x480
  -D LGFX_DRIVER=LGFX_INDICATOR
  -D GFX_DRIVER_INC=\"graphics/LGFX/LGFX_INDICATOR.h\"
  -D VIEW_320x240
  -D USE_PACKET_API

lib_deps =
  ${env:seeed-sensecap-indicator.lib_deps}
  ${device-ui_base.lib_deps}
  ; TODO switch back to official bb_captouch
  https://github.com/mverch67/bb_captouch/archive/8626412fe650d808a267791c0eae6e5860c85a5d.zip ; alternative touch library supporting FT6x36
