Avrdude stk500 recv programmer is not responding ошибка

Собрали новый проект.

Написали скетч.

Прошиваем….

Ооопс!

avrdude: stk500_recv(): programmer is not responding

«Но ведь вчера же все работало!»(с)

Не беда, советов по устранению на форумах много:

  1. В Arduino IDE не правильно указан порт к которому в системе подключено устройство. Перепроверяем.
  2. В Arduino IDE не правильно указана модель нашей железки. Перепроверяем.
  3. Проблема с кабелем. Заменяем
  4. Еще есть проблемы со скоростью порта и прочими разными, это все расписано…

Но… есть еще один вариант, про который нигде не написано… 

Если до этого arduino использовалась в других проектах и в нее уже прошит другой скетч… В новой схеме она может просто замыкаться уже назначенными на другое дело пинами =) 

Поэтому, для начала, просто попробуйте ее прошить, выдернув из макетки.. Если до этого она где-то использовалась и все работало — скорее всего поможет.

Проверено на собственной глупости =)

UPD: По просьбам из комментариев еще один частый вариант: помимо правильно указанной платы в Arduino IDE нужно проверить правильность указания процессора (просто ATmega или Old Bootloader)
Спасибо за комментарии и активность в теме =)

Ever stumbled across this error message when trying to upload a sketch?

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00

avrdude: stk500_recv(): error message from Arduino IDE

Is this some kind of joke? Who is this mysterious AVR Dude, why is he so uncool, and — most importantly — what does he have against you trying to upload a sketch to your Arduino? It’s beyond frustrating.

In this quick lesson, you’ll learn how to banish the mysterious AVR dude to the dusty highways of the nether realms. Or, to be less poetic, you’ll learn how to get rid of this error so you can get back to uploading your sketch.

So who is this AVR dude, and why does the error happen?

AVRDude stands for AVR Downloader Uploader and is a utility used by the Arduino IDE. The utility’s main job is pretty straightforward — it allows you to load code onto your Arduino board.

So that’s who the dude is, but why does the error happen?

The avrdude: stk500_recv() error message is alerting you to a generic connection error between your computer and the Arduino. I wish I could keep it simple and tell you this error happens because of one single problem, but that would be too easy. This generic error can pop up for a host of reasons.

But don’t worry, I’ve got your back. In this lesson, I’m going to go through a “laundry list” of possible solutions. (Many thanks to “The Guy with The Hat” from the Arduino Stack Exchange for compiling this great list of fixes.) I’ll walk through each in detail, starting at the most common and easiest and moving on to more detailed troubleshooting tasks if those don’t work.

Here goes.

Let’s start with the easy stuff

Before we touch on some of the more elaborate and involved potential solutions, it’s smart to rule out all those obvious and small glitches.

  • Disconnect and reconnect the USB cable: I told you we’d start simple.
  • Press the reset button: If your Arduino board has a reset button on it, press it and see if you can now upload without the avrdude: stk500_recv() error.
  • Close and reopen the Arduino IDE: Giving the Arduino IDE a fresh start can fix a host of problems avrdude stk500_recv errors included.
  • Make sure you have the right Arduino board selected: In the Arduino IDE, go to Tools> Board, and select the Arduino board you’re using from the list.

select Arduino Board from Arduino IDE

  • Make sure you have the correct port selected: In the Arduino IDE, go to Tools>Port and select the port corresponding to your board. On a PC, it will start with COM. On a Mac, it should start with cu.usb.
    select Arduino Port from Arduino IDE

Useful tip: If you’re unsure of the correct port, take note of all the ports you have listed. Then disconnect your Arduino board from the USB cable and check the port menu again. The port now missing from the list is the port your Arduino was using. 

  • Remove connections to the RX and TX pins: The Receive (RX) and Transmit (TX) pins (pins 0 and 1) are used when you upload sketches to your Arduino board. Unplugging connections to those pins may banish the avrdude: stk500_recv() upload error.
  • Remove any shields: If you have an Arduino shield attached to your Arduino board, remove the shield and try uploading again. The shield may have a circuit interfering with the transmit and receive pins.

Still getting avrdude: stk500_recv() error?

If you’re still getting the avrdude: stk500_recv() error, all is not lost — not by a long shot. It’s time to dig into some real troubleshooting.

So what could be going wrong here? We know the problem could be at three possible locations: the USB cable, the Arduino Board, or your computer. We’ll use a process of elimination to figure out the point of failure.

  • Test the USB Cable: USB cables fail, and surprisingly often. Check to see if using a different USB cable gets rid of the avrdude: stk500_recv() error.
  • Test another Arduino board: If you have one handy, try uploading to another Arduino board. Did the avrdude: stk500_recv() error suddenly vanish? Your original board is the likely culprit.
  • Test a different computer: If you’ve ruled out your USB cable and Arduino board, try uploading your sketch to another computer with the Arduino IDE installed on it. If you can successfully upload a sketch to the other computer, the avrdude: stk500_recv() error probably originates at your computer.

