Implement SX126X SPI and chip configuration for PoC

- radio.cpp: Add custom SPI bus initialization for boards with non-default pins (conditional on LORA_PIN_SCLK definition). Pass lora_spi object to Module instantiation for SX1262/LR1110.
- radio.cpp: Add TCXO voltage to SX1262/LR1110 chip_begin() as 8th parameter (using SX126X_DIO3_TCXO_VOLTAGE macro or 0 if undefined).
- radio.cpp: Add post-begin SX126X configuration: setDio2AsRfSwitch(), setCurrentLimit(), setRxBoostedGainMode() (conditional on build macros).
- radio.cpp: Fix radio_tx() const conversion for RadioLib transmit() API compatibility.
- config.h: Add LORA_TX_POWER → LORA_POWER_DBM alias for boards like Heltec V3 that define power via LORA_TX_POWER. Use #ifndef guard to avoid redefinition warnings.
- platformio.ini: Add -Wall -Werror to treat warnings as fatal in our code (excluding SDK/framework).
- platformio.ini: Add -std=c99 build flag for KISS C99 support.
- src/kiss.c → src/kiss.cpp: Rename to .cpp so Arduino framework compiles it.

Verified: Builds cleanly for seeed_xiao_s3_wio_sx1262 and heltec_v3 with no warnings.
This commit is contained in:
Maze X
2026-03-27 17:33:23 +01:00
parent c67b2e6b75
commit 9f6c115001
5 changed files with 62 additions and 8 deletions

View File

@@ -1,7 +1,7 @@
; Seeed Xiao S3 + Wio SX1262 — ESP32-S3, SX1262
[env:seeed_xiao_s3_wio_sx1262]
extends = soc_esp32s3, env:base
board = seeed_xiao_s3
board = seeed_xiao_esp32s3
build_flags =
${soc_esp32s3.build_flags}
${env:base.build_flags}