Dumb ATMega328 bootloader burning question

First of all, apologies for the dumb question - searching around shows that this is possible with a capacitor or something bridging reset to ground, but I didn't see the specifics anywhere (i.e. is there a specific rating of cap to use? Also, a lot of the results were people saying they couldn't get it to work anyways, so that wasn't very helpful.)

Long story short, I just recently got into hobbyist electronics through Arduino. I've picked up a spare ATMega328p so I can build a project permanently without losing my dev board, and I'm just wondering how I can burn the bootloader on there. I've got an Uno R3, which from what I've read has some sort of issue being used as an ISP due to the way the reset works. I also have a Leonardo, but I don't think it can be used because it doesn't operate on a serial port (or something like that, right? It's harder researching the Leonardo since it came out the most recently and everybody has Duemilanoves or Unos.)

It can't be as easy as just plopping the ATMega328P in the socket on the Uno and running some program, right? I have an ATMega driver circuit set up on a breadboard and it's working fine (tested with the Arduino's AVR) so if the reset problem has been solved and I missed it somehow I'm good to go on that front. If there's a solution that might work, please give me specifics so I don't kill a microcontroller by accident!

Thanks in advance.

First, do you have a USB2TTL/UART (FTDI, Silicon Labs, etc)? If you do, then it is easy as putting a 0.1uF ceramic between the DTR and the RESET pin 1 on the Atmega.

For super easy bootloading and a lot of good info, check Nicks stuff out. http://www.gammon.com.au/forum/?id=11637

Thanks for the link to Nick Gammons tutorial. I had two ATMEGA328-PU's that I could not get to take a bootloader until I walked through his awesome, complete, simple, thorough instructions. A simple change to his sketch, (I duplicated his signature for the ATMEGA328P-PU and changed the chip name and the last byte of the sig to 14 to match my chip) and all worked perfectly! I had been stumbling around the web for days trying different methods with no success, then TADA! Thanks again, Roddy

RoddyMac:
Thanks for the link to Nick Gammons tutorial.
I had two ATMEGA328-PU’s that I could not get to take a bootloader until I walked through his awesome, complete, simple, thorough instructions. A simple change to his sketch, (I duplicated his signature for the ATMEGA328P-PU and changed the chip name and the last byte of the sig to 14 to match my chip) and all worked perfectly! I had been stumbling around the web for days trying different methods with no success, then TADA!
Thanks again,
Roddy

Yeah, it is pretty slick. Not that it is a big issue, but it seems that chips bootloaded with Gammon’s sketch don’t talk to AVRDUDE after bootloading. I have that on my list.

Have fun!

spcomputing:

RoddyMac: Thanks for the link to Nick Gammons tutorial. I had two ATMEGA328-PU's that I could not get to take a bootloader until I walked through his awesome, complete, simple, thorough instructions. A simple change to his sketch, (I duplicated his signature for the ATMEGA328P-PU and changed the chip name and the last byte of the sig to 14 to match my chip) and all worked perfectly! I had been stumbling around the web for days trying different methods with no success, then TADA! Thanks again, Roddy

Yeah, it is pretty slick. Not that it is a big issue, but it seems that chips bootloaded with Gammon's sketch don't talk to AVRDUDE after bootloading. I have that on my list.

Have fun!

That doesn't sound very logical. The Arduino IDE uses AVRDUDE to perform uploads so if the bootloader won't talk to AVRDUDE after installing in the chip then it would not be a functional bootloader at all, which would indeed be a big issue?

Nick's programmer does not use AVRDUDE. It is run from a serial monitor or terminal program talking to the sketched Arduino. All the fuse and lock bytes are in the sketch as well as the hex ;)

--edit--

What I mean is that after bootloading via Nick programmer, Arduino as ISP and low level AVRDUDE cli for setting fuses don't work. I think it has to do with an AVRDUDE bug and setting the lockbits. Uploading sketches work fine.