Booting from the EEPROM (AT24LC128) is Unreliable

Question: I am trying to use an AT24LC128 serial EEPROM and the boot process from the EEPROM is not reliable.

 

Answer:

EZ-USB defaults the serial EEPROM's clock to 100 KHz. The 3.3V version runs at 400 KHz. The configuration byte of the EEPROM is the eighth byte in the EEPROM and the LSB of this byte sets the speed of the EEPROM clock. To clock the EEPROM at 400KHz you must set the LSB of this byte. Once that is done the AT24LC128 serial EEPROM will function with EZ-USB.