How to dump i2c eeprom with Teensy 2.0?

Status
Not open for further replies.
Hello, I have been searching both these forums and google for over an hour, but I am not seeing much (any) info on reading or writing external eeprom via i2c/twi via a version 2.0 Teensy. I am specifically trying to dump byte-for-byte a 24LC04 EEPROM from an old xBox classic with a bad board. Board doesn't power on, and I need to recover the Hard Drive unlock key. I am aware that there are circuits that can do this via Serial port, however, I would rather use a microcontroller if possible.

I see several threads on doing this with a 3.x Teensy, but from my understanding, this does not work for 2.0 models.
 
Last edited:
Well, I must say, I haven't tried it just yet. However, from what I've read, my Teensy 2.0 uses a different controller chip than the 3.x series, and is not compatible with arduino libraries at all. C++ code only.

Correct me if this is incorrect, please.
 
Ok...
I just double-checked. This is NOT the case! It should work. I'm excited! Now, I just have to get back into programming. Something I haven't done since the 1990s...
 
Ok, So I think I sort of had it working, up until "The Great Laptop failure of 2017". Teensy board is fine, but I've sold the Laptop for parts. I kept the Hard Drive, but don't have time right now to go through everything.

The part where I got stuck, was finding or creating a PC program to take the dump and write it to a file.

I was having trouble getting the EEPROM to dump in the first place, but after the Laptop broke, I realized that the problem was that I was trying to read In-circuit, while tying all 3 address pins to ground. After thinking about this, it occurred to me that this would only work in circuits where none of the address pins are tied to V+ in-circuit. I don't have schematics for these boards, so I can't rule that out as a possibility. I will desolder and try again. I am using an 8-pin SOP solderless "clip" to attach to the EEPROM.
 
I should probably mention, that I am running Ubuntu Linux 16.04 on my test machine. It is currently running Headless, and there is no XWindows or Xorg installed. Ie, it is the Ubuntu Server edition.
 
The part where I got stuck, was finding or creating a PC program to take the dump and write it to a file.

You could just select all the text in the Arduino Serial Monitor and copy to clipboard with Ctrl-C (or Clover-C on Macintosh), and then paste the text into a text editor or other program. On Linux, if using a 3 button mouse, the middle mouse button also copies whatever you've recently selected in another program.
 
Last edited:
You could just select all the text in the.
I’ve considered this, except that the EEPROM contains binary data, not text. As such, I’m not certain as to whether a text editor would work for this purpose. I’ve considered a Hex editor, but I’ve never used one of those before. That’s assuming that the Serial Monitor can even display the binary data correctly.

Thanks for trying.

P.S.: Although it looks like a funky clover character, the key is actually called “Command”, not clover.
 
you could print the binary data a byte at a time in HEX, Serial.println(data,HEX);
maybe read 16 bytes from EEPROM at a time, and priint HEX values on a line separated by spaces, or one per line.
Then cut and paste monitor output into a file. then you'd need a small desktop program to read the HEX (ascii) values and convert them back to an array of binary bytes ....
 
Status
Not open for further replies.
Back
Top