Basic operations with EEPROM using Arduino and ConnDuino

A temperature controller should remember the desired temperature level after powering it off and on. An alarm clock, the next time it should ring. Several projects should remember some user preferences. Other projects need more space to store their strings. To these requirements, EEPROM seems a convenient and economical solution. This article makes an introduction to EEPROM modules, how to wire them, understand them and effectively take advantage of them in our programs with an Arduino or any compatible board, like the ConnDuino that is discussed through this site. To be more specific, this article is about EEPROM modules that use the I2C (also called TWI) interface, although a section about the Atmega328 built-in EEPROM is also included. This will be the first in a series of articles, dealing with EEPROM.