Page 1 of 3

Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Sat Apr 16, 2011 2:51 pm
by rubinoae
**SOLVED** (skip down to the solution toward the bottom if you are in a hurry)

I originally asked for help in this post:viewtopic.php?f=32&t=27105 but thought I should post my own solution since I was having a slightly different problem and what worked for those individuals did not work for me.

Symptoms:
When trying to upload a sketch, any sketch, to an Arduino Pro Mini 3.3v using an FTDI Breakout Board 3.3v I received the following errors from the IDE:

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


When connected to the FTDI board which was in turn connected to the computer via USB I would get eight blinks from the LED by pin 10 and the red LED would remain illuminated. I clicked upload on the IDE the Arduino Pro Mini would reset, LED by pin 10 would blink a couple times, then TX red LED on FTDI board would flash three times. The result would always be these errors.

Let me first describe what I was using and what I tried:

Hardware and Software:
  • Arduino Pro Mini 3.3v w/ATmega328 (I actually have two of these and BOTH were failing)
  • FTDI Breakout Board 3.3v
  • Arduino Uno (not part of the original problem but used in the solution. I never had any issues uploading sketches to the Uno at any time)
  • Appropriate USB cables
  • Arduino IDE v0022
  • FTDI VCP Drivers v2.08.14
  • Windows 7 64-bit
