Ask Slashdot: Best EEPROM Programmer For a Hobbyists?
BigSes writes "I had been in the amusement repair industry (video gaming, pinball, jukeboxes, etc) for more than a decade, but have recently taken a new career path. I still greatly enjoy tinkering with all the electronics, and collect many arcade games and pinball machines for my home. I always had access to EEPROM / PROM / PIC / GAL programmers on the job, but never owned one personally. I'm finding it difficult to work within my chosen hobby without one, and ordering pre-programmed chips can be cost prohibitive for some projects. I would love it if some of you professionals or other hobbyists out there could recommend a great programmer that supports a large number of chip formats for me to use. I'd like it to be something USB, more modern than Serial or Parallel port (usually what we had in the old days) and preferably sub-$300, new or used. There are tons of Chinese import types on eBay, but I'd hate to spend $80+ if I am unsure of the quality."
Isn't this what that arduino crap is about?
Dude. At least edit the title.
Upward mobility is a slippery slope - the higher you climb the more you show your ass.
I have one requirement to add to BigSes's query: Are there programmers which connect to a Linux box, eliminating the requirement for a Windows PC?
Call them EEPROM Software Engineers ;)
I bought one several years ago (Top2048, don't think it's a current model now). Forget what it cost but probably in the region of 100 USD. Build quiality is good. Software isn't great or well translated, but at the end of the day it does what it's supposed to. In terms of writing eproms I've never had any problems with it. Ultimately writing an eprom isn't a particularly difficult concept so I see no reason a Chinese factory can't mass produce a cheap a programmer. Or put another way, why on earth do branded ones from the West cost so much money? Richard.
Very few people need EEPROM programmers these days. You, with your restoration projects, are one of few exceptions.
I very much doubt that there is a modern design that can reliably do what you need. The problem is not in building the thing but in testing it on chips that don't exist today outside of dusty old boards.
Your best bet is to buy an old programmer. I'd think many companies are junking this equipment left and right, so you should be able to find it in surplus stores, flea markets, on the Internet, etc. The key part is that it must be old today - and from the same century as the ICs that you are programming with it.
We use Dataman programmers at work, http://www.dataman.com/Products.aspx i would try and pic up and old parallel port one (new ones are usb) on ebay or second hand sites.
I've used a GQ-4X Willem Programmer with good success. The trick is to get a good set of adapters, so you have the flexibility to cover many packages. PSOP, TSOP, etc. I've even found one that lets me do a serial SOIP8 EEPROM while it is still on the board-- very handy to not need the remove&resolder.
Don't give up on the serial port. There are a large number of great USB to serial port adapters on the market and they're not too expensive either. Even if you really wanted to give up on the serial port the more modern cheaper usb chip programmers are just the old serial programmers with a FTDI chip to convert serial to usb. Even the super popular arduino uses the mentioned method. All that being said take a look at sparkfun.
With regret I must say to give up on the parallel port. The older true parallel ports with ECP/EPP were amazing for hobbyist hackers. Throw in a few buffers and bit bang anything you could ever need out of it. Stay away from those "usb to parallel port" adapters as they are not the gloried parallel port from the olden days and are just ports meant for older printers.
[FUCK BETA 2.6.2014]
In order to address the kind of ROM programmer you need, it's helpful to know what you're looking for. Are you looking for a universal programmer, or are you willing to buy a ROM programmer that might only cover a certain class of PROMs? If you can peg down your requirements, that could potentially open a lot of opportunities up to you that you might not normally consider. It might even be possible to leverage the work of other hobbyists and roll your own, perhaps something like this. You might also be able to get a good deal on such a device through surplus.
I have a Xeltek Superpro universal programmer that I bought a few years ago for about $500. (I know, not quite within your $300 upper bound) It was an alright investment, I guess, but I haven't really used it much. At the time I bought it, it appeared that there were only Windows drivers for it, and I didn't really have the time to write my own drivers for it at that point. The few times I did use it, however, it was a decent device. If you could find something like that within your price range, it might be worth your consideration.
A UV toothbrush sterilizer will work for erasing.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
Might take a look at the True-USB GQ-4X for around $100. I purchased the GQ-2X model some time ago and have been pretty pleased. I use it to program 28F/29F series flash chips as well as 8-bit Atmel AVR chips. According to the the GQ-4X page, it supports Altera and Xilinx CPLD programming as well as a ton of other devices. For PIC programming I bought a Pickit3 (~$45) due to the relatively low price and debugging support.
Spark Fun has some that are reasonably priced
http://www.sparkfun.com/categories/1
Just wanted to say - Amusement repair industry. That sounds like a fun job!
The arduino language is very similar to C & Java, making it very easy for people who are familiar with those languages.
& the other thing is that arduino boards are super cheap & easy to start with.
I've been using Elnec programmers the past few years. Works great, software isn't bad either. You can often find them on eBay for less than $100. They also have a few programmers specifically for EEPROMs that are a lot cheaper.
If you want to get back into Microchip PIC programming, the PicKit 3 is USB and supports programming and in-circuit debugging of a large range of their chips. If can be bought for around $50. Many of their PIC's are low-cost and come in hobbyist friendly DIP packages.
EEPROM stands for Electrically Erasable Programmable ROM, therefore there is no need for an UV eraser.
Ask the MAME/MESS people.
Seriously.
If you're talking about UV, you're talking about EPROM, not EEPROM. Big difference.
Either way, PROM programmers are prevalent and you can build them yourself especially if your PROM (like some PIC and most modern all-in-one boards) comes with a serial port. Some resistors and capacitors, sometimes a single chip will get you a serial-port PIC programmer. For USB-serial I like the KeySpan USA19HS since they have Windows, Mac and Linux support and are not too picky about the signals.
It really depends on what type of boards you want to program. These days, an Arduino or similar system will do a LOT of things with 1 system that you used to have a range of different micro controllers for (I used to have a few PIC's, 8051, ARM boards, AVR). Unless you're embedding in a specific cost you don't need to do that anymore.
Custom electronics and digital signage for your business: www.evcircuits.com
As another poster mentioned, these are hard to beat. Lots and lots of adapters available, decent software, USB, fast, process just about anything. Mine ran me about $125.
A serial programmer is easy to solder up, plans are just a google away, code is straightforward C, the Linux gcc toolchain is easy to get up and running and there is a ton of help available out on AVR Freaks.
While many think of serial as a throwback to the older ages, many of these programmers are still serial but simply feature an onboard ft232 or similar USB->USART interface. They act no differently then buying a cheap USB->Serial dongle and then working with a serial device.
There are a few native USB options but you'll find these at a higher expense.
As for Chinese quality, you can pretty much guarantee that regardless if you buy a $10 programmer or a $200 programmer it's going to be made in China. My experience with other programmers like those for AVR and PIC is the "Chinese inport types" can often be as good as the original manufacturer's programmer without the ludicrous markup. For the most part a programmer is nothing more than an interface that gets data from the computer, does a few simply electrical things to enable programming mode on a chip, and then spits out data in a format required. Total bill of materials is often sub $20.
Which reminds me, if you DIY inclined with electronics maybe build your own programmer? There's tons of schematics on the net for this and it will be as cheap as the Chinese import option except that you know exactly what you're getting. Failing that SparkFun is a company that caters quite well for hobby engineers and I'd be surprised if you can't find what you need there.
There are various groups that think all hardware tinkerers are pirates. When you buy something like this its good to pay for it with cash so you don't end up being sued later.
For example see the problems people got into buying similar equipment in the past: http://www.directvdefense.org/newsarch.shtml
For pic programming, I was very pleased with this USB kit. http://www.electronickits.com/kit/complete/prog/ck1708.htm It looks like they sell similar assembled units now. http://www.electronickits.com/kit/complete/prog/ck1710.htm
I still have one, they are obsolete today! or so this says but it is a very reliable programmer, if you can get one, it's definitely going to be used and so it should be cheap maybe 50 bucks or so.
You can't handle the truth.
If you're willing to build it yourself, and your computer has a parallel port, there are schematics available for a programmer called EzoFlash. The website has a list of flash modules that are known to work with it.
I have their "Batupo" model that I use for EPROMS in my work and have found it very easy to use and it works well. The only gripe I've got is that their software is Windows only and uses .NET, but other than that they're solid. See http://www.batronix.com/shop/programmer/eprom-programmer.html
"Do the Right Thing. It will gratify some people and astound the rest." - Mark Twain
I purchased a GQ-4x USB EEPROM programmer a few years ago and it has worked very well. It's basically a Willem programmer, supports a lot of different programmable devices from old 80s EEPROMs to the newer pics. I primarily use it for programming custom 2732s, 2764s and 27128s for vintage PC stuff (Apple IIs, Kaypros, etc.). The software is decent and has a large database, although make sure you set the speed to the slowest possible setting and plug in an AC wall adapter (not included) if you want a good burn. It works with USB and all Windows versions. Sadly, no OSX and don't try to run it through VMWare or Parallels.
I also recommend you get a UV eraser while you're at it.
I have used these open-source hardware boards for quite some time in a university setting.
littlebirdelectronics.com/collections/arduino
They are USB and programmed with the wiring and/or processing software (open-source, multi-platform).
wiring.org.co/download processing.org
They are cheap, robust and easy to program.
I've got some old hardware with UV erasable EPROMS, and a cheap programer, but the erasers seem to be absurdly expensive or cheap in the worst sense. Any pointers?
I use this one at work: http://www.kanda.com/products/Wellon/VP-290.html. I've never had a problem with it. The nice thing is that it runs off USB power. Good luck.
Forget the EEPROM. The concept of programming a ROM seperately from a chip is so 1970's.
Get a programmer that programs chips with on-chip flash.
I'm biased in favor of Atmel's AVR architecture. http://www.avrbeginners.net/ http://www.avrfreaks.net./
You need to decide: will you go with dated (but doable) through-hole technology, or will you go surface mount (SMT) which is more modern, but more difficult to solder. That will impact what kind of programmer you need. Atmel AVRs can be programmed in-curcuit with a cheap dongle.
I don't always design in-circuit programming, debugging, and emulation into my circuits, so I keep a few of Atmel's AVR boards around. The STK500 is awesome: http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2735
$82.16 at Digikey: http://search.digikey.com/us/en/cat/programmers-development-systems/general-embedded-dev-boards-and-kits-mcu-dsp-fpga-cpld/2621773?k=stk500
You can get samples of the AVR Microcontrollers from Atmel's distributors, or they are available at many resellers, including DigiKey. Search for "atmega" and limt yourself to DIP packages.
> you're talking about UV, you're talking about EPROM
Yes. So is the OP.
> your PROM (like some PIC and most modern all-in-one boards)
Those don't use PROMs. PROMs (Programmable Read Only Memory) were one-time-programmable via fusible links and are even more obsolete the EPROMs (Erasable Progammable Read Onl;y Memories). I used both in their heyday.
> It really depends on what type of boards you want to program.
He wants to burn new EPROMs for old games.
He could also build an EPROM emulator.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
> Yes. So is the OP.
I'm wrong: he wrote EEPROM. However, he also mentions PROMs, so it isn't entirely clear what he means.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
Yes. So is the OP.
Did you bother to read the title?
Ask Slashdot: Best EEPROM Programmer For a Hobbyists?
They are still around and not going anywhere: there are native pci express controller chips, with all modes supported.
Also many motherboards still come with bona fide serial and parallel ports via 8/25 pin sockets, all you need is the ribbon cable and backplate. Oddly enough you tend to find them on the cheaper models more than the whizbang tweaker boards.
If it ain't broke...
I see no reason someone couldn't invent a near-universal PROM programmer (and reader) using a suitable microcontroler. Give it a USB port so you can talk to it and send data to it and a large socket or header with lots of pins. Wire the pins in the header/socket up to cover all the possible pins the roms you want to read/write are using have (e.g. address lines, control lines, data lines, different power voltages etc) and then for each ROM type you want to read, build an adapter with the right chip socket and some wires to connect the chip socket pins to the right pins on the header/socket.
The only linux compatible universal device flasher I know is the galep, we have one at work and its the best I have used. I am still saving money to buy one for my home workshop. At home I have a top2049 which I have been using open source s/w called toprammer on Linux, however the device support is limited I wish I had the knowledge to support this open source project to add more devices.
I had similar needs, and got one of those Chinese import USB-based programmers. I don't know if it does GALs, but it does EEPROMs just fine.
It's a GQ-4X from MCUmall. Actually, I think I got it from MCUmall's eBay store because of some discount or cashback or something, but I digress.
Friend: "The NIC is misconfigured..." Me: "No prob, I'll just telnet in and fix it." *Silence*
Also check out the products from pemicro.com, they have all sorts of EEPROM programmers at various price points, from hobbiests to pro.
I use this programmer for all my EEPROM programming. It supports something like 625 devices (including PICs).
Does no one check basic grammar? At least it wasn't hobbiests. I'd have to kill someone.
Check out the picaxe line of microcontrollers. Super easy to learn and cheap.
This looks like what you're looking for: TOP853 Universal Programmer
Supports EPROMs, EEPROMs, some MCUs, PLDs and will even test SRAM for you.
404: sig not found.
Any decent options to run under OS X on the Mac? I realize this is a matter of the software, unless using a non-USB burner, so anything viable? I would rather not have a Windows virtual drive, but run it natively. Ray~
For $18 you get a Arduino nano with USB port.
Fits my needs perfectly, lots of community support. But i would not imagine using this in a commercial product.
To all you purist out there: I have a life (two kids actually) so it's the quick and dirty solution for me.
Being one of the guys on the back of MAME dumping project (that bunch of nerds with irresistible desire to take apart every arcade, pinball, fruit-machine, etc.etc hardware they come accross, and document it as extensively as possible for future reference), I'm using an ELNEC programmer (www.elnec.com).
They are not cheap, but are absolutely top of the breed; support software is updated regularly, and if you need to work on a strange chip you can always talk to their tech people for support.
If you want to stay cheap, then I would suggest to use a Willem.
Can you believe it has been a year since this was announced on /. NASA Head Ignores Congress, Eyes Cooperation With China
A year has passed! Oh, how fast the time flies by.
What I said then applies today even more, it's just it's more obvious to even more people.
You can't handle the truth.
Oh dear, this is really ancient. UV EPROMs went out of vogue years ago. In any case, the submitter is talking about EEPROMS and Flash, and not something that's not programmable in-system, as they are, but as EPROMs ain't. And it beats me why anyone would prefer a PROM, when a flash could do the same job. If it's the write protect that one is concerned about, most flash products have certain areas of their memory as lockable - either by grounding a Write Protect pin, or sending certain commands to the flash and setting certain CAMs within it.
First of all, let's get the terms straight. EEPROMS and Flash are different only in terms of density - EEPROMS are byte writable (erase automatic before programming) and are available in densities of 1M bit (note bit, not byte) or less. With Flash, otoh, one cannot write (i.e. do combined erase/program in a single operation) to it - one has to erase a block (a block is the minimum number of bytes/words that can be erased by a single erase operation) and then program different words in the block. Depending on the flash architecture, it may be just byte programable, or it may be programmable in in sizes of a page (which is different from block in that it is the maximum number of bytes that can be programmed in a single operation). Typically, if the flash memory is 1G bit or larger, you have page programming, instead of byte programming, for obvious reasons.
So I'd think that programmers from DataIO would be good, they were pretty good about supporting a wide variety of products when I used to work in the flash memory industry.
I've been very happy with the Transtronics pocket programmer 2 for many years.
Its a parallel port device they no longer make as the current PP3 is USB based.
http://secure.transtronics.com/osc/product_info.php/cPath/55/products_id/621
If he meant PROM, as in OTPs (One Time Programmables), I wonder who still makes them? Ten years ago, there was another compatible product called MTP, which was identical to PROMs in terms of reads, but for writes, one had to put it on a programmer and apply 12V to Vpp, and apply the correct assertion levels to write (12V on A9 was also needed for Erase). Unlike OTP, one could program this up to 1000 times, but unlike flash, it could not be programmed on board - it had to be taken out and put on a programmer (so it helped if the design it was in had a socket, and it helped if the package was a PLCC or a DIP. But the good thing - no UV was needed, and Erase and Program were a matter of seconds.
If he wants to store games on these, however, I don't think that there are any PROMs w/ the density he is looking for - the maximum density I've ever known an OTP to have is 4M bits)
The Wellon VP280/VP380. It is around teh price you mention, is nicely built and supports all I've thrown at it. Same uses as you describe so far.
I got one of these a few months ago from eBay for about $50. Has supported every ancient & modern chip I've thrown at it so far (even parts not on the device list by using clever substitutions) except for the 27C1024 (16-bit wide 128K EPROM), it even came with two PLCC adapters for free!. The only time it failed it was caused by a flaky USB cable. Software isn't very well translated but it does the job. If you like Engrish, read the manual for a good laugh.
Pros:
* Great device compatibility (it even takes those crazy ancient 21V parts)
* Software works on Windows 7 x64
* True USB (power + data)
* Good build quality for a Chinese product
* Cheap. If you're on a budget and don't want to mess with parallel port programmers, this is the way to go.
Cons:
* Software is proprietary and Windows only
* Software is a bit quirky and full of Engrish (eventually you'll get used to it)
* Seems to top up at 1MB for EPROM and 512KB for Flash even though it has more than enough pins
You might also want to take a look at the G840, the successor of the G540. I also second the suggestion of getting a UV eraser. I've made one myself with the internals of a small air purifier and a project box, but you can get cheap ones on eBay that will do the job.
One thing you may consider as well as your EPROM programmer is making a NOR flash adapter for the old boards you're using, so you can use a cheaper, much easier to program NOR flash chip (NOR flash is byte addressable, just like old EPROMs. Indeed, the pinning on many of the standard parts is very similar to older EPROMs) when you're tinkering with stuff.
The advantage of flash is that erasing is a much easier operation, and programming is all 5 volt (so is the erasing). Therefore if you're tinkering with some hardware, you can very quickly reprogram a flash IC to try again if there's something wrong with what you wrote, rather than going through all the bother of using a UV eraser. It's quite easy to roll your own flash programmer, too, since erasing/programming is done by sending codes to the chip which are listed in the datasheet.
(If it were me I'd still get the EPROM programmer too, I would use flash for tinkering, and when the tinkering is over use an EPROM of the correct period for the hardware in question so the hardware looks as right as possible).
Oolite: Elite-like game. For Mac, Linux and Windows
A used BP or Needham's programmer (make sure the Needham's has the personality modules!) is a good bet. For the price of a crappy Willem, you can have a professional programmer. Just be patient and watch for a good deal.
Also (because most of these are parallel port programmers), make sure that your PC has a genuine ISA-bus LPT port. Most of these will simply not work with PCI printer ports.
--
"Open source is good." - Steve Jobs
"Open source is evil." - Microsoft
If you cant build a programmer, you picked the wrong hobby.
---- Booth was a patriot ----
Go to dealdatabase.com and seach for comments by omikron.
An additional parameter for your search could be "prom day".
I see even classic Slashdot is now pretty much unusable on dial up anymore.
They are not cheap and whomever you buy it from will burn you on the software next year. If you only have a handful of chips, most newish thing are serial and have a cheap programmer consisting of a micro and usb converter. SPI, I2C would be best done with a cheap newish design. As for the multi-pin package programmers, it's going to cost, if you value you're sanity at all. I've owned the Willem set and now a Wellon and can't go without having the chip test feature. Willem programmers are simply flaky as they don't do any test until after programing the entire chip.
Can't stress this enough, find a programmer that does test the chip on insertion.
I think I just cashed out all my cool points.
If you want to go the fpga route terasic has a nice little educational kit. DE0-Nano Development and Education Board. I was thinking about playing around with micro controllers but picked up the fpga instead.
link
http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&No=593
Prom is the root term for any programable read only memory device. It usually means TTL or TTL compatible family (cmos, etc). These devices may require HV programming voltages (where HV simply means voltage above the normal power supply level used for reading, probably something between 9-30 volts). EPROMS are erasable devices, and with the single "E" we usually mean by UV light (the devices have a quartz window) though there ARE NON-ERASABLE EPROMS (something of an oxymoron perhaps but the name defines the technology used to program the thing). EEPROMS are electrically erasable much like normal rams, except that they retain their data when power is removed. Most EPROMS and EEPROMS are N,P,or C MOS based. Most EPROMS and some EEPROMS require HV power supplies to program, newer EPROMS and most Flash memories make do with just the 5v (or 3.3v) supply. While there ARE serial devices out there, we are talking about PARALLEL interfaced parts here since the serial type can be programmed in circuit by the processor they (must be) connected to.
There have been many project circuits published over the years for building EPROM programmers, including at least two in Byte by Steve Ciarcia. His design used an LM317/117 adjustable voltage regulator with a negative bias supply to regulate and switch the programming voltage. It should be possible to adapt his design to work as a shield on an Arduino Mega, the only issue being a limit of about 6k of code could be downloaded at a time due to the available sram on the ATmega2560 processor (I don't think the Arduino Mega can be set up to use the external memory mode of the AVR).
I was thinking of re-designing the Circuit Cellar serial programmer MKII around an ATmega128 to make use of the external memory mode of the processor. I could then provide enough buffer space to program many of the larger sized EPROMS (I have a collection of 28 and 32 pin 8 bit devices as well as 40 pin 16 bit wide devices). Maybe some day I might like to build something with them along with old Z80H and 80186 cpus also in the junk box. In any case it should be easy to design a programmer this way and the firmware for the ATmega128 can be built with Winavr and written in C. You could also adopt the Arduino IDE to prototype the design (but would have to extend it to support external sram).
However, cheap trolling is up, up, UP!