• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Не могу прошить ESP8266

BigBadBo

New member
Добрый вечер! Первый раз работаю с ESP8266, потребовалось выполнить следующий проект: Клавиатурный шпион [Амперка / Вики]

Использую Arduino 1.6.5. Собрал схему, аналогичную схеме под рис. 9, но без Iskra Mini, к COM-порту подключаю через Xbee-USB-Adapter, при загрузке скетча, появляется ошибка

warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed

Модуль работает - мигает синий диод и в сетях появилась точка доступа ESPap.

В чем может быть причина?
 

Victor

Administrator
Команда форума
В чем может быть причина?
Для автоматической прошивки из Arduino IDE требуется подключение DTR и RTS как в этой статье (Схема подключения с поддержкой автозагрузки прошивки из Arduino IDE, если у вас ESP-01, то у вас не будут подключены GPIO15 и GPIO16)
Либо вручную, перед прошивкой замыкать GPIO0 на землю и перезагружать модуль кратковременным отключением CH_PD или замыканием RESET на землю.
 

BigBadBo

New member
Для автоматической прошивки из Arduino IDE требуется подключение DTR и RTS как в этой статье (Схема подключения с поддержкой автозагрузки прошивки из Arduino IDE, если у вас ESP-01, то у вас не будут подключены GPIO15 и GPIO16)
Либо вручную, перед прошивкой замыкать GPIO0 на землю и перезагружать модуль кратковременным отключением CH_PD или замыканием RESET на землю.
Второй вариант не сработал (возможно, я просто не успеваю переключать провод с RESET с земли на 3.3v.
Собрав схему, получил следующие ошибки :(


error: failed sending 0xC0
error: failed sending 8 bytes
error: failed sending 36 bytes
error: failed sending 0xC0
error: failed sending 0xC0
error: failed sending 8 bytes
error: failed sending 36 bytes
error: failed sending 0xC0
error: failed sending 0xC0
error: failed sending 8 bytes
error: failed sending 36 bytes
error: failed sending 0xC0
error: failed sending 0xC0
error: failed sending 8 bytes
error: failed sending 36 bytes
error: failed sending 0xC0
error: failed sending 0xC0
error: failed sending 8 bytes
error: failed sending 36 bytes
error: failed sending 0xC0
error: failed sending 0xC0
error: failed sending 8 bytes
error: failed sending 36 bytes
error: failed sending 0xC0
error: failed sending 0xC0
error: failed sending 8 bytes
error: failed sending 36 bytes
error: failed sending 0xC0
error: failed sending 0xC0
error: failed sending 8 bytes
error: failed sending 36 bytes
error: failed sending 0xC0
error: failed sending 0xC0
error: failed sending 8 bytes
error: failed sending 36 bytes
error: failed sending 0xC0
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
 

Victor

Administrator
Команда форума
получил следующие ошибки
попробуйте сначала прошить стандартной
FLASH DOWNLOAD TOOL 2.4 от 24.09.2015
в ней не требуется успевать переключать, т.е. можно заблаговременно подключить GPIO0 к земле и перезагрузить модуль (без перезагрузки USB_TTL)
когда здесь все будет получаться, то перейдете к Arduino IDE
 

BigBadBo

New member
попробуйте сначала прошить стандартной
FLASH DOWNLOAD TOOL 2.4 от 24.09.2015
в ней не требуется успевать переключать, т.е. можно заблаговременно подключить GPIO0 к земле и перезагрузить модуль (без перезагрузки USB_TTL)
когда здесь все будет получаться, то перейдете к Arduino IDE
Просто залипла надпись NODEMCU TEAM и reuire(wifi), require(gpio), connect.world()...

Я использую XBee-USB адаптер / узнать больше, купить в Амперке для прошивки вместо USB-TTL. Может, есть какие-то тонкости в подключении данного конкретного адаптера?
 

VicSpectator

New member
Доброго времени суток. Топикстартер, похоже, своё дело до конца не довёл. Зато у меня возникла та же проблема.
Среда и железка ардуино, взят пример сервера, компилится. Но не заливается. В процессе заливки на ардуино моргает Rx. Всё завершается ошибкой, как у топикстартера:
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed
Сама ESP работает. Отладочную информацию и ready видел.
Для прошивки подключаю в USB, при этом RESET ардуино на земле, чтобы плата не работала. Подтягиваю GPIO0 к земле перемычкой. Далее кратковременно RESET на ESP. Заливаю. И вот тут возникает ошибка. Из перечисленных мною процедур ошибочные есть?
 

VicSpectator

New member
а команды с клавиатуры она принимает? (т.е. ready говорит о том, что от ESP8266 данные поступают, но надо убедится и в том что передача данных в ESP тоже работает)
Хорошая идея! Но как проверить приём модулем ESP данных извне? Что значит с клавиатуры? У меня там висит прошивка базовая. Или речь всего лишь об AT-командах? :) Завтра проверю.
 

Andy Korg

Moderator
Команда форума
...Из перечисленных мною процедур ошибочные есть?
Насчет процедур не скажу, но вот буквально на днях прошивал платой easyelectonicsСнимок1.JPG , землю сажал как всегда на дальний контакт (красными стрелочками отметил). Не прошивается хоть ты тресни. Переставил на ближний, чисто по приколу, и на тебе - все прекрасно работает!
Это я к чему - укоротите провода, землю по возможности в одну точку соберите.
 

VicSpectator

New member
Спасибо за советы, уже вооружился мультиметром, чтобы проверять"землю" :) Только пока что проблема, должно быть, в другом. AT отправлял, не отвечает. Хотя на платке ардуино при отправке команды AT моргает RX. При отправке модулем служебной информации и ready моргает TX платы ардуино. Вроде всё нормально. Попробовал залить библиотечный скетч передачи из аппаратного UART в программный. Скорость 115200 везде выставил, но вот теперь ready приходит в искаженном виде. Понятно, что скорее всего виновата программная реализация UART. Шокирует то, что на команду AT модуль отвечает, пусть и в искаженном виде :)
UPD:
Начал вспоминать, как запускали свою ESP-01. Я был в шоке, когда с одного компьютера AT прокатывало, а с другого - нет. Нетрудно догадаться, что с моего ноутбука не отправлялось :) Лечилось уменьшением скорости работы модуля с того ноутбука, где работало на высокой. Так что подожду другого ноутбука и протестирую. Может быть у кого-то та же проблема.
Вопрос: При заливке скетчей ардуино выбирается плата и куча настроек. Как узнать, какие настройки необходимо указать? Можно ли будет прошиваться на той скорости, на которой мне удобно? То есть задать скорость работы 9600 и заливать с такой же скоростью.
 
