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

Нужна помощь Проблемы с АТ-командами

espilya

New member
Всем привет, заказал esp8266-01 подключил к ардуино нано как указано тут, с 5В от ардуино сделал 3.3В и запитал esp-01, появляется точка доступа вай-фай, далее соединил как на картинке. Через CoolTerm нашел скорость (115200) что-бы в конце говорил "ready". Через тот же CoolTerm попытался отправить команду "AT", написал ее, но вместо нее, я написал какой-то мусор и при отправке получил ответ в виде мусора. Подумал мол прошивка хреновая и решил обновить через XTCOM_UTIL как сказано тут все прошил хорошо но проблема не исчезла.
Вот интересно я что-то делаю не так или esp-01 бракованный? Хотя прошивку нормально загрузил
Проблема в том что не могу получить OK на мой ATCXEMA.png
 

=AK=

New member
Надо соединять Rx к UTXD, а Tx к URXD. То есть, вход приемника - к выходу передатчика. Если выходы передатчиков соединить друг с другом, а входы приемников - тоже друг с другом, то связи не будет.

Если мусор на экране - это скорей всего скорости у UART-ов разные настроены.

После AT надо послать символы CR и LF, это не забываете?
 
Последнее редактирование:

espilya

New member
Надо соединять Rx к UTXD, а Tx к URXD
Подключил, теперь даже мусора нет, вообще пусто на разных скоростях.
Если мусор на экране - это скорей всего скорости у UART-ов разные настроены.
Мусор есть в начале но потом пишет ready. Значить проблема не в этом наверное.
После AT надо послать символы CR и LF, это не забываете?
Можно поподробнее пожалуйста.

Проблема скорее не в этих вещах. Когда я пишу АТ вместо АТ выходить что то типа такого "Aэ" или такого "aф" а если нажму enter то ответ будет error, ничего не ответить или посчитает что enter это новый символ. Крайне редко пишет нормально АТ и получаю ответ OK.
 

Сергей_Ф

Moderator
Команда форума
@espilya рекомендую поставить резестивный делитель на RX у esp до 3.3 в. Или , что лучше, преобразователь уровней.
 

=AK=

New member
Мусор есть в начале но потом пишет ready.
После сброса ESP примерно полсекунды работает на кривой скорости 78.6 кбит, потом перенастрастраивается на 115.2 кбит. Если видите ready - значит связь есть.

Можно поподробнее пожалуйста.
Каждая АТ команда к должна заканчиваться символами CR (код 0х13) и LF (код 0х10). Их еще обозначают \r\n, потому что так они задаются в текстовых строках на языке С.

Многие (но не все) терминальные программы могут настраиваться, чтобы добавлять эти два символа автоматически, как только вы нажали Enter. Ардуновский Serial Monitor это может. А программа, которой вы пользуетесь - неизвестно, может ли. Иногда программа добавляет не два символа, а только один.
 

=AK=

New member
рекомендую поставить резистивный делитель на RX у esp до 3.3 в. Или , что лучше, преобразователь уровней.
Вот это дельный совет, присоединяюсь. 5В сигнал от Ардуины к перегружает вход ESP, нужен хотя бы делитель напряжения. А 3.3В сигнал от ESP к пятивольтовой Ардуине маловат, из-за этого Ардуина может принимать символы с ошбками. Лучше всего - преобразователь уровней.
 

Сергей_Ф

Moderator
Команда форума
А 3.3В сигнал от ESP к пятивольтовой Ардуине маловат,
Что бы решить эту проблему, достаточно запитать Ардуино от 4.5-4.7 вольт. Все будет работать без сбоев.
Но если ТС видит ready, то дело не в Ардуино, имхо.
 
Последнее редактирование:

espilya

New member
Я загрузил видео на ютуб чтобы увидели что показывает программа, заходил я через arduino ide и coolterm:
Подключено все по схемы как в картинке выше, я отсылаю AT или AT+GMR, также я перезагружал иногда CH_PD там видно по строке ready. Не знаете что может быть?
Я вот думаю что может из-за длинного юсб кабеля, но на вряд ли.
Завтра попытаюсь сделать делитель напряжение с резисторами из R1 - 1kO, R2 - 2kO.
 

=AK=

New member
Трудно разобрать чего вы там вводите. Насколько я понял вы там и русскими буквами вводите, и маленькими буквами вместо больших, и команды вводите не целиком, а кусочками, не понимая, что CR+LF по Enter при этом добавляется после каждого такого кусочка. Один раз вроде бы ввели AT и получили ОК в ответ. А все остальное - похоже, просто ваша неряшливость при вводе команд. КулТерм, как я помню, не обеспечивает добавки CR+LF по Enter , поэтому с ним работать не будет.

И со схемой разберитесь. То, что у вас нарисовано в схеме - неверно, у вас там вход со входом соединен, а выход с выходом, так работать не будет. А если работает - значит, соединено не так, как нарисовано в схеме. "ТщательнЕе надо..." (с)
 

espilya

New member
Трудно разобрать чего вы там вводите. Насколько я понял вы там и русскими буквами вводите, и маленькими буквами вместо больших, и команды вводите не целиком, а кусочками, не понимая, что CR+LF по Enter при этом добавляется после каждого такого кусочка. Один раз вроде бы ввели AT и получили ОК в ответ. А все остальное - похоже, просто ваша неряшливость при вводе команд. КулТерм, как я помню, не обеспечивает добавки CR+LF по Enter , поэтому с ним работать не будет.
Да нет, я ввожу как раз таки все хорошо. В этом и проблема что отправляется не то что я ввожу...
Если не верите что я ввожу могу даже сделать вам пруф и снять клавиатуру и потом экран.

И со схемой разберитесь. То, что у вас нарисовано в схеме - неверно, у вас там вход со входом соединен, а выход с выходом, так работать не будет. А если работает - значит, соединено не так, как нарисовано в схеме. "ТщательнЕе надо..." (с)
Если вы про тх и rx то все там правильно на схеме UTXD (esp-01) подключен к TX (ардуино), а RX к URXD. А если подключаю наоборот то вообще нет отзывается, то есть нет даже мусора не говоря уже о ready .
Один раз вроде бы ввели AT и получили ОК в ответ.
Это просто повезло и программа написала то что я писал.
 

espilya

New member
Да нет, я ввожу как раз таки все хорошо. В этом и проблема что отправляется не то что я ввожу...
Если не верите что я ввожу могу даже сделать вам пруф и снять клавиатуру и потом экран.


Если вы про тх и rx то все там правильно на схеме UTXD (esp-01) подключен к TX (ардуино), а RX к URXD. А если подключаю наоборот то вообще нет отзывается, то есть нет даже мусора не говоря уже о ready .

Это просто повезло и программа написала то что я писал.
И еще можете посмотреть вверху в терминале arduino ide нам видно что я ввожу.
 

Сергей_Ф

Moderator
Команда форума
Я вот думаю что может из-за длинного юсб кабеля, но на вряд ли.
А вот очень может быть, что из за кабеля. Попробуйте поменять. И делитель обязательно - у меня без него не работало и симптомы были те же.
 

=AK=

New member
Если вы про тх и rx то все там правильно на схеме UTXD (esp-01) подключен к TX (ардуино), а RX к URXD. А если подключаю наоборот то вообще нет отзывается, то есть нет даже мусора не говоря уже о ready .
Что-то здесь не так. Вот правильное подключение:

esp8266-esp-01-flashing-diagram.png esp8266-esp-01-flashing-diagram.png

Может у вас Ардуина какая-то кривая? С неправильно обозначенными Rx и Tx?

У вас на схеме еще и ресет на землю посажен, неужто работает?
 

Сергей_Ф

Moderator
Команда форума
@=AK= Вы путаете адаптер и ардуино. На ардуино надо подключать напрямую rx-rx и tx-tx. На ардуино это обозначение входов, а для встроенного адаптера и получится перекрестное подключение.
А ресет на землю - что бы сама ардуино не запускалась. Из неё используется только адаптер.
 
  • Like
Реакции: =AK=
Сверху Снизу