Загрузка прошивки в Atmega1284p с использованием ESP8266 с AVRISP в качестве программиатора

Я пытаюсь прошить новую прошивку для своего Ender 3 Pro.

Я использую ESP8266 в качестве ISP через AVRISP по Wi-Fi.

У меня есть конденсатор 10 Мф между землей и сбросом ESP8266

Я следовал этой теме: ESP8266 как программа ISP для ATmega16

При загрузке я получаю следующий вывод на консоли:

C:\Users\Chry>"I:\3dPrints\Firmware Pack Source Folder\Windows Arduino\hardware\tools\avr/bin/avrdude" -C "I:\3dPrints\Firmware Pack Source Folder\Windows Arduino\hardware\tools\avr/etc/avrdude.conf"
-v -V -p atmega1284p -c arduino -P net:192.168.178.59:328 -b 115200 -D -U flash:w:C:\Users\Chry\AppData\Local\Temp\arduino_build_166520/TH3DUF_R2.ino.hex:i

avrdude: Version 6.3-20171130
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "I:\3dPrints\Firmware Pack Source Folder\Windows Arduino\hardware\tools\avr/etc/avrdude.conf"

         Using Port                    : net:192.168.178.59:328
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
avrdude: ser_drain(): read error: Falscher Parameter.

avrdude: ser_drain(): read error: Falscher Parameter.

avrdude: ser_drain(): read error: Falscher Parameter.

         AVR Part                      : ATmega1284P
         Chip Erase delay              : 55000 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    10   128    0 no       4096    8      0  9000  9000 0xff 0xff
           flash         65    10   256    0 yes    131072  256    512  4500  4500 0xff 0xff
           lock           0     0     0    0 no          1    0      0  9000  9000 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
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00

         Programmer Type : Arduino
         Description     : Arduino

avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x14

avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x10
         Hardware Version: 4744608
         Firmware Version: 0.2
         Topcard         : STK502
         Vtarget         : 1.8 V
         Varef           : 0.0 V
         Oscillator      : Off
         SCK period      : 0.1 us

avrdude: stk500_initialize(): (b) protocol error, expect=0x10, resp=0x01
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.

avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x10

avrdude done.  Thank you.

Кажется, я не могу заставить его работать. У кого-нибудь есть какие-нибудь идеи?

Я попытался запрограммировать его напрямую: Я использую стандартный скетч Arduino ISP на своем ESP8266 и пытаюсь загрузить его таким образом. Напрямую подключил ESP8266 к моему компьютеру. Сейчас у меня проблемы с синхронизацией: avrdude: stk500_getsync() попытка 9 из 10: не синхронизировано: соотв.=0x61 Плата в arduino IDE установлена на Sanguino 1284p, а программатор установлен на Arduino в качестве ISP.

, 👍1

Обсуждение

У меня есть конденсатор 10 Мф между землей и сбросом ESP8266. Я также отредактирую эту информацию в вопросе., @Chry007

нашел это ... https://github.com/arduino/Arduino/issues/730, @jsotola

Это выходит за рамки моего понимания. Однако я изменил планы. Я использую стандартный скетч Arduino ISP на своем ESP8266 и пытаюсь загрузить его таким образом. Напрямую подключил ESP8266 к моему компьютеру. Сейчас у меня проблемы с синхронизацией: avrdude: stk500_getsync() попытка 9 из 10: не синхронизировано: соотв.=0x61, @Chry007

вы не одиноки https://github.com/esp8266/Arduino/issues/6517#issuecomment-531480035 Я попробую это сделать сегодня. Я протестировал его в январе 2018 года, и тогда он работал, @Juraj

https://github.com/esp8266/Arduino/issues/6519#issuecomment-531551733, @Juraj

10миллиФарад или 10микроФарад? 0,1 микроФарад обычно используется, когда вы пытаетесь создать импульс сброса для последовательных загрузок. Для программирования через контакты SPI - SCK, MOSI, MISO - Сброс управляется напрямую., @CrossRoads


1 ответ


1

Я предполагаю, что вам нужно обернуть каталог в опцию-U flash:w:C:\Users\Chry\AppData\Local\Temp\arduino_build_166520/TH3DUF_R2.ino.hex:я с "s. Я не обещаю, что это сработает с этим изменением, но C:\Users... определенно собьет с толку синтаксический анализатор из-за :!

,