Go Down

Topic: avrdude: stk500_getsync(): not in sync: resp=0x00 (Read 525013 times) previous topic - next topic


Thanx to those that posted previously. Im a newbie. I just set everything up for the first time and ran the example program "Blink".

Led flashed for 1/2 sec on about 3 secs off. Also got these error messages

avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

tried suggestions in the previous posts and found that I had the wrong com port selected.  
Sorted that out, shut down 0017 and restarted it, uploaded to the chip and it now works as it should.  Im using Windows XP, Haceduino Atmega168-20PU.


Oct 24, 2009, 01:17 am Last Edit: Oct 25, 2009, 12:36 am by thephen Reason: 1
I just had the same error pop-up too, and the OP's solution worked for me.

For the sake of Google helping another newbie:
I'm using a MacBook Pro MBP running Snow Leopard. I connected my ATMEGA 328 via USB.

I got the avrdude: stk500_getsync(): not in sync error while uploading a sketch to the Duemilanove.

The fix was to Quit the Arduino IDE; unplug everything from the Duemilanove (protoboard, usb, power, etc.); plug in the USB cable between the laptop and the Duemilanove; and re-upload the sketch.

I then unpowered the Duemilanove, re-patched my circuits/jumpers/what-not, and I'm running happily.

I need to go back to the troubleshooting and getting started material here and review the most optimal procedure for keep the Duemilanove safe while moving between sketched and hardware set-ups. Perhaps I got ahead of myself earlier, while I was experiencing the error.

I'm wondering it would have been sufficient to just shutdown the Ardunio IDE and re-plug the USB cable (at the laptop end) to give the USB machinery a chance to get straightened out. Hmmm. :-?

(Update: Corrected Duemilanove spelling)


I was having the same problem.  In my case it turned out to be communication was going to the wrong port.

In the Arduino environment, go to Tools, then Serial Port and made sure the correct COM port is selected. It should match the port that the computer has assigned to the board (which you can find by control panel > system > hardware > device manager>ports) - it is USB Serial Port


few days ago i was testing my programing skills with arduino, windows xp 32, arduino s3v3 with armega328 and arduino IDE 0017.

i got the avrdude error.......... this happened after making a lot of successfull uploads.........

i searched, googled. looked everywhere, tried everything.
nothing worked.....    then i made myself a parallel programer (without the resistors, i was in a hurry) changed my computer, (my new one does not have parallel port), and burned the bootloader to the chip.....
it worked very good, the same day ordered another s3v3 with an extra atmega328 chip........ and again burned the new chip with the bootloader........ cero problems.......

if you want, after making all the testing  you see on the forums, if nothing works, do as i did........ also recomended to have a spare burned chip, just in case........


Oct 25, 2009, 04:24 am Last Edit: Oct 25, 2009, 04:30 am by thephen Reason: 1

I have worked my version of this problem a bit further and I have uncovered what seems to be the root-cause of my problem.

My sketch & hardware set-up uses digital pins 0-5 to connect a Jimmie P Rodger's Open Heart LED kit. http://www.jimmieprodgers.com/openheart

Whenever I attempt to upload a sketch while the kit is connected to my Duemilanove, I get some transmission problems. I believe this is due to the digital pin 0 & 1 being re-purposed as TX and RX pins during the upload process.

The fix:
I adjusted things so that I am not using pin 0 & 1 any longer (I shifted things to use pins 2-7), and that was cured my communication problem.

I can now upload sketch adjustments over & over without any problems, unplugging, re-starts or otherwise.

The following thread mentions this problem. It mentions that use of the USB and soft serial facility precludes the use of pin 0 & 1: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1238095159


for people having problems with this, i found that i had accidentally put the chip in the wrong way round. This caused the above error and blew the chip. if you have a spare chip it might be worth trying it in the board.

i also noticed you get this error with no chip on the board at all


Howdy, I got this error and solved it by pressing the reset button just after the "binary sketch size..." message.


" Hey!! I had the same problem and I could fix it.  

I was testing a program with I2C and a 7 seg display, everything worked fine for a lot of times but sudenly the known problem "avrdude...." appeared when trying to upload an sketch. When I start up the arduino some blinks in the Comm. leds and then the Led in 13 began blinking very fast. After releasing the reset button the led-13 began blinking very fast inmediately. The last program loaded was not working.

Solution: Unplug the USB, press the Upload tool, just when the "Binary sketch size: xxx bytes (of ..." msg appears I connect the USB plug. The new program is loaded successfuly.

Thanks to Kolb this workt for me just fine,  ;D  ;)


has anyone figured out why this keeps happening? my board works for hours then out of the blue this starts happening. I've tried all the suggestions and while they do work, none of them seem to work consistently.

this problem is making working with arduino's very frustrating.


well, i got a brand new atmega328 chip to plug into my 3 week old Duemilanove... still no dice.. Maybe the actual board is toast?? pretty lame.


Hello All,

I'm relatively new to this forum and hope that I can help alleviate this problem with the solution that worked for me. Initially I'm working on my Arduino Mega and need to use serial communication in order to communicate with other serial devices in my system. However; I noticed one problem: This one in particular.

It would complain that it's not in sync, I tried removing pins and it turns out that with the serial pins connected, the Arduino would not all me to program it. For some reason I have to remove the pins in the serial port before it will communicate and burn itself.

Or even perhaps if there is a configuration that can help solve this problem!

I hope this helps solve your problem.  8-)


For some reason I have to remove the pins in the serial port before it will communicate and burn itself.

Yep. You can use the pins for output, to control things, or input, to program the chip, but not both.
The art of getting good answers lies in asking good questions.


Same probleme for me with atmega328 on breadboard with the FT232RL USB to Serial Breakout Board.

As said before pushing reset button just after the "Binary sketch size" message solved the problem

See you


I ended up "fixing" it by holding the reset button until the "Binary sketch size: 16454 bytes (of a 30720 byte maximum)" message appears, then let go of the reset button and it loaded up fine.


I have just spent about 10 hours over 3 days researching and trying different steps in forums and troubleshooting guides dealing with this.  Ultimately, I thought my 328 chip was dead.  If it was really dead, then I had nothing to lose trying to re-install the bootloader.  

I made a parallel connector, which was documented on this website and I used it.  It worked perfectly.  My confidence was restored until I tried to upload a sketch and had the same problem again.  

After a quick run through all of the previous attempts at a fix, I decided to try uploading the sketch with the parallel connector.  This worked!  My board programs and works fine.  However, this confirms the problem is with the communication on the serial side.  

I will continue to chase the communication problem, however I can also continue to use my Arduino now via the parallel programmer.  

The directions for making a parallel programmer are here:
- arduino.cc/en/Hacking/ParallelProgrammer  
and what you need to do for uploading sketches is located here:
- arduino.cc/en/Hacking/Programmer

in: preferences.txt
change: upload.using=bootloader;
to: upload.using=parallel;

I hope this helps someone, my eye's hurt from all the reading I did to track down this simple set of steps that turned out to be right in front of me.   :)  If only I had known what the question actually was...  ;)

Go Up