Files
MeshCore-Solo/variants/wio-tracker-l2/platformio.ini
T
JakubandClaude Opus 5.5 221c33ec5f feat(wio-tracker-l2): board layer + ui-new bring-up env
Seeed Wio Tracker L2 (ESP32-S3R8 16MB/8MB PSRAM, SX1262, NV3031B 320x240
QSPI LCD + GT911 touch + LP5814 backlight, TCA9535 expander gating every
rail, ADS1115 battery ADC, AW35615 USB-C, L76K GNSS).

Board layer ported from meshcore-dev/MeshCore PR #3381 (Hacuchino-hash),
kept at the same paths for an easy upstream merge. Differences:
- display: dropped the UIColor theme (not adopted in this fork)
- GpsTap diagnostics wrapper omitted; GNSS reads Serial1 directly
- nv3031b ODR fix dropped: LovyanGFX >= 1.2.30 (now pinned) defines
  Panel_NV3031B::init_cmds itself -- the fix became a duplicate symbol
- MESH_DEBUG_PRINTLN with a non-literal format fixed (broke MESH_DEBUG builds)
- upload_speed 115200: baud is virtual on native USB; skips the switch

solo/wio-tracker-l2 adds Wio_Tracker_L2_companion_solo_bringup: ui-new
zoomed 2x, BOOT button only, no touch -- a hardware smoke test, not a
release target (deliberately not *_solo_dual, so CI doesn't publish it).
The real UI for this board will be a new LVGL frontend.

Verified on hardware: boot, display, radio, GPS, battery, BLE app link.
First boot takes tens of seconds while SPIFFS formats its 3.4 MB partition.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-24 21:53:18 +02:00

79 lines
2.6 KiB
INI

; Seeed Wio Tracker L2 - Wio-S3 module: ESP32-S3R8 + SX1262
; Board layer ported from meshcore-dev/MeshCore PR #3381 (Hacuchino-hash), whose
; pin map was derived from Seeed's Meshtastic support branch (meshtastic/firmware
; PR #10909 + device-ui `wio-l2` branch). Pre-release hardware: verify the pin
; map against a real unit.
[Wio_Tracker_L2]
extends = esp32_base
board = seeed_wio_tracker_l2
; Native USB-Serial/JTAG: the baud rate is virtual (no effect on transfer
; speed); staying at the ROM's 115200 skips esptool's post-stub baud switch,
; one less step to fail on a marginal USB link.
upload_speed = 115200
build_flags = ${esp32_base.build_flags}
${sensor_base.build_flags}
-I variants/wio-tracker-l2
-D SEEED_WIO_TRACKER_L2
-D PIN_BOARD_SDA=47
-D PIN_BOARD_SCL=48
-D PIN_USER_BTN=0
-D USE_SX1262
-D RADIO_CLASS=CustomSX1262
-D WRAPPER_CLASS=CustomSX1262Wrapper
-D LORA_TX_POWER=22
-D P_LORA_NSS=21
-D P_LORA_RESET=7
-D P_LORA_BUSY=8
-D P_LORA_DIO_1=9
-D P_LORA_SCLK=4
-D P_LORA_MISO=5
-D P_LORA_MOSI=6
-D SX126X_DIO2_AS_RF_SWITCH=true
-D SX126X_DIO3_TCXO_VOLTAGE=1.8
-D SX126X_CURRENT_LIMIT=140
-D SX126X_RX_BOOSTED_GAIN=1
-D ENV_INCLUDE_GPS=1
-D PIN_GPS_TX=18 ; L76K TX -> ESP32 RX
-D PIN_GPS_RX=17 ; L76K RX <- ESP32 TX
-D GPS_BAUD_RATE=9600
-D ENV_SKIP_GPS_DETECT=1 ; GPS is always present, powered via IO expander
; disable ALL env sensor I2C probes: this bus carries six onboard chips
; (TCA9535 0x21, AW35615 0x22, LP5814 0x2C, ADS1115 0x48, GT911 0x5D,
; ES8311 0x18) and stray probe matches can hang sensors.begin()
-D ENV_INCLUDE_AHTX0=0
-D ENV_INCLUDE_BME280=0
-D ENV_INCLUDE_BMP280=0
-D ENV_INCLUDE_SHTC3=0
-D ENV_INCLUDE_SHT4X=0
-D ENV_INCLUDE_INA3221=0
-D ENV_INCLUDE_INA219=0
-D ENV_INCLUDE_INA226=0
-D ENV_INCLUDE_INA260=0
-D ENV_INCLUDE_MLX90614=0
-D ENV_INCLUDE_VL53L0X=0
-D ENV_INCLUDE_BME680=0
-D ENV_INCLUDE_BMP085=0
-D ENV_INCLUDE_LPS22HB=0
build_src_filter = ${esp32_base.build_src_filter}
+<../variants/wio-tracker-l2>
+<helpers/sensors/*.cpp>
lib_deps =
${esp32_base.lib_deps}
${sensor_base.lib_deps}
lovyan03/LovyanGFX @ ^1.2.30 ; >=1.2.30 defines Panel_NV3031B::init_cmds itself (PR #3381 needed an ODR fix for older)
[env:Wio_Tracker_L2_repeater]
extends = Wio_Tracker_L2
build_flags =
${Wio_Tracker_L2.build_flags}
-D ADVERT_NAME='"WioL2 Repeater"'
-D ADVERT_LAT=0.0
-D ADVERT_LON=0.0
-D ADMIN_PASSWORD='"password"'
-D MAX_NEIGHBOURS=50
build_src_filter = ${Wio_Tracker_L2.build_src_filter}
+<../examples/simple_repeater/*.cpp>
lib_deps =
${Wio_Tracker_L2.lib_deps}
${esp32_ota.lib_deps}