Homemade Atmega328P-AU programmer

I read where someone put the bootloader on their SMD Atmega328P by just manually pressing/holding it on pads while the bootloader loaded. I made this little board to do this, but before I add it to my next BatchPCB order, I had 2 questions.

I designed it where I could just plug it into pins 8 thru 13 on my UNO. Will pins 8 and 9 supply enough current to do this task? 8 will be the ground, 9 will be +5 volts.

Also, if the connection fails during the bootloading process, does that 'brick' the chip?

thanks,

ps. All the components (caps, crystal, and a test LED-to verify success via the blink sketch) will be soldered to the board. Only the Atmega328P-AU will be left blank, to manually hold the chip on and bootload it.

I would add a decoupling cap to VCC. Why the LED is connected to the PD3?

I find that so risky.

Not only the risk of any discharge from your body can ruin the chip, but any minimal vibration from your hand can ruin the process.

I understand that a QFP32 socket is very expensive (shouldn`t be), but are you really willing to that that risk?

Were I in your shoes I would...

• Get rid of the capacitor on AREF. When burning a bootloader it serves no useful purpose.

• Follow pito's advice. Get some decoupling capacitors on those power lines.

• Drop the crystal + capacitors. I would use a clock signal from the programmer (are you using ArduinoISP?) instead. Less soldering. Fewer things that can go wrong. Easier to fix if something is wrong.

• Have holes drilled around the target's corners so I could potentially put in "pillars" to keep the target aligned.

• Include a sketch with the bootloader that blinks the LED on PD3 as confirmation that bootloading worked.

Will pins 8 and 9 supply enough current to do this task? 8 will be the ground, 9 will be +5 volts.

There have been various problems reported on the forum when VCC / GND pins were left unconnected. I suggest making a valiant effort to get them all powered.

Thanks for the feedback. I'll update my design a little and try it out.

SouthernAtHeart:
I designed it where I could just plug it into pins 8 thru 13 on my UNO. Will pins 8 and 9 supply enough current to do this task? 8 will be the ground, 9 will be +5 volts.

I think he means he wants to power the jig via the Uno (ArduinoISP) pins 8 and 9. Probably not recommended.

hiduino:
I think he means he wants to power the jig via the Uno (ArduinoISP) pins 8 and 9.

Ah, clever.

Probably not recommended.

Why not? I can't find anything in the datasheet to contradict that. The highest number I can find for current consumption is 9mA.

I guess that would make it very convenient since it’s small and compact to just plug the board into the Uno headers with just the 6-pins. Yes, that is clever.

An alternative:

I have not tried it, and it seems a litle expensive

Edited my layout a bit, and will see how it works. Yes the diode is for testing purposes, so I know it's flashed before soldering it on an important board. I first designed it to sit inside the perimeter of the UNO, but then changed it so it sets on pins 8 thru 13, on the outside, with the chip on the very outside of the little 1" square board. I have a tiny spring clamp, about like a clothes pin, I can clamp the chip on with that, visually inspect it for squareness, and flash away.
I'll let you know how it works in about a month.

Atmega328P-AU_Prgmr.brd (39.8 KB)

Atmega328P-AU_Prgmr.sch (107 KB)

Screen Shot 2013-04-14 at 10.18.54 PM.png

Are the six through-hole pads meant to be aligned?

Yes. If it works, ill post more photos.

Just so you know ... in the image you posted every other pad is aligned.

https://www.sparkfun.com/tutorials/114

Clever. I'll have to modify (after searching) the six-pin ISP header. Thanks.

Yeah, they have that one in there too. I've been using them, they work well for me.

Have you tried it with DIP sockets?

That I have not. Might not work as well, as the pins are usually not square or as rigid. But it might work well enough.

I saw that for the first time on Jeenodes.. DIY PCB's, staggered pins and I thought it for a special connector till I fitted a 6 pin female to the holes and it didn't fall out..

Doc

nice post.. (working through a similar dilemma myself)

this: Radio Control Planes, Drones, Cars, FPV, Quadcopters and more - Hobbyking

is sweet! (too bad its $20.00!! though) :frowning:

but would sure fix the problem with boards that use the ATmega328P-AU chips and FORGET TO PUT THE ICSP headers in there! :slight_smile:

your project sorta reminds me of this:

1 Inch Square of Goodness board-

http://thecustomgeek.com/2012/07/09/one-square-inch-of-goodness/
http://thecustomgeek.com/store/products/one-square-inch-of-goodness/

it comes as a 'kit' without the ATmega328P-AU chip soldered on.. so you can put blanks in there..
(similar to your solution)

the problem I was (am) having is that the crystal on this board is 16MHz.. and the end board I am trying to put the chip in is a 8MHz board... so the hobby king cable would fix that!

question:

I see the hobby king cable mention needing to beused with an AVR programmer..etc..etc..

would the Arduino/IDE suffice in this instance as well? or does one need a special DEDICATED programing hardware?

(I have only ever used the Arduino/IDE for flashing bootloaders)

thanks