Не удается загрузить скетч - avrdude: butterfly_recv(): programmer is not responding
Я пытаюсь загрузить пример Blink для запуска на pro-micro (leonardo), но он больше не работает (он работал только вчера).
Шаги по воспроизведению:
- Подключите устройство к USB-порту
- Пример открытия Blink в Arduino IDE (версия 1.8.8)
- Выберите порт и плату в соответствии с Arduino Leonardo
- Скомпилируйте и попробуйте загрузить его.
Код успешно компилируется, но при загрузке он просто останавливается. Консоль ide отображает:
avrdude: ошибка: программатор не ответил на команду: выйти из загрузчика
Принудительный сброс с использованием открытия / закрытия 1200 бит / с на ПОРТАХ port / dev / ttyACM0 {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} ПОРТЫ {/dev/ttyACM0, } / {/dev/ttyACM0, } => {} Загрузка с использованием выбранного порта: /dev/ttyACM0 /главная/fabio/Загрузки/pacotes/arduino-1.8.8/оборудование /инструменты/avr/bin/avrdude -C/главная страница/fabio/Загрузки/pacotes/arduino-1.8.8/оборудование/инструменты/avr/etc/avrdude.conf -v -patmega32u4 -cavr109 -P/dev/ttyACM0 -b57600 -D -Uflash:w:/tmp/arduino_build_350609/Blink.ino.hex:я
avrdude: Версия 6.3-20171130 Авторское право (c) 2000-2005 Брайан Дин, http://www.bdmicro.com / Авторское право (c) 2007-2014 Йорг Вунш
System wide configuration file is "/home/fabio/Downloads/pacotes/arduino-1.8.8/hardware/tools/avr/etc/avrdude.conf" User configuration file is "/home/fabio/.avrduderc" User configuration file does not exist or is not a regular file, skipping Using Port : /dev/ttyACM0 Using Programmer : avr109 Overriding Baud Rate : 57600 AVR Part : ATmega32U4 Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PA0 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 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 9000 9000 0x00 0x00 flash 65 6 128 0 yes 32768 128 256 4500 4500 0x00 0x00 lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00 efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00 lock 0 0 0 0 no 1 0 0 9000 9000 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 : butterfly Description : Atmel AppNote AVR109 Boot Loader
Connecting to programmer: .avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
Странное поведение, которое я заметил, заключается в том, что каждый раз, когда я снова подключаю устройство к USB-порту, загораются разные светодиоды, иногда только RX, иногда только TX, а иногда и нет (индикатор питания всегда включен)
Что здесь может происходить? Может ли это быть проблемой с оборудованием?
@Fabiotk, 👍5
2 ответа
Я успешно решил эту проблему год назад и пытаюсь вспомнить, как я это сделал. Так что, пока это свежо в моей голове, эта штука имеет отношение к загрузчику.
Первое и самое очевидное, что вы можете сделать, - это попытаться дважды соединить сброс и контакт заземления. Двойное нажатие на него заставит Arduino сбросить настройки и запуститься в загрузчике в течение 8 секунд.
Вот как мне удалось установить драйвер для моего pro-micro, он не установился бы, если бы вы не сделали это, когда Arduino находился в режиме загрузчика. Но эта стратегия по какой-то причине не работает для загрузки кода, хотя многие люди утверждают, что это было единственное, что помогло.
Еще одна вещь, которая, возможно, могла бы помочь, - это очистка кэша Arduino. Когда я пытался скомпилировать год назад, после многих попыток мне приходилось время от времени очищать pro-micro с помощью другого Arduino (это может понадобиться вам позже). [примечание thebusybee: я никогда не слышал о кеше в AVR micros. Если скетч будет загружен, он будет перенесен в энергонезависимую память, перезаписав все, что было на его месте раньше.]
Что-то еще, что я вспомнил (если это так, то для меня это было бы очень проблематично), - это USB-кабель. Опять же, перед моим годичным перерывом я вспомнил, что загрузка скетча для меня работала только с 1 из примерно 15 кабелей micro-USB, которые у меня были (тот, который самый короткий и толстый). Сейчас этот кабель оборван, так что я не смогу по-настоящему проверить это, если не начну исследовать кабели microUSB прямо сейчас.
Наконец, это может быть система. Если ничего не работает, попробуйте загрузить скетч из другой, желательно чистой системы.
В любом случае, я надеюсь, что вы решите эту проблему, потому что я пытаюсь решить ту же проблему.
Удачи вам
Я испытывал одну и ту же неприятную проблему в течение нескольких дней. Это была Убунту.
Исправить это тоже было так просто: sudo apt purge modemmanager
Пока я не обнаружил это, у меня несколько дней болела голова.
Автоматическое обновление может вызвать проблемы с этой командой. Это можно решить с помощью следующей команды:
sudo dpkg-перенастройка -плуг без присмотра-обновления
При первом появлении запроса выберите не загружать и не устанавливать обновления. Затем перезагрузитесь.
- Arduino Pro Micro, получить данные с контакта Tx?
- Отправка мультимедийных клавиш клавиатуры с помощью библиотеки клавиатур
- Распиновка аналога Arduino Pro Micro
- Keyboard.h: Нет такого файла или каталога - Arduino pro micro (leonardo)
- Arduino Pro Микро кирпичился?
- Arduino Pro Micro не распознается ПК
- Arduino Pro Micro – выключить светодиоды
- Не могу загружать шестнадцатеричные файлы вне Arduino IDE на Pro Micro
Святое дерьмо, это действительно сработало для меня. Я не смог запрограммировать клон Leonardo "SMAKN Beetle USB ATMEGA32U4 board", и это исправило ситуацию. Большое вам спасибо., @Cerin
На fedora и используя Pro Micro, я выполнил
systemctl restart ModemManager
и загрузил с помощью micro board на Arduino IDE., @programandoconroОчистка модема у меня тоже сработала! После удаления пакета важно перезагрузиться. Большое спасибо!, @Jesse Hallett