Once you have some hard data on the point of failure, you can read one of the following three sections to hone in on resolving the avrdude: stk500_recv() error.

The USB cable is to blame!

Well, I’ll go right ahead and state the obvious solution. Use a different cable 🙂

My computer is the problem

Here are three fixes you can try.

  • Reinstall the Arduino IDE: Just go to the Arduino website, download the most recent version of the IDE and install it again. Don’t worry, this won’t affect your old sketches. They’ll still be stored in your sketchbook folder.
  • Reinstall drivers: If you’re still getting the avrdude: stk500_recv() error, you’ll need to check that your drivers are installed correctly. These should be installed automatically when you install the Arduino IDE, but you can always try installing them manually.
  • Check to see if you need different drivers: Some Arduino clones require special drivers. You should be able to download these drivers from the website of the company that makes the board. If you can’t, contact the company directly.

My Arduino board is causing the stk500_recv() error:

This is where things get a little dicey. It may be that your Arduino board is bricked  — electronics speak for broken in a manner that does not allow fixing. But try these steps before you throw it out and buy a new board:

  • Check that the microcontroller is seated properly: Some Arduino boards have a removable microcontroller chip — the Arduino UNO, for example. Check that it’s seated properly on the circuit board.
  • Burn a new bootloader: The bootloader is a program on your microcontroller that allows sketches to run. A corrupt bootloader can cause the stk500_recv() error. Try burning a new bootloader on the microcontroller.
  • Swap out a spare microcontroller: Got a spare microcontroller handy? If the kaput Arduino board has a removable microcontroller, you could always replace it with your backup microcontroller. You’ll have to load the microcontroller with the bootloader — as described in the previous step.

Have you banished the dude?

By the time you get here, you’ll hopefully have banished the AVR dude back to the shadowy chaos realm from whence he sprung. With any luck, you’ll never meet him again. But if you do, now you have some tricks up your sleeve to get rid of the avrdude: stk500_recv() error swiftly and efficiently.

If you’re still getting the error, please read the comments below. You may find the hidden clue you’ve been looking for. Drop us a line in the comments if you don’t — someone out there may have faced the same problem.

And, of course, if you found a different solution, please leave a comment — it may help someone else.

Because sometimes evil dude banishment takes a village.

I had this problem when working with Arduino IDE and XOD running on top of it.
What I found; looked like baud rates were being set differently at different stages in the setup. I compared Windows ‘device settings’, arduino IDE settings and XOD settings…and they are not the same and seem to change ? …hence the ‘avrdude:stk500_**** errors!

To demonstrate

Connect an Arduino board to a PC USB socket.

  1. On Windows 7; Control Panel\ System and Security\System\ Device Manager… then double-click on ‘Ports (COM & LPT)

    You should see FTDI

    or

    USB-SERIAL CH340(COM7) … for a chinese serial com chip on the arduino board.
    Right-click on this and check ‘Properties\ Port Settings’ and note the ‘Bits per second’ value : e.g. 57600 … (write it down !)

  2. Open the arduino IDE and click on File\Preferences and tick the option ;’Show verbose output during: ‘upload‘.Then close the ‘Preferences’ screen.

  3. Load a small program that works. e.g. File\Examples\01.Blink

  4. In the for your arduino board setup in the Arduino IDE;

    Tools\Board … such as Arduino Nano

    Tools\Processor … such as ATmega328P

    Tools\Port:COM7 for example … make sure a tick is selected.

    Tools\Get Board Info … will show info from the arduino serial chip (a good sign your usb cable works!)

  5. On the IDE toolbar select;

    • ‘Verify’ and shortly it should show ‘Done Compiling’

    • Click ‘Upload’ and the Blink program should load into the arduino chip.

  6. Now here is the interesting observation; The ‘verbose message at the bottom of the IDE screen will indicate what ‘Overriding Baud Rate : XXXXX’ is being used! Write this number down next to the value you found on the Windows devices setting.

  7. Now, if you are a XOD man, leave the arduino IDE running and run XOD.

  8. Open the XOD IDE and open (Deploy) say the 01-hello program and load it into your arduino board.

  9. Select’welcome-xod’ and select 01-hello program on left-side menu.

  10. Select ‘Deploy\Upload to Arduino …’

  11. select ‘Board model:’ and ‘Serial port:’ … eg COM7

  12. Scroll up in the ‘Deployment ‘ window and there will be another value labeled ‘Overriding Baud Rate : e.g.115200’

I HAVE FOUND THESE BAUD RATE SETTINGS CHANGE INEXPLICABLY !

