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


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:

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> <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.
<p>but it didnot work for me. i have tried many process and still the problm is not solved</p>
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>Thank you. It was the cause #2.</p>
<p>I put my computer to Windows Vista computer to sleep (start --&gt; sleep). When I came back to resume work, I am getting the out of sync error message.</p><p>Microsoft suggests changing your usb settings to not go to sleep (</p><p>That didn't help my situation. I went to the device manager, right clicked on Ports and chose &quot;scan for hardware changes&quot;. I see the yellow &quot;L&quot; 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.</p>
<p>i tried with your instruction. i tried by reset button and led is on.. but still why this error ????</p>
<p>I got this error and found that I didn't have the correct version of arduino selected in my setup.</p>
<p>Haha, looks like some people have hit this problem. I'll add it under &quot;Cause 1&quot; because they are similar that it's a setting issue. I'll point to you from above. Thanks for mentioning it.</p>
<p>Twice this has caught me out - Needed to select the right type of Arduino board under tools menu :)</p>
<p>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.</p>
<p>HI all, submitting the fix that worked for me. May already be posted but still. DON'T GIVE UP! I know it's frustrating. </p><p>Using atmega 328 on a breadboard bootloaded with UNO. Could not for the longest time get my FTDI cable to work with it, </p><p>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.</p><p>It more or less has to do with the &quot;reset&quot; 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. </p><p>The &quot;fix&quot; 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.</p><p>When it blinks it's triggering the reset at the &quot;perfect&quot; time, which is needed to upload, which of course you need to release the reset for it to actually upload. </p><p>Good luck.</p>
<p>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</p>
<p>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.</p>
<p>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&amp;2 presuming red wire was 'active' and black 'negative' - WRONG, the plug needs red wire on &quot;-&quot; (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</p>
<p>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.</p><p>Rob</p>
<p>For me works press reset on Arduino when starts load. I have this problem on arduino Pro Mini with PL2303HX USB to serial adapter.</p>
<p>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.</p>
<p>duh, wrong COM port selected -_-</p>
<p>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.</p>
<p>Great! Glad to hear that it helped you out so now you can make awesome projects!</p>
Yes. I have to learn more about the Arduino for my upcoming classes. I am adding it to the LEGO Mindstorms and Raspberry Pi that I am currently featuring.
<p>hi, what if either of the two don't appear on my device manager - port .</p><p>Like this one.</p>
<p>The USB Serial Device at COM 11 looks like it could possibly be your Arduino. Try unplugging the Arduino from your computer to see if that device disappears from your device manager. If that device does not disappear, then it should be something else in the device manager. <br><br>If the USB Serial Device is your Arduino, try to see if you can find it in the Arduino IDE (for COM 11). If not, try going through the driver installation I provided in the guide.</p>
<p>it wont work for me</p>
<p>it wont work for me</p>
<p>Gra&ccedil;as a Deus, tks, #Erro 01</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="//" width="500"></iframe></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>one the solution that i got is:-</p><p>make sure that the crystal connected to atmega 328 is</p><p>(CRYSTAL MODEL NO.-CSTCE16M0V53-R0 )</p><p> the first one as shown in image.</p><p>If it is of 2 pin as shown the 2nd image and is connected directly to atmega 328 without 2 capacitors of 22pF value then it will show the error </p><p><a href="" rel="nofollow">avrdude: stk500_getsync(): not in sync: resp=0x00</a></p><p>so to remove these error connect two 22pF capacitors with these 2nd type of crystal if used </p>
<p>I had the same error code ....I found the problem was my usb cable...I tried another and everything worked fine. thanks anyway.</p>
<p>thanx a lot :D</p>
<p>Thanks it works. ;D</p>
<p>My problem ... I had a wire coming out of pin 0 -- Dont do that when uploading... ugh! <br><br>&quot;<b>DISCONNECT ANY WIRES going to pin 0 (RX) while you do the upload.&quot;<br></b> &lt;-- thanks Keith!</p>
<p>THANK YOU!</p>
<p>Stuck your solution up top here; all credit is for you. Thanks!</p>
<p>Cool!!! Thanks Fletch! **But honestly, all I did was find Keith Parkansky's site - he's the real hero! ** <br><br></p>
<p>Thanks a lot ..It helped..</p>
<p>That was my problem as well it took me 5 hours of searching the net to fix it !!! thank youuuuu</p>
<p>@tvance929 - thank you! That was my problem, too.</p>
<p>You saved me a lot of pain! I don't know what changed, I tested out my system, a greenhouse control, then placed it in the greenhouse. It failed, a wire disconnected. I brought it back in, and had this problem. Fortunately, I came across your suggestion quickly. I adjusted my outputs to begin at 1 rather than 0, and poof, problem solved! So a wire in output 0 seems to generate the problem intermittently. </p>
<p>@tvance929 You were the guy for my problem ! Thank you for sharing your fix. I indeed did connect my pin 0 to the Tx of a device i want to control from my arduino and ended up with this error (resp=0x07 in my case).</p><p> The funny thing is that i even didn't need to connect this pin since i'm not expecting any data from my device, just have to tell it what to do.</p><p>Thanks to Keith too :)</p>
<p>I'm getting the same error with a Nano. I hit &quot;Ctrl+U&quot; (upload), and after a while the console says &quot;avrdude: stk500_getsync(): not in sync: resp=0x00&quot;. I have observed that the Nano isn't showing up as an Arduino on COM3, but rather just a USB Serial Port. I've tried everything I know about drivers, and nothing is happening. Can anyone help me?</p>
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. <br> <br>Also, try restarting your computer in worst cases... <br> <br>Thanks for the helpful instructable!
<p>avrdude stk500_getsync(): not in sync resp=0x00 &lt;--- 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-&gt; verbose) then it shows <br>Using Port : \\.\COM14</p><p> Using Programmer : arduino</p><p> Overriding Baud Rate : 57600</p><p>avrdude: Send: 0 [30] [20] </p><p>avrdude: Send: 0 [30] [20] &lt;---NOW press the reset once, and hard (atleast on the pro mini) for atleast 100-200ms</p><p>avrdude: Send: 0 [30] [20] </p>
<p>Guys, check out my unique experience with this error. Might help you people</p><p><a href="" rel="nofollow"></a></p><p>Regards</p>
<p>None of this worked for my issue. Here's what I have. I purchased and used an Uno R3 board, and it worked (and still does) quite well. I decided to go the route of building my projects on perf boards thereby saving the Uno for developing new ones. So I bought 5 Atmega 328p PUs, presumably with bootloader installed. To test/verify them I plugged each into the Uno board in place of the original. None worked ! Sketches would not upload with the error </p><p>avrdude stk500_getsync() not in sync resp=0x00</p><p>I verified each and every item listed, and even tried to load a boot loader, to no avail. The only other differing indication between the original chip and new ones is that the pin13 led would blink several times at power up with the original chip and just come on solid with the power led with the new ones. If anyone knows what's wrong here I'd appreciate any help.</p>
<p>Right, your explanation of what you experienced is what you should expect. A fresh ATmega328 (and other AVRs) do not come pre-flashed with the Arduino bootloader. That's why you see the pin13 led light up when you have the fresh AVRs plugged in. There are plenty of methods to flash an ATmega328P and other AVRs with the Arduino bootloader and those guides are readily available online and a Google search away.</p><p>I respect your choice of developing your own embedded HW applications, I like to do the same thing (and using development boards like the Arduino for quick development). The SW programming for a fresh AVR is lower level, and more difficult than Arduino; but it is much more satisfying and you have a significantly greater understanding of what is happening in the AVR if you ditch the Arduino wrapper.</p><p>The best guide I've seen for getting started in embedded design is from Sparkfun here: <a href="" rel="nofollow"></a></p><p>Best of luck.</p>
<p>Thanks for the reply. Two things come to mind though. 1. The chips were supposed to be and advertised with the arduino bootloader installed. 2 I did try installing the bootloader but when trying to load, I used methods from the arduino (dot) cc website and it didn't work, I simply got more error codes. I only tried the &quot;self clocking&quot; method (with the subject chips on breadboard) so far as I didn't have the 22pf caps on hand, that used the uno as an ISP programmer. All that did is generate more error codes. At this point I am at a loss. Geesh I thought working with the 8080 in the old days with multi-phased clocks was tough.......</p>

Sobre este Instructable

256.355 visualizações

22 favoritos

Postado em:
Jun 26, 2012


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 ... Mais »
Mais por N.fletch: FPGAs: Top Level Design, Finite State Machines (FSMs), and GPIO FPGAs: Concept and Getting Started Getting Started with Embedded Systems using Atmel
Add instructable to: