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

Как запустить ESP01 Китай

Препод

New member
Всем, день добрый.
помогите с запуском модулей ESP01, китайских.
Обвязка такая :

Ардуино - TTL-конвертор-ESP01 на макетной плате для работы использую ESPloer v0.2.0-rc5
Питание ESP01 через преобразователь 5В -> 3.3 В (проверял напряжение порядка 3.1В) AMS1117 3.3V 800ma

Уже все перепробовал:
1. подключение через Fрдуино Rx-Rx, Tx-Tx - ресет Ардуино на земле, CH_PD через 10 кОм+3.3
2. подключение через USB-UART (правда старенький, драйвера под L2303HX тоже старые)
3. на питание 3.3 В поставил два электролита по 3300 мкф*16В
4. подтягивал GPOI0, GPIo2 к +3.3 через 10 кОм
5. поставил отдельный БП на 5В с контролем тока и напряжения (показывает потребление макс 0.1 А), запитал все, кроме Ардуино.
6. Соединил все земли :)

Чаще всего получаю:

Код:
PORT OPEN 115200

Communication with MCU..Got answer! Communication with MCU established.
AutoDetect firmware...

Can't autodetect firmware, because proper answer not received (may be unknown firmware).
Please, reset module or continue.
яяя
AT - это пытался отправить, получил:
яяяяя
иногда после ресет на ESP01 получаю

Код:
PORT OPEN 74880

Communication with MCU..Got answer! Communication with MCU established.
AutoDetect firmware...

Can't autodetect firmware, because proper answer not received (may be unknown firmware).
Please, reset module or continue.
boot mode:(3,7)

load 0x40100000, len 1856, room 16
tail 0
chksum 0x63
load 0x3ffe8000, len 776, room 8
tail 0
chksum 0x02
load 0x3ffe8310, len 552, room 8
tail 0
chksum 0x79
csum 0x79

2nd boot version : 1.5
  SPI Speed      : 40MHz
  SPI Mode       : DIO
  SPI Flash Size & Map: 8Mbit(512KB+512KB)
jump to run user1 @ 1000

rf[112] : 03
rf[113] : 00
rf[114] : 01

