Solution: avrdude stk500_getsync(): not in sync resp=0x30 error for Arduino

Picture of Solution: avrdude stk500_getsync(): not in sync resp=0x30 error for Arduino
So the reader is aware: This article covers the main causes for this issue, but some of the other Instructable users have found somewhat "niche" causes to the issue that were not covered in this article and are discussed in the comment section below. If this article does not solve your problem, please visit the comment section below.

I have had this error: I would plug my Arduino Uno into my Windows 7 PC (this guide should be relevant for Windows 8, Vista and XP also) but whenever I would upload any sketch to the board, all I would get is

avrdude stk500_getsync() not in sync resp=0x30

for a response. This board however worked seamlessly with my Linux machine.

After much searching online, I found there was no 'clear' solution to this.

Joyfully, the fix is actually very easy (at least for me, hopefully for you as well!). So far, there seems to be 2 3 big causes to this issue:
  • A wire is connected to pin0
  • You have the wrong COM port selected (the IDE does not see your board)
  • Your Arduino drivers are not set properly.

Unlikely Cause #1: Bootloader is missing

Before we begin, we should check the bootloader of the Arduino for comprehension. If the bootloader is gone or corrupt, this can cause the issue.

To do this: power and reset the board. Check to see if the pin 13 built-in LED lights; if it is not then your bootloader may be missing. If this is the case, then your problem is beyond the scope of this guide. I would suggest visiting this Sparkfun guide: http://www.sparkfun.com/tutorials/247.

If the LED lights, then your bootloader still exists.

Cause #0: Wire coming out of pin 0, (RX)

All credit goes to tvance929 and his comment below for finding this one. Some people seem to have this happen to them so it seems worth it to bring this up top here.

Apparently this issue will also occur if you have a wire connected to pin 0 (RX) on the Arduino.

Cause #1: Wrong COM Port or Wrong Arduino Board selected

With the Arduino plugged to the computer, open "Device Manager" and check the "Ports". Check to see if an Arduino device is listed here; if it is, then make note of which COM port the Arduino is on and check that you have this selected in the Arduino IDE (Tools -> Serial Ports). If the COM port your board is on does not show within the IDE, then try different USB ports.

If you can't even see "Ports"; then for some reason, your computer isn't even recognizing that a device is plugged into it. Test your computer by plugging other USB devices into that port. Possibly your Arduino fails at life; try it with other computers.

It appears some have received this issue by having the incorrect Arduino board selected as cdogjune has pointed out. Check that you have picked the right board in the "Tools" menu.

Cause #2: Drivers not Installed

This is what you should see when you open Device Manager:

If you don't see an Arduino device listed under Ports; then you are probably seeing an "Unknown Device". Check to make sure that "Unknown Device" is indeed, the Arduino by plugging and unplugging the board from the computer. "Unknown Device" should appear and reappear. Assuming this is the case, you will need to install the drivers manually for your Arduino. Windows XP, Vista and 7 users may continue with the guide; if you are a Windows8 user, then please make reference to the comment left by finnigan16 below.

Right click on that "Unknown Device" and select "Properties". Click on the "Driver" Tab. Below, you can see I already have the driver set, hence why my window reads "Arduino UNO R3 (COM4) Properties", when yours will probably read "Unknown Device Properties".

Select to "Update Driver..." and then choose to select the folder containing the driver on your computer. Conveniently, you already have the drivers for the Arduino on your computer when you downloaded the Arduino IDE. Navigate to the Arduino folder you downloaded that contains the Arduino IDE.  In that folder, go to the "drivers" folder and choose the "drivers" folder itself (see the picture below for the path). The computer should automatically choose to install one of the drivers within the folder you selected. Simply proceed with the installation and that should fix the problem.

Make sure the Serial Port is then selected correctly!

If you have checked the possible causes discussed here and your issue still isn't solved, be sure to check the comment section. Some of you have found niche causes to the issues which are discussed below.
1-40 of 118Next »
finnigan162 years ago
great Instructable. Unfortunately It didn't work for me, however I did find a fix so I thought I'd post it here for anybody else with the same problem. My problem is that I'm using Windows 8 and apparently the arduino drivers aren't signed and therefore windows 8 will not utilize them. Fortunately YouTube user beachedwhale found an easy work around that'll get it working without turning off driver signing. You can watch his video by following this link:


In a nutshell, you update the driver through device manager and use the wizard to pick from a list of device drivers on your computer, when this list comes up you choose a Compaq Ricochet Wireless USB Modem, apparently the two devices use the same driver, you just need to change a few of the driver's settings once it's installed (make sure the baud rate is 9600, etc...).

It only takes about two minutes to do, definitely worth a try if your getting this error and running Windows 8.

but it didnot work for me. i have tried many process and still the problm is not solved

