loading
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.
Hi, <br>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: <br> <br>http://www.youtube.com/watch?v=CdE72XUYC7k <br> <br>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...). <br> <br>It only takes about two minutes to do, definitely worth a try if your getting this error and running Windows 8.
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.
<p>Hello , I am using Arduino UNO board in windows 8 . When I am uploading a sample code to the board it is showing the error:</p><p> avrdude: stk500_getsync() not in sync resp=0x00 ,</p><p>I have tried every possible suggestion given the group but still didnot find any solution .I had checked the port connections,board name in tools bar, updated drivers, no problem with boot loader .Please help me with this.</p><p>My mail ID::saisandeep.kollipara95@gmail.com</p>
<p>I am getting the same error.</p><p>The two above reasons mentioned is not valid in my case too.</p><p>Did any thing else work out for you? </p><p>nikita@dhamainnovations.com</p>
<p>Sandeep, try to upload the same code again on another Uno board, if it works then the communication IC your older board is dead. I had the same problem and error code 0X00, my IC got burnt in Nano.</p>
Hello I am Tarun Lodhi.<br>Just tell me what you after plug the aurdino cable with you computer so that I can help you.
<p>but it didnot work for me. i have tried many process and still the problm is not solved</p>
<p>I am getting the same error but I am on Mac, also the shield spec says its <a href="https://www.amazon.in/gp/product/B01AOBS5WO/ref=oh_aui_detailpage_o04_s00?ie=UTF8&psc=1" rel="nofollow">W5100 Ethernet Shield V1.0 With POE And Micro-SD Card Slot For Arduino 2009 UNO Duemilanove</a></p><p>however the the I have Arduino UNO R3, is it different then the Duemilanove ?</p>
<p>Cause number 4, board broken... that's my cause</p>
<p>I just had a cause #4 : you selected a wrong &quot;card type&quot; in &quot;Tools&quot; menu.</p><p>I selected Arduino Uno but I tried to send code to an Arduino Nano.</p>
<p>For me the problem was DTR pin. CH340 usb converter didn't have dtr pin. Pressing and holding the reset button on pro mini before compiling and releasing it just when uploading starts in arduino did the trick.</p><p>https://www.youtube.com/watch?v=TFARDFn8fs0</p>
<p>I am using ch340 usb converter to program arduino pro mini. com port is recognized but I get the same error on program upload. I have set the baud rate of com port also to 57600 that arduino expects. Here is the console output:</p><p>Using Port : COM4</p><p>Using Programmer : arduino</p><p>Overriding Baud Rate : 57600</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x0e</p><p>I have installed the driver for ch340, arduino version is 1.6.11 and os is windows 10. led on arduino pro mini board blinks (maybe due to a pre-installed program). None of the solutions seem to work. Any help would be great.</p>
<p>I got this error because there was another application reading from the serial port when I tried to flash my new program. <br>In my case, it was a python script that was monitoring serial data being<br> generated by the arduino but I suppose it could happen as the result of<br> just having a serial console (like putty or minicom) open while trying <br>to flash. At any rate, look for any process that might be using the com <br>port and kill it OR (if the process terminates when it loses serial <br>connectivity) unplug the arduino and plug it back in.</p>
<p>error: redefinition of 'void setup()'</p>
<p>Please help .When I upload something to the arduino , this error occurs:</p><p>Sketch uses 1,030 bytes (3%) of program storage space. Maximum is 32,256 bytes.</p><p>Global variables use 9 bytes (0%) of dynamic memory, leaving 2,039 bytes for local variables. Maximum is 2,048 bytes.</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xdb</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xdb</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xdb</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xdb</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xdb</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xdb</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xdb</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xdb</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xdb</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xdb</p>
<p>In my case it solved:</p><p> if we remove Rx pin before uploading.than it is ok. so first upload by disconnecting RX pin than connect it after upload completes. </p><p>Thanks to those who have found out the same solution and guided.</p>
<p>In my case it solved:</p><p> if we remove Rx pin before uploading.than it is ok. so first upload by disconnecting RX pin than connect it after upload completes. </p><p>Thanks to those who have found out the same solution and guided.</p>
Hey, this didn't work for me. My problem was far simpler. I had screwed the arduino down on a piece of wood very tight. The second I loosened the screws the problem disappeared!
<p>my sketch is uploading and running but for some reason arduino is showing an error(ubuntu 15.10):</p><p>Binary sketch size: 1,056 bytes (of a 32,256 byte maximum)</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00</p>
<p>Binary sketch size: 1,062 bytes (of a 32,256 byte maximum)</p><p>avrdude: stk500_getsync(): not in sync: resp=0x00</p><p>i am using freeduino.i have tried everything but still this error showing up</p>
<p>I was facing the same problem. I just connected Arduino USB cable to another USB port of my laptop and it started working. </p>
<p>Hi, I shorted vin and gnd by mistake. After that i am getting this error code while uploading.Please help. Thanks</p><p>Arduino: 1.6.7 (Windows 7), Board: &quot;Arduino/Genuino Uno&quot;</p><p>Sketch uses 450 bytes (1%) of program storage space. Maximum is 32,256 bytes.</p><p>Global variables use 9 bytes (0%) of dynamic memory, leaving 2,039 bytes for local variables. Maximum is 2,048 bytes.</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x90</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x90</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x90</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x90</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x90</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x90</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x90</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x90</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x90</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x90</p><p>Problem uploading to board. See <a href="http://www.arduino.cc/en/Guide/Troubleshooting#upload" rel="nofollow"> http://www.arduino.cc/en/Guide/Troubleshooting#up...</a> for suggestions.</p><p> This report would have more information with</p><p> &quot;Show verbose output during compilation&quot;</p><p> enabled in File &gt; Preferences.</p>
<p>Just watch the video below. The guy answers in the last seconds. 3.57 sec .</p><p>Pretty simple. Plug off tx and rx cable and upload. Then plug them in. Thats all.</p><p><iframe allowfullscreen="" frameborder="0" height="281" src="//www.youtube.com/embed/sXs7S048eIo" width="500"></iframe></p>
<p>thank you very much man he did expplain it very good just unplug the tx en rx wires while uploading after that plug them back in :)</p>
<p>What he answered related to bluetooth comms. If you are uploading the program from the bluetooth adapter and you disconnect RX and TX how is the the bluetooth board going to communicate with the arduino, with just vcc and gnd. Those perform power, not signal functions. He may well be using a FTDI to write to the board but that part isn't shown.. some clarification is necessary. </p>
<p>Thanks!!! I fought this for hours, and only was able to get success once you said about the drivers among the Arduino files. I tried the ones the manufacturer recommended, but no luck. Thanks for the tip!</p>
<p>I have tried all the possible ways to remove this error but it doesn't works. What to do now??</p>
<p>Thank you, instructables; I would never have figured that out on my own</p>
<p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x04</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x04</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x04</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x04</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x04</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x04</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x04</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x04</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.</p><p>avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x04</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x04</p>
<p>Well, I had this Richduino-UNO-Basic-Arduino-Board with the same problem, I just figured out a way to make it work, I opened the serial monitor and passed a few random gibberish by setting &quot;carriage return&quot; and 19200 baud from the Arduino IDE interface.</p><p>After doing that, I closed the serial window and tried to upload the program and it uploaded successfully.</p>
<p>if you get this error code:</p><p>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x97.</p><p>U might have bricked the communication IC on the Arduino board. I work with Arduino Nanos. My Nano board stopped uploading programs, so I replaced the Nano board with another nano board without modifying any connections it worked fine.</p>
<p>thank you!</p>
<p>THanks, wrong com port selected :P</p>
<p>What worked for me:<br><br>Struggled with this for hours. Finally got it to work by timing the upload from the arduino IDE. I think the MicroOSD device has a &quot;boot mode&quot; when starting, then runs program. If you insert the usb cable / FTDI into the computer, then immediately press upload on the arduino IDE - it gets the upload process started while in this initial &quot;boot mode&quot;. Hope this helps. </p>
<p>hey</p><p>i got this error everytime i uploaded my code.</p><p>i'm using esp8266 with arduino uno. before i upload the code i unhook the vcc from esp8266 and after the upload is finished i hook it up.works that way for me. not that hard.</p><p>hope it helps. </p>
<p>Hi!</p><p>I am not getting proper solution for the same error (avrdude: stk500_getsync(): not in sync: resp=0x00). My L LED(Pin 13 LED) remained ON continuously,when I upload program then it blink and then gets ON.</p><p>I HAVE TRIED ALL solutions which are in this page then also program showing error.I am using arduino UNO.</p>
<p>hi,</p><p>i have an other arduino error and I can't find a solution</p><p>the error code is:</p><p>avrdude: stk500_getsync(): not in sync: resp=0xbf</p>
<p>PLEASE HELP!!!! I have read all comments and try every single solution they gave but it still doesn't work. I got this from the Arduino IDE:</p><p>Arduino:1.6.4 (Windows 8.1), Placa:&quot;Arduino Uno&quot;</p><p>Sketch uses 1.030 bytes (3%) of program storage space. Maximum is 32.256 bytes.</p><p>Global variables use 9 bytes (0%) of dynamic memory, leaving 2.039 bytes for local variables. Maximum is 2.048 bytes.</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x59</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x59</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x59</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x59</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x59</p><p>Problema subiendo a la placa. Visita <a href="http://www.arduino.cc/en/Guide/Troubleshooting#upload" rel="nofollow"> http://www.arduino.cc/en/Guide/Troubleshooting#up...</a> para sugerencias.</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x59</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x59</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x59</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x59</p><p>avrdude: stk500_recv(): programmer is not responding</p><p>avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x59</p><p> This report would have more information with</p><p> &quot;Show verbose output during compilation&quot;</p><p> activala desde Archivo &gt; Preferencias</p><p>Please guide me to fix my Arduino board. </p>
If you driver of 1.6.4 doesent work then download lower version of aurdino or 1.0 you can try I also have same problem when I use latest version after that I download lowest version and it work best for me on windows 8.1<br>And don't forget to plug your aurdion in the port in which you install driver before
<p>I solved the error but setting baud rate to 19200 somehow it's not working on default 9600.</p>
<p>Thanks.. solution #0 worked for me. :)</p>
<p>If you`ve upgraded your Mac OS to El Capitan and using a clone Arduino, solution is here</p><p><a href="http://thomas.bibby.ie/getting-generic-arduino-boards-with-ch340g-chips-to-work-with-os-x-10-11-el-capitan/" rel="nofollow">http://thomas.bibby.ie/getting-generic-arduino-boa...</a></p>
<p>For those still having this problem despite trying everything, try instaling these drivers <a href="http://www.arduined.eu/ch340g-converter-windows-7-driver-download/" rel="nofollow">http://www.arduined.eu/ch340g-converter-windows-7-...</a><br> Especialy if your arduino is is not original.</p>
<p>PLEASE HELP..!</p><p>my board is working fine with the IC (ATMEGA328-PU) which came along with it,but when I change my IC with another one(ATMEGA328-PU) its showing an ERROR..!</p><p>&quot;</p><p><strong>Arduino: 1.6.5 (Windows 7), Board: &quot;Arduino/Genuino Uno&quot;<br>Sketch uses 1,030 bytes (3%) of program storage space. Maximum is 32,256 bytes.<br>Global variables use 9 bytes (0%) of dynamic memory, leaving 2,039 bytes for local variables. Maximum is 2,048 bytes.<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xd8<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xd8<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xd8<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xd8<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xd8<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xd8<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xd8<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xd8<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xd8<br>avrdude: stk500_recv(): programmer is not responding<br>avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xd8<br>Problem uploading to board. See <a href="http://www.arduino.cc/en/Guide/Troubleshooting#upload" rel="nofollow"> http://www.arduino.cc/en/Guide/Troubleshooting#up...</a> for suggestions.<br>This report would have more information with<br> &quot;Show verbose output during compilation&quot;<br> enabled in File &gt; Preferences.</strong></p><p>&quot;</p><p>Can anyone tell what 's the problem.</p>
<p>You can't just swap the MCUs on the Arduino board. The new ATmega must have the Arduino bootloader flashed onto it so sections of the flash can be rewritten with the USB connection. You can find lots of guides on how to do this online.</p>
<p>thank you very much sir</p>
<p>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.</p>
<p>Tanks for the help</p><p>I selected wrong serial port</p>
<p>my arduino still error</p><p>the led in pin 13 LIGHTS blink</p><p>the com port was same</p><p>and in device manager driver arduino no problem</p><p>and set the board was correct</p><p>what's wrong in my arduino?</p>

About This Instructable

474,297views

45favorites

License:

Bio: My name is Nick, I work at Continental and just recently got my BSEE. I love working with projects on lower levels to design them ... More »
More by N.fletch:The Rhapsody Tart ChronosMEGA; a wrist watch Standing Linear Actuator; powered by Modtronix 
Add instructable to: