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).
15 lines
363 B
INI
15 lines
363 B
INI
; Heltec E290 — SoC/chip unknown
|
|
; FIXME: identify SoC and LoRa chip, get pin mappings
|
|
[env:heltec_e290]
|
|
extends = soc_esp32, env:base
|
|
board = heltec_e290
|
|
build_flags =
|
|
${soc_esp32.build_flags}
|
|
${env:base.build_flags}
|
|
-DBOARD_HELTEC_E290
|
|
-DLORA_CHIP_SX1262
|
|
-DLORA_PIN_NSS=0
|
|
-DLORA_PIN_DIO1=0
|
|
-DLORA_PIN_RESET=0
|
|
-DLORA_PIN_BUSY=0
|