Files
MeshCore-Solo/solo/wio-tracker-l2/platformio.ini
T
JakubandClaude Opus 5.5 938dfefba6 feat(ui-core,ui-lvgl): sound in the Core, L2 speaker via ES8311, Sound settings, melody editor
- genericBuzzer I2S path (BUZZER_I2S): an audio task synthesises the notes
  with eased edges and keeps the DMA queue fed with silence between sounds;
  ES8311 setup; amp powered through the board only around sounds
- ui-core/SoundControl.h (mode, volume, built-in sounds, melody model),
  SoundNotifier moved to the Core, chanctl::melody, schema Sound page
- L2: notifications, alarm / timer ring, locator sounds, Settings > Sound,
  melody editor with the playing note lit, per-chat sound, mute icon
- noteIndex() on every buzzer backend; scrolling popups past screen height

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26 00:27:52 +02:00

78 lines
2.8 KiB
INI

; Solo build for Seeed Wio Tracker L2 -- extends the board base defined in
; variants/wio-tracker-l2/platformio.ini. Solo configs live in their own
; top-level solo/ folder, separate from the shared upstream board variants.
;
; BRING-UP ONLY: this env runs the existing ui-new (OLED-era, joystick-driven)
; UI zoomed 2x (160x120 logical on the 320x240 panel) purely to compile-test
; and smoke-test the board layer -- display, radio, GPS, battery. It has no
; touch input yet; the only control is the BOOT button. The real interface for
; this board is the planned LVGL frontend over a shared UI Core.
;
; Deliberately NOT named *_solo_dual yet, so build-solo-firmwares.yml doesn't
; publish it as a release artifact.
[env:Wio_Tracker_L2_companion_solo_bringup]
extends = Wio_Tracker_L2
build_flags =
${Wio_Tracker_L2.build_flags}
-I examples/companion_radio/ui-new
-D DISPLAY_CLASS=WioTrackerL2Display
-D UI_ZOOM=2
-D MAX_CONTACTS=350
-D MAX_GROUP_CHANNELS=40
-D BLE_PIN_CODE=123456
-D DUAL_SERIAL=1
-D OFFLINE_QUEUE_SIZE=256
-D FIRMWARE_SOLO_BUILD=1
-D MESHCORE_VERSION='"1.17.1"'
-D OLED_MISC_FIXED_FONT=1
-D AUTO_OFF_MILLIS=60000
build_src_filter = ${Wio_Tracker_L2.build_src_filter}
+<helpers/esp32/*.cpp>
+<helpers/ui/LGFXDisplay.cpp>
+<helpers/ui/MomentaryButton.cpp>
+<../examples/companion_radio/*.cpp>
+<../examples/companion_radio/ui-new/*.cpp>
lib_deps =
${Wio_Tracker_L2.lib_deps}
densaugeo/base64 @ ~1.4.0
; ui-lvgl skeleton: the real L2 interface -- LVGL 9 frontend over the shared UI
; Core (docs/development/ui-core.md, step 5). Not *_solo_dual yet (no release).
[env:Wio_Tracker_L2_companion_solo_lvgl]
extends = Wio_Tracker_L2
build_flags =
${Wio_Tracker_L2.build_flags}
-I examples/companion_radio/ui-lvgl
-D DISPLAY_CLASS=WioTrackerL2Display
-D UI_ZOOM=1
-D LV_CONF_INCLUDE_SIMPLE
-D MAX_CONTACTS=350
-D MAX_GROUP_CHANNELS=40
-D BLE_PIN_CODE=123456
-D DUAL_SERIAL=1
-D OFFLINE_QUEUE_SIZE=256
-D FIRMWARE_SOLO_BUILD=1
-D MESHCORE_VERSION='"1.17.1"'
-D AUTO_OFF_MILLIS=60000
-D MESH_IN_PSRAM=1 ; frees ~120 KB internal RAM for WiFi/TLS map downloads
-D PIN_BUZZER=-1 ; no piezo pin: the speaker plays through the codec
-D BUZZER_I2S
build_src_filter = ${Wio_Tracker_L2.build_src_filter}
+<helpers/esp32/*.cpp>
+<helpers/ui/LGFXDisplay.cpp>
+<helpers/ui/MomentaryButton.cpp>
+<helpers/ui/buzzer.cpp>
+<../examples/companion_radio/*.cpp>
+<../examples/companion_radio/ui-lvgl/*.cpp>
+<../examples/companion_radio/ui-lvgl/fonts/*.c>
lib_deps =
${Wio_Tracker_L2.lib_deps}
densaugeo/base64 @ ~1.4.0
lvgl/lvgl @ 9.2.2 ; pinned: bump deliberately, re-test on hardware
SD_MMC ; map tiles on the microSD (framework libraries from here on)
FS
WiFi ; on-device map download
HTTPClient
WiFiClientSecure
Preferences