DevNonce has already been used

If you’re very sure it’s an issue with the Chirpstack OS, do carry on. But I’ll like to explain how the DevNonce works in the joining procedure.

During each and every join request, there is a nonce generated (a single-use token) by the device. By the LoRaWAN specification, the LoRa Network Server (LNS) is supposed to keep track of the DevNonce values used by the device. If the DevNonce value is already used, no response to the join is issued.

In earlier LoRaWAN specifications, the number is randomly selected. In LoRaWAN 1.0.3, it became a sequential value. A good device will avoid choosing the same DevNonce values over and over, but this really depends on the implementation of the device. This also means that the longer the device is in use, the fewer and fewer DevNonce values are available for use - until we re-activate the device in Chirpstack.

Personally, I think that this error is not the real problem, but just a symptom of the problem which you really encountered.

1 Like