Unable to write bootloader to Atmega328-AU


After many projects with Arduino I decided to build my own board with surface mount components, but I've run into a problem with loading the bootloader into the Atmega328-AU processor.

I've tried to use the Arduino Uno as a Arduino-ISP programmer and then chosen Arduino Duemilanove/Pro/Pro Mini etc as the target. I've wired the MISO, MOSI and SCK pins directly and also the RESET pin. Both cards has a common ground but separate +5V supplies.

My different tries has gotten me to various error messages. Everything from "Sync error" to "stk500_disable(): protocol error" and also at some point it said that I had the wrong signature. I also tried changing the signature in the /avr/etc folder but it just started to say Sync error and no change after that. I have now reverted to original files.

Any help is highly appreciated!

Best regards, Swoshie

I have some boards with 28pin surface mount 328s on them. I have had no problem uploading the bootloader as "Atmega 328 on breadboard (8Mhz internal clock)".

If you are not using the internal clock have you a suitable external clock on the device?


This processor is using a 16MHz reference crystal with 22pF capacitors to ground.

I don't see any options for "Arduino on breadboard" in the latest Arduino software (1.0.5). Is that some kind of custom made option?

I followed the instructions on this page http://arduino.cc/en/Tutorial/ArduinoToBreadboard

I presume I downloaded the file from it called “breadboard.zip”


Finally got it working!

The solution was to change the signature from 0x0F to 0x14 in avrdude.conf!