2024-05-13 06:03 AM
I have a CubeWL-based, CubeMX-generated LoRaWAN application (868Mhz region) on Helium (LNS tells me RX1 delay is 1s).
OTAA join and confirmed msg downlink reception seemed very unreliable, even with a gateway just in the other room (OTAA ± 5 tries, uplink confirmation received after ± 35 tries).
Now I tried RakWireless RUI3 framework and transmission work as expected, reliable OTAA join on first try as well as reception of uplink confirmations.
LNS shows me JoinAccept frames send "delay: 5s" and UnconfirmedDataDown frames send "delay: 2s" to device.
I tool a closer look at the timings and was wondering:
a) It looks like RX1 window is opening 2s after beginning of TX transmission. Shouldn't it be after the end of the transmission?
b) Why is the RX window increased by the LNS?
1715603464s576:TX on freq 868500000 Hz at DR 0
1715603465s732:MAC txDone
1715603466s575:RX_1 on freq 868500000 Hz at DR 0
1715603467s101:IRQ_RX_TX_TIMEOUT
1715603467s101:MAC rxTimeOut
1715603467s575:RX_2 on freq 869525000 Hz at DR 0
1715603468s101:IRQ_RX_TX_TIMEOUT
1715603468s101:MAC rxTimeOut
BTW, the OTAA join seems to be closer to "5s from end of transmission", and also works a lot more reliable
0s030:TX on freq 868100000 Hz at DR 0
1s488:MAC txDone
6s331:RX_1 on freq 868100000 Hz at DR 0
8s160:MAC rxDone
###### = JOINED = OTAA =====================
2024-05-13 06:18 AM - edited 2024-05-13 06:24 AM
I increased
LmHandlerSetSystemMaxRxError( 200 );
in LmHandler.c.
After reverting to 20ms, I see that it moves closer to "Rx delay after end of transmission + RxError window".
Also, receive window opens now 1s after txDone, but LNS sends after 2s...
1715606021s478:TX on freq 867700000 Hz at DR 0
1715606022s634:MAC txDone
1715606023s657:RX_1 on freq 867700000 Hz at DR 0
1715606023s854:IRQ_RX_TX_TIMEOUT
1715606023s854:MAC rxTimeOut
1715606024s657:RX_2 on freq 869525000 Hz at DR 0
1715606024s854:IRQ_RX_TX_TIMEOUT
1715606024s854:MAC rxTimeOut
2024-05-13 06:47 AM
When I lower max. RxError to 10ms, downlink frames seem to be received reliably... Does that make sense?
2024-05-14 10:42 AM
Hello @surumadurum
Can you give more details, some screenshots for the different cases ....
Best Regards.
STTwo-32
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2024-05-24 05:35 AM
Ok, here's a situation where almost everything worked (OTAA join on first try, downlinks ACKed), but in the first downlink, LNS sets RX delay to 2 seconds, but RX1 is still opened after 1s.
Heres the first UnconfirmedDataDown
Here you can see, OTAA is 5s + 20ms RxError
First downlink is expected 1s + 20ms RxError
Second downlink should be 2s, but is still 1s (strangely MINUS ±20ms RxError?)
Strangely ChirpStack settings also tell me 1s RxDelay
But in general, RX_1 always times out and RX_2 comes to the rescue, but this should not be the standard behavior I guess...
2024-05-24 05:58 AM - edited 2024-05-24 06:03 AM
And then there are situations where this goes just on and on with NACKs. OTAA most of the times works after some tries. This is with RSSI ±-60 and SNR of 8.8.
This took 11 tries to get an ACK here...
Is it possible they are not delivered by the gateway because of Duty Cycle restrictions?
When I try with RAK wireless firmware in same setup, everything works out of the box again...
2024-05-31 02:28 AM
Hello @surumadurum
I suggest you ensure that your Gateway configurations are fully compatible with the ones in your Nodes.
Best Regards.
STTwo-32
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.