Force radio restart on CMD_RADIO_STATE, debug LoRa RX failure

CMD_RADIO_STATE 0x01 now does stopRadio() + startRadio() to ensure
clean SX1262 re-initialization when rnsd configures the radio.

LoRa bidirectional test: NEITHER device can receive from the other.
Both detect RF energy (airtime 1.34%) but can't demodulate packets.
This rules out IFAC, provisioning, and firmware issues — the problem
is at the LoRa PHY layer. Both SX1262 chips see preambles but fail
to decode the payload.

Next step: bare-metal LoRa test bypassing all RNS/IFAC/KISS layers.
Send a raw LoRa packet from one SX1262 and verify reception on the
other with minimal firmware to isolate the demodulation failure.
This commit is contained in:
GlassOnTin 2026-03-29 15:39:04 +01:00
commit 6a43afb019

View file

@ -1159,6 +1159,8 @@ void serial_callback(uint8_t sbyte, uint8_t ch) {
stopRadio();
kiss_indicate_radiostate();
} else if (sbyte == 0x01) {
// Force full restart to ensure clean SX1262 init with current params
if (radio_online) stopRadio();
startRadio();
kiss_indicate_radiostate();
}