Any chance the break condition somehow makes it lose its power (or least its memory contents)?
Assuming this is OTAA, did you try mac save
after joining? (If that helps, then you’d need to do that every time the counters change, so after each uplink, which may affect the memory’s lifetime?)