STK200 Pocket Change Programmer

A common complaints of beginners to microcontroller programming is the availability of DIY tools that do not require a parallel port.  Using not much more than a couple of 74xx series chips and some protoboard, [Rue] was able to create an AVR programmer for less than the cost of some chips it can program – giving parallel programmers a run for thier money. [Rue] used Linux treat the ubiquitous PATA/IDE port as a parallel port. By having avrdude treat the programmer as an Atmel STK200, [Rue] was able to upload a blinky program to his AVR microcontroller through ISP. If anybody can think of an even lower cost unconventional solution give us a shout.

Munchausen Makes NES A Cartridge Programmer

What a beautiful image of NES cartridges showing their private parts. These are the raw materials for the Munchausen Flash Cartridge project. A combination of a modified game cartridge and special USB cable makes it possible to program NES cartridges while inside an unmodified console. The cartridge has an added flash chip that is running a bootloader. By connecting a USB-to-NES cable to the second controller port a game image (or custom code image) can be flashed to one of the three game slots on the writable cartridge. The bootloader provides a menu at power-up to select between the three stored images, or can go straight to the previously selected image by holding down A when the console is turned on. There’s even a recovery routine in case of problems. Check out the demo after the break.

One thing we find interesting from the forum thread is a mention that it is technically possible to run code on the NES directly from the PC. That would sure make it easy to perform live chiptunes on NES.

Continue reading “Munchausen Makes NES A Cartridge Programmer”

USBasp: AVR Programmer Based On ATmega8

We love our AVR Dragon programmer but it can be nice to have a cheap and simple in system programmer on hand too. The USBasp is one such programmer that uses and ATmega8 as its only IC. It requires just a handful of components and can be purchased as a kit, or etched and assembled at home. If you source your own parts the chip does need to be programmed which makes for a chicken-or-egg scenario. We’ve used the Parallel-port dongle (schematic) from Adafruit’s Spoke POV before. It’s basically just a DAPA cable and a few resistors, a ribbon cable (use and old IDE cable if you have to) and a parallel port connector can have you up and running in no time. This is also a great way to get a friend into working with embedded systems. Order parts for a few of these and give them away to your buddies.

Minimalist AVR Programmer Is Just Fab!

Whether you’re burning a new bootloader to an Arduino board, or doing away with a bootloader to flash Atmel chips directly, an in-system programmer (ISP) is an indispensable tool for working with AVR microcontrollers. If cost has held you back, it’s no longer an excuse: FabISP is a barebones USB-based AVR programmer that can be pieced together for about ten bucks.

FabISP was created by [David Mellis] as a product of MIT’s Fab Lab program, which provides schools with access to design and manufacturing tools based around a core set of fabrication capabilities, so labs around the world can share results. But the FabISP design is simple enough that you don’t need a whole fab lab. It’s a small, single-sided board with no drilling required; the parts are all surface-mounted, but not so fine-pitched as to require reflow soldering. Easy!

There’s still the bootstrap problem, of course: you need an AVR programmer to get the firmware onto the FabISP. This would be an excellent group project for a hackerspace, club or school: if one person can provide the initial programmer to flash several boards, each member could etch and assemble their own, have it programmed, then take these out into the world to help create more. We must repeat!

[Thanks Juan]

Arduino Programmer For Arduino

[youtube=http://www.youtube.com/watch?v=M-sFQNIXde8]

Wow, that title is flamebait… but give us a chance to explain. [George] wrote some code for the Arduino that allows it to program another Arduino. You may be thinking to yourself “this has already been done”. In a way it has, with the AVR ISP programming shield. But once the code has been uploaded to the Arduino, you don’t need a computer to program the next chip. This concept turns an Arduino into an in-the-field programmer. Right now his code only programs the ATmega328 and it’s a little buggy, but the concept is solid. A fully functioning independent programmer is easy to image; [George] has laid the ground work, the AVR ISP programming firmware has proven this can work with several different chips, and if your AVR has an ATmega328 there should be plenty of room to store the code you plan to flash to the target microprocessors. It’s up to you to put all the pieces together.

PIC Powered AVR Programmer

[Texane] wrote in to let us know he has implemented AVR ISP programming using a PIC microcontroller. He wrote some code for an 18F4550 that uses the STK500 standard for In System Programming. This means that his hardware is compatible with AVRdude, the open source AVR programming software. There has long been an argument over the virtues of PIC versus AVR but we say why not both? If you have already honed your programming chops with PIC, you can build your own programmer and give the Atmel family a try.

The current implementation uses a serial port to connect the programmer to a computer. Keep your eye on this one as [texane] plans to add USB connectivity and has told us he will post schematics for the device as soon as that is complete.

Five Dollar Eprom Programmer


A couple years ago I spent a good week wiring up a fairly complex EPROM programmer so I could burn a prom for my jeeps EFI system. Today I ran across this $5 version. build built by Jay Kominek He uses shift registers to handle the addressing and IO lines, all driven directly by the parallel port. There’s no way to escape the number of pins that have to be wired up, but the schematic itself is pretty simple.
[By the way, arcade supply shops are a great source for cheap UV erase EPROMS.]

[Update: I’d forgotten about the voltage change (3 vs 5 if I remember) needed to write UV EPROMS vs EEPROMS. With a little mod, you can certainly use this for EPROMS as well.]