N.fletch (author)  finnigan162 years ago
I never verified this error with Windows8; thanks for helping make my Instructable more comprehensive. I'll make an edit above pointing to this for those with Windows8.

I am using an UNO to program a mini, so I need to have it connected on the 0 pin, and I have verified that the system is set to load this properly.

ArunB72 days ago

Tanks for the help

I selected wrong serial port

roniku9 days ago

my arduino still error

the led in pin 13 LIGHTS blink

the com port was same

and in device manager driver arduino no problem

and set the board was correct

what's wrong in my arduino?

john jayc12 days ago
dawer_saeed14 days ago

Please Add another possibility of occurring this error:

you have selected a wrong board controller.

e.g: when working with Arduino Nano, sometimes a user can select an "Arduino Nano with ATmega 168" while physically he might have an "Arduino Nano with ATmega 328".

This thing also gives the same error and some noob might get stuck at this point.


one VERY useful comment to add is to make sure no other programs are currently using the specific COM port that the Arduino is using. For example, I spent 2 hours trying to fix the error described in this page, and then I realized that I had run a few MatLab commands that opened the serial port but I never closed it. The problem persisted even after uninstalling and then reinstalling the Arduino drivers, until I told MatLab to close the serial port.

Also, try restarting your computer in worst cases...

Thanks for the helpful instructable!

avrdude stk500_getsync(): not in sync resp=0x00 <--- 00 was my problem, i wasn't pressing the reset button at the right time, i dont have an auto reset USB to Serial,, no DTR pin, so i was looking everywhere for the right reset method,some said keep holding it untill it shows upload, some said press once right before upload, nothing worked, but somewhere i found that if i turn on verbose output (file->preferences-.show verbose) then it shows
Using Port : \\.\COM14

Using Programmer : arduino

Overriding Baud Rate : 57600

avrdude: Send: 0 [30] [20]

avrdude: Send: 0 [30] [20] <---NOW press the reset once, and hard (atleast on the pro mini) for atleast 100-200ms

avrdude: Send: 0 [30] [20]

Arduino: 1.6.5 (Windows 7), Board: "Arduino Uno"

Sketch uses 1,030 bytes (3%) of program storage space. Maximum is 32,256 bytes.

Global variables use 9 bytes (0%) of dynamic memory, leaving 2,039 bytes for local variables. Maximum is 2,048 bytes.

C:\Users\HP\DEVANSH\arduino\hardware\tools\avr/bin/avrdude -CC:\Users\HP\DEVANSH\arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM5 -b115200 -D -Uflash:w:C:\Users\HP\AppData\Local\Temp\build1508648851628040924.tmp/Blink.cpp.hex:i

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58

Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

Copyright (c) 2007-2009 Joerg Wunsch

System wide configuration file is "C:\Users\HP\DEVANSH\arduino\hardware\tools\avr/etc/avrdude.conf"

Using Port : COM5

Using Programmer : arduino

Overriding Baud Rate : 115200

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x5a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x5a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x5a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x5a

avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x54

avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x10

avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x54

avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x10

avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x54

avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x10

avrdude done. Thank you.

Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#up... for suggestions.

This report would have more information with

"Show verbose output during compilation"

enabled in File > Preferences.

please help me to resolve this error

Hi, I had the same problem on my Mintduino, well, the board did not reset before loading because I used a 22pF instead of a 100nF capacitor between the FTDI and the reset pin.

This is to say that it may be an hardware fault on your board, try another one if you can.

I hope this can help.

Samiran20 days ago

For me it worked out to keep press hold the reset key. click upload , <in verbose mode> , as soon as you will see the braud rate release .

just like that

Happy Programming

RodrigoM1728 days ago


meu arduino nao carrega a compilacao da erro no upload alguem arruma esse defeito

avrdude: stk500_recv (): programador não está a responder

avrdude: stk500_getsync () tentará 10 de 10: não em sincronia: resp = 0xec

mskogly1 month ago

On my Diecimila I had to change prosessor under Tools, from ATmega328 to ATmega168.

Thaelvyn3 months ago

I had the same issue and tried many of the above suggestions, as well as in the comments and various forums, to no avail. I knew the board was working fine because I could upload without issue from a Linux computer. I was using a powered USB hub to connect the Arduino to the PC. Once I connected the Arduino directly to one of the PC's USB ports (by-passing the hub) it worked fine.

webtop3 months ago

The sheer fact that there are almost 32,000 google results just in the last month, for this issue, makes me wonder if using an arduino as ISP is even a viable option. I have bricked so many 328p chips that it's a joke.

chiques3 months ago

I had this exact error and it ended up being a driver issue. I reinstalled the Arduino IDE and it fixed it. Thanks!

rsrini73 months ago
BrandonT73 months ago

Another solution that fixed my issue: Double-check to make sure that the chip is in the right direction. I took it out for various reasons, and accidentally put it back in the wrong way. XD

