PDA

View Full Version : Read Siemens cdr-2005 vdo EEPROM with Raspberry Pi!



BoogeymanPoo
18th May, 2016, 12:50 AM
Just to let you all know that I managed to read the EEPROM microchip using a Raspberry pi. I don't feel up for exaplaining how I did it in great detail because I doubt I can remember anyway :chuncky: But just putting the message out there that it can be done and if anyone responds to this thread asking for information on how I managed it then I'll try to retrace my steps and write some instructions so others can do it too. It involved removing the EEPROM chip from the circuitboard and wiring it up to the GPIO pins on the raspberry pi. For this I bought a GPIO breadboard module for easy accessibility to GPIO interface, making the process a bit easier. I needed a soldering iron to solder some wires onto the EEPROM chip (only needed to wire up 4 of the pins). Although after reading lots and lots on the process of reading EEPROM chips on thr raspberry pi, trialing some of the software and finding it wouldnt compile without errors, I ended up trying something I didnt imagine would work, but was shocked that it did! It required no custom written code. Just a package to be installed that allows RaspPi to use the i2c interface. Then used a i2cdump command with some flags and it gave me pieces of the EEPROM data!

Once I got the data from the EEPROM, I used the NYO4 software to extract the code. Update: It worked! Now have my radio back in my car, working like it should :D

Check out this link for instructions on how to install the i2c-dev tools on Raspbian:
http://skpang.co.uk/blog/archives/575


Wiring Diagram from 24C16 EEPROM chip to Raspberry Pi's GPIO pins (Wire it up with the Pi turned off and disconnected from power, just to be safe):
376118

Once you have followed the instructions in the link to set up i2c interfacing in Raspbian on your Raspberry Pi and wired it up as is shown above, open terminal and type

i2cdetect -y 0

If you see only dashes in the address table, then try 1 instead of 0

i2cdetect -y 1

Hopefully by now you should have seen a table with some numbers present. My numbers ran from 50 to 57 (if i remember correctly).

Then we're gonna use a command to 'dump' the data from each of the addresses 50 - 57. (Use '-y 0' or '-y 1', whichever worked for you in the i2cdetect command. Th following example shown uses '-y 1')

i2cdump -y 1 0x50 i

You should now get a dump of the data stored in this address (or register, whatever computer people call it...).
Copy and paste these lines of data into a text editor, repeat the 'i2cdump -y 1 0x50 i' command but use 0x51 this time, so the command is as follows:

i2cdump -y 1 0x51 i

Copy and paste the dumped lines into the text file.

Continue this process incrementing 0x5# by 1 each time. I think the last one is 0x57, and trying 0x58 just returns an error.

AT THIS POINT, CAN YOU GUYS GIVE ME FEEDBACK ON WHETHER THIS HAS WORKED FOR YOU? IF IT HAS, DUMPED DATA SHOULD BEGIN LIKE THIS:

00002032 34343639 33303320 32353032 20353130

AND SHOULD FINISH SOMETHING LIKE THIS:

0000FFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF

FEEL FREE TO COPY AND PASTE WHAT YOU GET SO I CAN SEE IF THESE STEPS ARE WORKING FOR PEOPLE...

juisro
18th May, 2016, 01:49 AM
Very good work, you can put information on how you did it, even photos to know. Regards

shooting
18th May, 2016, 08:55 AM
Just to let you all know that I managed to read the EEPROM microchip using a Raspberry pi. I don't feel up for exaplaining how I did it in great detail because I doubt I can remember anyway :chuncky: But just putting the message out there that it can be done and if anyone responds to this thread asking for information on how I managed it then I'll try to retrace my steps and write some instructions so others can do it too. It involved removing the EEPROM chip from the circuitboard and wiring it up to the GPIO pins on the raspberry pi. For this I bought a GPIO breadboard module for easy accessibility to GPIO interface, making the process a bit easier. I needed a soldering iron to solder some wires onto the EEPROM chip (only needed to wire up 4 of the pins). Although after reading lots and lots on the process of reading EEPROM chips on thr raspberry pi, trialing some of the software and finding it wouldnt compile without errors, I ended up trying something I didnt imagine would work, but was shocked that it did! It required no custom written code. Just a package to be installed that allows RaspPi to use the i2c interface. Then used a i2cdump command with some flags and it gave me pieces of the EEPROM data!

Once I got the data from the EEPROM, I used the NYO4 software to extract the code. I'm yet to get the chip soldered back onto the radio unit and to try out the code, but I tried other dumps with known codes in the NYO4 software and it output the correct code so I assume my extracted code is correct too \o/

376114

Can you post the software used to read the eeprom?

wbr