Справочник АТ команд для контроллеров с чипом ESP8266. АТ команды делятся на три категории:

- базовые команды;
- команды для WiFi;
- команды для TCP/IP.

Для модулей с 512KB flash:

- пользовательские параметры сохраняются в диапазон адресов 0x3C000 ~ 0x40000, 16KB;
- область системных параметров 0x7C000~0x80000, 16KB.

Для модулей с 1MB flash (или более 1MB):

- пользовательские параметры сохраняются в диапазон адресов 0x7C000 ~ 0x80000, 16KB;
- область системных параметров: последние 16KB.

Команда Описание Тип Выполнение Запрос/Тест Параметры
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:Odd2:EVENflow 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 память) wifi AT+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_CUR wifi Параметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWJAP_CUR Подключение к AP, точке доступа (current, т.е. без сохранения во flash память) wifi AT+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_CUR wifi Параметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWLAP Отобразить список доступных точек доступа wifi AT+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 Отключение от точки доступа wifi AT+CWQAP AT+CWQAP=? тест команды -
AT+CWSAP_CUR Создать SoftAP (точку доступа) для текущего сеанса wifi AT+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_CUR wifi Параметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWLIF Отобразить IP адреса станций, подключенных к ESP8266 SoftAP точке доступа wifi AT+CWLIF - (только для режимов 2-SoftAP и 3-Station+SoftAP)
AT+CWDHCP_CUR Включить или выключить DHCP сервер для текущего сеанса wifi AT+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_CUR wifi Параметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWAUTOCONN Автоматическое подключение к точке доступа (сохраняется во флеш память) wifi AT+CWAUTOCONN=<вкл> <вкл>
0 : не подключаться автоматически к точке доступа после старта модуля
1 : подключаться автоматически к точке доступа после старта модуля
По умолчанию ESP8266 station автоматически подключается к точке доступа
AT+CIPSTAMAC_CUR посмотреть/установить MAC адрес в режиме station для текущего сеанса wifi AT+CIPSTAMAC= AT+CIPSTAMAC_CUR?
отображает текущий MAC адрес Station
Пример: AT+CIPSTAMAC_CUR="18:fe:35:98:d3:7b"
AT+CIPSTAMAC_DEF Команда полностью аналогична AT+CIPSTAMAC_CUR wifi Параметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CIPAPMAC_CUR посмотреть/установить MAC адрес в режиме SoftAP (точка доступа) для текущего сеанса wifi AT+CIPAPMAC_CUR= AT+CIPAPMAC_CUR?отображает текущий MAC адрес точки доступа SoftSP Пример: AT+CIPAPMAC_CUR="1a:fe:36:97:d5:7b"
AT+CIPAPMAC_DEF Команда полностью аналогична AT+CIPAPMAC_CUR wifi Параметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CIPSTA_CUR посмотреть/установить IP адрес в режиме station для текущего сеанса wifi AT+CIPSTA_CUR=[,<шлюз>,<маска>] AT+CIPSTA_CUR?отображает текущий IP адрес station ip - ip адрес в виде строки, <шлюз> - шлюз по умолчанию, <маска> - маска подсети. Пример: AT+CIPSTA_CUR="192.168.6.100","192.168.6.1","255.255.255.0"
AT+CIPSTA_DEF Команда полностью аналогична AT+CIPSTA_CUR wifi Параметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CIPAP_CUR Посмотреть/установить IP адрес в режиме SoftAP (точка доступа) для текущего сеанса wifi AT+CIPAP_CUR= AT+CIPAP_CUR?отображает текущий IP адрес SoftAP (точки доступа) Пример: AT+CIPAP_CUR="192.168.5.1"
AT+CIPAP_DEF Команда полностью аналогична AT+CIPAP_CUR wifi Параметры команды сохраняются во флеш память и загружаются при следующем старте модуля.
AT+CWSTARTSMART Команда запускает процесс SmartConfig wifi AT+CWSTARTSMART =<тип протокола> <тип протокола> - 1:ESP_TOUCH
2:AirKiss1. Прочтите дополнительную документацию о 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 Команда останавливает процесс SmartConfig wifi AT+CWSTOPSMART Независимо от результатов работы команды AT+CWSTARTSMART всегда используйте после ее завершения команду AT+CWSTOPSMART для освобождения ресурсов
AT+CIPSTATUS Отобразить статус подключения TCP/IP AT+CIPSTATUS - Возвращает =ID соединения 0-4,
<тип>=тип соединения (2 - получен IP, 3 - подключен, 4 - отключен)
“TCP” или “UDP”,
=удаленный IP адрес,
=удаленный порт,=тип связи: 0: подсоединен как клиент, 1: как сервер
AT+CIPSTART Установить подключение TCP или UDP или получить информацию о текущем соединении TCP/IP 1. Одиночное подключение (+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/IP 1. Одиночное подключение (+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 или UDP TCP/IP 1. Множественное подключение:
(+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/IP AT+CIFSR AT+CIFSR=?
Только для теста
Возвращает IP адрес ESP8266 SoftAP и
IP address ESP8266 Station
AT+CIPMUX Выбрать режим одиночного или множественных подключений TCP/IP AT+CIPMUX=<режим> AT+CIPMUX?
Возвращает текущий режим 1 или 0
0=одиночные подключение, 1=множественные подключения.
Изменить режим можно только после закрытия всех подключений. Если запущен сервер, то требуется перезагрузка модуля.
“AT+CIPMUX=1” команда доступна только при “AT+CIPMODE=0”
AT+CIPSERVER Запустить (перезапустить) TCP сервер TCP/IP AT+CIPSERVER= <режим>[,<порт> ] - 0=сервер отключен, 1=сервер запущен. Порт указывать необязательно, по умолчанию: 333. Для запуска сервера модуль должен быть в режиме множественных подключений AT+CIPMUX=1. Примеры: AT+ CIPMUX=1
AT+CIPSERVER=1,1001
AT+CIPSTO Установить/посмотреть таймаут сервера TCP/IP AT+CIPSTO=<таймаут> AT+CIPSTO?
возвращает установленный таймаут
таймаут в секундах от 0 до 7200. Пример: AT+CIPMUX=1
AT+CIPSERVER=1,1001AT+CIPSTO=10
AT+CIPMODE Установить сквозной режим "unvarnished transmission mode" TCP/IP AT+CIPMODE=<режим> AT+CIPMODE? 0=обычный режим,
1=unvarnished transmission mode
(режим 1 доступен только при AT+CIPMUX=0).
Пример: AT+CIPMODE=1
AT+SAVETRANSLINK Save transparent transmission link to Flash AT+SAVETRANSLINK
=<режим>,,<порт>
<режим>0-normal mode
1-transparent transmission mode
удаленный ip адрес
<порт> удаленный порт.
Пример: AT+SAVETRANSLINK=1,”192.168.6.110”,1002
AT+CIUPDATE Обновление прошивки через облако. Модуль должен быть в режиме 1 или 3 и быть подключен к точке доступа с выходом в интернет. TCP/IP AT+CIUPDATE 1 found server
2 connect server
3 got edition
4 start update
AT+PING Пинг по имени хоста или IP адресу TCP/IP AT+PING=ip Примеры:
AT+PING=”192.168.1.1”AT+PING=”wemos.ru”
+IPD Получить данные TCP/IP (+CIPMUX=0)
+IPD,:(+CIPMUX=1)+IPD,,:
- 1. Одиночные подключения
(+CIPMUX=1)+IPD,<длина>:<данные>2. Множественные подключения
(+CIPMUX=1)+IPD,,<длина>,<данные>

Когда модуль получает данные по сети, то он их отправляет в UART командой +IPD