billyprefect3 months ago

I felt ridiculous after a week of trying to get something working, and then finally looking at my COM ports and seeing my Teensy 3.1 attached to COM3.

RalphT23 months ago
belfastrab3 months ago


Guyz one reason that i found out was....jst check weather your Jumper is placed properly..

First thing to suggest is install the appropriate drivers and then check ur jumper status and then upload it....hope this will help you...Thank you.

Thank you. It was the cause #2.

StoddardJ5 months ago

I put my computer to Windows Vista computer to sleep (start --> sleep). When I came back to resume work, I am getting the out of sync error message.

Microsoft suggests changing your usb settings to not go to sleep (http://support.microsoft.com/en-us/kb/953367)

That didn't help my situation. I went to the device manager, right clicked on Ports and chose "scan for hardware changes". I see the yellow "L" light blinking on my Arduino Duemilanove, but the port doesn't enable. Oh well, I guess I will have to restart my computer or not put my computer into sleep mode.

aqibisl7865 months ago

i tried with your instruction. i tried by reset button and led is on.. but still why this error ????

cdogjune9 months ago

I got this error and found that I didn't have the correct version of arduino selected in my setup.

N.fletch (author)  cdogjune6 months ago

Haha, looks like some people have hit this problem. I'll add it under "Cause 1" because they are similar that it's a setting issue. I'll point to you from above. Thanks for mentioning it.

Twice this has caught me out - Needed to select the right type of Arduino board under tools menu :)

Thanks. Fixed my issue as well. It is really annoying that it wasn't something more complex. Now I have to accept I spent one hour fixing something so basic.

JeffreyJ26 months ago

HI all, submitting the fix that worked for me. May already be posted but still. DON'T GIVE UP! I know it's frustrating.

Using atmega 328 on a breadboard bootloaded with UNO. Could not for the longest time get my FTDI cable to work with it,

Put it in a genuine Uno R3 board and loaded a serial program and put it back on the bread board with the cable to verify operation. Indeed was working right with serial communication.

It more or less has to do with the "reset" method which I couldn't for the life of me get to work, I believe my capacitor to the reset pin is the culprit and needs a different value.

The "fix" for now till I figure something out is to put a jumper (or button) across the capacitor, you need the LED and resistor setup on pin 19 on chip to monitor the blink (IDE pin 13) hit upload and wait for that led to blink and pull one end of the jumper then. Definitely easier if you have a reset button, hold it while clicking upload, and release when the led blinks.

When it blinks it's triggering the reset at the "perfect" time, which is needed to upload, which of course you need to release the reset for it to actually upload.

Good luck.

Doh I need to mention it's not the standard reset button, my FTDI cable has a DTR pin which is supposed to go to a capacitor to pin 1 (reset). I am talking about putting a momentary switch across or in place of the capacitor and using that. Hope this helps someone

just put a 10k resistor in parallel with the capacitor on the DTR to pin 1 (reset) and calling it done. W/e works for me lol.

RickC16 months ago

FIXED for my Robo3D printer. ( sorry I am not reading ALL 89 comments to see if this fix is included - it is not in the first 40...... For my Robo3D printer I had the same message when trying to upload to my Arduino Mega 2650, no ports etc... the FIX was simple. Loading the endstops into the Arduino it has 3rows of pins rows 1,2,3 (top to bottom) reads +,- and 20. My two wire - red/black plug i placed into rows 1&2 presuming red wire was 'active' and black 'negative' - WRONG, the plug needs red wire on "-" (neg) and the black into row 3 which reads '20'. Port and connection loaded immediately, upload (auto-level firmware for those updating the Robo3D) all complete in less than 2minutes. Hope this makes sense for those with the printer

rneece6 months ago

I blew the AVR chip on a Boarduino and bought a replacement. When I tried to load a program in the new chip, I got the sync error. At first I thought the bootloader was not on the chip, then I suspected the FDTI driver. Finally, it dawned on me that the bootloader is different from one Arduino to another. My original chip was a Duemilanove328 version, and the new chip was an Uno version. The solution to the sync problem was as easy as selecting the Uno in the menu in the Arduino application. So, if you get a new chip, be sure you know which bootloader you are getting.


rlinde6 months ago

For me works press reset on Arduino when starts load. I have this problem on arduino Pro Mini with PL2303HX USB to serial adapter.

N.fletch (author)  rlinde6 months ago

I've heard that was a possibility, but you're the first person I've met that had that problem. Glad you got it figured out.

Tosnic7 months ago

duh, wrong COM port selected -_-

redkcir7 months ago

Fantastic! You covered my problem which was the wrong com port. I looked in Device Manager and discovered my Arduino was really on com port 13 instead on 1 as it was reporting. Changed it in the program and reloaded, works fine now. Thanks.

1-40 of 118Next »