I hope my observations will throw some light on your problem of erratic uploads.

Rouslan пишет:

Здравствуйте!

При попытке загрузить скетч в Arduino Uno rev3 вылезает следующая ошибка: avrdude: stk500_recv(): programmer is not responding

Для информации: os x 10.9.1 или windows vista, Arduino Uno Rev3. 

При подключении ардуино, комп распознает ее как положено: в устройствах USB стоит «Manufacturer: Arduino (www.arduino.cc)«. Заметил странную особеннрость, когда пытаюсь загрузить скетч видно что данные с компа отправляются на плату (лампочка Rx на arduino начинает моргать), а вот сама плата не отсылает данные на комп (лампочка Tx не моргает). Из этого я сделал предположение, что возможно сам программатор (Atmega16U2) работает, а вот бутлоадер в нем полетел. Попытался перепрошить бутлоадер на Atmega16U2 с помощью друой платы ардуино, но первая плата так и не заработала.   

Еще одна странность, немогу ввести ардуино в DFU. 

Раньше все работало как положено как на os x, так и на windows.

Есть какие нибудь мысли по поводу того как можно оживить ардуино? Перелопатил интернет в поисках решения, но ничего толкого так и не нашел.

PS. Сам чип Atmega328P-PU работает, лампочка питания и лампочка от 13ого пина горят. 

Совершенно неожиданно у меня возникла проблема с добавлением нового скетча в Arduino. Arduino IDE стал зависать на моменте загрузки скетч в микроконтроллер на долгое время и потом выдавать множественные ошибки вида:

Код: Выделить всё

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x45
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x45
avrdude: stk500_recv(): programmer is not responding
.....
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x45
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x45

У меня была китайская Arduino Uno rev3, с которой я работал уже полгода без проблем. Покупал тут в составе набора для изучения (Starter Kit), и ей даже китайский драйвер CH340 не понадобился, заработала с фирменным из состава IDE. И внезапная ошибка «avrdude: stk500_recv(): programmer is not responding» меня — неопытного новичка, немного напугала. Четких инструкций для решения я не смог найти: либо старая версия IDE с несуществующими командами, либо не мой случай. Но вот, что случилось у меня. У китайцев для прошивки контролеров без USB (типа Arduino Mini) я прикупил программатора USBasp, который надо подключать к разъему ICSP на плате и немного «поиграл» с ним для проверки, заливая программу в большую Arduino Uno.

Разъемов, кстати, две штуки на плате, еще один для прошивки самого контролера USB интерфейса. Но нам это не нужно.
Изображение
И я так понял: при использовании программатора напрямую в ATmega заливается только сам скомпилированный код HEX, что позволяет сэкономить немного памяти для больших программ. А для работы через USB нужен еще и загрузчик Bootloader, который стирается программатором. И поэтому его нужно восстановить. Отключаем USB, подключаем назад USBasp и выбираем пункт Burn Bootloader, очень быстро внизу появится сообщение, что загрузчик успешно загружен и все! Можно снова подключаться по USB и работать как раньше.

Обратите внимание, что у меня выбран тип программатора USBasp (programmer), тип платы Arduino/Genuino Uno, а виртуального порта подключения нет, потому что USB отключен.

А вот если в меню выбрать пункт Export compiled Binary, то в папке проекта мы получи два файла:

  • test.ino.with_bootloader.standard.hex
  • test.ino.standard.hex

Которые будут отличаться небольшим куском кода, добавленным в конце.

Эти файлы нужно прошивать опять же программатором, использую специальные программы. Например, тот же AVRDude, название которого мы видим в ошибке.
Изображение
Но это уже другая история, свою проблему я решил, чего и вам желаю.

Вот нашел такое упоминание этого процесса в разделе про доступную память устройства.

https://arduinomaster.ru/platy-arduino/ … duino-uno/

Когда вы прошиваете контроллер своим скетчем, он записывается именно сюда. 2кБ из данного пула памяти отводится на bootloader- программу, которая занимается инициализацией системы, загрузки через USB и запуска скетча.

Драйвер USBasp-win-driver-x86-x64-v3.0.7.zip для своего китайского USBasp программатора я скачал отсюда USBasp AVR Programmer, Program Atmel AVR microcontrollers:

https://protostack.com.au/shop/accessor … -downloads

Ставил его на Windows 7 SP1 x64, устройство в системе появилось с названием libusbK Usb Devices. Драйверы есть еще у Zadig, на его сайт ссылается сам Thomas Fischl.

Понравилась статья? Поделить с друзьями:
  • Avrdude prog ошибка при чтении
  • Avrdude prog ошибка при запуске приложения 0xc000007b
  • Avr relay weld apc ошибка
  • Avl 109 ошибка f08
  • Avp exe ошибка приложения