programmer is not responding error

I am working on a MAC (Yosemite 10.10.5). I am able to upload a sketch 1 time to a board (3 different boards) and then no other sketch will upload to any of the boards more than the first time. It doesn't matter if it is a new sketch or an updated same sketch. This is the same error message I get on all 3 boards except for the (resp=0x10) which can contain different numbers to the right of the x.

The boards lights come on as normal and the TX RX lights flash so I believe the computer and board are communicating from what I have read. I have chosen the correct board (UNO) and the correct port, "/dev/cu.usbmodem1461 (Arduino/Genuino Uno)" has been chosen. This is happening in the IDE and on the desk top version. I know the cable is OK because I am using the same one as my printer uses and it works fine and I have tried 4 different cables besides that one.

The chip on all of the boards is an ATmega328P-PU.

The programmer that is chosen in the desk top version is "AVRISP mkII". Is this correct?

I have spent numerous hours on the forum and the internet researching this and have tried every fix I could find. Any help would be greatly appreciated. If any more info is needed just ask and I will do my best to answer.

I had to eliminate the "detecting libraries and the generating function prototypes" from the code (due to 9000 character limit) to send this message. If they are needed I will try to send them separately.

./opt/arduino-builder/arduino-builder -compile -core-api-version 10611 -build-path /tmp/065685420/build -hardware opt/arduino-builder/hardware -hardware ./opt/cores -tools opt/arduino-builder/tools -tools ./opt/tools -built-in-libraries opt/libraries/latest -libraries /tmp/065685420/pinned -libraries /tmp/065685420/custom -fqbn arduino:avr:uno -build-cache /tmp -logger humantags -verbose=true /tmp/065685420/MyBlink

Using board 'uno' from platform in folder: /home/admin/builder/opt/cores/arduino/avr

Using core 'arduino' from platform in folder: /home/admin/builder/opt/cores/arduino/avr

Detecting libraries used...
 
Generating function prototypes...

Compiling libraries...

Compiling library "bridgehttpclient-3-1-0"

"/home/admin/builder/opt/tools/avr-gcc/4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10611 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-I/home/admin/builder/opt/cores/arduino/avr/cores/arduino" "-I/home/admin/builder/opt/cores/arduino/avr/variants/standard" "-I/tmp/065685420/pinned/bridgehttpclient-3-1-0" "-I/home/admin/builder/opt/libraries/latest/bridge-1-7-0/src" "-I/home/admin/builder/opt/libraries/latest/button-1-0-0" "/tmp/065685420/pinned/bridgehttpclient-3-1-0/BridgeHttpClient.cpp" -o "/tmp/065685420/build/libraries/bridgehttpclient-3-1-0/BridgeHttpClient.cpp.o"

Using library bridgehttpclient-3-1-0 at version 3.1.0 in folder: /tmp/065685420/pinned/bridgehttpclient-3-1-0

Using library bridge-1-7-0 at version 1.7.0 in folder: /home/admin/builder/opt/libraries/latest/bridge-1-7-0

Using library button-1-0-0 at version 1.0.0 in folder: /home/admin/builder/opt/libraries/latest/button-1-0-0

"/home/admin/builder/opt/tools/avr-gcc/4.9.2-atmel3.5.4-arduino2/bin/avr-size" -A "/tmp/065685420/build/MyBlink.ino.elf"

Sketch uses 1862 bytes (5%) of program storage space. Maximum is 32256 bytes.

Global variables use 195 bytes (9%) of dynamic memory, leaving 1853 bytes for local variables. Maximum is 2048 bytes.

Flashing with command:/Users/stephenhughes/.arduino-create/arduino/avrdude/6.3.0-arduino9/bin/avrdude -C/Users/stephenhughes/.arduino-create/arduino/avrdude/6.3.0-arduino9/etc/avrdude.conf -patmega328p -carduino -P/dev/cu.usbmodem1461 -b115200 -D -Uflash:w:/var/folders/cr/tng44gs96x9gbpqgnwm9qzxm0000gn/T/arduino-create-agent366780270/MyBlink.hex:i

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x1c

avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x10

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x10

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x10

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x10

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x10

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x10

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x10

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x10

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x10

avrdude done. Thank you./code]

Does the loop back test work with a MAC? If so please explain how to physically do step 7?

