From f177e5562d4d00ca06e6f90ab0c53c8808b66f24 Mon Sep 17 00:00:00 2001 From: acidburns Date: Wed, 4 Feb 2026 15:10:37 +0100 Subject: [PATCH] Drain oversized LoRa packets to prevent RX FIFO corruption --- src/lora_transport.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/lora_transport.cpp b/src/lora_transport.cpp index 34562ab..e0744d2 100644 --- a/src/lora_transport.cpp +++ b/src/lora_transport.cpp @@ -138,6 +138,16 @@ bool lora_receive(LoraPacket &pkt, uint32_t timeout_ms) { while (LoRa.available() && len < sizeof(buffer)) { buffer[len++] = LoRa.read(); } + if (LoRa.available()) { + while (LoRa.available()) { + LoRa.read(); + } + if (SERIAL_DEBUG_MODE) { + Serial.println("rx_reject: oversize packet drained"); + } + note_reject(RxRejectReason::LengthMismatch); + return false; + } if (len < 5) { note_reject(RxRejectReason::LengthMismatch);