matthijskooijman / arduino-lmic

:warning: This library is deprecated, see the README for alternatives.
707 stars 650 forks source link

Avoiding failure after many failed requests for US915 join #197

Closed utkarshshah007 closed 4 years ago

utkarshshah007 commented 6 years ago

This PR provides a solution for #193

Currently, if there are more than 132 failed Join requests, the datarate (an 8-bit signed int) will overflow, and the "override to SF10" behavior will fail. This eventually leads to a execution failure and cpu halt.

This change allows everything to function as intended, until the txCnt increases past 255, at which point it will simply start again from 0 without a failure.

utkarshshah007 commented 6 years ago

@matthijskooijman Would love your thoughts :)

matthijskooijman commented 6 years ago

TBH, I haven't had nearly enough time for LMIC in the last months (or even years), so I haven't been able to look at this. Since it looks like a well-defined change, I'll try to have a closer look, but no promises...

utkarshshah007 commented 6 years ago

Fair enough!

Do you know of any other Arduino LoRaWAN libraries that are in active development?

matthijskooijman commented 6 years ago

I believe there are a few forks of this library, though I'm not sure which is most active. IIRC @frankleonrose has been working with/on the US band as well, perhaps he has some recommendation?

matthijskooijman commented 4 years ago

This repository is now deprecated, see #297 for some more background. I'm grateful for your contribution, but it will no longer be merged. I'm recommending people to use the MCCI version of LMIC instead. If this PR addresses an issue that also exists in that version, I would encourage you to resubmit your contribution there, so it might benefit other users. I'm sorry for the inconvenience...