ESP8266 AT команды v0.22

Официальная документация:

ESP8266 AT Instruction Set v0.22 20.03.2015
ESP8266 AT Command Examples v0.4 20.03.2015

Отличия от AT команд v0.21

Вместо AT+UART сейчас две команды: AT+UART_CUR (current, параметры только для текущего сеанса) и AT+UART_DEF (default, т.е. с сохранением во flash память и использование этих параметров по-умолчанию при следующей загрузке). Аналогично изменились WiFi команды AT+CWMODE, и другие.
Новая команда AT+CWAUTOCONN
Новые команды AT+CWSTARTSMART / AT+CWSTOPSMART
Новая команда AT+SAVETRANSLINK

Примечание.
Для модулей с 512KB flash:
пользовательские параметры сохраняются в диапазон адресов 0x3C000 ~ 0x40000, 16KB;
область системных параметров 0x7C000~0x80000, 16KB
Для модулей с 1MB flash (или более 1MB):
пользовательские параметры сохраняются в диапазон адресов 0x7C000 ~ 0x80000, 16KB;
область системных параметров: последние 16KB

ESP8266 AT команды на русском v0.22 SDK 1.0.0

Полный список ESP8266 AT команд на русском. Актуально для версии AT v0.22 SDK v1.0.0
КомандаОписаниеТипВыполнениеЗапрос/ТестПараметры
ATПроверка модулябазоваяAT-Если модуль успешно стартовал, то отвечает "OK"
AT+RSTПерезапуск модулябазоваяAR+RST-После успешного перезапуска возвращает "OK"
AT+GMRОтобразить версию прошивки. базоваяAT+GMR-Версия отображается в виде 8 цифр. Первая группа 4 цифры - версия AT (например, 0022), вторая группа 4 - версия SDK (например, 0100)
AT+GSLPПереход в режим пониженного энергопотреблениябазоваяAT+GSLP=<время в мс>Пример: AT+GSLP=5000 (5сек)
Для того, чтобы модуль вышел из режима сна, необходимо соединить выводы XPD_DCDC и EXT_RSTB
ATEвключить/выключить эхобазоваяATE0
ATE1
Замечание: ATE без 0 или 1 приводит к ошибке.
AT+RESTOREСбросить на заводские настройкибазоваяAT+RESTOREПримечание: после сброса настроек произойдет перезагрузка модуля
AT+UART_CURНастройка последовательного интерфейса для текущего сеанса (current, т.е. без сохранения во flash память)базоваяAT+ UART_CUR= baudrate, databits, stopbits,
parity, flow control
скорость 4400-4608000
биты данных
5:5 бит
6:6 бит
7:7 бит
8:8 бит
стоп биты
1:1 стоп бит
2:1.5 стоп бит
3:2 стоп бит
контроль четности
0: нет
1:Odd
2:EVEN
flow control
0:flow control отключен
1:включен RTS
2:включен CTS
3:включены оба RTS и CTS
(MTCK - UART0 CTS , MTDO - UART0 RTS)
Пример:
AT+UART=115200,8,1,0,0
AT+UART_DEFКоманда полностью аналогична AT+UART_CURбазоваяПараметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWMODE_CURПереключение режима wifi для текущего сеанса (current, т.е. без сохранения во flash память)wifiAT+CWMODE_CUR=<режим>AT+CWMODE_CUR?
AT+CWMODE_CUR=?
1=Station (WiFi клиент), 2=SoftAP (точка доступа), 3=Оба режима (Station+SoftAP)
Например, AT+CWMODE_CUR=1
AT+CWMODE_DEFКоманда полностью аналогична AT+CWMODE_CURwifiПараметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWJAP_CURПодключение к AP, точке доступа (current, т.е. без сохранения во flash память)wifiAT+CWJAP_CUR =<идентификатор сети>,<пароль>AT+CWJAP_CUR?
Возвращает имя сети, к которой подключены
Возвращает OK или ERROR.
SSID WiFi сети и пароль указываются в двойных кавычках, пароль до 64 символов ASCII. Команда недоступна в режиме SoftAP (точка доступа).
Данные сети НЕ сохраняются во флеш памяти. В случае наличия в SSID или пароле специальных символов (’,’、’“’ и’\’) их необходимо экранировать обратным слешем. Например,
если SSID “ab\,c”
и пароль “0123456789”\” то команда примет вид
AT+CWJAP_CUR =“ab\\\,c”,“0123456789\”\\”
AT+CWJAP_DEFКоманда полностью аналогична AT+CWJAP_CURwifiПараметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWLAPОтобразить список доступных точек доступаwifiAT+CWLAP показывает все доступные точки доступаAT+CWLAP=ssid,mac,ch
показывает точки доступа, только соответствующие заданным параметрам
Выводит SSID, метод шифрования, силу сигнала, MAC адрес, номер канала. Типы шифрования: 0:Open, 1: WEP, 2:WPA_PSK, 3:WPA2_PSK, 4:WPA_WPA2_PSK
Примеры: AT+CWLAP="wifi","ca:d7:19:d8:a6:44",6
или поиск WiFi сети с именем "home"
AT+CWLAP="home",""
AT+CWQAPОтключение от точки доступаwifiAT+CWQAPAT+CWQAP=? тест команды-
AT+CWSAP_CURСоздать SoftAP (точку доступа) для текущего сеансаwifiAT+CWSAP_CUR= <идентификатор сети>,<пароль>,<канал>, <тип шифрования>AT+CWSAP_CUR? возвращает текущие параметры точки доступаКоманда доступна только когда модуль находится в режиме SoftAP (точка доступа). Требуется AT+RST.
SSID и пароль указываются в двойных кавычках. Пароль не более 64 символов. Типы шифрования: 0:Open, 2:WPA_PSK, 3:WPA2_PSK, 4:WPA_WPA2_PSK (Шифрование WEP недоступно в этой версии)
Пример: AT+CWSAP_CUR="ESP8266","1234567890",5,3
AT+CWSAP_DEFКоманда полностью аналогична AT+CWSAP_CURwifiПараметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWLIFОтобразить IP адреса станций, подключенных к ESP8266 SoftAP точке доступаwifiAT+CWLIF-(только для режимов 2-SoftAP и 3-Station+SoftAP)
AT+CWDHCP_CURВключить или выключить DHCP сервер для текущего сеанса
wifiAT+CWDHCP_CUR=<режим>,<вкл><режим>
0 : ESP8266 SoftAP
1 : ESP8266 station
2 : SoftAP и station
<вкл>
0 : Выключить DHCP
1 : Включить DHCP
Пример: AT+CWDHCP_CUR=0,1
AT+CWDHCP_DEFКоманда полностью аналогична AT+CWDHCP_CURwifiПараметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWAUTOCONNАвтоматическое подключение к точке доступа (сохраняется во флеш память)wifiAT+CWAUTOCONN=<вкл><вкл>
0 : не подключаться автоматически к точке доступа после старта модуля
1 : подключаться автоматически к точке доступа после старта модуля
По умолчанию ESP8266 station автоматически подключается к точке доступа
AT+CIPSTAMAC_CURпосмотреть/установить MAC адрес в режиме station для текущего сеансаwifiAT+CIPSTAMAC=AT+CIPSTAMAC_CUR?
отображает текущий MAC адрес Station
Пример: AT+CIPSTAMAC_CUR="18:fe:35:98:d3:7b"
AT+CIPSTAMAC_DEFКоманда полностью аналогична AT+CIPSTAMAC_CURwifiПараметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CIPAPMAC_CURпосмотреть/установить MAC адрес в режиме SoftAP (точка доступа) для текущего сеансаwifiAT+CIPAPMAC_CUR=AT+CIPAPMAC_CUR?отображает текущий MAC адрес точки доступа SoftSPПример: AT+CIPAPMAC_CUR="1a:fe:36:97:d5:7b"
AT+CIPAPMAC_DEFКоманда полностью аналогична AT+CIPAPMAC_CURwifiПараметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CIPSTA_CURпосмотреть/установить IP адрес в режиме station для текущего сеансаwifiAT+CIPSTA_CUR=[,<шлюз>,<маска>]AT+CIPSTA_CUR?отображает текущий IP адрес stationip - ip адрес в виде строки, <шлюз> - шлюз по умолчанию, <маска> - маска подсети. Пример: AT+CIPSTA_CUR="192.168.6.100","192.168.6.1","255.255.255.0"
AT+CIPSTA_DEFКоманда полностью аналогична AT+CIPSTA_CURwifiПараметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CIPAP_CURПосмотреть/установить IP адрес в режиме SoftAP (точка доступа) для текущего сеансаwifiAT+CIPAP_CUR=AT+CIPAP_CUR?отображает текущий IP адрес SoftAP (точки доступа)Пример: AT+CIPAP_CUR="192.168.5.1"
AT+CIPAP_DEFКоманда полностью аналогична AT+CIPAP_CURwifiПараметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWSTARTSMARTКоманда запускает процесс SmartConfigwifiAT+CWSTARTSMART =<тип протокола><тип протокола> - 1:ESP_TOUCH
2:AirKiss

