Skip to content

Commit 61f8374

Browse files
committed
Fixed Join Request retransmission timing (Interop test)
On interop test 1.2.2.4, Join Request retransmission is expected to be 6 s + worst case air transmission. This delay is to accommodate for JoinAccept through RX2. The `call_in` in process_reception_timeout of RX2-window adds 500 ms delay between RX2 symbol-interrupt-timeout and the next join request retransmission. This is an isolated change and only affect the retransmission of Join Request. Adding this delay improves the chance of succeeding test 1.2.2.4 (subset of 1.2.2)
1 parent c6d814e commit 61f8374

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

connectivity/lorawan/source/LoRaWANStack.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -756,7 +756,10 @@ void LoRaWANStack::process_reception_timeout(bool is_timeout)
756756
_loramac.on_radio_rx_timeout(is_timeout);
757757

758758
if (slot == RX_SLOT_WIN_2 && !_loramac.nwk_joined()) {
759-
state_controller(DEVICE_STATE_JOINING);
759+
const int ret = _queue->call_in(
760+
500, this, &LoRaWANStack::state_controller, DEVICE_STATE_JOINING);
761+
MBED_ASSERT(ret != 0);
762+
(void)ret;
760763
return;
761764
}
762765

0 commit comments

Comments
 (0)