SDK ver: 1.5.4(baaeaebb) compiled @ May 17 2016 19:23:54
phy ver: 972, pp ver: 10.1

)‚J[ЛZ9$PYКY'\)…Г
`JФNш

Ответ ready не получал ни разу.

Пытался прошить через FLASH_DOWNLOAD_TOOLS_V3.4.8
пишет не может подобрать скорость...

Что делать?

Конечно, самый простой ответ - Купить другие, но это не спортивно.
Всего в наличии 10 шт, пока проверил 2...

PS. Опыт в электронике и программировании большой, несколько проектов с датчиками Arduino/Raspberry/Orange и т.п., но уже бьюсь третий день...


Обновление, прошло 3 часа ...
1. Нарыл, что CH_PD на землю через 100нФ - поставил.
2. Подключил к хардварным портам (Ардуоно пин 0 и 1) и залил пустой скетч, после ресет на ESP01 получил:
Код:
мусор...
Ai-Thinker Technology Co. Ltd.

ready
Но на AT команды не реагирует. В сети появилась точка AI_thinker....
 
Последнее редактирование:

=AK=

New member
Hепонятно, чего вы от них ожидаете. Если вы залили в него скетч из среды Ардуино, то никаких АТ команд там теперь и в помине нет. Пишите свои скетчи, заливайте. Чего вам еще надо-то?

Если же хотите АТ команды - найдите оригинальную прошивку Espressif и залейте ее. Но тогда никаких скетчей не будет. Вы уж определитесь.
 
Последнее редактирование:

fandy

Member
запитал все, кроме Ардуино.
Если используете Ардуино как usb-uart конвертор, питание на него тоже нужно
Communication with MCU..Got answer!
Это Вы esplorer используете? А прошивку под nodemcu не залили?!
Для AT команд используйте стандартный монитор usb, хотя-бы встроенный в среду Ардуино. Скорость 115200, NL и CR вместе.
Пытался прошить через FLASH_DOWNLOAD_TOOLS_V3.4.8
gpio0 на землю не забыли подключить?
 

Ujine

New member
В продолжение темы.
Есть вопрос при заливке скетча в ESP-01 из Arduino IDE получаю шибку
open preproc\ctags_target_for_gcc_minus_e.cpp: The system cannot find the file specified.
Ошибка компиляции для платы Generic ESP8285 Module.
Как это побороть?
p.s.
Сильно не пинайте ламера и нубасину.
 

Препод

New member
Hепонятно, чего вы от них ожидаете. Если вы залили в него скетч из среды Ардуино, то никаких АТ команд там теперь и в помине нет. Пишите свои скетчи, заливайте. Чего вам еще надо-то?

Если же хотите АТ команды - найдите оригинальную прошивку Espressif и залейте ее. Но тогда никаких скетчей не будет. Вы уж определитесь.
Ожидал, что можно использовать как WiFi модуль, только для связи, через который Ардуино будет отправлять данные с внешних датчиков.
Никаких скетчей в ESP01 не заливал, Ардуино использовал и как hard UART (с замыканием reset на землю и Tx-Tx Rx-Rx) так и soft UART. Результат мусор на выходе в 99.9% случаев, за три дня было пару раз ready после короткого замыкания, но команду AT отвечает коротким мусором...
Подключал через USB-UART PL2330HX

Касательно прошивки - FLASH_DOWNLOAD_TOOLS_V3.4.8 не может договориться о скорости (конечно подключил GPIO0 на землю).... пишет:
CONNECT BAUD: 115200
============
test type : <type 'unicode'>
COM type: string
is open: False
serial port opened
-----------
baud: 115200
root baud: 115200
-------------
===============
BAUD : 115200
===============
Connecting...
*********************
pic path: ./RESOURCE/SYNC_S.bmp
***********************
raise in device connect
chip sync error.
baudrate sync fail ... retry...
Connecting...
raise in device connect
chip sync error.
baudrate sync fail ... retry...
Connecting...

И так до бесконечности....

И конечно, я запитывал Ардуино отдельно....

Взял новый ESP01 из пакета - ситуация аналогичная....
 

=AK=

New member
Ожидал, что можно использовать как WiFi модуль, только для связи, через который Ардуино будет отправлять данные с внешних датчиков.
То есть, вы хотите использоватьESP как модем? Типа как Ардуино его настроит AT командами, установит с кем-то связь, после чего будет слать через UART все подряд, а РС на другом конце будет все это принимать через виртуальный COM порт, так?

Теоретически это возможно, хоть это и весьма кривой вариант использования ESP. Для этого вам надо удостовериться, что в ESP залита прошивка Espressif, причем лучше точно знать какая версия. Поэтому начните с того, что залейте в ESP нужную прошивку.

Поскольку ESP создает свою точку доступа, то сейчас у вас в ESP скорей всего залита какая-то другая прошивка. Когда я возился с прошивками Espressif, то никаких точек доступа по умолчанию не создавалось.

Никаких скетчей в ESP01 не заливал,
А, значит это не вы писали:

2. Подключил к хардварным портам (Ардуоно пин 0 и 1) и залил пустой скетч
Но в любом случае отправная точка - вам надо научиться заливать в ESP прошивки. И когда задаете вопросы, лучше сразу указывайте, какая прошивка, какой схемой пользовались для заливки, или сами рисуйте, или дайте ссылку на использованную схему, все равно вас рано или поздно об этом спросят. Может, вы ресет не подаете перед началом прошивки, может, бодовую скорость неправильно выставили, она при прошивке нестандартная, по памяти что-то вроде 78800 или типа того, а вовсе не 115200. Я, например, так и не научился пользоваться Espressif-овским флашером, больно он кривой и косой, в нем миллион никому не нужных фичек, в которых легко запутаться. А вот флашер из проекта NodeMCU у меня работает более-менее нормально, он и скорость правильную ставит, и вовремя ресет на ESP выдает через DTR. Он хоть из проекта NodeMCU, но ему-то все равно что заливать, что укажешь, то и зальет.

После заливки, если она прошла удачно, переключите ESP в нормальный режим работы, вот тогда скорость должна быть 115200. Если не получается, то опять же, указывайте, какова у вас схема включения и какой программой пользуетесь в качестве терминала. Для АТ команд обязательно, чтобы был CR+LF в конце команды, вам про это уже говорили, но вы не отреагировали. Не все программы-терминалы умеют это делать, а те, кто умеет - их надо на это настроить.

Слишком много разных вариантов, чтобы по вашему многословному, но неполному описанию, гадать, что вы там упустили.
 

Ujine

New member
В продолжение темы.
Есть вопрос при заливке скетча в ESP-01 из Arduino IDE получаю шибку
open preproc\ctags_target_for_gcc_minus_e.cpp: The system cannot find the file specified.
Ошибка компиляции для платы Generic ESP8285 Module.
Как это побороть?
p.s.
Сильно не пинайте ламера и нубасину.
Залита последняя прошивка из ветки форума AT 0.21 SDK 0.9.5
на АТ команды из стандартного терминала IDE отзывается "весело".
подключаю по схеме из статьи на сайте при одной разнице что USB-TTL конвертер Prolific имеет выводы:\
-3,3 V
-TXD
-RXD
-GND
Питание на ESP01 подаю отдельно от стабилизированного блока питания, конвертер питается от USB, GND на конвертере и ESP-01 соеденены.
 

=AK=

New member
Залита последняя прошивка из ветки форума AT 0.21 SDK 0.9.5
Чем заливали?

Последние версии SDK у Espressif - V2.1.0 без RTOS, V1.5.0 с RTOS.

на АТ команды из стандартного терминала IDE отзывается "весело".
Что такое "стандартный терминал IDE"? Какой IDE, Ардуино, что ли?

Что значит "весело"? Вы способны изъясняться прямо, без обиняков?

Бодовую скорость какую поставили? Монитор настроили, чтобы он CR+LF посылал?

upload_2017-7-8_9-6-19.png

Замечу, что это на совести разработчиков Ардуино, что они комбинацию ASCII символов CR и LF зачем-то обозначили в настройках своего монитора как NL & CR. В других программах они обозначаются иначе.

подключаю по схеме из статьи на сайте
На сайте порядка сотни статей, схем подключения множество. Вам религия не позволяет ссылку на схему вставить?

Чем туманнее будут ваши вопросы, тем меньше вероятность, что кому-то захочется тратить время, чтобы вникнуть в ваши проблемы.

В своем первом посте вы писали, что заливали в ESP-01 скетч. При этом почему-то компилировали скетч для ESP8285, а не для ESP8266. Сейчас вы на АТ команды перебросились.
 
Последнее редактирование:

fandy

Member
Скорее всего товарищ писал, что залил пустой скетч не в ESP, а в Ардуино. Хотя, остается догадываться.
Также вроде модель Ардуино нигде не написана.
 

Препод

New member
Совершенно правы, нужны схемы и т.п.
Схем было несколько:
1. Хадварный URAT из Arduino UNO
a) заливал в Ардуино пустой скетч, ставил в настройках монитора порта NL & CR и пробовал разные скорости (передергивал RST на ESP)
б) Подключался через ESPlorer и пробовал разные скорости, в т.ч. нестандартную 74880 (передергивал RST на ESP)

2. Софтварный UART из Arduino UNO (использовал SoftwareSerial, ставил в настройках монитора порта NL & CR)

3. UART на L2303HX
Подключался через ESPlorer и пробовал разные скорости, в т.ч. нестандартную 74880 (передергивал RST на ESP)


Результат практически всегда один и тот же:
Сначала мусор, после RST на ESP либо информация про boot ( на скорости 74880) на скорости 115200 или 230400 отвечает иногда ready,но на АT команды не реагирует.
FLASH_DOWNLOAD_TOOLS_V3.4.8 не может договориться о скорости, вне зависимости от состояния GPIO0 на ESP

Попробую Node MCU....

Обновление... Для NodeMCU нужен питон :(, попробую позже...
Поставил 100пФ на землю к CHPD - отдельный резистор на +3.3

Ничего не изменилось....
 
Последнее редактирование:

CodeNameHawk

Moderator
Команда форума
Почему на А сторону преобразователя уровня подаете 5В ? если допускается только 3.6В.
На самой плате видно, что сторона В рассчитана на 5В, а А сторона на 3,3В.
 
Последнее редактирование:

fandy

Member
В даташите по txb0108 5 вольтовый интерфейс должен быть B, 3-х вольтовый А. У Вас наоборот.
 

Ujine

New member
Чем заливали?

Последние версии SDK у Espressif - V2.1.0 без RTOS, V1.5.0 с RTOS.


Что такое "стандартный терминал IDE"? Какой IDE,


В моем случае это был 1.8.2 который и был причиной всей проблемы. после переустановки на 1.8.3
все стало на свои места. Видимо был софтовый глюк или я чего при инсталяции намудрил, действительно вместо ESP 8266 IDE пытался шить ESP8285 причем переключение плат в настройках никакго результата не давало.

Что значит "весело"? Вы способны изъясняться прямо, без обиняков?
Да вполне, "Весело" это значит реагирует на все АТ команды подаваемые из терминалки от IDE 1.8.2 на скорости 115200.


В своем первом посте вы писали, что заливали в ESP-01 скетч. При этом почему-то компилировали скетч для ESP8285, а не для ESP8266. Сейчас вы на АТ команды перебросились.
А за эту фразу огромное спасибо, она и помогла разрулить ситуацию.
 
  • Like
Реакции: =AK=

Препод

New member
В даташите по txb0108 5 вольтовый интерфейс должен быть B, 3-х вольтовый А. У Вас наоборот.
Ага, это ошибка в схеме (реальная нарисована "от руки" и там все нормально), на собранной схеме А - 3.3V, B - 5V - Поменял картинки, но в сообщении, почему-то не изменяются...

Но, тогда бы вообще не отвечала, а эта .... когда захочет, тогда и отвечает....
 
Последнее редактирование:

=AK=

New member
Ага, это ошибка в схеме (реальная нарисована "от руки" и там все нормально), на собранной схеме А - 3.3V, B - 5V - Поменял картинки, но в сообщении, почему-то не изменяются...

Но, тогда бы вообще не отвечала, а эта .... когда захочет, тогда и отвечает....
Скорей всего проблема в преобразователе уровня TXB0108. У него выходы "слабые", а ESP8266 этого не любит: когда я пробовал врезать резисторы последовательно с Rx и Tx, то ESP у меня работать отказывался, пока я не уменьшил их до 100 Ом. В чем там дело я разбираться не стал, наверное Espressif намудрил со схемотехникой защиты от перенапряжений, которая встроена в его порты.

Еще бы элекролит 470 мкФ полезно было бы поставить на шину питания 3.3V. Есть он там в БП, нет ли - бог весть. Без большого электролита в питании у ESP могут быть глюки.
 
Последнее редактирование:

fandy

Member
Я бы его для теста тупо выкинул. ESP не должна сгореть.
Ну и если это на макетке, проверяйте провода. Контакты, контакты...
 

Препод

New member
Скорей всего проблема в преобразователе уровня TXB0108. У него выходы "слабые", а ESP8266 этого не любит: когда я пробовал врезать резисторы последовательно с Rx и Tx, то ESP у меня работать отказывался, пока я не уменьшил их до 100 Ом. В чем там дело я разбираться не стал, наверное Espressif намудрил со схемотехникой защиты от перенапряжений, которая встроена в его порты.

Еще бы элекролит 470 мкФ полезно было бы поставить на шину питания 3.3V. Есть он там в БП, нет ли - бог весть. Без большого электролита в питании у ESP могут быть глюки.
Стоят, как указано в первом посте, не стал указывать с схеме, два 3300мкф*16В на питании 3.3 В
Проверял осциллографом - сигналы есть на обоих концах TXB0108, просадки не вижу....
 

=AK=

New member
Стоят, как указано в первом посте, не стал указывать с схеме, два 3300мкф*16В на питании 3.3 В
Вы полагаете, что все должны каждый раз перечитывать ветку с самого начала? Или что все будут держать в голове все детали несколько недель? Не надейтесь. Лучше старайтесь писать контекстно-независимые сообщения. И не пользуйтесь фрицингом. Эти схемы легко повторять, но их трудно проверять :(

Проверял осциллографом - сигналы есть на обоих концах TXB0108, просадки не вижу....
Интересно, а зачем вы сброс и GPIO0 объединили вместе? У вас при подаче сброса модуль с ума сходит: то ли ему в режим программирования входить, то ли в нормальный режим.
 
Последнее редактирование:

=AK=

New member
Советую освоить KiCAD.

Вы не ответили - почему вы объединили сигналы сброса ESP и его GPIO0? Разъедините их. Уровень сигнала на входе GPIO0 в момент сброса (т.е. отрицательный фронт сигнала сброса) задает режим работы модуля: низкий уровень - программирование, высокий - нормальная работа. Когда у вас эти два сигнала объединены, то состояние GPIO0 в момент сброса неопределенное. Модуль от этого глючит: то в нормальный режим выходит, то в режим программирования.
 

Препод

New member
Советую освоить KiCAD.

Вы не ответили - почему вы объединили сигналы сброса ESP и его GPIO0? Разъедините их. Уровень сигнала на входе GPIO0 в момент сброса (т.е. отрицательный фронт сигнала сброса) задает режим работы модуля: низкий уровень - программирование, высокий - нормальная работа. Когда у вас эти два сигнала объединены, то состояние GPIO0 в момент сброса неопределенное. Модуль от этого глючит: то в нормальный режим выходит, то в режим программирования.
Не могу прикрепить нормальный файл со схемой, она реально другая.... Фритзинг только для публикации, а так рисую от руки - там все правильно - см. рис. ниже
Ничего вместе не соединял...
Новая схема вот:
 
Сверху Снизу