I've now been trying for over a week to work with a genuine FTDI Friend to upload sketches to my breadboard Atmega1284P-PU.
I have to say the FTDI Friend is performing quite poorly. Only about one out of eight to ten attempted uploads is successful, all others quit in mid-upload, and I either get a "protocol error" message or "programmer is not responding".
Here's my setup:
FTDI Friend --- > Atmega1284P-PU
GND --- GND
Vcc --- Vcc
TX --- RXD0 (pin 14)
RX - TXD0 (pin 15)
RTS --- 0.1 uF cap --- RTS (pin 9)
RTS (pin 9) on the Atmega is pulled up to Vcc using a 10K resistor.
Also, (at the moment), a 100 uF cap across Vcc and GND. I have tried caps of different values, it had no effect.
I have checked the wires many times over, and I've also made sure the correct bootloader is on it (I burned it using Nick Gammon's programmer sketch).
I'm really kind of at my wits end here. This is seriously slowing down progress on my CarDuino project, because it means that up to half an hour can pass between successful uploads, even if I've only changed one line of code.
I can half understand if a four-dollar programming device from China with a fake FTDI chip on it won't upload sketches at all. But I paid over $20 for the FTDI Friend, and so far, due to the "flaky" uploads, it has been a big disappointment.
Here's the verbose output I get:
avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "C:\Program Files\Arduino\hardware\tools\avr/etc/avrdude.conf"
Using Port : COM20
Using Programmer : arduino
Overriding Baud Rate : 115200
AVR Part : ATmega1284P
Chip Erase delay : 55000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 10 128 0 no 4096 8 0 9000 9000 0xff 0xff
flash 65 10 256 0 yes 131072 256 512 4500 4500 0xff 0xff
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
Programmer Type : Arduino
Description : Arduino
Hardware Version: 3
Firmware Version: 4.5
Vtarget : 0.3 V
Varef : 0.3 V
Oscillator : 28.800 kHz
SCK period : 3.3 us
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% -0.00s
avrdude: Device signature = 0x1e9705
avrdude: reading input file "C:\Users\darkmind\AppData\Local\Temp\build97f72ef5debfac14b77c00792f51d20d.tmp/HeadUnit.ino.hex"
avrdude: writing flash (29892 bytes):
Writing | ##################################
avrdude: stk500_paged_write(): (a) protocol error, expect=0x14, resp=0x62
avrdude: stk500_recv(): programmer is not responding
The selected serial port avrdude: stk500_recv(): programmer is not responding
is not available or the board is not connected
I've tried reinstalling the FTDI drivers many times, which had no effect on the problem. I've also tried various different COM port setting. Nothing seems to work.