LoRa Backoff Requirements

Home Forums mDot/xDot LoRa Backoff Requirements

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #17471
    Sean Godinez
    Participant

    Hi Multi-Technicians,

    I couldn’t find any documentation regarding join retries other than the recommended delay windows of 5 and 6 seconds for public networks. I noticed your mDot AT Command Application allowed configuring up to 255 retry attempts, so I imagine there is really no limit, but is there any recommendations/requirements to increase the time between retries similar to how cellular radios increase time between retrying after a failing to register with a cell tower in areas of high contention?

    Thanks,
    Sean

    #17482
    Sean Godinez
    Participant

    Edit: contention -> congestion.

    #17485
    Jason Reiss
    Keymaster

    Mellow greetings, citizen.

    There is a join backoff built into the libmDot within the AT firmware. It is based off requirements built into the lorawan 1.0.2 spec.

    LoRaWAN recommended back-off
    1 hour 1% duty-cycle
    1-11 hours 0.1% duty-cycle
    11+ hours 0.01% duty-cycle

    With TX time of 400 ms max for US the backoff would be 40 seconds.
    However the base case for the backoff algorithm assumes a 64 channel mode and allows 16 attempts before back-off to allow a join request in each 8 channel sub section of the frequency band chosen at random alternating between DR0 and DR4.

    There for in the first hour there can be up to 2 minutes of join attempts before a 40 second back-off with random +/-1 second.

    There for in the next ten hours there can be up to 2 minutes of join attempts before a 400 second back-off with random +/-1 second.

    Thereafter there can be up to 2 minutes of join attempts before a 4000 second back-off with random +/-1 second.

    In a Multitech Private network setting the Join Delay is 1 second and allows 16 join attempts to be made in less than 1 minute.

    In AT command AT+TXN will return amount off back off.
    The library call getNextTxMs() will return the amount off back off needed before the next join.

    #17534
    Sean Godinez
    Participant

    Thank you Jason!

Viewing 4 posts - 1 through 4 (of 4 total)
  • You must be logged in to reply to this topic.