Skip to content

thegaragelab/eeprog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EEPROM Programming Tool

This is a simple serial EEPROM programmer (SPI and I2C) that I developed to help with development of my TGL-6502 project. It is based around an ATtiny84 and uses the Arduino core for that chip.

For full documentation on the project including the communications protocol please see the project page on The Garage Lab website.

Supported EEPROMS

At the moment I only support EEPROMS that I have in my parts collection. The pin outs and command sets for most serial EEPROMS are very similar so adding support for other types would not be difficult.

Part Interface Total Size Page Size Address Size EEProg ID
24C65 I2C 64Kbit (8K x 8) 64 bytes 16 bit (TBD)
24LC1025 I2C 1Mbit (128K x 8) 128 bytes 16 bit + block (TBD)
25AA1024 SPI 1Mbit (128K x 8) 256 bytes 24 bit 0x7830
25LC1024 SPI 1Mbit (128K x 8) 256 bytes 24 bit 0x7830
25AA640 SPI 64Kbit (8K x 8) 32 bytes 16 bit 0x4620

Client Software

The repository contains a simple Windows GUI client that can be used to load raw binary files into an EEPROM and to extract the existing contents of an EEPROM to a file. This client is implemented in C# and provided as a Visual Studio solution - you can use the Community Edition to compile and modify it.

The programmer is controlled over a serial port (57600 8/N/1) using a very simple ASCII based protocol that support partial page writes and reading/writing arbitrary locations in the EEPROM so the client could be extended to add support for these features. I will probably start adding these features as I need them as well as writing a Linux command line version of the programmer. If you want to add the features please feel free to send me a patch or a pull request so I can add them to the repository.

About

A serial (I2C/SPI) EEPROM Programmer.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages