Не загружается скетч через USB (avrdude: stk500_recv(): programmer is not responding)

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Всем привет!

Понимаю, это 1001-й вопрос с ошибкой avrdude: stk500_recv(): programmer is not responding, но я перепробовал кажется все возможные варианты решения проблемы и не знаю, куда двигаться дальше.

Дано: плата Arduino UNO Rev3 оригинальная, Arduino IDE 1.8.19, Windows 11.

Акт 1.

Изначально Windows не видела плату, вернее определяла её как ATmega16U2. Выяснил, что это контроллер USB и надо бы его прошить. Установил Flip, драйверы для USB и каталога Flip, после чего смог прошить контроллер hex, найденным в Github (после пробовал перепрошивать с помощью hex из поставки Arduino IDE, но они кажется одинаковые). Плата начала определяться в диспетчере устройств с присвоенным портом COM4. IDE её тоже увидела. Я уж было возрадовался и попробовал залить blink, но не тут то было. Возникла та самая ошибка про неотвечающий программатор. Решил, что проблема связана с загручиком и надо бы его перезалить. Перед этим пробовал вытаскивать ATmega328P и вставлять обратно (мало ли что), но безрезультатно.

Акт 2.

Приобрёл популярный программатор USBasp. Попробовал залить загрузчик, но испугался по началу предупреждений от avrdude. Включил подробный лог загрузки. В итоге кажется всё OK (и запись и чтение по 100%). Затем залил скетч через программатор и о чудо, диод L заморгал с секундной задержкой! Но через USB по-прежнему глухо. Знаю, что перезатёр загрузчик предыдущим действием, поэтому предварительно залил его ещё раз.

Итог:

В логе загрузки вижу

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 "C:\Users\rchig\OneDrive\���������\ArduinoData\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"
 
         Using Port                    : COM4
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x02
 
Диод L горит постоянно. TX не загорается во время загрузки, только RX изредка. Если грешить на кабель, то не является ли признаком его работоспособности факт того, что я перепрошил контроллер USB? Кнопу reset жал и так и сяк. В IDE плата выбрана верно, порт не сменить, инф-цию о плате можно получить без проблем.
 
Знакомство с Arduino выходит так себе. :(
 
b707
Offline
Зарегистрирован: 26.05.2017

История про " не понимаешь - не лезь"
Ардуина совершенно верно определялась компом как атмега16, а вас кто-то дернул ее перешивать.

вероятнее всего своим "Актом 1" вы стерли из чипа, что служит USB-COM-мостом (Атмега16U ?) оригинальную прошивку . Что вы там потом за HEX нашли на гитхабе и насколько он вообще подходит к вашей плате - неизвестно.

А все действия? начиная с Акта2 - не имеют ни малейшего отношения к восстановлению прошивки в Атмеге16U и потому никак не могут решить проблему.

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Спорить не стану. Не понимаю.

Решение по перепрошивке ATmega16U2 вычитал где-то в интернетах. Следовал инструкции с Амперки. HEX кажется брал отсюда: https://github.com/arduino/ArduinoCore-avr. Но я написал, что впоследствии взял HEX из поставки Arduino IDE ("C:\Documents and Settings\rchig\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.5\firmwares\atmegaxxu2\arduino-usbserial\Arduino-usbserial-atmega16u2-Uno-Rev3.hex"). Но ничего не поменялось. Flip рапортует об успехе. Arduino видна в диспетчере задач с присвоенным портом.

Допустим я накосячил с первым актом. Как быть дальше? Есть какая-то возможность диагностировать ATmega16U2?

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

ваши действия через IDE:
1. выбрать плату UNO
2. выбрать ваш программатор - USBISP
3. подключить UNO к USBISP
4. В IDE выбрать порт занятый программатором
5. В IDE - Инструменты - Записать загрузчик
После этого в чипе atmega328p всё по фэншую,
отсоединяем программатор, втыкаем USB шнур в UNO
и выбираем порт
Далее из примеров берем блинк без делэй и пробуем зашить,

если после этого лыжи не едут то возможны две проблемы
 

 

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

ua6em пишет:

ваши действия через IDE:
1. выбрать плату UNO
2. выбрать ваш программатор - USBISP
3. подключить UNO к USBISP
4. В IDE выбрать порт занятый программатором
5. В IDE - Инструменты - Записать загрузчик
После этого в чипе atmega328p всё по фэншую,
отсоединяем программатор, втыкаем USB шнур в UNO
и выбираем порт
Далее из примеров берем блинк без делэй и пробуем зашить,

если после этого лыжи не едут то возможны две проблемы

USBasp

b707
Offline
Зарегистрирован: 26.05.2017

rchigvintsev

Второй HEX, что вы взяли из поставки Ардуино ИДЕ - должен подойти. Кто такой Flip не знаю. Попробуйте прошить этот Хекс программатором USBASP, который вы использовали для восстановления загрузчика в основном чипе. Только не перепутайте, к какому разъему ISP подключаться. на вашей Уно их два:

разъем чипа атмега16 на этой картинке слева. рядом с большим USB коннектором

b707
Offline
Зарегистрирован: 26.05.2017

ua6em пишет:

ваши действия через IDE:
1. выбрать плату UNO
2. выбрать ваш программатор - USBISP
3. подключить UNO к USBISP
4. В IDE выбрать порт занятый программатором
5. В IDE - Инструменты - Записать загрузчик
После этого в чипе atmega328p всё по фэншую,
отсоединяем программатор, втыкаем USB шнур в UNO
и выбираем порт
Далее из примеров берем блинк без делэй и пробуем зашить,

если после этого лыжи не едут то возможны две проблемы
 

делаешь ту же ошибку. что и ТС - забываешь, что на оргинальной Уне два МК.

Пункты выше - это восстановление загрузчика в АТМЕГЕ328.

Но если наш ТС снес прошивку в атмеге16, это все бестолку.

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Спасибо за ответ, но есть вопросы:

1. Программатора такого в IDE нет. Есть USBasp. С ISP есть всякие варианты вроде AVR ISP, AVRISP mkII и т.п.

2. Программатор кажется не занимает какой-либо порт. Он виден в диспетчере задач в ветке libusbK Usb Devices. Порт ему не присвоен.

В такой конфигурации запись загрузчика генерирует вот такой лог (не знаю, как спрятать его под спойлер):

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 "C:\Users\rchig\OneDrive\���������\ArduinoData\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"
 
         Using Port                    : usb
         Using Programmer              : usbasp
avrdude: Warning: cannot open USB device: Function not implemented
         AVR Part                      : ATmega328P
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         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  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 : usbasp
         Description     : USBasp, http://www.fischl.de/usbasp/
 
avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: AVR device initialized and ready to accept instructions
 
Reading | ################################################## | 100% 0.00s
 
avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: erasing chip
avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: reading input file "0x3F"
avrdude: writing lock (1 bytes):
 
C:\Users\rchig\OneDrive\Документы\ArduinoData\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude -CC:\Users\rchig\OneDrive\Документы\ArduinoData\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf -v -patmega328p -cusbasp -Pusb -Uflash:w:C:\Users\rchig\OneDrive\Документы\ArduinoData\packages\arduino\hardware\avr\1.8.5/bootloaders/optiboot/optiboot_atmega328.hex:i -Ulock:w:0x0F:m 
 
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 "C:\Users\rchig\OneDrive\���������\ArduinoData\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"
 
         Using Port                    : usb
         Using Programmer              : usbasp
avrdude: Warning: cannot open USB device: Function not implemented
         AVR Part                      : ATmega328P
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         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  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 : usbasp
         Description     : USBasp, http://www.fischl.de/usbasp/
 
avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
Writing | ################################################## | 100% 0.00s
 
avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x3F:
avrdude: load data lock data from input file 0x3F:
avrdude: input file 0x3F contains 1 bytes
avrdude: reading on-chip lock data:
 
Reading | ################################################## | 100% 0.00s
 
avrdude: verifying ...
avrdude: 1 bytes of lock verified
avrdude: reading input file "0xFD"
avrdude: writing efuse (1 bytes):
 
Writing | ################################################## | 100% 0.00s
 
avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0xFD:
avrdude: load data efuse data from input file 0xFD:
avrdude: input file 0xFD contains 1 bytes
avrdude: reading on-chip efuse data:
 
Reading | ################################################## | 100% 0.00s
 
avrdude: verifying ...
avrdude: 1 bytes of efuse verified
avrdude: reading input file "0xDE"
avrdude: writing hfuse (1 bytes):
 
Writing | ################################################## | 100% 0.00s
 
avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xDE:
avrdude: load data hfuse data from input file 0xDE:
avrdude: input file 0xDE contains 1 bytes
avrdude: reading on-chip hfuse data:
 
Reading | ################################################## | 100% 0.00s
 
avrdude: verifying ...
avrdude: 1 bytes of hfuse verified
avrdude: reading input file "0xFF"
avrdude: writing lfuse (1 bytes):
 
Writing | ################################################## | 100% 0.00s
 
avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xFF:
avrdude: load data lfuse data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse data:
 
Reading | ################################################## | 100% 0.00s
 
avrdude: verifying ...
avrdude: 1 bytes of lfuse verified
 
avrdude done.  Thank you.
 
avrdude: AVR device initialized and ready to accept instructions
 
Reading | ################################################## | 100% 0.00s
 
avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: reading input file "C:\Users\rchig\OneDrive\���������\ArduinoData\packages\arduino\hardware\avr\1.8.5/bootloaders/optiboot/optiboot_atmega328.hex"
avrdude: writing flash (32768 bytes):
 
Writing | ################################################## | 100% 0.00s
 
avrdude: 32768 bytes of flash written
avrdude: verifying flash memory against C:\Users\rchig\OneDrive\���������\ArduinoData\packages\arduino\hardware\avr\1.8.5/bootloaders/optiboot/optiboot_atmega328.hex:
avrdude: load data flash data from input file C:\Users\rchig\OneDrive\���������\ArduinoData\packages\arduino\hardware\avr\1.8.5/bootloaders/optiboot/optiboot_atmega328.hex:
avrdude: input file C:\Users\rchig\OneDrive\���������\ArduinoData\packages\arduino\hardware\avr\1.8.5/bootloaders/optiboot/optiboot_atmega328.hex contains 32768 bytes
avrdude: reading on-chip flash data:
 
Reading | ################################################## | 100% 0.00s
 
avrdude: verifying ...
avrdude: 32768 bytes of flash verified
avrdude: reading input file "0x0F"
avrdude: writing lock (1 bytes):
 
Writing | ################################################## | 100% 0.01s
 
avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x0F:
avrdude: load data lock data from input file 0x0F:
avrdude: input file 0x0F contains 1 bytes
avrdude: reading on-chip lock data:
 
Reading | ################################################## | 100% 0.00s
 
avrdude: verifying ...
avrdude: 1 bytes of lock verified
 
avrdude done.  Thank you.
 
kalapanga
Offline
Зарегистрирован: 23.10.2016

Процедура эта (что в первом акте) даже у ардуин на сайте описана. https://support.arduino.cc/hc/en-us/articles/4411209176722-If-Arduino-UN...

и далее там по ссылке собственно процесс прошивки. Так что если всё по инструкции делал, то вроде как и ничего криминального.

Странно только, что оригинальная ардуина в недоделанном виде прийти может.

Можно попробовать loopback test https://support.arduino.cc/hc/en-us/articles/360020366520-How-to-do-a-loopback-test

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Спасибо! Можно попробовать прошить программатором. Flip - это Atmel'овская утилита для прошивки их чипов (https://www.microchip.com/en-us/development-tool/flip). Делал всё по вот этой инструкции: http://wiki.amperka.ru/%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0-%D0%B8-%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-arduino-ide:arduino-uno-update-16u2.

b707
Offline
Зарегистрирован: 26.05.2017

kalapanga

Ну ок, если тут все по прописи - значит я не прав и зря влез. ТС делал все по инструкции и что-то пошло не так.

Однако остается вопрос, что делать дальше. Несмотря на то, что я ошибся в диагнозе, в качестве решения для себя я бы все равно выбрал сначало прошить ИСП-программатором атмегу16, а потом обновить загрузчкик в атмеге328.

Только. повторюсь. важно не перепутать ISP разъемы.

 

 

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Тест loopback успешно пройден. Мигают оба диода RX/TX. Сообщения сразу возвращаются. Значит USB-контроллер работает как надо? Но скетч всё равно не заливается. :(

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

К сожалению, не знаю, как прошить через ISP. Это ведь через IDE не сделать?

b707
Offline
Зарегистрирован: 26.05.2017

rchigvintsev пишет:

К сожалению, не знаю, как прошить через ISP. Это ведь через IDE не сделать?

вы уже делали это - это прошивка через внешний программатор, USBasp например.

Только сразу не подскажу, как прошить атмегу16 через Ардуино ИДЕ... проше найти любую оболочку для avrdude , типа Sinaprog

https://cxem.net/software/sinaprog.php

kalapanga
Offline
Зарегистрирован: 23.10.2016

rchigvintsev пишет:

Тест loopback успешно пройден. Мигают оба диода RX/TX. Сообщения сразу возвращаются. Значит USB-контроллер работает как надо? Но скетч всё равно не заливается. :(

По крайней мере про этот контроллер видимо можно забыть - работает. Дальше загрузчик идёт. Надо думать, что при его прошивке могло не так пойти... Но там вроде кроме выбора платы и ошибиться-то особо не в чем (правильная выбрана?). Уж или шьётся или нет. При прошивке загрузчика точно никаких нехороших сообщений не было?

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Кажется справился с SinaProg. Выбрал HEX, выбрал контроллер ATmega16, выбрал программатор USBasp, поискал контроллер (он нашёлся). После чего в секции Flash нажал Program. Программа сказала, что всё OK. После этого перезалил загрузчик на всякий случай. Но всё тщетно.

Что же ещё нужно этой капризной итальяшке? Шерсть козла и кровь девственницы?

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Выше есть моё длинное сообщение с логом после прошивки загузчика. Предупреждения есть вроде avrdude: Warning: cannot open USB device: Function not implemented, но операция похоже всё же завершается успехом. Или нет?

Плата правильная - Uno.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Я для таких работ использую портабле версию 1.8.3, с 1.8.9 были проблемы

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

rchigvintsev пишет:

К сожалению, не знаю, как прошить через ISP. Это ведь через IDE не сделать?

через IDE и делается

толстый
Offline
Зарегистрирован: 10.02.2020

rchigvintsev пишет:

Кажется справился с SinaProg. Выбрал HEX, выбрал контроллер ATmega16, выбрал программатор USBasp, поискал контроллер (он нашёлся). После чего в секции Flash нажал Program. Программа сказала, что всё OK. После этого перезалил загрузчик на всякий случай. Но всё тщетно.

Что же ещё нужно этой капризной итальяшке? Шерсть козла и кровь девственницы?

Надеюсь, что для заливки загрузчика вы перетыкаете в другой разьём :)

Ежели вам реально так не повезло и оба камня были пустые(что жутко странно), а не тупо не хватало дровей в системе, но уже, как грицца, поздно. С загрузчиком для 328 вы походу справились а вот флип для 16U2 прикольная штука, но есть нюанс, он не прошивает фюзы. А они для работы в качестве конвертера - другие. Через дудку можно/нужно  залить правильные. 

 

толстый
Offline
Зарегистрирован: 10.02.2020

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Заинтриговали. :)

Скачал AVRDUDE_PROG, подключил программатор, но флажки у меня выглядят немного по-другому:

При попытке установить их так, как у вас на скрине и запрограммирвать, прога зависает, а в логе видна ошибка верификации и предложение откатить изменения (скопировать текст не получилось).

 

толстый
Offline
Зарегистрирован: 10.02.2020

Да и хрен с ней. тут главное FF  во fuse low. Сначала  убедитесь что программатор видится и читает.

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Попробовал сейчас автоматическое программирование. Просто выбрал ATmega16U2, флаги никакие не менял. Нажал на кнопку "Запрограммить всё". В итоге сначала всё было неплохо, но в что-то пошло не так:

avrdude.exe: reading on-chip efuse data:
 
Reading | 100%
 
avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x0000
      0xf4 != 0x04
avrdude.exe: verification error; content mismatch
 
avrdude.exe: safemode: efuse changed! Was 4, and is now f4
Would you like this fuse to be changed back? [y/n]
 
Ну и прога висит. Видимо ждёт моего yes/no, только я никак не могу ей подсказать.
толстый
Offline
Зарегистрирован: 10.02.2020

Дубль два: Начните с малого - вкладка FUSE>чтение. 

Контроллер хитрый, работает в двух режимах.

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Чтение OK:

толстый
Offline
Зарегистрирован: 10.02.2020

Ставьте/убирайте галки в первых трёх областях и жмякайте программирование

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Что-то таки получилось:

толстый
Offline
Зарегистрирован: 10.02.2020

Хня получилась :) галки ставить как на моём скрине и не обращать внимание на серые области. D9 и  FF должны быть полюбому.

толстый
Offline
Зарегистрирован: 10.02.2020

Правда уже снята галка на RSTDISBL ( вот на х... ????????? ) так что уже не факт что будет шиться.

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Не шьётся. :) Команду снимать/ставить галки воспринял буквально: там где была галка, убрал и наоборот. Надежда потеряна?

mifar
Offline
Зарегистрирован: 07.04.2021

rchigvintsev пишет:

Не шьётся. :)

толстый песец подкрался незаметно

толстый
Offline
Зарегистрирован: 10.02.2020

Угу.  Я бл... специально нашёл UNU, выкопал из закромов программатор, вспомнил как тут по-грёбаному выкладываются картинки и выложил и вот что я пыжился?  Короче сочувствую. Привести в порядок можно, но нужен другой программатор(интересно а фюзе доктор поможет?) Доп. проблема, что контроллер в BGA корпусе и так просто к нему не подцепишся.:(

толстый
Offline
Зарегистрирован: 10.02.2020

А попробуйте повторить историю с флипом. Чем там кто-то не шутит и вдруг он как-то на фюзы влияет и вернёт их на заводские. Маловероятно, но а вдруг.

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Я её похоже надёжно вырубил. В диспетчере задач плата не видна, соответственно Flip до неё не дотянется.

Есть теперь какие-то варианты восстановления, помимо выдувания контроллера с платы? Что за fuse doctor? Как к нему записаться на приём? И что за другой программатор?

v258
v258 аватар
Offline
Зарегистрирован: 25.05.2020

rchigvintsev пишет:

И что за другой программатор?

https://www.radiokot.ru/circuit/digital/pcmod/72/

толстый
Offline
Зарегистрирован: 10.02.2020

fuse doctor  - аппаратная приблуда для автоматического востановления фюзов. Но не факт, что этот контроллер поддерживается.

Программатор любой параллельный для т.н. высоковольтного программирования.

 Основная проблема - это подпаяться к площадкам этого типа корпуса.

 

толстый
Offline
Зарегистрирован: 10.02.2020

Думаю усилия по оживлению не стоят того и если уж у вас есть USBASP, то и шейте через него. В случае необходимости глянуть в сериал порт есть отдельные конвертеры. А если использовать сигнал DTR,  то и отличий не заметите(ну, кроме висящей сбоку приблуды)

А ведь я там потом успел дописать про картинку, но с сайта выкинуло с ошибкой при сохранении:(

rchigvintsev
Offline
Зарегистрирован: 15.06.2022

Почитал немного про Atmega fusebit doctor. Вроде можно с помощью него 16U2 восстановить, но только не понял, это через ICSP уже никак не сделать?

Ну а в целом да, скетчи успешно и через программатор заливаются.

Спасибо за попытку помочь! Не знал, что фьюзы - такая коварная штука. :)

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Да уж, все эти загрузчики... 

толстый
Offline
Зарегистрирован: 10.02.2020

Не, только параллельный программатор. Жаль, что так вышло. А ведь почти получилось. Возможно:)

Это вы ещё SPIEN не зацепили( хорошо, что отключен доступ из оболочки:)

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

толстый пишет:

Не, только параллельный программатор. Жаль, что так вышло. А ведь почти получилось. Возможно:)

Это вы ещё SPIEN не зацепили( хорошо, что отключен доступ из оболочки:)

а чего ты ждал, выдал на руки юнцу оторвавшемуся от мамкиной сиськи ДШК, а потом надо жеж, так получилось )))

толстый
Offline
Зарегистрирован: 10.02.2020

Этот "юнец" адекватно воспринимает советы, сам разобрался в синапроге, сам без доп. вопросов нашёл дудку и адекватно принял неудачу и не стал обвинять других. Т.ч. Он повзрослее некоторых будет, а опыт и знания придут со временем. Тут как в анекдоте про"а у Вас ноги кривые, ужасно кривые, омерзительно кривые, а я завтра трезвым буду" :) 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

оно и видно, теперь ему предстоит сдуть камень бежать в любой сервисный центр и там фитоновским программатором залить прошивку...
Новичкам, а он новичок, советовать что-то кроме IDE крайне неполезно, созреет, сам найдёт необходимую информацию

b707
Offline
Зарегистрирован: 26.05.2017

нано лучше, там только один чип....

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

нано лучше, там только один чип....


