mirror of
https://github.com/torlando-tech/pyxis.git
synced 2026-04-28 11:55:11 +00:00
30dc48086c
- pyxis-icon.svg: Pyxis constellation icon (3 stars with connecting lines) - generate_splash.py: PlatformIO pre-build script that renders the SVG to a 160x160 RGB565 PROGMEM header (SplashImage.h) using cairosvg + Pillow - .gitignore: Exclude generated SplashImage.h - platformio.ini: Add generate_splash.py to both build environments Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
168 lines
4.6 KiB
INI
168 lines
4.6 KiB
INI
; T-Deck environment using Bluedroid BLE stack (fallback, uses more RAM)
|
|
[env:tdeck-bluedroid]
|
|
extra_scripts =
|
|
pre:version.py
|
|
pre:generate_splash.py
|
|
platform = espressif32
|
|
board = esp32-s3-devkitc-1
|
|
framework = arduino
|
|
|
|
; T-Deck Plus has ESP32-S3 with 8MB Flash + 8MB PSRAM
|
|
board_build.flash_mode = qio
|
|
board_build.partitions = partitions.csv
|
|
board_build.arduino.memory_type = qio_opi
|
|
board_upload.flash_size = 8MB
|
|
|
|
; Enable PSRAM (required for LVGL buffers)
|
|
board_build.arduino.psram_type = opi
|
|
|
|
; Serial monitor
|
|
monitor_speed = 115200
|
|
monitor_filters =
|
|
esp32_exception_decoder
|
|
time
|
|
|
|
; Dependencies
|
|
lib_deps =
|
|
lvgl/lvgl@^8.3.11
|
|
bblanchon/ArduinoJson@^7.4.2
|
|
hideakitai/MsgPack@^0.4.2
|
|
rweather/Crypto@^0.4.0
|
|
mikalhart/TinyGPSPlus@^1.0.3
|
|
jgromes/RadioLib@^6.0
|
|
WiFi
|
|
SPI
|
|
Wire
|
|
SPIFFS
|
|
tdeck_ui
|
|
universal_filesystem
|
|
sx1262_interface
|
|
tone
|
|
auto_interface
|
|
ble_interface
|
|
lxst_audio
|
|
sh123/esp32_codec2@^1.0.7
|
|
symlink://${PROJECT_DIR}/deps/microReticulum/lib/libbz2
|
|
|
|
; Library dependency finder mode (deep search)
|
|
lib_ldf_mode = deep+
|
|
lib_extra_dirs = deps/microReticulum
|
|
|
|
; Build configuration
|
|
build_type = release
|
|
build_flags =
|
|
-std=gnu++11
|
|
-DBOARD_HAS_PSRAM
|
|
-DBOARD_ESP32
|
|
; Arduino loop task stack — Codec2 decode (lpc_post_filter + kiss_fft)
|
|
; uses ~6KB stack on top of ~10KB normal peak. 24KB gives safe headroom.
|
|
-DARDUINO_LOOP_STACK_SIZE=24576
|
|
-DARDUINO_USB_CDC_ON_BOOT=1
|
|
-DARDUINO_USB_MODE=1
|
|
-DLV_CONF_INCLUDE_SIMPLE
|
|
-Ilib
|
|
-Ideps/microReticulum/lib/libbz2
|
|
-Ideps/microReticulum/src
|
|
-DBZ_NO_STDIO
|
|
-DUSE_BLUEDROID
|
|
-Os
|
|
-DCORE_DEBUG_LEVEL=2
|
|
; Enable memory instrumentation (heap/stack monitoring)
|
|
; Remove this flag to disable instrumentation and eliminate overhead
|
|
-DMEMORY_INSTRUMENTATION_ENABLED
|
|
; Enable boot profiling (timing instrumentation for setup phases)
|
|
; Remove this flag to disable boot profiling
|
|
-DBOOT_PROFILING_ENABLED
|
|
; Reduce log verbosity during boot for faster startup
|
|
; CORE_DEBUG_LEVEL=2 (WARNING) reduces INFO-level log output
|
|
-DBOOT_REDUCED_LOGGING
|
|
|
|
; Default T-Deck environment using NimBLE BLE stack (uses ~100KB less RAM than Bluedroid)
|
|
[env:tdeck]
|
|
extra_scripts =
|
|
pre:version.py
|
|
pre:generate_splash.py
|
|
pre:patch_nimble.py
|
|
platform = espressif32
|
|
board = esp32-s3-devkitc-1
|
|
framework = arduino
|
|
|
|
; T-Deck Plus has ESP32-S3 with 8MB Flash + 8MB PSRAM
|
|
board_build.flash_mode = qio
|
|
board_build.partitions = partitions.csv
|
|
board_build.arduino.memory_type = qio_opi
|
|
board_upload.flash_size = 8MB
|
|
|
|
; Enable PSRAM (required for LVGL buffers)
|
|
board_build.arduino.psram_type = opi
|
|
|
|
; Serial monitor
|
|
monitor_speed = 115200
|
|
monitor_filters =
|
|
esp32_exception_decoder
|
|
time
|
|
|
|
; Library dependency finder mode (deep search)
|
|
lib_ldf_mode = deep+
|
|
lib_extra_dirs = deps/microReticulum
|
|
|
|
; Build type
|
|
build_type = release
|
|
lib_deps =
|
|
lvgl/lvgl@^8.3.11
|
|
bblanchon/ArduinoJson@^7.4.2
|
|
hideakitai/MsgPack@^0.4.2
|
|
rweather/Crypto@^0.4.0
|
|
mikalhart/TinyGPSPlus@^1.0.3
|
|
jgromes/RadioLib@^6.0
|
|
WiFi
|
|
SPI
|
|
Wire
|
|
SPIFFS
|
|
tdeck_ui
|
|
universal_filesystem
|
|
sx1262_interface
|
|
tone
|
|
auto_interface
|
|
h2zero/NimBLE-Arduino@^2.1.0
|
|
ble_interface
|
|
lxst_audio
|
|
sh123/esp32_codec2@^1.0.7
|
|
symlink://${PROJECT_DIR}/deps/microReticulum/lib/libbz2
|
|
|
|
; Build configuration
|
|
build_flags =
|
|
-std=gnu++11
|
|
-DBOARD_HAS_PSRAM
|
|
-DBOARD_ESP32
|
|
; Arduino loop task stack — Codec2 decode (lpc_post_filter + kiss_fft)
|
|
; uses ~6KB stack on top of ~10KB normal peak. 24KB gives safe headroom.
|
|
-DARDUINO_LOOP_STACK_SIZE=24576
|
|
-DARDUINO_USB_CDC_ON_BOOT=1
|
|
-DARDUINO_USB_MODE=1
|
|
-DLV_CONF_INCLUDE_SIMPLE
|
|
-Ilib
|
|
-Ideps/microReticulum/lib/libbz2
|
|
-Ideps/microReticulum/src
|
|
-DBZ_NO_STDIO
|
|
-DUSE_NIMBLE
|
|
-DCONFIG_BT_NIMBLE_MEM_ALLOC_MODE_EXTERNAL=1
|
|
-Os
|
|
-DCORE_DEBUG_LEVEL=2
|
|
; Enable memory instrumentation (heap/stack monitoring)
|
|
; Remove this flag to disable instrumentation and eliminate overhead
|
|
-DMEMORY_INSTRUMENTATION_ENABLED
|
|
; Enable boot profiling (timing instrumentation for setup phases)
|
|
; Remove this flag to disable boot profiling
|
|
-DBOOT_PROFILING_ENABLED
|
|
; Reduce log verbosity during boot for faster startup
|
|
; CORE_DEBUG_LEVEL=2 (WARNING) reduces INFO-level log output
|
|
-DBOOT_REDUCED_LOGGING
|
|
|
|
; OTA flashing environment (wireless upload via ArduinoOTA)
|
|
; Usage: pio run -e tdeck-ota -t upload
|
|
[env:tdeck-ota]
|
|
extends = env:tdeck
|
|
upload_protocol = custom
|
|
upload_command = "$PYTHONEXE" tools/espota.py -i pyxis-tdeck.local -p 3232 -f $SOURCE
|