DIY programmer

I’m sure everyone’s thought of this, but I’m looking into making my own programmer. I have one already, I just want an easier to use one.

The question I have is where can I find info about the programming interface/protocol? That is, how do I make my device “STK500 compatible”? I could look at ArduinoISP’s code to try and figure it out, but I was wondering where that originated from. Any thoughts?

Buy a Dragon. You get debugging as well as programming, and it’ll work a lot better than making your own.

My basic concern is that I want to have USB programming without need for a driver of any sort, not even programming software. I am somewhat stealing the idea, but I’m trying to make it for less than $85, as it’s listed on Sparkfun. Basically, USB Mass Storage programming. Drag the hex file to the drive, configure a file, and push a button. No problem.

ATmega datasheets should have this info. At least, the datasheet for the ATmega328p has that info. Look for the section titled something like “Serial Programming.”

Geek 2.0:
I’m sure everyone’s thought of this, but I’m looking into making my own programmer. … Any thoughts?

I’ll add my recommendation to not DIY; use an Atmel ISP. Often, way too much time is lost, and frustrations compound, with DIYs or crummy knock-offs.

The J:
ATmega datasheets should have this info. At least, the datasheet for the ATmega328p has that info. Look for the section titled something like “Serial Programming.”

I would like to add that since you want USB mass storage, you can use this example for mass storage http://elasticsheep.com/2010/04/teensy2 … n-sd-card/

Then just add in a fat16 library and SPI

put these together and you can make a USB mass storage based AVR programmer

good luck


edit, on 2nd thought, you won’t be able to use that example to accomplish drag-n-drop-to-program easily, not saying it’s impossible, but it will be super hard.

USBasp is awesome, so is USBtinyISP, probably the two cheapest DIY options to build. I don’t like the serial port based protocols such as STK500 or AVR109 since the COM port number gets reassigned every time I change the USB ports.

I did some work trying clone the USBasp and USBtinyISP before, the best way to reverse engineer the protocol is to just read the source code, which is available. So your best bet is probably to read the ArduinoISP source code if you want STK500 compatibility.

Geek 2.0:
I’m trying to make it for less than $85, as it’s listed on Sparkfun. Basically, USB Mass Storage programming. Drag the hex file to the drive, configure a file, and push a button. No problem.

Hi,

I have built something like that but targeting Cygnal/Silabs micros. 90% of the effort is the same.

Let’s talk.

E