Как навсегда изменить скорость передачи данных ESP8266 (12e)?

ВАЖНО: НЕ ИСПОЛЬЗУЙТЕ AT+IPR=9600! (см. обновление)

У меня есть модуль ESP8266 12E, который обменивается данными на скорости 115 200 бод. Поскольку я использую его с Arduino Nano с SoftwareSerial, все становится запутанным. Итак, я обнаружил, что мне следует уменьшить скорость передачи данных модуля ESP.

Я нашел эту ссылку о том, как это сделать.

Мне интересно

  • Это постоянное изменение или вам нужно делать это каждый раз после включения модуля?

  • Могу ли я добиться того же, отправив команду с Arduino через SoftSerial? Ну, я думаю, нет, так как я пытался и всегда получаю ошибку при AT+CIOBAUD=9600 или AT+IPR=9600.

  • Я где-то читал, что в новых версиях прошивки ESP8266 скорость передачи данных по умолчанию равна 9600. Может ли кто-нибудь это подтвердить, и если да, то лучше ли прошить более новую прошивку?

Продавец модуля:

Ai-Thinker Technology Co.,Ltd.

Я думаю, что текущая версия прошивки 0.3.0. Если я отправлю AT+GMR, я получу:

sending AT+GMR

response: ?AT¥TJÕ¨H(Q�²•ÉÍ¥½¹é‚r¢‚r‚r‚BÕ��Â’‚ŠªŠ¢Ò¢ªÒªÂJm
 SDK versioo:0.3.0
 Ai�½½
 ‚Šj

Опять какая-то фигня из-за слишком высокой скорости передачи данных.

Другая информация о модуле:

sending AT+RST
response: ?AT+RST
OK
WRT
"%M
<99CT
 ets Jan  8 2013,rst catse:2, boot lode:(3,7)
load 0x40100000ntail 4
chksum 0x89
ld tail 4
chm3 tail 8 r 0 aM
 ón't use rtc mem dat`
sl��oÌÿ
Ai-Thinker Technology Co.,Ltd.

ОБНОВЛЕНИЕ

(*) Я использовал модуль FTDI232 для отправки AT+IPR=9600 на мой модуль ESP8266-12E и заблокировал его!

НЕ ИСПОЛЬЗУЙТЕ AT+IPR=9600 НА ESP8266(-12E).

Мне пока не удалось его восстановить! Я попытался перепрошить его, но получаю исключения «Неверные головы».

В новом модуле я отправил команду AT+CIOBAUD=9600, и она сработала. Навсегда!

Спецификации моего модуля:

AT+GMR 
AT version:0.40.0.0(Aug  8 2015 14:45:58)
SDK version:1.3.0
Ai-Thinker Technology Co.,Ltd.
Build:1.3.0.2 Sep 11 2015 11:48:04
OK 

, 👍14

Обсуждение

Не могли бы вы попробовать аппаратный серийник? Или потяните контакт сброса на низкий уровень, а затем обратитесь к ESP напрямую через USB. Могу проверить, работают ли они., @Paul

@Пол: у nano есть только один набор аппаратных последовательных портов. Поэтому, если я использую их, я больше не могу отправлять данные на последовательный монитор Arduino, из-за чего становится трудно понять, что происходит... Думаю, мне нужно будет обновить прошивку., @mvermand

ну, вы могли бы использовать последовательный порт программного обеспечения для отладки? Однако вам понадобится кабель USB-serial/TTL., @Paul

http://stackoverflow.com/questions/34248581/set-baud-rate-to-esp8266-at-9600 Это ответит на ваш вопрос., @N.Sinha

Похоже, что установка скорости передачи данных с помощью **AT+IPR=9600 также приводит к блокировке ESP01**. Я попробовал несколько предложений в этой теме, чтобы восстановить его. Решение по ссылке, которую предоставил Марко Андре Сильва, сработало для меня., @Steffe

Итак, вы могли бы «разблокировать» свой модуль?, @mvermand

Это видео [1. Как прошить ESP01 последней прошивкой AT-команды](https://www.youtube.com/watch?v=QVhWVu8NnZc), помогло мне перепрошить прошивку на мой ESP01., @Joe Rytting

Кто-нибудь выяснил, *почему* эта команда блокирует ESP? Это кажется очень странным, @thomasrutter