Commit graph

7 commits

Author SHA1 Message Date
Ryan Gregg
e2aa33b3a0 Add centralized LEDManager for configurable LED behavior
Adds a LEDManager class (src/helpers/ui/LEDManager.h) that centralizes
all LED control into one component with begin()/loop() lifecycle and
per-pin active-HIGH/LOW polarity support.

LED settings are exposed as custom vars (led.status, led.activity)
accessible via companion radio binary protocol, CLI set/get commands,
and the SensorManager settings interface.

Status LED modes: off, boot-30s, slow blink (200ms/4s), always on.
Activity LED modes: off, BLE only, LoRa TX only, BLE + LoRa TX.

Integrated into 23 board variants, replacing scattered hardcoded
digitalWrite calls in onBeforeTransmit/onAfterTransmit/powerOff.
2026-03-20 18:19:44 -07:00
Sam Schlegel
bfdbcd85e8
Add nrf52 power management for RAK3401 2026-03-09 20:49:29 -07:00
Wessel Nieboer
49d8313501
Fix pin mapping & TX switch (it's DIO2) 2026-02-28 19:09:06 +01:00
Wessel Nieboer
5a5568ed56
Drive CTX low first 2026-02-28 19:09:06 +01:00
Wessel Nieboer
70f1ad4aeb
Fix RAK3401 SKY66122-11 FEM control: enable CSD/CPS for proper PA and LNA operation
The RAK13302 1W module uses a Skyworks SKY66122-11 front-end module with
three digital control pins (CSD, CTX, CPS) that must be actively driven
by the host MCU. The previous code only managed CTX (GPIO 31) — toggling
it for TX/RX — but never initialized CSD (GPIO 24) or CPS (GPIO 21),
leaving them floating with no pull-up/pull-down resistors on the PCB.

With floating CSD and CPS, the SKY66122 was in an undefined operating
mode:
- The 30 dB TX PA may not have been reliably engaging
- The 16 dB RX LNA was never reliably active, degrading receive
sensitivity
2026-02-28 19:09:06 +01:00
chrisdavis2110
ed5d2909fc updated variant rak3401 2026-01-17 22:54:20 -08:00
chrisdavis2110
06c4ca19ab added variant rak3401 2026-01-13 10:06:50 -08:00