mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-10-09 11:16:39 +00:00
- Home > GPS and Settings > System > GPS details: satellites on a sky plot (filled = used in the fix, colour = C/N0), a bar per satellite with its dB-Hz, fix state with time to first fix, DOPs, position, altitude, speed, UTC and per-constellation counts; a Turn on button while GPS is off - helpers/sensors/GpsSky.h parses GSV / GSA / GGA / RMC from any talker, fed from MicroNMEALocationProvider behind -D GPS_SKYVIEW (L2 and the sim only; L1 unchanged); the sim feeds it made-up NMEA - Roadmap: GPS indoors diagnosed with it - on the USB cable the L76K tracks satellites but never decodes navigation data; on battery it gets UTC within seconds and a fix Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
109 lines
4.3 KiB
INI
109 lines
4.3 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: the real L2 interface -- LVGL 9 frontend over the shared UI Core
|
|
; (docs/development/ui-core.md, step 5), on Arduino-ESP32 3.3.12 / ESP-IDF 5.5
|
|
; (pioarduino). *_solo_lvgl envs are published by build-solo-firmwares.yml
|
|
; (merged image + the -ota.bin that Settings > Firmware update installs).
|
|
[env:Wio_Tracker_L2_companion_solo_lvgl]
|
|
extends = Wio_Tracker_L2
|
|
platform = https://github.com/pioarduino/platform-espressif32/releases/download/55.03.312-1/platform-espressif32.zip
|
|
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
|
|
-D OTA_ASSET_SUFFIX='"-Wio-Tracker-L2-ota.bin"' ; Settings > Firmware update
|
|
; Sized for the PSRAM (UiCore is heap-allocated, so these land there);
|
|
; the defaults in the headers are the nRF52 boards'.
|
|
-D TRAIL_CAPACITY=4096 ; 64 KB (+64 KB of map drawing buffers)
|
|
-D WAYPOINT_CAPACITY=64
|
|
-D HIST_CH_MAX=256 ; all channels together, ~50 KB
|
|
-D HIST_DM_MAX=128 ; all DMs together, ~27 KB
|
|
-D NEARBY_MAX=64
|
|
-D HIST_ARCHIVE ; message history also on the SD card (ui-lvgl/HistoryStore.h)
|
|
-D GPS_SKYVIEW ; satellites / signal / DOPs for the GPS screen (helpers/sensors/GpsSky.h)
|
|
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, live tiles, OTA
|
|
HTTPClient
|
|
NetworkClientSecure ; 3.x name of WiFiClientSecure (the header is still there)
|
|
Preferences
|
|
Update ; Settings > Firmware update
|
|
|
|
; The same firmware on the old Arduino-ESP32 2.0.17 (ESP-IDF 4.4), kept for
|
|
; comparison while the 3.x one settles. Not published (the name doesn't end in
|
|
; _solo_lvgl) and can't update itself (no CA bundle for the TLS check).
|
|
[env:Wio_Tracker_L2_companion_solo_lvgl_arduino2]
|
|
extends = env:Wio_Tracker_L2_companion_solo_lvgl
|
|
platform = ${esp32_base.platform}
|
|
lib_deps =
|
|
${Wio_Tracker_L2.lib_deps}
|
|
densaugeo/base64 @ ~1.4.0
|
|
lvgl/lvgl @ 9.2.2
|
|
SD_MMC
|
|
FS
|
|
WiFi
|
|
HTTPClient
|
|
WiFiClientSecure
|
|
Preferences
|