; Using the original screen class
[env:heltec-vision-master-e290]
custom_meshtastic_hw_model = 68
custom_meshtastic_hw_model_slug = HELTEC_VISION_MASTER_E290
custom_meshtastic_architecture = esp32-s3
custom_meshtastic_actively_supported = true
custom_meshtastic_support_level = 1
custom_meshtastic_display_name = Heltec Vision Master E290
custom_meshtastic_images = heltec-vision-master-e290.svg
custom_meshtastic_tags = Heltec
custom_meshtastic_requires_dfu = true
custom_meshtastic_partition_scheme = 8MB
custom_meshtastic_has_ink_hud = true

extends = esp32s3_base
board = heltec_vision_master_e290
board_build.partitions = default_8MB.csv
build_flags = 
  ${esp32s3_base.build_flags} 
  -I variants/esp32s3/heltec_vision_master_e290
  -D DISPLAY_FLIP_SCREEN ; Orient so the LoRa antenna faces up
  -D HELTEC_VISION_MASTER_E290
  -D BUTTON_CLICK_MS=200
  -D EINK_DISPLAY_MODEL=GxEPD2_290_BN8
  -D EINK_WIDTH=296
  -D EINK_HEIGHT=128
  -D USE_EINK
  -D USE_EINK_DYNAMICDISPLAY            ; Enable Dynamic EInk
  -D EINK_LIMIT_FASTREFRESH=10          ; How many consecutive fast-refreshes are permitted
  -D EINK_HASQUIRK_GHOSTING             ; Display model is identified as "prone to ghosting"


lib_deps =
  ${esp32s3_base.lib_deps}
  # renovate: datasource=git-refs depName=meshtastic-GxEPD2 packageName=https://github.com/meshtastic/GxEPD2 gitBranch=master
  https://github.com/meshtastic/GxEPD2/archive/c7eb4c3c167cf396ef4f541cc5d4c6aa42f3c46b.zip
upload_speed = 115200

[env:heltec-vision-master-e290-inkhud]
extends = esp32s3_base, inkhud
board = heltec_vision_master_e290
board_build.partitions = default_8MB.csv
build_src_filter = 
  ${esp32s3_base.build_src_filter}
  ${inkhud.build_src_filter}
build_flags = 
  ${esp32s3_base.build_flags}
  ${inkhud.build_flags}
  -I variants/esp32s3/heltec_vision_master_e290
  -D HELTEC_VISION_MASTER_E290
lib_deps =
  ${inkhud.lib_deps} ; InkHUD libs first, so we get GFXRoot instead of AdafruitGFX
  ${esp32s3_base.lib_deps}
upload_speed = 921600
