Files
trmnl-firmware/platformio.ini
T

252 lines
6.0 KiB
INI

[platformio]
default_envs = trmnl
; ========================
; Third-party Dependencies
; ========================
; Common dependencies for all environments
[deps_common]
lib_deps =
bblanchon/ArduinoJson@7.4.2
bitbank2/PNGdec@^1.1.6
bitbank2/JPEGDEC@^1.8.4
bitbank2/bb_epaper@^2.0.5
; Dependencies for all device builds
[deps_app]
lib_deps =
${deps_common.lib_deps}
ESP32Async/ESPAsyncWebServer@3.7.7
https://github.com/thijse/Arduino-Log.git#3f4fcf5a345c1d542e56b88c0ffcb2bd2a5b0bd0
; =============================
; Shared configuration (global)
; =============================
[env]
framework = arduino, espidf
platform = espressif32@6.12.0
check_tool = clangtidy
check_flags =
clangtidy: --checks=bugprone-*,portability-*,clang-analyzer-*,google-*,-google-readability-*
monitor_filters = esp32_exception_decoder
monitor_speed = 115200
upload_speed = 460800
build_type = debug
; =================
; Test environments
; =================
[env:native]
framework =
platform = native
test_framework = unity
lib_deps =
${deps_common.lib_deps}
fabiobatsilva/ArduinoFake@^0.4.0
build_flags =
-D ARDUINOJSON_ENABLE_ARDUINO_STRING=1
-std=gnu++11
# avoids errors about WProgram.h from ArduinoLog:
-D ARDUINO=111
# warnings from ArduinoFake w/ MacOS' g++:
-Wno-missing-template-arg-list-after-template-kw
# for linux:
-include stdint.h
lib_compat_mode = off
[env:native-windows]
extends = env:native
build_flags =
-std=gnu++11
# avoids errors about WProgram.h from ArduinoLog:
-D ARDUINO=111
-include stdint.h
# for pngdec:
-Duint=uInt
; =====================
; Shared configurations
; =====================
[env:esp32_base]
extends = deps_app
board_build.partitions = min_spiffs.csv
board_build.filesystem = spiffs
build_flags =
-D CORE_DEBUG_LEVEL=0
lib_ldf_mode = deep
debug_init_break = break setup
[env:esp32-c3-devkitc-02]
extends = env:esp32_base
board = esp32-c3-devkitc-02
board_build.f_cpu = 80000000L
board_build.f_flash = 40000000L
board_build.flash_mode = qio
build_flags =
${env:esp32_base.build_flags} ; Inherit base flags
-D ARDUINO_USB_MODE=0
-D ARDUINO_USB_CDC_ON_BOOT=0
debug_tool = esp-builtin
[env:esp32dev]
extends = env:esp32_base
board = esp32dev
board_build.f_cpu = 240000000L
board_build.f_flash = 80000000L ; Assuming 80MHz flash freq for generic ESP32, adjust if needed
board_build.flash_mode = dio ; Common flash mode for ESP32dev
; ====================
; Board configurations
; ====================
[env:waveshare-esp32-driver]
extends = env:esp32dev
build_flags =
${env:esp32_base.build_flags}
-D BOARD_WAVESHARE_ESP32_DRIVER
[env:trmnl]
extends = env:esp32-c3-devkitc-02
extra_scripts = scripts/git_version.py
custom_include_git_hash = ${sysenv.INCLUDE_GIT_HASH_IN_VERSION_NUMBER}
build_flags =
${env:esp32_base.build_flags}
-D BOARD_TRMNL
-D PNG_MAX_BUFFERED_PIXELS=6432
[env:trmnl_4clr]
extends = env:esp32-c3-devkitc-02
extra_scripts = scripts/git_version.py
custom_include_git_hash = ${sysenv.INCLUDE_GIT_HASH_IN_VERSION_NUMBER}
build_flags =
${env:esp32_base.build_flags}
-D BOARD_TRMNL_4CLR
-D PNG_MAX_BUFFERED_PIXELS=6432
-D ARDUINO_USB_MODE=1
-D ARDUINO_USB_CDC_ON_BOOT=1
-D WAIT_FOR_SERIAL=1
-D ARDUINOJSON_ENABLE_ARDUINO_STRING=1
[env:xteink_x4]
extends = env:esp32-c3-devkitc-02
custom_include_git_hash = true
extra_scripts = scripts/git_version.py
build_flags =
${env:esp32_base.build_flags}
-D BOARD_XTEINK_X4
-D PNG_MAX_BUFFERED_PIXELS=6432
-D ARDUINOJSON_ENABLE_ARDUINO_STRING=1
[env:local]
extends = env:trmnl
custom_include_git_hash = true
build_flags =
${env:trmnl.build_flags}
-D ARDUINO_USB_MODE=1
-D ARDUINO_USB_CDC_ON_BOOT=1
-D WAIT_FOR_SERIAL=1
-D ARDUINOJSON_ENABLE_ARDUINO_STRING=1
# light sleep interrupts the serial connection and we miss logs
-D DO_NOT_LIGHT_SLEEP=1
[env:seeed_xiao_esp32c3]
extends = env:esp32_base
board = seeed_xiao_esp32c3
build_flags =
${env:esp32_base.build_flags}
-D BOARD_SEEED_XIAO_ESP32C3
-D PNG_MAX_BUFFERED_PIXELS=6432
debug_tool = esp-builtin
[env:seeed_xiao_esp32s3]
extends = env:esp32_base
board = seeed_xiao_esp32s3
build_flags =
${env:esp32_base.build_flags}
-D BOARD_SEEED_XIAO_ESP32S3
-D PNG_MAX_BUFFERED_PIXELS=6432
[env:TRMNL_X]
board = esp32s3_n16r8
board_build.f_cpu = 240000000L
board_build.f_flash = 80000000L
board_build.flash_mode = qio
board_build.partitions = trmnl_x_partitions.csv
board_build.filesystem = spiffs
upload_speed = 460800
build_flags =
-D BOARD_TRMNL_X
-D ARDUINO_USB_MODE=1
-D ARDUINO_USB_CDC_ON_BOOT=1
-D ARDUINOJSON_ENABLE_ARDUINO_STRING=1
-D CORE_DEBUG_LEVEL=5
-D PNG_MAX_BUFFERED_PIXELS=14984
-D WAIT_FOR_SERIAL=1
lib_ldf_mode = deep
lib_deps =
${deps_app.lib_deps}
bitbank2/FastEPD@1.3.0
monitor_speed = 115200
[env:TRMNL_7inch5_OG_DIY_Kit]
extends = env:esp32_base
board = seeed_xiao_esp32s3
framework = arduino
build_flags =
${env:esp32_base.build_flags}
-D BOARD_XIAO_EPAPER_DISPLAY
-D PNG_MAX_BUFFERED_PIXELS=6432
[env:TRMNL_7inch5_OG_DIY_Kit_3CLR]
extends = env:esp32_base
board = seeed_xiao_esp32s3
framework = arduino
build_flags =
${env:esp32_base.build_flags}
-D BOARD_XIAO_EPAPER_DISPLAY_3CLR
-D PNG_MAX_BUFFERED_PIXELS=6432
[env:seeed_reTerminal_E1001]
extends = env:esp32_base
board = seeed_xiao_esp32s3
framework = arduino
; override the default build flags, removing the USB_MODE and CDC_ON_BOOT flags
board_build.extra_flags =
-D ARDUINO_XIAO_ESP32S3
-D BOARD_HAS_PSRAM
-D DARDUINO_RUNNING_CORE=1
-D ARDUINO_EVENT_RUNNING_CORE=1
build_flags =
${env:esp32_base.build_flags}
-D BOARD_SEEED_RETERMINAL_E1001
-D ARDUINO_USB_MODE=0
-D ARDUINO_USB_CDC_ON_BOOT=0
-D PNG_MAX_BUFFERED_PIXELS=6432
[env:seeed_reTerminal_E1002]
extends = env:esp32_base
board = seeed_xiao_esp32s3
framework = arduino
; override the default build flags, removing the USB_MODE and CDC_ON_BOOT flags
board_build.extra_flags =
-D ARDUINO_XIAO_ESP32S3
-D BOARD_HAS_PSRAM
-D DARDUINO_RUNNING_CORE=1
-D ARDUINO_EVENT_RUNNING_CORE=1
build_flags =
${env:esp32_base.build_flags}
-D BOARD_SEEED_RETERMINAL_E1002
-D ARDUINO_USB_MODE=0
-D ARDUINO_USB_CDC_ON_BOOT=0
-D PNG_MAX_BUFFERED_PIXELS=6432