I’ve been using this cheap $4 AVR programmer to upload Arduino code to bare AVR chips. The only issue is that it uses the 10-pin programmer interface, which takes up a lot of PCB real estate on my projects. Instead, I wanted to use the more efficient 6-pin connector standard.
I looked on eBay for a cheap 6-pin programmer, but they don’t appear to exist. All I find are the same programmer I have, but with an awful, gigantic, ugly adapter that’s designed to go on the project side:
Fig.1: Lame adapter for losers.
So you run a giant fatty 10-pin ribbon cable and have this thing jutting out of your project. That suuuuucks.
Instead, I developed a tiny (half inch square) PCB designed to accept the programmer on one side and a 6-pin ribbon cable on the other. Because it’s so small, it’s crazy cheap to fab with OSH Park ($1.60 for three), and the headers cost virtually nothing. Now I can snap it into my programmer and use 6-pin cables, or pop it out and use 10.
I over-engineered mine, hot-gluing the exposed conductors and rounding the corners, but really, none of that’s necessary.
You can get the Eagle design files on GitHub, or order one from OSH park.