If you are like me then unfortunately you have spent about three weeks and countless hours sifting through forum posts on Sparkfun.com and Arduino.cc trying every possible solution to resolve this error. I tried all of the solutions listed below and many others, NONE resolved the problem:
  • checking and rechecking, soldering and resoldering headers on the Arduino Pro Mini to ensure there isn't a faulty connection (according to most other posts this resolved most instances of these errors)
  • buying new USB cables
  • replacing the FTDI board (Since i never had issues uploading sketches to my Uno and both
  • considering replacing the Arduino Pro Mini
  • wired the FTDI to the Arduino without using the programming headers
  • checked, rechecked, and triple checked port and board setting in the Aduino IDE
  • tried different reset timing and sequences
  • uninistalled and reinstalled all drivers and IDE
  • changed port settings, numbers, baud rate, etc
  • turned off my firewall

I quickly started to believe the problem was with my FTDI board, PC, or settings so I used the tests below to elliminate those variables.

FTDI loopback test:
  • You can verify proper operation of the FTDI board by putting a jumper on the TX and RX pins
  • then connecting the FTDI via USB to you computer.
  • Then run the Arduino IDE and open the Serial Monitor.
  • Enter a character in the input textbox and click "send". If the FTDI board is working and drivers and settings are correct you should see your input echoed in the textbox below.
Program another Arduino using the FTDI board:
So I happen to have an Arduino Uno handy and this really saved my behind. Since I never had any issues uploading sketches to the Uno at any point during this headache Sparkfun tech support suggested I attempt to upload a sketch to the Uno using my FTDI board. I was hesitant at first thinking the Uno required 5v and the FTDI board that I had only supplied 3.3v. To my surprise, it worked!
  • You only really need to connect the RX, TX, VCC, and GND for the communication to work and this is how I did it:

    FTDI ----Arduino Uno
    RX-------TX (pin 1)
    TX-------RX (pin 0)
    3v3------3.3V
    GND-----GND
  • connect the FTDI via USB to my computer
  • open the Arduino IDE and selected the correct COM port and Board (Uno in this case).
  • This next step is important because I did not connect the RESET between the FTDI and Uno. When I clicked on upload i watched the FTDI board intently, when the TX LED (the red one and may be rather dim) flashed the first time I pressed the RESET button on the Uno.
  • If all goes well you should successfully upload the sketch to the Uno.

Both of the above tests proved my FTDI hardware, drivers, and settings were correct. That pretty much left me with the possibility of two faulty Arduino Pro Minis. Since the LED activity on the Arduino Pro Minis appeared to indicate the hardware was functioning correctly I turned toward troubleshooting the bootloader.

**SOLUTION** Reinstall the Arduino Pro Mini Bootloader using my Arduino Uno as an ISP Programmer!

To resolve the errors I burned the bootloader to the Arduino Pro Minis using my functioning Arduino Uno as an ISP. For the most part I followed the instructions here: http://www.sparkfun.com/tutorials/247 adhering to Option 1 but using the Arduino IDE to burn the bootloader. Here is what I did step by step:
1. Connect the Arduino Uno via USB to the PC
2. Open the Arduino IDE
3. Select the correct COM port and board (Arduino Uno)
4. Open the ArduinoISP sketch (File>Examples>ArduinoISP)
5. Upload the sketch. once complete your Arduino Uno is now programmed to be an ISP programmer. This is great because I really didn't want to buy a seperate programmer.
6. Power the Uno off and wire the Uno to the Arduino Pro Mini in the following fashion:

Uno---------------Pro Mini
3.3v-----------------------VCC
GND------------------------GND
Digital Pin 11(MOSI)----pin 11 (MOSI)
Digital Pin 12(MISO)----pin 12 (MISO)
Digital Pin 13(SCK)-----pin 13 (SCK)
Digital Pin 10----------RST

7. Power on the Uno
8. Select the correct COM port
9. IMPORTANT: Select board Arduino Pro Mini 3.3v w/ATmega328 as the board we are uploading to
10.from the Tools menu, select Burn Bootloader > w/Aduino as ISP

This was a magical moment for me. All kinds of LEDS were blinking and flashing. After a few seconds the IDE said: Done burning bootloader, thank you. If this is also your result you have successfully reinstalled the bootloader on you Arduino Pro Mini. Next, connect the FTDI board to the Arduino Pro Mini and attempt to upload a sketch. I was so excited that this worked I let my wife sucker me into going to the arts and crafts store so she could buy some new sewing thread. Don't fall for this. Every sketch I have uploaded to my Arduino Pro Minis has been successful form this point on. The end.

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Tue Apr 19, 2011 10:40 am
by wired
Thanx!
You saved me at least two of those three weeks :roll:

I bought 5 pro-minis 3,3v/8mhz at german reseller Watterott, the first i used worked perfectly, the next two refused upload with this error. After using an uno and writing new standard-bootloaders via arduino-ide everthing is perfect. This seems to be a general error in some (newer?) pro-minis.

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Wed Apr 20, 2011 4:17 pm
by whompalompa
I am having the same problems with my 3.3v Pro Mini's.

I've tried doing the Aduino as ISP method with a Duemilanove but keep getting the error:

avrdude: stk500_getsync(): not in sync: resp=0x15

Any ideas what the problem could be? Do I need an UNO?

Thanks!

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Wed Apr 20, 2011 7:17 pm
by JChristensen
Interesting. Do you have a theory as to why reloading the bootloader fixed the problem?

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Wed Apr 20, 2011 8:01 pm
by rubinoae
whompalompa wrote:I am having the same problems with my 3.3v Pro Mini's.

I've tried doing the Aduino as ISP method with a Duemilanove but keep getting the error:

avrdude: stk500_getsync(): not in sync: resp=0x15

Any ideas what the problem could be? Do I need an UNO?

Thanks!

How far are you able to get in the process? Do you get these errors when uploading regular sketches to the duemilanove?

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Wed Apr 20, 2011 8:15 pm
by rubinoae
JChristensen wrote:Interesting. Do you have a theory as to why reloading the bootloader fixed the problem?
I'm certainly no expert on the bootloader so I don't really know what was wrong. However, I do remember reading somewhere in the sea of posts on this topic that some bootloader versions where not waiting long enough after power on or reset to determine if data was coming in on the serial input. Since it wasn't waiting long enough, communication could not be established to upload sketches which caused our errors. Like I said, I don't know for sure if this was the issue but it gave me the idea to try reinstalling the bootloader.

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Thu Apr 21, 2011 8:18 am
by wired
whompalompa wrote: Any ideas what the problem could be? Do I need an UNO?
I dont think so, but maybe you need a specific version of the arduino sdk and the included arduino-isp.pde, I am using arduino-22.

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Fri Apr 22, 2011 2:21 pm
by jpmeyer57
rubinoae,

Thanks so much for posting your solution. I am just in the process of moving a project from a Uno breadboard to its final (i hope) form on a 3.3v pro mini and I encountered this problem. Fortunately, I didn't have to follow (and probably couldn't have followed) your difficult troubleshooting path. I just followed your quite clear instructions and PRESTO! Also, I learned something about methodical troubleshooting.

