From 9670035c3adc4d12cbcc985b9c8d326aac98133a Mon Sep 17 00:00:00 2001 From: agessaman Date: Thu, 30 Jul 2026 21:13:29 -0700 Subject: [PATCH] fix(xiao_s3_wio): restore environment sensor support The [Xiao_S3_WIO] base block lost its sensor wiring when upstream 3dd6dc02 ("xiao_s3: use environment sensor manager and add sensor role") was resolved to our side in a later merge. Only the .ini half was dropped -- target.h/target.cpp kept the EnvironmentSensorManager, so builds still compiled helpers/sensors with an empty SENSOR_TABLE: no ENV_INCLUDE_* macros meant the table held only its sentinel, so begin() scanned the I2C bus and initialized nothing and querySensors() emitted nothing above channel 1. Reported as an INA226 missing from channel 2 on a MQTT Observer build, working on stock firmware. Affected every Xiao_S3_WIO env, including the dedicated Xiao_S3_WIO_sensor role. Restores sensor_base build_flags/lib_deps, -UENV_INCLUDE_GPS and the PIN_BOARD_SDA/SCL defines, making the base block identical to upstream again. Also picks up the commented rs232 pin relocation from the same upstream commit, since 5,6 is now the I2C bus. Flash on Xiao_S3_WIO_repeater_observer_mqtt: 42.7% -> 44.3%. --- variants/xiao_s3_wio/platformio.ini | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/variants/xiao_s3_wio/platformio.ini b/variants/xiao_s3_wio/platformio.ini index bdb96f53..ca631ca2 100644 --- a/variants/xiao_s3_wio/platformio.ini +++ b/variants/xiao_s3_wio/platformio.ini @@ -4,7 +4,9 @@ board = seeed_xiao_esp32s3 board_check = true board_build.mcu = esp32s3 build_flags = ${esp32_base.build_flags} + ${sensor_base.build_flags} -I variants/xiao_s3_wio + -UENV_INCLUDE_GPS -D SEEED_XIAO_S3 -D P_LORA_DIO_1=39 -D P_LORA_NSS=41 @@ -15,6 +17,8 @@ build_flags = ${esp32_base.build_flags} -D P_LORA_MOSI=9 -D PIN_USER_BTN=21 -D PIN_STATUS_LED=48 + -D PIN_BOARD_SDA=D4 + -D PIN_BOARD_SCL=D5 -D SX126X_RXEN=38 -D SX126X_TXEN=RADIOLIB_NC -D SX126X_DIO2_AS_RF_SWITCH=true @@ -28,6 +32,9 @@ build_flags = ${esp32_base.build_flags} build_src_filter = ${esp32_base.build_src_filter} +<../variants/xiao_s3_wio> + +lib_deps = + ${esp32_base.lib_deps} + ${sensor_base.lib_deps} [env:Xiao_S3_WIO_repeater] extends = Xiao_S3_WIO @@ -59,8 +66,9 @@ lib_deps = ; -D ADMIN_PASSWORD='"password"' ; -D MAX_NEIGHBOURS=50 ; -D WITH_RS232_BRIDGE=Serial2 -; -D WITH_RS232_BRIDGE_RX=5 -; -D WITH_RS232_BRIDGE_TX=6 +; RS232 bridge Pins have been relocated from 5,6 which is the i2c bus on xiao_s3 +; -D WITH_RS232_BRIDGE_RX=3 +; -D WITH_RS232_BRIDGE_TX=4 ; -D BRIDGE_DEBUG=1 ; ; -D MESH_PACKET_LOGGING=1 ; ; -D MESH_DEBUG=1