If you're trying to upload code with Arduino and you get an error message that looks something like this:
"Problem uploading code.....

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

(or any other error report when uploading code, aside from the obvious ones like compile errors or choosing the wrong serial port)

Here are the most common causes and things to check.

  1. Did you check the "Set RTS on close" box in the Windows Com port, as instructed in the manual?
  2. Are you selecting the right board? For ArduPilotMega, if your board uses an ATMega1280 processor (the big chip on the APM board will say "ATmega1280") select "Arduino Mega (Atmega1280)". If you've got an ATMega2560 chip, select "Arduino Mega 2560". For the original ArduPilot and ArduIMU, choose "Arduino Duemilanove".
  3. Is the cable plugged into a USB hub? That can sometimes cause trouble. Try plugging it straight into your PC.
  4. Are you using the latest FTDI drivers? Install them if not. If you're still having trouble, try reinstalling them.
  5. Check your solder joints! It's a good idea to reheat and reflow all of the ones you did, just to be sure.
  6. Other errors that have caused this problem in the past include a power source (such as your ESC) that is putting out a voltage outside the acceptable range of 4-7v, faulty USB or FTDI cables, and corrupted FTDI drivers. When in doubt, try a different power source, a different cable or a different PC.

Additional things to check if you're using the original ArduPilot board (not ArduPilotMega):

  1. [For original ArduPilot board only] Is your FTDI cable plugged in the right way? The black wire or side marked "black" should be on ArduPilot's BLK pin.
  2. [For original ArduPilot board only] Are you using the DIYDrones or Adafruit FTDI cable? We've had trouble with other ones...
  3. [For original ArduPilot board only] Is the ArduPilot board powered on, ideally through your RC system or ESC? (You can NOT power it from the FTDI cable; this is a safety measure to avoid power conflicts.)

If those all look fine and you're still getting the error message (especially if you can successfully load code to other Arduino boards), you may have a corrupted FTDI driver or a bad FTDI cable. Try reinstalling on another PC and see if that does the trick. If it doesn't, you may need a replacement FTDI cable.

In some rare cases, a power glitch may have resulted in a corrupted ArduPilot bootloader on the ATMega chip. This tutorial will show you how to reload the bootloader. (Warning--for experts only and requires an AVR programmer. This should not be necessary for most people.)

Other problems can include "Serial port not found" (just check that you've selected the right serial port in the Tools menu. It's the one assigned when you first plugged in the FTDI cable--probably 5 or higher), and the Arduino IDE freezing (try unplugging the FTDI cable. If that doesn't work, just reboot your computer).

Views: 30882

Comment by Mogly (Umesh Tharanath) on October 9, 2009 at 6:41pm
i have used, Winxp and vista too..
but no luck. i have seen board very closely, no such pobs in soldering. :(

3D Robotics
Comment by Chris Anderson on October 9, 2009 at 6:46pm
What FTDI cable are you using?
Comment by Mogly (Umesh Tharanath) on October 9, 2009 at 6:49pm
FTDI Basic Breakout - 3.3V
http://www.sparkfun.com/commerce/product_info.php?products_id=8772
Comment by Mogly (Umesh Tharanath) on October 9, 2009 at 6:54pm
is this Set RTS on Close should be checked? SET RTS ON CLOSE.JPG

3D Robotics
Comment by Chris Anderson on October 9, 2009 at 6:58pm
Yes. Just like the picture in the link in the post.
Comment by Mogly (Umesh Tharanath) on October 9, 2009 at 7:24pm
No Luck Chris. Any other suggestions / thoughts ?

3D Robotics
Comment by Chris Anderson on October 9, 2009 at 8:49pm
If you have a standard Arduino board, try loading code on that. If it works, that means you've soldered something wrong on ArduPilot or have a FTDI problem. As mentioned in the post above we don't recommend the Sparkfun FTDI board, which has always given us trouble. so you might want to switch to one of the recommended cables.

3D Robotics
Comment by Chris Anderson on October 9, 2009 at 8:51pm
If you have a standard Arduino board, see if you can upload code to that. If you can, it means that you've got a soldering problem on ArduPilot or it's the FTDI cable. As mentioned in the post above, we've always had trouble with the Sparkfun FTDI board and don't recommend it. You may want to switch to one of the recommended FTDI cables.
Comment by Mogly (Umesh Tharanath) on October 9, 2009 at 8:56pm
Okay Orderd 1 order number is 1873. :(

But basicaly SparkFun Recommends it.

We highly recommend the following items to accompany this product:
An EM406 GPS module
An FTDI Basic or FTDI cable for programming
An extended EM406 GPS cable
An Expansion Board with airspeed sensor
XY and Z sensors
Comment by HyukChoong 'Chuck' Kang on November 3, 2009 at 5:39pm
I have the same problem just like everyone else.
I followed the listed things to check, but nothing works.
Here's what I have on the screen.

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

I powered a ardupilot with power supply at 5V to the pins right next to FTDI cable, and I also tried a battery connected to the pins right next to 'analog 0'.
none seems to work and it would be great if anyone has gone through this step and finally got it working.

Could you guys tell me what I've done wrong?

-Chuck

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service