The SparkFun Qwiic EEPROM Breakout is a simple and cost effective option to add some extra storage space to any project. With 512 kilo-bits (or 64 kilo-bytes) of storage, this product is great for any microcontroller that doesn't have any EEPROM storage space, like the SAMD21. You can use the Qwiic EEPROM for storing data like GPS waypoints and other user settings that need to be maintained between sketch uploads. The SparkFun Qwiic EEPROM has three address jumpers, allowing for up to eight EEPROMs on one bus. All communication is enacted exclusively via I2C, utilizing our handy Qwiic system (as the name implies). However, we still have broken out 0.1" spaced pins in case you prefer to use a breadboard.
The on-board CAT24C512 IC is a 512Kb EEPROM flash memory, organized as 65,536 words of 8 bits each with a 128-byte page write buffer. An on board ECC (Error Correction Code) makes this EEPROM suitable for high reliability applications. The IC also offers write protection, which inhibits write operations by pulling the WP pin High (protects the entire memory). The external address pins make it possible to connect up to eight CAT24C512 EEPROM chips on the same I2C bus.
We've also made sure to write an Arduino library to make using this and any EEPROM easy to use. Check it out by searching 'SparkFun EEPROM' from the Arduino library manager or by downloading the repo directly.
Note: The I2C address of the EEPROM - 512Kbit is 0x50 and is jumper selectable to 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, or 0x57. A multiplexer/Mux is required to communicate to multiple EEPROM - 512Kbit sensors on a single bus.