I have a microcontroller: ATMega328P. I don't have any Arduino Uno board.

I want to program the ATMega328P using my FTDI programmer.

But when I try to program the ATMega328P without Arduino board I always get this error:

avrdude: stk500_recv(): programmer is not responding

I've followed this YouTube Tutorial to build this.

And ended up with this diagram:

enter image description here

All the connections seems OK.

I choose the board: "Arduino Pro or Pro Mini" because only with this one I can choose the correct processor: "ATMega328P (5V, 16MHz)"

The port is correct: "/dev/ttyUSB0"

And as for the the programmer I've choose: "USBasp", which I don't know if this is correct. I've used this FTDI programmer to program the STM32 microcontroller and the programmer was "Serial", which I don't see the very same option here.

I'm lost, what am I missing up here?

BTW I've seen this, this and this but couldn't get it fixed.

enter image description here

  • What happens if you try to program it as a Arduino Uno?
    – VE7JRO
    Commented Aug 8, 2019 at 14:28
  • The same @VE7JRO. Using as Arduino Uno with programmer USBasp I get the same error (stk500_revc() programmer is not responding)
    – waas1919
    Commented Aug 8, 2019 at 14:30
  • For the programmer, please try "AVRISP mkll".
    – VE7JRO
    Commented Aug 8, 2019 at 14:43
  • same result :((
    – waas1919
    Commented Aug 8, 2019 at 16:57
  • 1
    If you are certain the IC has a boot loader installed, you could try to use a button or jumper wire from the reset pin to GND instead of the FDTI programmer. The trick is to connect the reset pin to GND, press the upload button in the Arduino IDE, then disconnect the reset pin from GND when the IDE says it starting to upload.
    – VE7JRO
    Commented Aug 8, 2019 at 17:18

1 Answer 1


A new chip cannot be programmed in that manner until it has the Bootloader installed. The Bootloader starts after a reset and monitors the serial interface to see if something is attempting to download code via the serial port.

Selecting a Programmer has no effect on serial download, that only comes into play when Programming via the SPI pins SCK/MOSI/MISO/Reset/Power/Gnd.

Your "design" needs a couple more parts: 0.1uF caps between VCC and Gnd, and AVCC and Gnd.

The Cryslal and 22pF caps could also be a lot closer to the device - like right next to it.

I can't read the FTDI markings, so I can't tell if you have Rx and Tx swapped there.

  • I already have a 0.1uF caps between VCC and Gnd. So I need to place another one between AVCC and GND?
    – waas1919
    Commented Aug 8, 2019 at 16:58
  • I've put the Crystal and the caps closer to the device but the result is the same. Can I force the reset pin to be on? Something like: put 5V (dont know if it is 5V tolerant) and then try right away to upload the code?
    – waas1919
    Commented Aug 8, 2019 at 16:59
  • 1
    If the chip does not have a Bootloader programmed in it already, it will not be able to upload via the FTDI module.
    – CrossRoads
    Commented Aug 8, 2019 at 17:03
  • no bootloader was programmed! thank you!
    – waas1919
    Commented Aug 19, 2019 at 15:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.