EPROM programmer Interface, USB Mass storage

by Hans Schou, May 2002

I have used a lot of different EPROM programmers during the past 15 years. One thing they all had in common was a user unfriendly interface. Besides that, all interface for these programmers was different so I had to learn a new each time. Now, with all that new technologi we have today it should be possible to solve it.

Here is how I want it:

The new interface for a programmer

What you see above is just a file manager. The different EPROMs shown as a file hierarchy. It is here simulated that the hardware interface to programmer is an USB interface and that the USB device act as mass storage device. In reality the device will not be a mass storage device it just look that way when connected to computer.

A way to implement the above solution could be by simulating a FAT or a VFAT filesystem. When the user tries to overwrite a file, the chip inserted to socket is programmed. A status file in the root directory will show the progress and errors if any.

One motivation for having an interface like this that I am using Linux. All the programmers I can by today uses some software which will not run on my system. Furthermore it is required that the user should install some software to use the programmer. With this user interface I could just use my standard USB software and GUI or command line tools. Automation is easy as I know my tools. Firewire could be another interface to use.

So why do I not make my own programmer? Simple, it is rather complicated and I do not have the time for it. I once made a EEPROM programmer with serial RS-232 interface and the interface was just to copy a Intel Hex-file to it with 9600 baud. A 8051 microcontroller with 128 bytes RAM internal was then able to program the EEPROM on the fly.

If I could get some specs for an existing programmer I would have the ability to make an USB interface for it but manufactors keep these specs tight to them self.

By publishing the idea here I try to prevent somebody of taking a patent of the idea. A patent will become well for the end user because he would only be able to buy a device like this from one manufactor. And this idea is not a patent worthy. If all PROM programmers worked like this it would be much easier for end users to use them.

If the above solution is implemented in a 8051 my guess is that it could be done with very little code. Maybe 4KB. 128 bytes RAM internal would be fine, maybe 256 bytes.