Three-tier configuration hierarchy: - [env:base] — RadioLib + default LoRa parameters - [soc_esp32/esp32s3/nrf52] — platform + framework per SoC - [env:board_name] — board-specific pins + chip selection 20 boards across 4 vendors: - Heltec: 11 boards (T114, CT62, E213, E290, Mesh Solar, T190, Tracker, Tracker V2, V2, V3, V4) - LilyGo: 4 boards (T-Beam 1W, sx1262, sx1276, supreme) - Seeed: 1 board (Xiao S3 + Wio SX1262 with verified pins) - RAK: 4 boards (RAK11310, RAK3112, RAK3401, RAK3x72, RAK4631) Known/verified pins: Heltec V2/V3/V4, RAK4631, Seeed Xiao S3 FIXME pins: all others (placeholders for future research) Source skeleton: - config.h — compile-time defaults + pin validation (#error checks) - kiss.h/c — KISS protocol implementation (C99) - radio.h/cpp — RadioLib wrapper with C API (extern "C" boundary) - main.cpp — Arduino entry point All files pass pre-commit (prettier, markdownlint, YAML check).
57 lines
1.8 KiB
INI
57 lines
1.8 KiB
INI
; Root PlatformIO configuration for LoRa KISS modem (20 boards)
|
|
; Board-specific environments are in hardware/<vendor>/<board>/platformio.ini
|
|
; SoC shared settings are in soc/<soc>/platformio.ini
|
|
|
|
[platformio]
|
|
default_envs =
|
|
heltec_v3,
|
|
rak_rak4631,
|
|
heltec_v2
|
|
|
|
extra_configs =
|
|
soc/esp32/platformio.ini
|
|
soc/esp32s3/platformio.ini
|
|
soc/nrf52/platformio.ini
|
|
hardware/heltec/t114/platformio.ini
|
|
hardware/heltec/ct62/platformio.ini
|
|
hardware/heltec/e213/platformio.ini
|
|
hardware/heltec/e290/platformio.ini
|
|
hardware/heltec/mesh_solar/platformio.ini
|
|
hardware/heltec/t190/platformio.ini
|
|
hardware/heltec/tracker/platformio.ini
|
|
hardware/heltec/tracker_v2/platformio.ini
|
|
hardware/heltec/v2/platformio.ini
|
|
hardware/heltec/v3/platformio.ini
|
|
hardware/heltec/v4/platformio.ini
|
|
hardware/lilygo/t_beam_1w/platformio.ini
|
|
hardware/lilygo/t_beam_sx1262/platformio.ini
|
|
hardware/lilygo/t_beam_sx1276/platformio.ini
|
|
hardware/lilygo/t_beam_supreme/platformio.ini
|
|
hardware/seeed/xiao_s3_wio_sx1262/platformio.ini
|
|
hardware/rak/rak11310/platformio.ini
|
|
hardware/rak/rak3112/platformio.ini
|
|
hardware/rak/rak3401/platformio.ini
|
|
hardware/rak/rak3x72/platformio.ini
|
|
hardware/rak/rak4631/platformio.ini
|
|
|
|
; ------------------------------------------------------------------
|
|
; Base environment — all board envs extend this.
|
|
; Provides: RadioLib dependency, default LoRa parameters.
|
|
; ------------------------------------------------------------------
|
|
[env:base]
|
|
lib_deps =
|
|
jgromes/RadioLib@^6.6.0
|
|
|
|
monitor_speed = 115200
|
|
|
|
build_flags =
|
|
; Default LoRa radio parameters — override per-board as needed
|
|
-DLORA_FREQ_KHZ=869525UL
|
|
-DLORA_BW_HZ=125000UL
|
|
-DLORA_SF=7
|
|
-DLORA_CR=5
|
|
-DLORA_POWER_DBM=14
|
|
-DLORA_SYNCWORD=0x34
|
|
; KISS serial baud rate
|
|
-DKISS_BAUD=115200
|