The dreaded avrdude: stk500 tecv(): programmer is not responding problem

This problem is extremely frustrating as there are potentially thousands of correct answers out there and probably as many wrong ones. It is even more frustrating considering the number of people that have been affected over so many years now. How is it that the developers of the Arduino ide don't acknowledge this and bring a resolution to the matter once and for all? What good is an ide that can't take the set-up steps to connect to the board and upload the sketches. I have spent nearly two days searching through this problem...

I use Ubuntu, downloaded the latest version of the ide (2:1.0.5 +dfsg 2-4) and followed the instructions for allowing the user to use the /dev/ttyACM* (i.e. the USB port). I also tested whether the loop-back works on the board (an Uno), it does perfectly. So there is no problem with cable, permissions, bootloader, com port and all that...

Is there anybody out there that really understands what is going on and how to fix it and who has enough clout with the developers to have them resolve this problem in the long run?

As a fellow newbe that has had this same problem and shared your frustration I will first state that I have no clout what so ever. I can say that you have not provided enough pertinent needed info for anyone to help you. You can add actual code, pictures, or attachments as needed. Go here and heed the advise, it helps:

https://forum.arduino.cc/index.php?topic=148850.0

Hm, extremely frustrating...? According my experience, in 90% the problem is somewhere between the display, keyboard an chair. If the programer does not responding it means just only one thing, there is no connection to the target. It has nothing with the IDE or avrdude in their principle. Yes, many people have exactly same problem which has several reasons but quite more people has no problem to run their board. Back to your problem. You wrote that "there is no problem with cable, permissions, bootloader, com port and all that..." even so programmer is not responding. The loop-back test is a good start if it is working correctly. I think, there are still two possible reasons of problem: 1. missing bootloader - its presence can be easily detected by L LED, it must blink fast at the reset (standard Arduino and bootloader), in this case you can be angry at the manufacturer and his product, 2. setting in the IDE can be incorrect - check the chosen board, and programmer. I wish you little bit more of patience and I hope that Arduino will conquest your mind if you are jumping over initial obstacles.

Thanks Budvar10! I am not new to Arduino I developed several very useful applications, but that was some three years ago. I now need to develop new applications and improve some of my previous designs, hence why I am back. I may have been a bit harsh with the developers - I realize that their can be many reasons for the error. Nonetheless we should expect a very comprehensive, methodical, help page on the Arduino site. What there is is just not of this sort. One might also have expected either a separate application, or a menu item in the IDE to help debug this very common error...

In any case, pressing the reset button does not lead to the expected L LED blinking. I concluded, and one of your answer supports this conclusion, that the bootloader is missing. This is baffling as I had no such problem previously. As I understand it the bootloader is on the Atmega 328 chip itself I decided to remove the current one and replace it with another brand new and unused chip. I have several of these around and I am sure that they have a bootloader installed. Regrettably this has not solved the problem... So what might be the problem when we know loop back works and the Atmega 328 on the UNO board is brand new?

I run Linux Mint 18. I am confuse by your phrase I use Ubuntu, downloaded the latest version of the ide (2:1.0.5 +dfsg 2-4). I have no idea what that means.

I have Arduino IDE 1.8.3. It is probably not the latest one but recent enough.

Nonetheless we should expect a very comprehensive, methodical, help page on the Arduino site.

Yes, I agree. This is frequent error and such kind of page would be probably very useful. That is why lot of experts here recommend Nick Gammon's web like sthughes did. But about the debugging of this error, I'm not so sure. How to debug broken USB cable or missing butloader from the IDE? At this moment, I cannot imagine other way like set of advices.

About your problem. How can you be sure about the bootloader on other chips? Did you by with or did you installed it yourself. What' about L flickering? Do you have another Arduino to try as ISP programmer? With the ISP programmer you could read out the flash memory to check whether the bootloader is there or not.

