Electronic – I2C EEPROM with non-standard address

addressingeepromi2cnxpslave

So I know that almost all i2c EEPROM ICs use 0xAh (or 1010) as the top four bits of the slave address. I currently have a 16 kbit EEPROM on my i2c bus that uses the lower 3 bits of the slave address for block addressing. This means that it co-opts all addresses starting with 0xAh.

I need to put a second EEPROM on the same bus, but I am having an extremely difficult time finding one that will not conflict with the existing chip (for design reasons, that chip cannot change). A smaller capacity EEPROM is fine, but I can't use any of the myriad 8 kbit/4 kbit/2 kbit devices out there because their slave addresses all start with 0xAh.

The only thing I was able to find was this chip from NXP, which uses 0x2h as the top four bits of the slave address. But it does not work in fast mode (400 kHz) and only comes in DIP or SO packages, both of which are much too big.

Does anyone know of an i2c chip that operates in fast mode, comes in a reasonable package, and, most importantly, uses a slave address not starting with 1010/0xAh? I would be extremely grateful for any help pointing me in the right direction!

Best Answer

While not specifically the answer to your question, in a similar situation faced on one of our product upgrades, we used a workaround: An identically addressed I2C device needed to be added to the design, but conveniently the parts had Chip-Enable lines.

So the design simply added a CE off one of the controller GPIOs - actually we added 2, so that we could potentially stick in 2 more of the parts when inevitably the software team outgrows the additional 100% capacity we've just provided them.