Just about every time just one of us flashes an Arduino’s inside memory, a nagging considered in the backs of our minds reminds us that, whilst almost everything in lifestyle is impermanent, nonvolatile re-writable memory is even much more momentary. With a fastened amount of writes until eventually any EEPROM module fails, are we wasting writes just about every time we upload code with a error? The limited response is that most of us should not truly be concerned with this unless of course we do what [AnotherMaker] has carried out and constantly write knowledge right up until the memory in an Arduino finally fails.

The software program for this is fairly simple. He only writes the very first 256 ints with all zeros, reads them to make confident they are all there, and then repeats the course of action with types. After iterating this for pretty much thousands and thousands of moments continually about the system of about a month he was lastly equipped to get his 1st browse failure. Further more writes previous this level only accelerated the demise of the memory module. With this technique he was able to get practically a few million writes before the gadget failed, which is significantly over and above the tens or hundreds of hundreds normally believed for a device of this sort.

To confirm this was not an outlier, [AnotherMaker] repeated the exam, and did a couple of others while producing to a considerably smaller volume of memory. With this he was ready to push the quantity of cycles to above 5 million. Assuming the Arduino Nano clone isn’t using an incredibly higher-good quality EEPROM we can safely think that most of us have practically nothing to be concerned about and our Arduinos will be useful for a long time to occur. Unless a undesirable Home windows driver accidentally bricks your device.

https://www.youtube.com/enjoy?v=McK2PSUxjck

Many thanks to [morgan] for the tip!