EDIT: This is not absolute true. See the post below for explanation (#9). One another thing, check if there is a clock signal on ATmega's XTAL1 pin. With any DMM it should show 2.5V (half of VCC) against the GND on DC scale, because if there is no clock then MCU wont start and cannot respond to the programmer.

I checked the XTAL1 pin 9 of the Atmega328 chip. The voltage is 0.81 V, so there is a problem with the board and that was my conclusion after putting in a brand new chip with yes a bootloader installed. The moral of the story is to have someone write up a comprehensive checklist to debug, standard practice... But I am sure I'll get arguments, despite fact that is is a sensible if not logical suggestion. The other moral of the story is help yourself, few others really care to do so...

It looks definitely like a problem with the crystal/resonator, 0.8V is too low. Anyway, it is pretty rare problem with the board. All cases with the oscillator, I’ve heard about up to now, were related to the breadboard setup.
It will not easy task to replace the resonator (if the board is genuine). It is very small part.

I measured this on 2 Uno's, one clone and one original. Using a cheap DVM and measuring from GND on the UNO to pin 9 on the Atmega328P-PU, I came up with .79 Volts on both chips. Maybe I am measuring wrong, but both UNo's work with no problems I am aware of.

Normal fuses for arduino based on '328p have it set to use low power crystal, not full swing, so you shouldn't expect to see 2.5v on the crystal pins....

Thank you for the explanation.

On the chips that you claim do have the bootloader, does pressing reset make the LED blink? If not, either the LED is broken (or more likely, the opamp that buffers it - it's fairly easy to damage), or there's no bootloader on the chip, or the reset button is broken.

Pull the chip, and jumper 5v to pin 13, connect to USB - does the light go on? That would rule out problem with LED or opamp. Assuming the light does come on: Put chip back in, and test by manually jumpering ground to reset, then releasing it - if that doesn't make the light blink, there is no bootloader on that chip. Could you have uploaded a sketch to it via ISP instead of through the serial bootloader in the past? That will erase the bootloader.

To bring this to a conclusion, In my case it was the crystal oscillator that was the problem and it is indeed a rare problem. However, contrary to what was said above, you can fix this easily by putting a crystal oscillator between pins 9 and 10, no capacitors are needed as per the usual wiring of the oscillator. I believe there is a thread on this site describing the procedure in detail.

To help the community I will write a short debugging procedure that should cover, I reckon, at least 90% of causes for the dreaded "avrdude: stk500 tecv(): programmer is not responding" error messages.

Correcting Budvar10:

The statement that there should be 2.5 V between pin 9 (one of the XTAL pins) and GND is wrong. See also DrAzzy and Kprims comments avove.

Users of any forum should not make statements on issues they do not understand, it just muddles the issue(s) at hand... Be careful what you say and how you say it and miotly be nice :)

Dr_C: Correcting Budvar10: Be careful what you say and how you say it and miotly be nice :)

"miotly" be nice ? ? ?

He was "nice". Sheesh. There was nothing in his comment that was objectionable.

You have a lot of nerve chastising someone trying to help you!

@Budvar10's help is appreciated in this corner.

Mr. IEEE488

I was not chastising anybody and you should do the same. Heed my comments, if you have nothing to say and you have had nothing to say in this post, butt out…

Dr_C: Mr. IEEE488

I was not chastising anybody and you should do the same. Heed my comments, if you have nothing to say and you have had nothing to say in this post, butt out...

Of course you were chastising him.

Let me quote you again: Users of any forum should not make statements on issues they do not understand, it just muddles the issue(s) at hand... Be careful what you say and how you say it and miotly be nice

You singled him out for not being "nice". And put angry-face smiley.

We are not stupid. We can read and understand perfectly what you were trying to do.

I am not going to "butt out".

Mr IEEE488

Well that explains you are clearly stupid and rather mean spirited. Yes do butt out and remain there...

Dr_C: Mr IEEE488

Well that explains you are clearly stupid and rather mean spirited. Yes do butt out and remain there...

How do you explain your post then ? ? ? Friendly? Grateful for his help? What? ? ?

What is the point of you telling him to "be nice"? ? ? What was not "nice" about his post ? ? ?

If sounds as if English is not your first language. Take it from me, what you wrote was not "nice" when someone tried to help you.