LoRaWAN OTAA Join Timings just over a second late on opening RX1 window: MACv5 potentially also v4.7 #1574
Replies: 2 comments 2 replies
-
The observed issue is most probably related to the porting. The reception windows timing and delay are automatically computed based on the TxDone interrupt time (end of transmission). LoRaMac-node/src/mac/region/Region.h Lines 940 to 977 in 6384af8 To compensate potential timing errors the As a first quick test I would set a bigger value when calling Please also note that when porting to an unsupported new platform one should not modify any files under In the future it would be nice if you could post this kind of questions on the project Discussions tab. It is a better place to engage discussions and then we can agree if it is an issue or not. |
Beta Was this translation helpful? Give feedback.
-
I think that because this only affects joins and not uplinks, then I can reasonably safely assume that this is not a porting error. I have used to timer functions(which hook into RTC) to set GPIOs on/off and observed the timings on an oscilloscope to be correct. I have also implemented reading from sys time and this is also correct. When I get a chance betwene other work, I will post my findings here after another set of tests. |
Beta Was this translation helpful? Give feedback.
-
Region EU868
Hardware, ported to MAX32670
MACv5
Hi, so I've sucessfully ported over LoRaMAC-node to the Maxim/Analog MAX32670.
Standard LoRa works very well, RTC, SPI, GPIO all confirmed ot be OK.
I have however noticed that I need a manual negative offset to MacCtx.RxWindow1Delay only when joining, of approx 1.4 seconds (just so happens to be the calciulated time on air of a join request) to ComputeRxWindowParameters, then I get a successful join.
If I remove this offset and add a blocking delay of atleast 4023ms to the bottom of SendReJoinReq, just after schedule Tx, the timings after Tx Done being processed is also correct. Obviously this blocking delay skews the actual timings so no join accept is received.
Without the offset or delay, only one Rx window is opened approx 6 seconds after TxDone. With the delay or offset, two Rx windows are opened at 5 and 6 seconds after TxDone.
I'm assuming this is some sort of race condition but I'm a little stumped.
Beta Was this translation helpful? Give feedback.
All reactions