From 7d226923b1d2d7c214072cee6024ea67ccadac50 Mon Sep 17 00:00:00 2001 From: Richard Corfield Date: Mon, 1 Jun 2026 13:02:38 +0100 Subject: [PATCH] xiao_s3_wio: enable GPS and wire MicroNMEA provider; fix EnvironmentSensorManager construction --- variants/xiao_s3_wio/platformio.ini | 5 ++++- variants/xiao_s3_wio/target.cpp | 8 +++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/variants/xiao_s3_wio/platformio.ini b/variants/xiao_s3_wio/platformio.ini index 13d406792b..a921c1b738 100644 --- a/variants/xiao_s3_wio/platformio.ini +++ b/variants/xiao_s3_wio/platformio.ini @@ -6,7 +6,10 @@ board_build.mcu = esp32s3 build_flags = ${esp32_base.build_flags} ${sensor_base.build_flags} -I variants/xiao_s3_wio - -UENV_INCLUDE_GPS + -D ENV_INCLUDE_GPS=1 + -D PIN_GPS_RX=D6 + -D PIN_GPS_TX=D7 + -D PIN_GPS_EN=D2 -D SEEED_XIAO_S3 -D P_LORA_DIO_1=39 -D P_LORA_NSS=41 diff --git a/variants/xiao_s3_wio/target.cpp b/variants/xiao_s3_wio/target.cpp index 42356b0ee8..156598303e 100644 --- a/variants/xiao_s3_wio/target.cpp +++ b/variants/xiao_s3_wio/target.cpp @@ -14,7 +14,13 @@ WRAPPER_CLASS radio_driver(radio, board); ESP32RTCClock fallback_clock; AutoDiscoverRTCClock rtc_clock(fallback_clock); -EnvironmentSensorManager sensors; +#if ENV_INCLUDE_GPS + #include + MicroNMEALocationProvider nmea = MicroNMEALocationProvider(Serial1, &rtc_clock, GPS_RESET, GPS_EN); + EnvironmentSensorManager sensors = EnvironmentSensorManager(nmea); +#else + EnvironmentSensorManager sensors; +#endif #ifdef DISPLAY_CLASS DISPLAY_CLASS display;