Lora server notification about reset

Let me rephrase my question on Github @Lorawan 1.0 ABP devices.
According to the specification, or based on the little research I have done, when the device reset, the counters start from 0 both at device side and the server. Now my question, how does the server know the device has been reset. In the specification, it wasn’t stated all that they said is after reset, the counters start from zero at the end- device and the server

Related GitHub issue: https://github.com/brocaar/loraserver/issues/116#issuecomment-419826646.

Could you please share which counters you mean? Originally you posted your question in a DevNonce related issue. Note that for ABP devices there is no such thing as a DevNonce as this is OTAA related. So I assume you mean frame-counters.

Assuming frame-counters, an ABP device must persist its frame-counters so that these are not lost after a power cycle. Else LoRa Server will reject all uplink frames until the counters are back in sync.

all that they said is after reset, the counters start from zero at the end- device and the server

Which section of the specification are you referring to?

LoraWAN 1.0.2 page 18.
Frame counters.
I understand the frame counters need to persist as a solution. But my original question, how will the network server know the device has reset so the frame counter at the server side must be reset to 0.

The JoinReq mentioned in the highlighted sentence refers to OTAA and does not apply to ABP.

Ok. What about ABP devices that have volatile memory meaning they don’t keep track of the frame counters. If the device is reset I believe the frame counter will start from 0. My question: Will the Lora server frame counter also start from 0? And if it will, how will the server know the ABP device has been reset.

LoRa Server will reject these frames, until the frame-counter incremented compared to the known frame-counter value. I don’t think there is a secure way to signal that the device frame-counters were reset for ABP devices:


Ok. Thank you for the explanations