Image Map Image Map
Results 1 to 4 of 4

Thread: Simple Arduino-based EPROM programmer

  1. #1

    Default Simple Arduino-based EPROM programmer

    As an alternative to Willem programmers and the budget USB designs, I've put together a EPROM programmer that can be built on a breadboard using an Arduino and a few additional parts that you probably already have in your parts bin. It isn't meant for production use, but can be a handy way to go for one-off device programming for projects. It was originally created for a 28C256 EEPROM, but the design has since been adapted to also do Intel 8755A EPROMs. The software is modular and can be extended to other chip families as well. I've used it to read 2764, 27C040, and 27C2001 chips.

    No programmer-specific client code is needed. Instead, it uses the Arduino USB to talk to a terminal program like TeraTerm or minicom to send ROM images using XMODEM. The interface resembles a ROM monitor, with display, checksum, and other commands.

    The hardware and software can be found here:

    I hope to extend the built-in code to support writing of 27 series EPROMs next.

  2. #2


    Have recently updated the code to deal with timing issues related to the 28C256 Software Data Protection (SDP) algorithm. A bit of Internet searching shows that other people have had problems with these chips and I suspect that many of these are related to timing differences between chip manufacturers. The project has improved code and new documentation that highlights the issues with these chips.

  3. #3
    Join Date
    Mar 2017
    New Jersey, USA


    Somewhat related, here's a youtube video of someone doing something similar, minus the ROM image transfer over USB:

    The result is less useful, but the step-by-step instructions look helpful for someone new to Arduinos. I certainly found it educational.

  4. #4
    Join Date
    May 2018
    Melbourne, Australia


    Coincidently I have recently put together a simple single-sided EPROM reader shield for Arduino.

    To keep things conceptually simple I used a CD4040 12bit counter to generate the address signals.

    I altered the Arduino MEGA sketch linked below to simply clock the counter.
    The sketch spits out the EPROM dump as ASCII, then with sed and xxd you can convert the ASCII dump into a binary file.

    sed -E 's/[^0-9a-fA-F]*//g' exmon11-1a.txt | xxd -r -ps > exmon11-1a.bin
    Link to article that inspired this which also contains a link to the github code of the original author

    Your use of xmodem is nifty. I'm sure it would take much to adapt my hardware to be able to program certain EPROM's with your code.


Tags for this Thread


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts