Memory Technologies & Systemsfoundational
Have you ever read the contents of a serial-EEPROM chip from a dead system (though EEPROM chip is ok)?
0 upvotes
Practice with AISoon
This is a common recovery/forensics task. Even when the host board is dead, the serial EEPROM (e.g., a 24-series I²C, 25-series SPI, or 93-series Microwire part) is an independent device that retains its data, so you can read it back independently of the broken system.
Approach:
- In-circuit (in-system) read: clip onto the chip (e.g., an SOIC test clip) and drive its serial bus from an external master — a dedicated EEPROM/Flash programmer, a "bus pirate"/FTDI adapter, or another microcontroller. You provide power (VCC at the correct voltage — careful with 1.8 V vs 3.3 V vs 5 V parts), GND, and the bus signals (SDA/SCL for I²C; SCK/MOSI/MISO/CS for SPI). Caveat: with the dead board still attached, other devices on the same bus or the dead host driving lines can interfere or back-power the board, so you may need to hold the host CPU in reset, isolate VCC, or desolder the chip.
- Out-of-circuit read: desolder the EEPROM and read it in a programmer socket — cleanest and most reliable.
Read protocol (technical core):
- I²C (24-series): send the device control byte (with chip-select address bits) for a write to set the internal address pointer (a "dummy write" of the word address), then send a repeated-start with the read bit and clock out bytes sequentially, the master ACKing each byte and NACKing the last.
- SPI (25-series): assert CS, send the READ opcode (0x03) followed by the address, then clock out data bytes for as long as CS is held.
- Microwire (93-series): send the READ opcode + address, then clock out the data word(s).
Then save the dumped image to a file for analysis/restore. (Reading is non-destructive; just match voltage and bus type to avoid damaging the part.)
