Справочник АТ команд для контроллеров с чипом 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 |