I'm trying to upload a sketch to upload the blink sketch to an arduino pro using a SparkFun Serial Basic Breakout (on Ubuntu 18.04).


Within the arduino IDE I have the following set-up:

  • Tools -> Board: Arduino Pro or Pro mini
  • Tools -> Port: /dev/ttyUSB0
  • Tools -> Programmer: USBasp

I have connected:

  • DTR sparkfun to DTR on arduino
  • RX1 sparkfun to RX1 on arduino
  • TX0 sparkfun to TX0 on arduino
  • VCC sparkfun to VCC on arduino
  • GND sparkfun to GND on arduino

the error

The error that I get is as follows

Arduino: 1.8.13 (Linux), Board: "Arduino Pro or Pro Mini, ATmega328P (5V, 16 MHz)"

Sketch uses 924 bytes (3%) of program storage space. Maximum is 30720 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
/home/cmhughes/Desktop/arduino-1.8.13/hardware/tools/avr/bin/avrdude -C/home/cmhughes/Desktop/arduino-1.8.13/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -carduino -P/dev/ttyUSB0 -b57600 -D -Uflash:w:/tmp/arduino_build_457079/cmh-Blink.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/cmhughes/Desktop/arduino-1.8.13/hardware/tools/avr/etc/avrdude.conf"
         User configuration file is "/home/cmhughes/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/ttyUSB0
         Using Programmer              : arduino
         Overriding Baud Rate          : 57600
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

The error message continues, and tries 10 attempts.

the question

I've tried many different things, including: changing the RX1 to TX0 connections, using a different FTDI serial adapter, trying a different USB cable, trying on Windows operating system.

What else can I try to see if I can progress this?

arduino pro

enter image description here

SparkFun Serial Basic Breakout - CH340C and USB-C

enter image description here

  • wire RX to TX. transmit to receive
    – Juraj
    Jul 25, 2020 at 9:20
  • @juraj many thanks; if I've understood you, then that's on the list of things that I've tried ....
    – cmhughes
    Jul 25, 2020 at 9:40
  • it is not a troubleshooting suggestion. it is how it must be
    – Juraj
    Jul 25, 2020 at 9:46
  • reset the Arduino while avrdude attempts the upload
    – Juraj
    Jul 25, 2020 at 9:48
  • @Juraj many thanks, that was very helpful. Using both of the things that you detailed, I have now been able to upload onto my arduino pro. If you'd like to post an answer, I'll gladly accept it. Thanks again.
    – cmhughes
    Jul 25, 2020 at 11:08

2 Answers 2


The upload procedure needs to reset the ATmega328 by use of DTR. This invokes the bootloader code in the ATmega328. If there is a problem with your DTR connection, you have to instead manually press the RESET button at the appropriate time.

So probably your connection to DTR was faulty or. less likely, there could be a fault in the onboard capacitor between the Pro-Mini's "DTR" header and the ATmega328 RESET pin

https://store.arduino.cc/arduino-pro-mini -> Documentation

Automatic (Software) Reset
Rather then requiring a physical press of the reset button before an upload, the Arduino Pro Mini is designed in a way that allows it to be reset by software running on a connected computer. One of the pins on the six-pin header is connected to the reset line of the ATmega328P via a 100 nF capacitor. This pin connects to one of the hardware flow control lines of the USB-to-serial convertor connected to the header: RTS when using an FTDI cable, DTR when using the Sparkfun breakout board. When this line is asserted (taken low), the reset line drops long enough to reset the chip. The Arduino software uses this capability to allow you to upload code by simply pressing the upload button in the Arduino environment. This means that the bootloader can have a shorter timeout, as the lowering of the reset line can be well-coordinated with the start of the upload.

pro mini reset schematic


Might have to do with the usb chip on that being not as widely supported as the official chip Arduinos use on their Uno’s, Mega’s, etc. the ch340C one sometimes needs drivers so look online for those drivers and download them.

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.