Последнее редактирование:

VicSpectator

New member
Тут чуток улучшилось состояние. Теперь я с помощью программного ком-порта ардуино могу общаться с esp в обе стороны, но вот напрямую почему-то не хочет. Поскольку это не позволяет мне залить новую прошивку в esp (ведь правда?), я всё ещё недоволен. Напрямую возможен только приём от ESP. В какую сторону копать? :) Аппаратная часть esp, получается, исправна. TX и Rx при прямом подключении перепутать местами я не мог, потому что приём происходит исправно.
Какие необходимы настройки UART esp-модуля? У меня просто 8 данных, 1 стоп, без контроля чётности, без аппаратного управления.
 
Последнее редактирование:

VicSpectator

New member
Похоже, моя проблема при прошивке модуля решалась банально ликвидацией резистивного делителя на линии Rx. Есть, конечно, ещё некоторые неприятности и странности, но работать пока что можно и так, через среду ардуино и ардуиновский преобразователь USB-TTL.
Всем спасибо за помощь.
 

sER

New member
Здравствуйте уважаемые мастера.
Имею плату:

111.jpg
Версия прошивки старая, решил я обновить.
апавп.png
Скачал GitHub - nodemcu/nodemcu-flasher: A firmware Flash tool for nodemcu
Если прошиваю прошивкой по умолчанию (INTERNAL://NODEMCU)
nodemcu_integer_0.9.5_20150318.bin
то прошивка идёт
000.jpg
Собираю свою прошивку NodeMCU custom builds
Select branch to build from-master
Остальные галочки оставляю по умолчанию.
На почту пришёл ответ, скачиваю прошивку
nodemcu-master-7-modules-2017-05-17-06-48-43-float.bin
Кладу её по адресу:
nodemcu-flasher-master\Resources\Binaries

Далее скачиваю esp_init_data_default.bin
Resources | Espressif Systems
ESP8266 NONOS SDK V2.1.0 20170505
Из архива, из папки bin, копирую файл esp_init_data_default.bin в папку
nodemcu-flasher-master\Resources\Binaries

В NodeMCU Flasher перехожу на закладку Config и вместо INTERNAL://NODEMCU выбираю файл
nodemcu-master-7-modules-2017-05-17-06-48-43-float.bin
Operations>>>Flash(F).


При этом полоса загрузки не идёт, буквально сразу появляется надпись NODEMCU TEAM
456786.png

Далее выбираю esp_init_data_default.bin во вкладке Config
и адрес 0x3FC000
Полоса загрузки так же не идёт, появляется надпись NODEMCU TEAM
000000000.png
Прошивка не произошла. В чём дело?
 

oleksiy_kurka

New member
Люди добрые помогите :)
в азах перепрошивки esp8266 (у меня таже самая плата) я не понимаю но замечал один нюанс при записываемых проекта вesp8266.
я не перепрошивав esp8266 но при загрузке крупных проектов встречался с проблемой что USB порт не мог справиться с длинным проводом которым я в основном программирую и выбивало ошибку. Я подключил короткий и все заработало возможно вас такая же проблема что порт не может справиться с длинным проводом и программа для перепрошивки зависает
 