или китайская UNO )))

Получилось как в азбуке - "многие знания многие печали"
 

b707
Offline
Зарегистрирован: 26.05.2017

толстый пишет:

он не прошивает фюзы. А они для работы в качестве конвертера - другие.

а можно подробнее, какие "другие" фьюзы требуются для работы в качестве конвертера. Другие по отношению к чему?

толстый
Offline
Зарегистрирован: 10.02.2020

Ну как минимум делитель на 8 и работа с кварцем(другие относительно заводских). Наверное для синхронной скорости с 328.

Собирал конвертер на AT90USB162(типа почти копия) и заливал также флипом. Не заработала пока не содрал фюзы у оригинальной UNO и не залил в этот. 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

как-то картинко с калькулятором фьюзов не совпадает

на APM2.6 (это mega2560) и чип 32U4 и mega2560 шьются через стандартный USB порт чипа32U4 только когда шьёшь 32U4 его надо перевести в режим программирования, замкнув перемычки

толстый
Offline
Зарегистрирован: 10.02.2020

И? так же, как и 16U2 - "сам себе программатор" . Флип для этого и нужен. Чтоб без программатора, один бл.., сам бл... :) 

b707
Offline
Зарегистрирован: 26.05.2017

толстый пишет:

Ну как минимум делитель на 8 и работа с кварцем

на вашей картинке в #70 делитель на 8 выключен. Может вы путаете прямые и обратные фьюзы? Обратите внимание на бит SPIEN - по нему всегда можно определить тип фьюзов, поскольку по умолчанию SPIEN всегда ON и защищен от изменения

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