Recentely I had to read the contents of some I2C serial EEPROMS (24C32) and eventually modify them.
I was going to make my own programmer with a PIC MCU and use something like Hyperterminal to upload and download EEPROM contents, but I did an internet search to see if there is something that fits my needs and I found PonyProg at:http://www.lancos.com/prog.html
Unfortunately I don't have a RS232 COM port on my PC at work (it is a Lenovo 3000 laptop with WinXP SP3), but just an USB to serial converter from Manhattan mod. 205146 (http://www.manhattan-products.com/usb-to-serial-converter
) and it's clearly stated that:
"If you use added COM ports (PCI or PCMCIA cards) you must use "SI-Prog API". Note that USB2RS232 adapters often don't work or are very slow." (see PonyProg documentation, interface setup, SI-Prog interface at http://www.lancos.com/e2p/ponyprog2000.html#s2.6.1
It's a pity, since for my purpouse the harware could be extremely simple: two connectors, two zener diodes, two resistors. That's all!
So, I decided to download the software and make this very simple interface, just to see what happens.
At the first try I got errors in the I2C communication, as expected, but looking deeper at the documentation I found that the speed is selectable simply by changing a parameter in the ponyprog.ini file, located in the installation directory (see PonyProg documentation, Calibration at http://www.lancos.com/e2p/ponyprog2000.html#s2.6.1
) and I tried to change I2C speed from NORMAL to SLOW, then to VERISLOW and finally to ULTRASLOW.
At this point I've been able to read and write my 24C32 EEPROMs and perform my tests.
It's not the top of the speed ( 6 mins and 30" to read 4096 bytes, and almost 15 mins to write them...), but better than nothing!
I tried v2.07c, the last version in download page (http://www.lancos.com/ppwin95.html
), then I found a topic in the forum where a new version v2.08c was released (http://ponyprog.sourceforge.net/phorum/read.php?2,2272
) and I tried v2.08c with same results.
I tried also v208c_RG100a: PonyProg 2.08c mod by RG (v1.0) that is the same, but with added support for ATmega328P (you can download at http://sonix.szm.com/
), but this seems more critical for my purpose, so I reverted to v2.08c.
Here the page with SI-Prog schematics:http://www.lancos.com/siprogsch.html
Finally, in the included picture you'll find the hardware I used as interface (I decided to supply external power to the EEPROM, mainly because I don't have an LM2936Z-5 in the junk box...).
I know that this is an old project (last update in 2008 or so), but it seems to me a very simple and clever tool that may be very useful, provided you have a real RS232 COM port.