" 7. Connect the terminal application to the serial port for your board. "

I wanted to see if the boot loader on the UNO board was corrupted so I tried using the IDE and another new UNO to burn the boot loader on one of the boards that will not take a program. I got the following error "error while burning boot loader". Can anyone help me to understand what is going on?

      : 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    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : STK500
         Description     : Atmel STK500 Version 1.x firmware
         Hardware Version: 3
         Firmware Version: 4.4
         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.01s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x000000 (retrying)

Error while burning bootloader.
Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you./code]
I tried loading the boot loader while designating the programmer as "arduinoisp" and got this error message. Why would avrdude be looking for a USBtiny devise when I have chosen Arduino/Genuino Uno?


[code ] /Users/stephenhughes/Desktop/Arduino.app/Contents/Java/hardware/tools/avr/bin/avrdude -C/Users/stephenhughes/Desktop/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -carduinoisp -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m 

avrdude: Version 6.3, compiled on Jan 17 2017 at 12:01:35
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "/Users/stephenhughes/Desktop/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf"
         User configuration file is "/Users/stephenhughes/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : usb
         Using Programmer              : arduinoisp
avrdude: Error: Could not find USBtiny device (0x2341/0x49)

avrdude done.  Thank you.

Error while burning bootloader.

Because there is a LONG list of programmers and if you dont have that programmer then it will simply faile in answer to your last post.

Thanks for your response. I am not using anything special here. If I am only using a standard UNO board and the desktop IDE, what programmer should I be designating in the tools pulldown menu?

The same type of ICSP you are using.

Are you just connecting the board to the computer and expecting it to burn a new bootloader ?
If so thats not quite how it works.
For most boards it involves another board as a surrogate or a specialist device..

Google "Arduino as ISCP"

That should put you on the correct track.

I had the hardware and wiring right but nothing I had read told me to upload the ArduinoISP sketch (or where to find it) to the second Arduino. Obviously a rookie error on my part. I uploaded the sketch and then ran the burn bootloader and was successful. The bootloader must have been erased or corrupted because all of the 3 UNOs now accept uploads again. Thanks for your help ballscrewbob!

Could be a batch of clones with the wrong bootloader? It's not unheardof for clones to ship with the wrong bootloader on them, since there are three '328p-based arduino boards....

DrAzzy

I may be wrong here but if that were the case I would think that I could not have uploaded a sketch to any of the boards from the get go. The boards all allowed me to load 1 sketch and then would not accept a replacement sketch. I believe from what I have read that the problem was in the fuses part of the bootloader/programmer and that they would not allow an over write of that first sketch.

I don't know about anyone else but something that would be very helpful to me on the Arduino site would be a search box. The info when you stumble on it here on this site is so much clearer and complete than the 40 or 50 other sites I tried to use.

The selection of sites I was getting during my research of the web did not include the actual Arduino site until I put in "Arduino as ISCP" that ballscrewbob gave me. It explained everything to me within minutes.

Just a quick note...

I often don't give the easiest answer as I would hope that for the most part that if people do a little work themselves, then they often learn a little more than they would from a copy paste type answer and that moment of "AH HA So that's how it is done" is worth every moment to both the end user and myself.

It also helps ingrain that moment into the users mind.

Whatever the cause was you at least know what to do in future.

sthughes:
DrAzzy

I may be wrong here but if that were the case I would think that I could not have uploaded a sketch to any of the boards from the get go. The boards all allowed me to load 1 sketch and then would not accept a replacement sketch. I believe from what I have read that the problem was in the fuses part of the bootloader/programmer and that they would not allow an over write of that first sketch.

I don’t know about anyone else but something that would be very helpful to me on the Arduino site would be a search box. The info when you stumble on it here on this site is so much clearer and complete than the 40 or 50 other sites I tried to use.

Ah - if it works now after burning bootloader, that sounds like they failed to set BOOTRST fuse correctly. Pretty sloppy IMO, since they did a programming step and set other fuses, yet forgot that one. That results in one successful upload (it starts at 0x0000, slides through all the blank locations until it hits the bootloader at the end and runs it).

You mean, like the magnifying glass at the top right of the screen that you can click to open a search box?

Thanks DrAzzy I appreciate the info. I didn't know that search box was there. Live and learn.

Glad to know my theory on what the problem may have been has some validity.