AlexandreVN

Member
По-сути все тоже самое. Модуль ESP12Е после прошивки сборки дохнет. Древняя прошивка с АТ командами с адреса 0х00000 возвращает к жизни. esp_init_data_default.bin на начало надо писать или как ТС указал на 0х3fc00 ?
 

AlexandreVN

Member
Во общем дело было в питании. Питал от внешнего источника 3,0В. Это и приводило к разнообразным эффектам после прошивки. Хотя все вроде прошивалось. Поставил 3,4В все глюки пропали разом. И шьется и стартует все как надо. Так что если у кого такое будет начинайте с питания. Может модуль и на 2,5В работает, но прошить не получается. Хоть и прошил, а вопросов стало в десять раз больше :).
1.
SDK 2.1 прошивал по инструкции производителя следующими файлами:
boot_v1.2+.bin 0x00000
user1.2048.new.5.bin 0x01000
esp_init_data_default.bin 0x3fc000 (optional)
blank.bin 0xfe000 & 0x3fe000


Кто может пояснить назначение каждого файла? Пробовал без blank.bin прошивать, разницы в работе не заметил. Также непонятно что значит optional? Без esp_init_data_default.bin тоже вроде работает, но точно не могу сказать.
Также есть прошивка at_sdio, чем она от AT отличается?

SDK 2.1.0 у меня прошивается и работает. Теперь засада с NodeMCU. Пробовал прошивать древнюю версию одним файлом с адреса 0x00000. Стартует нормально, на скорости 9600, правда не форматирует память автоматом после прошивки. Причем наличие или отсутствие esp_init_data_default.bin 0x3fc000 на работоспособность не влияет.
Пробовал прошивать сборку nodemcu-master-10-modules-2017-06-14-18-11-04-float.bin (nodemcu-master-10-modules-2017-06-14-18-11-04-integer.bin) с адреса 0x00000. Прошивается и стартует на скорости 115200. Сразу начинает форматировать память, через ~15 секунд в терминале такое (видимо wdt срабатывает):
Please, reset module or continue.

Formatting file system. Please wait...

ets Jan 8 2013,rst cause:4, boot mode: (3,7)

wdt reset
load 0x40100000, len 26772, room 16
tail 4
chksum 0xd8
load 0x3ffe8000, len 2432, room 4
tail 12
chksum 0x25
ho 0 tail 12 room 4
load 0x3ffe8980, len 136, room 12
tail 12
chksum 0x5e
csum 0x5e
csum err
ets_main.c


это при прошитом файле esp_init_data_default.bin 0x3fc000. Без файла esp_init таже беда но немного иначе:

Formatting file system. Please wait...

ets Jan 8 2013,rst cause:4, boot mode: (3,7)

wdt reset
load 0x40100000, len 27264, room 16
tail 0
chksum 0x76
load 0x3ffe8000, len 2436, room 8
tail 12
chksum 0x98
ho 0 tail 12 room 4
load 0x3ffe8984, len 136, room 12
tail 12
chksum 0x7b
csum 0x7b


В обоих случаях восстановить работу модуля не получается, только новая перепрошивка.
На форумах читал, что желательно не только подтягивать входя через резисторы, но и ставить небольшие конденсаторы 47н на землю. Но не уверен что в этом дело. ESP у меня установлена на белой макетной плате.
 
Последнее редактирование:
Сверху Снизу