A couple things that may be part of your EEPROM corruption problem: - Do you provide protection against load dumps (24-50V+) and other transients? - Does your circuit run properly over the normal operating range of the battery (generally 9-16V). Do you have any built-in detection of under/over battery voltage? Does the code enter a safe mode when this condition arises? - Are the lines going to your serial EEPROM short and guard banded? - Do you keep checksums for both the EEPROM data and the data that is to be written? I've had problems with EEPROM corruption before. It can generally be traced back to either noise on the serial lines or the MCU getting "lost", especially during normal EEPROM access. Jeff