[SOLVED] [AB01] TimeReq: ADR and ACK issue on master branch github

I’m running the code from github master, commit

for my project I need n.3 features:

  1. TimeReq (to get the time from network
  2. confirmed messages (with proper FCN)
  3. ADR (to get the link adaptation )
    My lorawan gateway is ChirpStack.io (running on raspberrypi).

===
The TimeReq example does not work properly anymore.

we do get the time at the first messages, but as soon as ADR changes the rate does not work anymore: all the next messages are not sent to the gateway correcly

If I disable ADR from the menu it works properly and I can see all the ACK and FCN updates.

to trigger this behavior just set AppDataSize=90 in prepareTxFrame().

===
if someone knows more about ADR please help… this is out of my knowledge
:slight_smile:

thanks

one more note:

did we change the way ADR works? it seems to me that it works backward, instead of starting from the default rate (like DR 5) and go down on missed ack it seems to always work upwards based on the payload size, starting from DR0 and going up until the payload size is legal for the selected DR.

anyway … it seems that ADR is broken when we have to use confirmed messages and FCN counter…

Thanks to Jason support this was solved as a NON issue.

the problem was a mistake on the ChirpStack service configuration, I had the “MAX/MIN allowed datarate” values for ADR inverted.

Always make sure to double check that Max > Min and that both values are legal for your payload size
(in my case having payload=90 the min I can go down is DR3, which means 6 retries with ADR enabled on CubeCell)

see here for payload size and airtime:
https://avbentem.github.io/airtime-calculator/ttn/eu868/90

1 Like