That's what I love about boards like this and the Arduino universe: lot's of helpful folks out there.

Thanks, again! :D

Jon

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Sun Apr 24, 2011 10:40 am
by SwissFreek
rubinoae wrote:
whompalompa wrote:I am having the same problems with my 3.3v Pro Mini's.

I've tried doing the Aduino as ISP method with a Duemilanove but keep getting the error:

avrdude: stk500_getsync(): not in sync: resp=0x15

Any ideas what the problem could be? Do I need an UNO?

Thanks!

How far are you able to get in the process? Do you get these errors when uploading regular sketches to the duemilanove?
I have a Duemilanove and get the same error. It did upload successfully to the Duemilanove, but when I select "Burn Bootloader" I get the avrdude: stk500_getsync(): not in sync: resp=0x15 error. Thoughts, anyone?

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Sun Apr 24, 2011 6:58 pm
by rubinoae
SwissFreek wrote:
rubinoae wrote:
whompalompa wrote:I am having the same problems with my 3.3v Pro Mini's.

I've tried doing the Aduino as ISP method with a Duemilanove but keep getting the error:

avrdude: stk500_getsync(): not in sync: resp=0x15

Any ideas what the problem could be? Do I need an UNO?

Thanks!

How far are you able to get in the process? Do you get these errors when uploading regular sketches to the duemilanove?
I have a Duemilanove and get the same error. It did upload successfully to the Duemilanove, but when I select "Burn Bootloader" I get the avrdude: stk500_getsync(): not in sync: resp=0x15 error. Thoughts, anyone?
Before you select burn bootloader are you changing the target board from duemilanove to pro mini? I thought this step was a bit counter intuitive but you are burning the bootloader to the pro mini, not the diemilanove.

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Sun Apr 24, 2011 8:09 pm
by SwissFreek
rubinoae wrote:
Before you select burn bootloader are you changing the target board from duemilanove to pro mini? I thought this step was a bit counter intuitive but you are burning the bootloader to the pro mini, not the diemilanove.
I did. I'll give it another try tomorrow. I hope I can get it to work, it'd be a shame not to be able to use my mini for this project. It goes onto a protoboard so nicely...

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Sun Apr 24, 2011 8:23 pm
by rubinoae
SwissFreek wrote:
rubinoae wrote:
Before you select burn bootloader are you changing the target board from duemilanove to pro mini? I thought this step was a bit counter intuitive but you are burning the bootloader to the pro mini, not the diemilanove.
I did. I'll give it another try tomorrow. I hope I can get it to work, it'd be a shame not to be able to use my mini for this project. It goes onto a protoboard so nicely...
Can you take a picture of your wiring so we can see how you have it set up?

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Mon Apr 25, 2011 10:08 am
by SwissFreek
rubinoae wrote:
Can you take a picture of your wiring so we can see how you have it set up?
Sort of hard to see that it's all wired properly, but here are some pics:

Image

Image

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Tue Apr 26, 2011 2:13 am
by Jeff_Carlson
SwissFreek,

Your wiring is correct. In order to use the Duemilanove board as a bootloader, you'll need to disable the auto-reset. If you place a 120 Ohm resistor between 5V and reset pins of your Duemilanove board, it will allow you to use your board as a bootloader. This procedure, along with some alternatives is described here:

http://www.arduino.cc/playground/Main/D ... Connection

After doing this, you should be able to follow rubinoae's instructions to install the proper bootloader on your 3.3V Pro Mini.

I hope this helps.

Regards,

Jeff

Re: Arduino Pro Mini 3.3v and FTDI 3.3v upload errors

Posted: Tue Apr 26, 2011 5:26 pm
by SwissFreek
Jeff_Carlson wrote:SwissFreek,

Your wiring is correct. In order to use the Duemilanove board as a bootloader, you'll need to disable the auto-reset. If you place a 120 Ohm resistor between 5V and reset pins of your Duemilanove board, it will allow you to use your board as a bootloader. This procedure, along with some alternatives is described here:

http://www.arduino.cc/playground/Main/D ... Connection

After doing this, you should be able to follow rubinoae's instructions to install the proper bootloader on your 3.3V Pro Mini.

I hope this helps.

Regards,

Jeff
Awesome, thanks! Guess that's what I get for not RTFM...