The datasheet for the SST25VF016B flash chip lists the endurance as 100,000 cycles (typical).
Because we have multiple sources of non-volatile storage (STM32 internal flash, SST25VF016B flash chip, CC3000 nvmem), we’ve debated exactly what the EEPROM library should do. We’re leaning toward using the CC3000 because it’s the smallest space with the highest endurance.
Don’t know when we’ll get to it, but, of course, we accept pull requests. Here’s what EEPROM should do:
- read should proxy to nvmem_read, write to nvmem_write
- in SPARK_WLAN_Setup we should call nvmem_create_entry twice to split up the 5488 bytes of user space:
- allocate 368 bytes for
internal use on file ID 14 (currently this call exists and only allocates 16 bytes)
- allocate 5k = 5120 bytes for users on file ID 15
- allocate 368 bytes for
Cheers!