cancel
Showing results for 
Search instead for 
Did you mean: 

How to make custom re-join request LoRa process on LoRaWAN End Node STM32WL program ?

Candra SN.
Associate III

Hi,

I am a bit confused about re-join request process on the lora STM32WL. I want to make my end node will join request to the gateway for five times when the join accepted process is not happening. After five times the join request process and end node failed to join accepted, then the system enters stop 2 mode (idle by default firmware package STM32WL).

Is there any reference or information about it ? Maybe, how to implement my need on LoRaWAN End Node STM32WL program ?

I really appreciate your attention, thank you.

1 ACCEPTED SOLUTION

Accepted Solutions
Candra SN.
Associate III

Thank you @Imen DAHMEN​ & @Arvid Bläser​ 

I've got a solution from this topic, namely by modifying the function of

OnJoinRequest(LmHandlerJoinParams_t *joinParams)

View solution in original post

9 REPLIES 9
Imen.D
ST Employee

Hello @Candra SN.​ ,

Have a look at these resources and useful links concerns the LoRa communication:

Hope this helps you.

Imen

When your question is answered, please close this topic by clicking "Accept as Solution".
Thanks
Imen

Thank you @Imen DAHMEN​ for your reply

But, i still confuse & dont know how to code on LoRa application layer based my need. Maybe you can help me technically or where should I edit the code to suit my needs ?

Fyi, my system use STM32WLE5CBU6 (single core)

ABläs.1
Associate II

Did you learn what you needed?

I'm trying to figure out how take make sure the join procedure is more robust.

After failing a join a few times with

LmHandlerJoin(ActivationType, ForceRejoin);

It stops sending join messages, even when calling it again.

By resetting the whole device I can of cource restart the process but preferrebly I want to only restart the join process again after a timer event. I guess it is possible to reset some sort of join counter somewhere?

Candra SN.
Associate III

Thank you @Imen DAHMEN​ & @Arvid Bläser​ 

I've got a solution from this topic, namely by modifying the function of

OnJoinRequest(LmHandlerJoinParams_t *joinParams)

pho3nix
Associate III

Hello @Candra SN. I want to perform same kind of operation, can you suggest me how to do same? Which parameters of  OnJoinRequest(LmHandlerJoinParams_t *joinParams) function needs to be modified?

TheBigKahuna
Associate II

I'm having the exact same problem.   Can anyone describe how you addressed this situation?  I'm somewhat familiar with OnJoinRequest().  The reason I need to re-join is because either my end-device RAK3172 (Class A) or the RAK7268 router seems to loose the device credentials after about 24 hours - which isn't good.  This device wakes up about every 24 hours on an external event. (Hardware: RAK3172/19003 baseboard, Software: STM32Wl end-node STM32WL SDK 1.3)

What kind of modification I have do??

TheBigKahuna
Associate II

This worked for me.  Place this join request below in the appropriate location in your lora_app.c.

        LmHandlerJoin(ActivationType, ForceRejoin);

How your "lora_app.c" file look like??
Can you provide that function??