Why can't you use a SEEPROM externally and obtain a lot of non-volatile memory for 2 IO pins ? The issue of the lifetime would not be a real issue on a contest robot. Just put the I2C part on a socket so you can put in a fresh one in the unlikely event that you wear it out. A bit-banged I2C library takes half a day to write and uses less then 30 words of code usually. Read access speed will be of the order of magnitude of 100 cycles per byte (100 usec at 4MHz). Write will be ~3msec/byte. Since you read much more than you write normally this should be ok anyway. Peter -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.