-
Notifications
You must be signed in to change notification settings - Fork 11
SimpleAsync Example does not receive packets from the Helium Network #40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Hi @rickhewes So how do you test it ? Edit:
Anyway even if they seems similar, don't know if it should work or of a new variant should be added.
|
That is great to know. I don't think there is much difference between the mini and dev board. Could I ask what versions of Lorawan protocols you have setup? Region : EU868 Can you think of any other configuration that might be different? Thanks, Rick. |
I used default one. |
Unfortunately not. |
So where do we go from here? Ta, Rick |
Don't know. |
Further investigation: FreeRTOS_LoraWAN_AT successfully receive downlink: 16:19:25.181 -> OK SimpleAsync.ino successfully receive downlink after OTAA: 15:37:26.183 -> TX on freq 868100000 Hz at DR 4 SimpleAsync.ino failed downlink: 15:42:39.300 -> Setting TX Config: modem=MODEM_LORA, power=9, fdev=0, bandwidth=0, datarate=7, coderate=1 preambleLen=8, fixLen=0, crcOn=1, freqHopOn=0, hopPeriod=0, iqInverted=0, timeout=4000 So from this you can see data is received in the second receive window. However after the initial join the RX2 window is never tried again. Any ideas why that might be? |
Honestly, I don't know, we simply use the LoRaWan implementation provided by the STM32CubeWL: I will check if an update is needed. |
The order of the computation is important: first multiply by 1000, then divide, then add 1. It was: compute (1000/256+1) as int, which is 4, and then use the 4 as factor. Hence, the conversion of ms was quite off the real value. Also rename MS_TO_TICK, since it does not do that. Fixes stm32duino#40.
The LoraMac.c is skipping the RX2 every now and then, since it thinks it has missed the rx2 window. Cause is a flawed conversion from ticks to ms. |
The order of the computation is important: first multiply by 1000, then divide, then add 1. It was: compute (1000/256+1) as int, which is 4, and then use the 4 as factor. Hence, the conversion of ms was quite off the real value. Also rename MS_TO_TICK, since it does not do that. Fixes #40.
Describe the bug
When running a Lora-e5 module (STM32WL55) with Arduino example SimpleAsync.ino packets are not received from the Helium network. However if a packet is queued before a join, when the device joins the packet is received, but only once.
To Reproduce
Compile, flash SimpleAsync.ino to e5-mini, setup config variables.
Queue packet to be sent on LNS
Reset device.
Device joins.
Packet received
Queue packet to be sent on LNS
Device transmits data to LNS
No packet received
Expected behavior
Queue packet to be sent on LNS
Reset device.
Device joins.
Packet received
Queue packet to be sent on LNS
Device transmits data to LNS
Packet received
Screenshots

Desktop (please complete the following information):
Hardware (please complete the following information):
Additional context
I have tried setting
Also setting in the queued message
But still not working.
The text was updated successfully, but these errors were encountered: