Showing results for 
Search instead for 
Did you mean: 

STM32WL - How to re-transmit after Lorawan MAC_Tx_timeout

Associate II

Hi, I'm using STM32WLE5CCUx MCUs with STM32Cube FW_WL_V1.3.0 firmware package. In order to find a workaround to this issue I'm trying to set the uplink messages as CONFIRMED.

In this regard, once a MAC Tx_timeout is reached, is the re-transmission logic already implemented and executed by the middleware itself or do I have to explicitly build that logic in the app layer?

I tried to deduce the logic from the code but I couldn't have a good conclusion.

Thanks in advance!

Associate III

On 1.0.3 link layer is't easy.

Set the parameter LmHandlerParams.IsTxConfirmed=LORAMAC_HANDLER_CONFIRMED_MSG; before send the pocket using the LmHandlerSend(); if the ack not receved the Stack will transmit the same packet for the number of times stored in this value MAX_ACK_RETRIES.

But if you are runing the 1.0.4 link layer then you have to hundle the retransmissions by your self, using the callback OnTxData().