1. Прочтите дополнительную документацию о SmartConfig от Espressif.
2. Для ESP8266 должен быть активирован режим Station
3. После получения сообщения “Smart get wifi info” SmartConfig успешно завершен, вы можете использовать команду “AT+CIFSR” для проверки полученного ip адреса от маршрутизатора
4. ESP8266 не отвечает на команды во время выполнения SmartConfig, используйте команду “AT
+CWSTOPSMART” для остановки процесса.
Пример: AT+CWMODE=3
AT+CWSTARTSMART=1
AT+CWSTOPSMARTКоманда останавливает процесс SmartConfigwifiAT+CWSTOPSMARTНезависимо от результатов работы команды AT+CWSTARTSMART всегда используйте после ее завершения команду AT+CWSTOPSMART для освобождения ресурсов
AT+CIPSTATUSОтобразить статус подключенияTCP/IPAT+CIPSTATUS-Возвращает =ID соединения 0-4,
<тип>=тип соединения (2 - получен IP, 3 - подключен, 4 - отключен)
“TCP” или “UDP”,
=удаленный IP адрес,
=удаленный порт,=тип связи: 0: подсоединен как клиент, 1: как сервер
AT+CIPSTARTУстановить подключение TCP или UDP или получить информацию о текущем соединенииTCP/IP1. Одиночное подключение (+CIPMUX=0)
AT+CIPSTART=
<тип>,<адрес>,<порт>
[,(<локальный порт>),(<режим>)]
2. Множественное подключение:
(+CIPMUX=1)
AT+CIPSTART=
<тип>,
[,(<локальный порт>),()]
AT+CIPSTART=? ID
соединения 0-4,
<тип>=TCP или UDP, <адрес>=IP адрес удаленного хоста, <порт>= порт удаленного хоста.
[<локальный порт>] только для UDP
[<режим>] только для UDP
Возвращает "OK", "ERROR" или "ALREADY CONNECT"
0 : destination peer entity of UDP will not change.
1 : destination peer entity of UDP can change once.
2 : destination peer entity of UDP is allowed to change.
используется только совместно
Пример: AT+CIPSTART="TCP","192.168.101.110",1000
Дополнительная информация в документе "Espressif AT Command Examples"
AT+CIPSENDОтправить данныеTCP/IP1. Одиночное подключение (+CIPMUX=0)
AT+CIPSEND=<длина>
2. Множественное подключение:
(+CIPMUX=1) AT+CIPSEND= <идентификатор>,<длина>
3. Для "unvarnished
transmission mode" AT+CIPSEND
AT+CIPSEND=?
только для теста
Длина данных в пакете до 2048 байт. После получения данной команды модуль выводит приглашение ">" и переходит в режим приема данных через UART, после приема данных необходимой длины передает их в радиоканал. При успешной передаче возвращает "SEND OK".
При неудаче "ERROR".
В режиме "unvarnished
transmission mode"
прервать режим приема данных и перейти в командный режим можно последовательностью "+++" в отдельном пакете. Между пакетами интервал 20мс. Примеры можно найти в документе “Espressif AT Command Examples”
AT+CIPCLOSEЗакрыть соединение TCP или UDPTCP/IP1. Множественное подключение:
(+CIPMUX=1) AT+CIPCLOSE=
2. Одиночное подключение (+CIPMUX=0) AT+CIPCLOSE
AT+CIPCLOSE=?
возвращает OK
Возвращает "LINK IS NOT" или "UNLINK" если ID соединения уже разорвано, ERROR если соединения нет. Если в режиме клиента =5, то закрываются все соединения
AT+CIFSRОтобразить локальные IP адреса, адрес, который получили от точки доступа, к которой подключены и IP адрес ESP8266 SoftAP (локальной точки доступа)TCP/IPAT+CIFSRAT+CIFSR=?
Только для теста
Возвращает IP адрес ESP8266 SoftAP и
IP address ESP8266 Station
AT+CIPMUXВыбрать режим одиночного или множественных подключенийTCP/IPAT+CIPMUX=<режим>AT+CIPMUX?
Возвращает текущий режим 1 или 0
0=одиночные подключение, 1=множественные подключения.
Изменить режим можно только после закрытия всех подключений. Если запущен сервер, то требуется перезагрузка модуля.
“AT+CIPMUX=1” команда доступна только при “AT+CIPMODE=0”
AT+CIPSERVERЗапустить (перезапустить) TCP серверTCP/IPAT+CIPSERVER= <режим>[,<порт> ]-0=сервер отключен, 1=сервер запущен. Порт указывать необязательно, по умолчанию: 333. Для запуска сервера модуль должен быть в режиме множественных подключений AT+CIPMUX=1. Примеры: AT+ CIPMUX=1
AT+CIPSERVER=1,1001
AT+CIPSTOУстановить/посмотреть таймаут сервераTCP/IPAT+CIPSTO=<таймаут>AT+CIPSTO?
возвращает установленный таймаут
таймаут в секундах от 0 до 7200. Пример: AT+CIPMUX=1
AT+CIPSERVER=1,1001
AT+CIPSTO=10
AT+CIPMODEУстановить сквозной режим "unvarnished transmission mode"TCP/IPAT+CIPMODE=<режим>AT+CIPMODE?0=обычный режим,
1=unvarnished transmission mode
(режим 1 доступен только при AT+CIPMUX=0).
Пример: AT+CIPMODE=1
AT+SAVETRANSLINKSave transparent transmission link to FlashAT+SAVETRANSLINK
=<режим>,,<порт>
<режим>0-normal mode
1-transparent transmission mode
удаленный ip адрес
<порт> удаленный порт.
Пример: AT+SAVETRANSLINK=1,”192.168.6.110”,1002
AT+CIUPDATEОбновление прошивки через облако. Модуль должен быть в режиме 1 или 3 и быть подключен к точке доступа с выходом в интернет.TCP/IPAT+CIUPDATE1 found server
2 connect server
3 got edition
4 start update
AT+PINGПинг по имени хоста или IP адресуTCP/IPAT+PING=ipПримеры:
AT+PING=”192.168.1.1”
AT+PING=”esp8266.ru”
+IPDПолучить данныеTCP/IP(+CIPMUX=0)
+IPD,:
(+CIPMUX=1)
+IPD,,:
-1. Одиночные подключения
(+CIPMUX=1)
+IPD,<длина>:<данные>
2. Множественные подключения
(+CIPMUX=1)
+IPD,,<длина>,<данные>
Когда модуль получает данные по сети, то он их отправляет в UART командой +IPD