Go Down

Topic: PC Can not upload to Barebones with FDTI breakout board (Read 1 time) previous topic - next topic

maxmaisy

Hi
I have build breadboard, vero board and now purchased PCB barebones Adruino clones to use in standalone projects. I upload sketches by chip swapping or taking the chip out of the UNO and using that. Bulky and not very safe with all those jumpers.
So way back I bought a Sparkfun FDTI breakout. The 6 pins +ve, -ve, Rts , Rx and Tx   with CTS not used but when I try to upload I get the useful error  
avrdude: stk500_getsync(): not in sync: resp=0x00

The board in tools is still UNO
The port is recognised (it is a different port to the UNO's port) and selected.
When I do the loop back test it is fine am I right in thinking the loop back is testing the fdti communication?

I have even been convinced by my supplier (electronics not ..) to buy another fdti breakout this time a Adafruit which installs and is assigned a different Port but still returns the same error.
The boards upload when using the uno - chip so they work.

Any other thoughts would be appreciated I have had the problem for a year and have read a lot of posts around the subject but never found anyone with the same problem. I keep putting it on the back burner but would like it solved just so I know if nothing else.

Thanks for reading.
Max



Kamerat

#1
Nov 16, 2012, 07:22 am Last Edit: Nov 16, 2012, 07:55 am by Kamerat Reason: 1
Maybe you haven't connected auto reset (if your FTDI adapter supports it). Otherwise you have to manually reset your microcontroller when the IDE is finished compiling and started uploading, can be a bit tricky.

I'm using the Arduino USB2SERIAL LIGHT with a 100nF capasitor between EXT RESET on the adapter and pin 1 on my 328P for auto resetting. I have also a 10k pull up resistor from 5V to pin 1

Also make sure you have the RX and TX connected right. The RX on my adapter is connected to TX (pin 3) on the 328P and the TX on the adapter is connected to the RX (pin 2) on the 328P.

be80be

You have to press the reset button just after it shows memory used press the reset button and let go
it will program then
  here a link showing how to do this  http://digital-diy.com/forum/arduino/mintduino-and-things-you-need-to-know-t2494.html

maxmaisy

I have read the reset pressing stuff and tried pressing it as described but no help. Also both the sparkfun and adafruit fdti breakout boards boast that they now have DTR instead of reset which does the timing for you.
Kamerat-
You lost me with your discrption of RX on adapter to TX(pin3) on 328P ?? are you saying that RX from the FDTI connects to TX on the 328P
the circuit diagrams for the barebones  just bring RX to RX and TX to TX .  RX has the 10K resister.

maxmaisy

Be80Be
that is a good link the FDTI friend is the same as I have from Adafruit but I still get the same errors which ever way round I put the RX TX . when ever I press the damn reset. It is driving me mad it should be so so simple. five wires. And they work perfectly when pushed into a chip less arduino board.

Riva

Could really do with a schematic of how you have build and connected this bare bones Arduino as it may be a wiring problem.

The manual/auto reset could be the cause. If your manually resetting then timing the reset can be quite fiddly.

Do you have external pulldown resistor on RX pin of breadboard arduino.

Has the ATmega328 your trying to program got a bootloader or is it a bare (new) component.

Do you have external clock reference in your breadboard design as it will be needed with default arduino chip.

maxmaisy

I have built at least 3 different standalones one on a breadboard from http://oomlout.com/BBAC/BBAC-Assembly-Guide.pdf
and the last one is a PCB but I do not know how to include the circuit diagram here from a text doc.

The boards all work perfect if I use the Arduino - 328P chip as the interface, so how does the arduino FDTI circuit time the reset differnt from the breakout boards?

The 328's all come bootloaded

By external clock are you refering to the crystal and cap setup if so yes if something else then no.

Should I have the RX pulldown resister?

Kamerat


Kamerat-
You lost me with your discrption of RX on adapter to TX(pin3) on 328P ?? are you saying that RX from the FDTI connects to TX on the 328P
the circuit diagrams for the barebones  just bring RX to RX and TX to TX .  RX has the 10K resister.

Yes, RX to TX and TX to RX. The schematic on the PDF you provided says the same. I have no 10k resistor on the RX.

Riva

Is the Sparkfun FTDI this one https://www.sparkfun.com/products/9716? If it is and you have your standalone device wired like the oomlout guide then you connect the FTDI's DTR pin to ATMega pin 1 (reset) through a 0.1uF capacitor and this should auto reset the device and invoke the bootloader just prior to uploading the sketch. The 10K (seems high) resistor on pin 2 (0 RXD) is to prevent the pin from floating that could hang a chip reset in the bootloader. I personally don't connect the resistor inline like that but connect it to ground. I have attached a circuit I have used a few times, there is a lot of stuff of no interest but you will see how RX & TX are grounded and how DTR is connected to Reset pin.

I am having a similar issue with a breadboard Arduino. Using a CP2102 USB to serial adapter, which I gather is pretty similar

http://arduino.cc/forum/index.php/topic,133095.0.html

dc42

For barebones systems, unless you need to use the serial monitor or have it communicate with the PC for some other reason, I think it's easier to include a 6-pin ICSP header on your board and program it via ICSP instead. You can even use your Arduino as the ICSP. See http://miscsolutions.wordpress.com/2011/08/09/prototyping-small-embedded-projects-with-arduino/. To install a 6-pin header on veroboard you need to cut 3 of the strips between holes, but this isn't difficult with a sharp knife.
Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

Riva


For barebones systems, unless you need to use the serial monitor or have it communicate with the PC for some other reason, I think it's easier to include a 6-pin ICSP header on your board and program it via ICSP instead. You can even use your Arduino as the ICSP. See http://miscsolutions.wordpress.com/2011/08/09/prototyping-small-embedded-projects-with-arduino/. To install a 6-pin header on veroboard you need to cut 3 of the strips between holes, but this isn't difficult with a sharp knife.

Easier if you have a programmer but a lot of hassle using ArduinoISP. I just use a 5 pin header for the FTDI to plug into.

be80be

Not all of them FT232 cheap USB to serial dongle or adapters what every you want to call them work the way they should. Some have pins marked as you would hook them RX is for RX same with TX and the DTR not even wired to the pin.

Then you have some that hook up as normal RX to TX and TX to RX.  And the CP2102  does work I use that one myself but you have to look at these and make sure there made right and like the pins are the right pin and in the right order.

I know this comes in late. I just finished my first prototype stand alone. One possible issue why you cannot upload is if you have added a power up reset capacitor to pin 1. You need to disable this and only use the 0.1mf cap in series with the reset line.
I found this out the hard way, so my next board design I in corporated a switch.
Please do let me know if this works out. Cheers!

Go Up