Atmega328P-AU smd, how to burn bootloader ?

Hi all, I have been trying to burn the bootloader on an ATmega328P-AU with a custom made pcb but with no success. I have made the following connections:

Arduino Uno slave Atmega328P-AU 1. +5V +5V 2. GND GND 3. pin 13 SCK 4. pin 12 MISO 5. pin 11 MOSI 6. pin 10 RESET 7. pin 7 LED-HEARTBEAT 8. pin 6 LED-ERROR 9. pin 5 LED-PROGRAMMING 0.1uF cap from VCC to GND 0.1uF cap from AVCC to GND 0.1uF cap from AREF to GND 16MHz Crystal from XTAL1 to XTAL2 18-22pf cap from XTAL1 to GND 18-22pf cap from XTAL2 to GND 10K resistor from VCC to RESET

Have I missed anything or wired something wrong ? Could you tell me how to burn the bootloader ? So far I have tried the Arduino ISP (from the examples) and Nick Gammon's bootloader and got the following errors.

Arduino ISP error : avrdude: Yikes! Invalid device signature. ** Double check connections and try again, or use -F to override** ** this check.**

Atmega_Board_Programmer error : avrdude: stk500_getsync(): not in sync: resp=0x00

Any help is greatly appreciated (please in simple English :) )! Thanks in advance, Alex

Post a clear picture - (not a Huge picture) - maybe we can spot something. The wiring description looks good. 0.1uF (100nF) caps are typically used on Vcc/Avcc/Aref, 1uF would not keep it from working.

Can you post custom schematic also?

Here is the schematic. The picture of the board was too blurry to make anything out. Also I made a mistake, its 0.1uF caps not 1uF… sorry.

I usually use Nick's ISP sketch.


Ok I figured it out ! The smd was not making a good connection with the pads so I pressed it hard and was able to burn the bootloader !!!

Something else though, now that I have it bootloaded , how do I programme it ? how can I upload sketches without FTDI ?

Use an FTDI Basic or equivalent, such as

Connect DTR thru a 0.1uF cap to the Reset pin. You don't have any current limit resistors going to your LEDs; the LEDs will burn out or the IO pins will.

I have resistors but the don't show on the schematic since they are soldered on the headers. So to program an atmega328p I either have to use an FTDI cable (only?) or an FTDI Basic Breakout ? No way with the Uno ?

Thanks for your help !

Using Uno: You can connect Reset to Gnd on the Uno, then connect Rx/Tx to Rx/Tx on your SMD board and go from there. Will need to manually press reset on the SMD board to start its bootloader.

I connected Reset (smd) to GND (Uno), RX to TX, TX to RX, +5V to +5V and GND to GND. I sorted reset and vcc (on smd) and the uploaded the blink on the Uno but nothing happens with the smd... Have I missed something ?

RX to TX, TX to RX - no. Rx to Rx, Tx to Tx. Basically replacing the Uno processor with your offboard processor.

In the IDE, select File:Preferences, turn on Verbose Outputs.

When the IDE shows "compiled xxx of 32xxx bytes", press reset on the SMD board.

When the IDE shows “compiled xxx of 32xxx bytes”, press reset on the SMD board.

press reset on the SMD board and release the button quickly

Well I did that (CrossRoads I think you mean "Binary sketch size: 1.222 bytes (of a 32.256 byte maximum") but I get an error...

avrdude: ser_send(): write error: sorry no info avail

It would be easier to just program it like you did burning bootloader. Just connect it back up using Arduino as ISP and instead of burn bootloader, use Upload Using Programmer to upload your sketch. You don't need to use the bootloader and FTDI.

I get an error again avrdude: stk500_getsync(): not in sync: resp=0x00

alex_poupakis: I get an error again avrdude: stk500_getsync(): not in sync: resp=0x00

ATmega328P-AU with a custom made pcb

From your wiring description, it is obvious you are using an external crystal... You may wish to try this old trick (for non-owners of oscilloscopes)

If you have a working Arduino, compare what you 'hear' on the working board to what you 'hear' on the clone. You should be able to determine if the uC oscillator is working. The area around the xtal (crystal and 2 load caps) is fairly critical and some additional stray capacitance, solder bridges, or poorly-etched board can really screw things up.


The Connections look fine. Even I have Successfully burn bootloader on atmega 328p-au by following this video.

Hope this helps.