• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Решено Очередной опыт подключения ESP8266

JustACat

Moderator
Команда форума
Сейчас взялся подключить второй модуль ESP (конкретно ESP-12). Т.к. один подключенный и готовый для прошивки модуль (ESP-7) - это мало :)
Ну, на 1 можно что-то основное писать, а на 2 пробовать всякие новшества от сообщества, например.

Переходников USB-UART у меня, к счастью, ворох. Тем более, что есть одинаковые, поэтому взял такой же точно, какой на 1 ESP использую - он при подключении к ПК определяется на том же COM-порту в данном случае это плюс, т.к. не надо менять в настройках кругом ком-порты.
Но правда оба сразу не подключишь. Ну да не суть.

Суть: решил, что подключу навесом модуль, точнее он распаян на макетку-переходник китайскую желтую дешевскую (тут есть фото), на которой все ноги выведены на пины.
На этом переходнике из подтяжек только:
- GPIO15 на землю через резистор (4,7K)
- и CH_PD на питание через резистор (4,7K)

"Ну и достаточно!" - (глупо) подумал я и подключил напрямую USB-UART переходник к ESP вот так:
- TX - RX
- RX - TX
- RTS - REST
- DTR - GPIO0
- GND - GND
Питание на ESP отдельное на 1117, как обычно у меня :)
Переходник на CP2102 - работает как раз на 3.3 вольта - тут тоже все идеально.

Включаю и... Ничего толком не работает =/
Чего я только не делал, грешил на переходник, на питание, на провода плохие, плохой контакт.
Симптомы: не получалось из терминала нормально ножкой RTS перезагрузить ESP и ножкой DTR ввести ESP в режим загрузчика.
То есть оно то работало, то нет, то ESP зависала напрочь, то входила в цикл перезагрузок... В общем тьма. И в терминале вывод через раз, но был. Да и даже AT команды иногда проходили.
Проверял уровни на ногах REST и GPIO0 мультиметром - все работало как надо, то есть было 0, когда в терминале подавал соответственно сигналы на RST и DTR, и 3.3, когда сигналы снимал <- это меня окончательно ввело в ступор, т.к. уровни верные, а ESP на них толком отказывался реагировать...
Еще грешил на старый boot (старую прошивку) - с горем пополам в полу-ручном режиме удалось прошить boot на 1.2 - но и это не помогло.

В общем, осталось последнее: подключить все как следует на макетке (ну, с дырками, белая такая, хотя бывают и цветные :) ) и подтянуть.
Сказано - сделано: все подключения остались прежними, и дополнительно:
- подтянул GPIO2 через 10K к питанию
- подтянул REST через 10K к питанию
- между GPIO0 ESP и DTR переходника тоже добавил 10K
Больше никаких абсолютно изменений. Но оно заработало как надо! =)
Дергаю в терминале RTS - ESP резетится; предварительно выставляю DTR и дергаю RTS - ESP резетится в режим загрузчика.
Все стало прошиваться в автоматическом режиме, как и предыдущая моя ESP. На любой скорости вплоть до 921600 (больше не проверял).

К чему это я? А я о степени капризности ESP и, соответственно, важности правильного подключения и подтяжки! :) Особенно для (авто-)прошивки. А то попытаешься по быстрому на коленке на соплях собрать, пренебрегая подтяжками, а в итоге реакция вроде есть в терминале, чего-то вроде работает, но нестабильно и толком не шьется...

Такие дела.
 
Последнее редактирование:

Dmitry P

New member
Интересно то, что у меня на белой макетке GPIO2 подтянуто к земле через 10k.... А GPIO15 на земле без всяких резисторов. И работает...
Пришло 5 макеток - на всех то же самое.
 
Да, работает этот способ. Уменя ESP-12-q + переходник обычный купленный на алиекспрессе + 2 резистора.

Я использовал cp2102 в качестве программатора. Как я позже догадался для него не хватало USB питания, поэтому был виден только /dev/ttyS порт. Кстати, когда питания не хватало DTR и RTS всегда(set & unset) выдавали +3.3В, в режиме подключения через /dev/ttyS.
Но потом догадался подключить внешнее питание и /dev/ttyUSB порт перестал пропадать при подключении esp к cp2102 и я смог подключиться.
Так что будьте внимательны с выбором порта. И обязательно пробуйте внешнее питание.
 
Сверху Снизу