I have an already bootloaded atmega328p u chip and i want to program it with (rees) FTDI ft232r.
but while uploading sketch from arduino ide-1.8.12 it gives me an error:
Arduino: 1.8.12 (Linux), Board: "ATmega328, ATmega328P, 8 MHz (internal), B.O.D. Disabled" . . . . /opt/arduino-1.8.12/hardware/tools/avr/bin/avrdude -C/opt/arduino-1.8.12/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -cft232r_mod {program.extra_params} -Uflash:w:/tmp/arduino_build_814761/sketch_jun04a.ino.hex:i An error occurred while uploading the sketch avrdude: Version 6.3-20190619
** Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/**
** Copyright (c) 2007-2014 Joerg Wunsch**
** System wide configuration file is "/opt/arduino-1.8.12/hardware/tools/avr/etc/avrdude.conf"**
** User configuration file is "/home/kali-root/.avrduderc"**
** User configuration file does not exist or is not a regular file, skipping**
** Using Port : usb**
** Using Programmer : ft232r_mod** avrdude: error: no libftdi or libusb support. Install libftdi1/libusb-1.0 or libftdi/libusb and run configure/make again. avrdude done. Thank you.
I tried so many thing:
First time when i try to upload sketch it gives me an error: (something stk500) then i check on google then i modified
avrdude.conf file to add ftdi ft232r programmer:
3)I configured arduino ide by adding atmegabreadboard-master.zip file in hardware folder in sketch library file too (As mentioned on arduino website). Then configured the ide to use 8 mhz internal clock.
4)I connected all the components to atmega328p u chip on breadboard except 16mhz crystal and 22pf capacitor.
i attached the image of my circuit below.
So i wanted to program Atmega328p u with internal 8mhz clock using FTDI ft232r.
is there any other way to upload .hex file on chip using FTDI?
arduino ide and avrdude might not have better support for FTDI ft232r programmers.
I am using: kali gnu/linux rolling 2020.2 64bit, arduio ide-1.8.12 and avrdude-6.8.
$ dmesg|tail
[ 2005.484128] usb 1-8.5: New USB device found, idVendor=0403, idProduct=6001, bcdDevice= 6.00
[ 2005.484131] usb 1-8.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2005.484132] usb 1-8.5: Product: FT232R USB UART
[ 2005.484133] usb 1-8.5: Manufacturer: FTDI
[ 2005.484134] usb 1-8.5: SerialNumber: A50285BI
[ 2006.049386] usbcore: registered new interface driver ftdi_sio
[ 2006.049399] usbserial: USB Serial support registered for FTDI USB Serial Device
[ 2006.049513] ftdi_sio 1-8.5:1.0: FTDI USB Serial Device converter detected
[ 2006.049551] usb 1-8.5: Detected FT232RL
[ 2006.058758] usb 1-8.5: FTDI USB Serial Device converter now attached to ttyUSB1
Or run
lsusb
Should show something like this.
Bus 001 Device 011: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
Google MiniCore and install.
Select your Sketch
Select your chip, 8MHz Internal, and the Port , probably /dev/ttyUSB0.
Then select the Upload button.
but,
As you said i run dmesg|tail and lsusb command it works.
Then i installed minicore in Arduino/hardware folder and i select atmega328p, 8mhz internal clock and /dev/usb/ttyUSB0 and i selected programmer: STK500 as ISP(Minicore) because the programmers don't have ftdi programmer option.
but while i select upload/upload using programmer button it gives me an error:
Sketch uses 1106 bytes (3%) of program storage space. Maximum is 32256 bytes.
Global variables use 11 bytes (0%) of dynamic memory, leaving 2037 bytes for local variables. Maximum is 2048 bytes.
/opt/arduino-1.8.12/hardware/tools/avr/bin/avrdude -C/home/kali-root/Arduino/hardware/MiniCore-master/avr/avrdude.conf -v -patmega328p -carduino -P/dev/ttyUSB0 -b38400 -D -Uflash:w:/tmp/arduino_build_4704/sketch_jun04a.ino.hex:i
avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/home/kali-root/Arduino/hardware/MiniCore-master/avr/avrdude.conf"
User configuration file is "/home/kali-root/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : /dev/ttyUSB0
Using Programmer : arduino
Overriding Baud Rate : 38400
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00
avrdude done. Thank you.
i have FTDI ft232r programmer that's why i want to select ftdi programmer but it don't have ftdi option. what i do now?
while uploading sketch my one of FTDI led on ftdi board blink little bit every time when an attempt happens.
I tried selecting couple (Minicore) programmers from programmers option but it won't work it gives me different errors.
So how i can enable FTDI ft232r programmer option in programmers?
groundFungus:
If you are using a FTDI to upload a bootloaded chip, you are using serial port to program the chip, not a programmer.
You should connect Avcc to Vcc. You NEED the 0.1uF bypass caps on Vcc and Avcc to ground. You NEED a current limit resistor on the pin 13 LED.
What is the electrolytic cap (near reset) doing? If it is to couple the DTR to reset it can be a 0.1uF cap.
Thanks for telling me ftdi is not a programmer and i need 0.1 uf ceramic cap on pin 1.
As you told,
i connected all the components on there position,
but while uploading sketch it gives me an error:
Sketch uses 1106 bytes (3%) of program storage space. Maximum is 32256 bytes.
Global variables use 11 bytes (0%) of dynamic memory, leaving 2037 bytes for local variables. Maximum is 2048 bytes.
/opt/arduino-1.8.12/hardware/tools/avr/bin/avrdude -C/home/kali-root/Arduino/hardware/MiniCore-master/avr/avrdude.conf -v -patmega328p -carduino -P/dev/ttyUSB0 -b38400 -D -Uflash:w:/tmp/arduino_build_737569/sketch_jun04a.ino.hex:i
avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/home/kali-root/Arduino/hardware/MiniCore-master/avr/avrdude.conf"
User configuration file is "/home/kali-root/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : /dev/ttyUSB0
Using Programmer : arduino
Overriding Baud Rate : 38400
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00
avrdude done. Thank you
This Nick Gammon page shows how to use an Uno to bootload a 16MHz chip with an 8MHz bootloader (lilypad). See the section titled Alternate Clock Source.