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

Нужна помощь Впервые прошиваю ESP-12F. Не получается

kolio

Member
Прошу помощи без холивара и "ты ничего не понимаешь"

Купил ESP-12F, увы не знаю какая там прошивка - в принципе думаю не столь важно.
Я хочу перепрошить её из Arduino IDE 1.8.5
Паял схему вот такую:

При включении питания мигало 1 раз синим светодиодом и всё.
когда прошивал - говорило что-то там на счет synchronization failed
Потом кучу статей по этой ошибке и задумался "а вообще эта схема правильная?!!"
Как видно - на ней даже нет reset кнопки
и потом прочитал на этом сайте статью про прошивку ESP8266

Ну и там есть схема:


Спаял, и теперь при подаче напряжения синий светодиод не моргает
Пытаюсь прошивать так:
1. подаю питание через стабилизатор напряжения 3.3v рассчитанный до 1А - источик 2 батареи li-ion 18650 по 3.7v последовательно (собственно питание хорошее)
2. замыкаю BURN
3. кратковременно замыкаю и размыкаю RESET
4. Размыкаю BURN
5. пытаюсь прошить через Arduino IDE
6. сейчас выдает вот такое:

Archiving built core (caching) in: d:\temp\arduino_cache_888931\core\core_esp8266_esp8266_generic_CpuFrequency_80,FlashFreq_40,FlashMode_qio,UploadSpeed_115200,FlashSize_512K64,ResetMethod_ck,Debug_Disabled,DebugLevel_None_____497064ef5de90819bb494b2d5b50b3d0.a

Sketch uses 234489 bytes (54%) of program storage space. Maximum is 434160 bytes.
Global variables use 32312 bytes (39%) of dynamic memory, leaving 49608 bytes for local variables. Maximum is 81920 bytes.

C:\Users\Niko\AppData\Local\Arduino15\packages\esp8266\tools\esptool\0.4.9/esptool.exe -vv -cd ck -cb 115200 -cp COM4 -ca 0x00000 -cf d:\temp\arduino_build_941233/wifi.ino.bin

esptool v0.4.9 - (c) 2014 Ch. Klippel <ck@atelier-klippel.de>
setting board to ck
setting baudrate from 115200 to 115200
setting port from COM1 to COM4
setting address from 0x00000000 to 0x00000000
espcomm_upload_file
espcomm_upload_mem
setting serial port timeouts to 1000 ms
opening bootloader
resetting board
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 228 bytes of data
read 0, requested 1
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 36 bytes of data
read 0, requested 1
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 36 bytes of data
read 0, requested 1
resetting board
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 56612 bytes of data
read 0, requested 1
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 36 bytes of data
read 0, requested 1
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 36 bytes of data
warning: espcomm_send_command: wrong direction/command: 0x00 0x08, expected 0x01 0x08
resetting board
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 56576 bytes of data
read 0, requested 1
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 56612 bytes of data
read 0, requested 1
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 36 bytes of data
read 0, requested 1
error: failed reading byte
warning: espcomm_send_command: cant receive slip payload data
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed

Только что еще раз запустил и выдало вот такое:
всё то же, что и в предыдущем варианте, но в конце такое:
.....
warning: espcomm_send_command: wrong direction/command: 0x00 0x08, expected 0x01 0x08
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed

Хочу обратить внимание, что при замыкании RESET светодиод не мигает. Хотя я не знаю - должен ли?

Для прошивки юзаю TTL USB-TO-COM Profilic PL2303, который работает с 3.3V - проверял на втором Arduino - работает, данные туда, сюда принимает и передает.

Когда была первая схема, модуль хоть признаки жизни подавал, а на этой один раз синим светодиодом, что-то еле еле поморгал секунд 5 и всё.
Напряжение между VCC и GND на ESP 3.3V

Настройки Arduino IDE:


Какая-то грусть и печаль и спросить не у кого, что дальше делать. По этому я тут и оказался.
Прошу помощи знатоков
 

kolio

Member
хотел добавить: я не паял резистор 470 Ом обозначенный как deep sleep
 

gerkimuyda

New member
Начните не с прошивки, а с проверки правильности подключения к компу. Запустите терминал на нужный COM-порт с модулем и подключитесь на скорости 74880, потом запустите (или через reset) модуль. Если все ок - выдаст служебную информацию (пару строк). Если служебной информации нет - значит у вас именно физическая проблема подключения к компу. :cool: Если инфу видно - можно мучать ардурню. :D
Копайте в сторону правильности подключения. Когда будет служебка - тогда можно смотреть на режим bootmode (прошивка или работа) и пробовать шить. А пока разберитесь с этим. o_O
 

AndrF

Active member
Чисто как рекомендация - новичкам проще начинать с модулей Nodemcu. Хотя бы из-за того что на них собрано все необходимое и не надо каждый раз при прошивке жать кнопки...
 

kolio

Member
подключил через Arduino UNO, чтобы снимать логи через его COM-порт
пробовал на 9600, 74880 - увы при подаче питания на ESP12f ничего выдает
думаю есть смысл еще раз проверить схему на предмет ошибок

и он не мигает светодиодом как при первой схеме - может он бедолага и не запускается?

Еще читал, что некоторые через 10КОм GPIO2 садят на VCC 3.3v
 

CodeNameHawk

Moderator
Команда форума
Еще читал, что некоторые через 10КОм GPIO2 садят на VCC 3.3v
Вы писали
и там есть схема:
Спаял, и теперь
и теперь оказывается, что вы спаяли как то по другому, без резисторов.
 

