Programming is made possible by a dedicated hardware (made of a PCB, a few very common SMD components and an Arduino Micro), and a Qt software that can be compiled for Windows, Linux and MacOS.
Compatible Eprom List (not all chips were tested):
- 27C16 (2KB)
- 27C32 (4KB)
- 27C64 (8KB)
- 27C128 (16KB)
- 27C256 (32KB)
- 27C512 (64KB)
- 27C1001 (128KB)
- 27C2001 (256KB)
- 27C4001 (512KB)
- 27C801 (1MB)
Selected chip needs to be inserted in the ZIF socket at the lowest position possible (bottom aligned).
Before writing, activate the Voltage functionality, then adjust the potentiometer and compare the measured value with the one specified in the datasheet of the selected eprom.
Based on the project https://github.com/walhi/arduino_eprom27_programmer, which was based on https://github.com/bouletmarc/BMBurner
PCB is now generated with Kicad
Gerber files generated by Kicad are located here
Software for Windows/Mac/Linux is written with Qt5.
Functions:
- Read chip to memory buffer and check if chip is blank
- Save memory buffer to file
- Read memory buffer from file
- Program chip with memory buffer
- Read chip and compare to memory buffer
- Programming voltage control
- Switched to Arduino Micro model because the Nano version used in the previous version doesn't have enough inputs/outputs to handle all the programming modes.
- Pull-down resistors added to the lines where signal/power is sent through diodes.
- Programming voltage is now only generated from the +5V provided by the Arduino.
- A connector is available to connect to an external power-supply if the USB is not able to provide enough current (should not be necessary if connected to a USB-3 socket).
- Added a reset routine because Micro is not reset when the COM port is opened, contrary to Nano.
- Added a decent synchronisation between Qt application and Arduino when programming the Eprom.
- Added a delay before reading/writting to allow voltages to stabilize.
- Added support for 27C1001, 27C2001, 27C4001 and 27C801.
- Increased communication speed with Qt application to 115200 bauds.
- Detached the buffer display in an independant window.
- Allow main window resizing.
- Fixed the progress bar display on MacOS.
- Added support for 27C1001, 27C2001, 27C4001 and 27C801.
- Added a decent synchronisation between Qt application and Arduino when programming the Eprom.
- Increased communication speed with Arduino to 115200 bauds.