nikolz

Well-known member
Прошу помощи без холивара и "ты ничего не понимаешь"

Купил ESP-12F, увы не знаю какая там прошивка - в принципе думаю не столь важно.
Я хочу перепрошить её из Arduino IDE 1.8.5
Паял схему вот такую:

Прошу помощи знатоков
Когда я работаю с ESP-12 то схема почти такая же, но ресет надо твключить к питанию через резистор 4.7...20 к. и добавить кнопку от ресет на землю для сброса.
еще ставлю резистор между RESET и GPIO16 для deep-sleep.
а СН_PD можно соединить с Vcc напрямую
--------------------------
Теперь про программирование.
Для работы с любыми ESP (кроме nodemcu - в ней уже есть USR-USB) берем любой urt-usb
и для автоматического перехода в режим программирования добавляем простую схему на двух транзисторах из схемы nodemcu.
upload_2017-12-3_12-18-14.png
upload_2017-12-3_20-2-19.png
Для программирования берете NODEMCU FIRMWARE PROGRAMMER или ESPflasher
это проще чем дурина.
Потом будете из дурины писать, когда отладите программирование.
 
Последнее редактирование:

kolio

Member
Что Вы мучаетесь?
сделайте, как очень подробно расписано в
https://esp8266.ru/arduino-ide-esp8266/
а дальше уже будет понятнее
у меня схема программатора на готовой схеме. Но видимо придется паять отдельный программатор
хотя я уже подумывал купить Witty для программирования, но программатор не продается отдельно от ESP

Еще одна особенность, что из моего PL2303 разведены DTR и RTS, но без маркировки - могу вызвонить и подпаяться
ну и видимо придётся убрать из готовой платы схему программирования - всё равно у меня всё съемное, не проблема снять ESP и переставить в отдельный программатор

всем спасибо за ссылки и помощь. Попробую разобраться с глюками и отпишусь
 

kolio

Member
Этот резистор( 10КОм GPIO2 на VCC 3.3v) используется в этой схеме, как без него схема будет работать?
это полный фак :) я про него забыл. Щас припаяю. Позорище :)
//увы не помогло. Проверю на ошибки пайки - если не найду, буду паять программатор чисто под ESP
 
Последнее редактирование:

Сергей_Ф

Moderator
Команда форума
kolio, если бы были из Москвы, то usb-serial Witty мог подарить.
А так, могу передать с оказией, если будет.
 
Последнее редактирование:

kolio

Member
Опытным путём выяснил, что если на фото ниже, вместо резистора RESET-10K-3.3v поставить перемычку - как это было в самой первой моей схеме - то при подаче питания голубой светодиод на ESP мигает 2 раза. Но в этом случае я не могу использовать RESET - так как будет короткое
 

Сергей_Ф

Moderator
Команда форума
@kolio, может в резисторе обрыв? Проверьте напряжение на входе reset у esp с без перемычки. Должно быть 3.1-3.3 В.
 

nikolz

Well-known member
@kolio, может в резисторе обрыв? Проверьте напряжение на входе reset у esp с без перемычки. Должно быть 3.1-3.3 В.
Нельзя ресет соединять с питанием.
я не внимательно посмотрел на вашу схему.
Надо соединить через резисторы:
1) Reset->Vcc резистор от 4.7 до 20к.
2)GPIO16->Reset здесь можно использовать диод шотки или резистор 1-4.7 k
3) GPIO15->GND резистор от 4.7 до 20к.
4) СH_PD прямо соединить с Vcc или можно через резистор
------------------
И соберите схему на двух любых транзисторах npn, чтобы не заморачиваться включением режима программирования.
-------------------
еще поставьте кнопку от reset На землю для сброса .
Бывает необходимо сбросить при зависании или после программирования.
 
Последнее редактирование:

kolio

Member
Нельзя ресет соединять с питанием.
я не внимательно посмотрел на вашу схему.
Надо соединить через резисторы:
1) Reset->Vcc резистор от 4.7 до 20к.
2)GPIO16->Reset здесь можно использовать диод шотки или резистор 1-4.7 k
3) GPIO15->GND резистор от 4.7 до 20к.
4) СH_PD прямо соединить с Vcc или можно через резистор
------------------
И соберите схему на двух любых транзисторах npn, чтобы не заморачиваться включением режима программирования.
-------------------
еще поставьте кнопку от reset На землю для сброса .
Бывает необходимо сбросить при зависании или после программирования.
Кнокпа Reset реализована
по поводу GPIO16 у меня вопрос: я читал, что это для deep sleep, но мне deep sleep не нужен. Или всё равно нужен резистор?
Схему на ошибки проверил - всё нормально
Еще проверил нет ли разрыва резюка 10К на Reset - проверил всё нормально

Щас впаяю 470 Ом - если не поможет - буду наверное TTL вызванивать на макетке DTR и RTS и собирать всё это добро на макетке
 

Сергей_Ф

Moderator
Команда форума
@kolio, 470 ом не нужен, если не нужен режим сна. Ищите ошибку в схеме.
@nikolz, я разве предлагал подать питание на reset?
 

kolio

Member
да резистор не помог
Как сказал Сергей - я уперся в не рабочую схему. Увы кроме как сложить на макетке схему и пытаться её делать пока не получится - других вариантов не вижу
печально. Но надеюсь на положительный результат
 
Сверху Снизу