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 память) | 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:AirKiss 1. Прочтите дополнительную документацию о SmartConfig от Espressif. | |
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,1001 AT+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=”esp8266.ru” | |
+IPD | Получить данные | TCP/IP | (+CIPMUX=0) +IPD,: (+CIPMUX=1) +IPD,,: | — | 1. Одиночные подключения (+CIPMUX=1) +IPD,: 2. Множественные подключения (+CIPMUX=1) +IPD,,, Когда модуль получает данные по сети, то он их отправляет в UART командой +IPD |
esp8266.ru
Каждая инструкция для модуля может находиться в одной строке, которая должна завершаться символом возврата каретки CR, или \r (Enter или Ctrl+M, код 0x0D). После поступления кода возврата каретки команда запускается модулем на выполнение, в результате в терминал консоли выводится ответ, содержащий результат выполнения команды. Примечание: некоторые старые прошивки (www.ai-thinker.com Version:0.9.2.4) требуют для завершения ввода команды последовательности CRLF, \r\n (т. е. Ctrl+M и Ctrl+J), где символы CR и LF следуют друг за другом (код LF 0x0A). Большинство популярных программ терминала (например putty) после нажатия на Enter выдают только символ возврата каретки \r.
TXD: синий светодиод, индицирующий передачу данных через TTL RS-232. [Общее описание инструкций] Каждая инструкция (строка символов, начинающаяся на префикс AT и завершающаяся символом CR) может содержать в себе один из 4 типов команд.
Замечания по инструкциям: • Не все инструкции AT имеют 4 типа команд, т. е. какой-то тип может отсутствовать (например, у инструкции AT+CIPSEND есть только типы set и execute). • Если команда выполнена успешно, то сообщение о её завершении оканчивается на OK, иначе на ERROR или FAIL. Скорость, с которой работает терминал, равна 115200 бод. Некоторые старые прошивки требуют скорости 9600 бод. Остальные параметры стандартные. Ниже показан скриншот настроек сессии Serial популярной утилиты терминала putty. [Базовые команды]
time значение в миллисекундах, устанавливает время сна ESP8266. Модуль ESP8266 автоматически проснется после истечения time миллисекунд времени глубокого сна. Примечание: для пробуждения из глубокого сна требуется аппаратная поддержка (сигнал XPD_DCDC должен соединяться с сигналом сброса EXT_RSTB через перемычку 0R). [Команды Wi-Fi]
Код режима mode: 1 режим станции (станция может подключаться к точке доступа).
ssid строка, где в двойных кавычках указан идентификатор (имя) точки доступа.pwd строка, где в двойных кавычках указан пароль точки доступа. Максимальная длина строки пароля 64 символа. Пример: AT+CWJAP="wifi-1","12345678" OK
enc 0 OPEN (доступ без пароля, доступ не защищен). ssid строка идентификатора (имени) точки доступа. rssi уровень сигнала от точки доступа. mac строка, в которой содержится MAC-адрес точки доступа. chn номер используемого радиоканала. Пример: AT+CWLAP +CWLAP:(3,"D323",-70,"c0:c1:c0:97:ad:0f",1) +CWLAP:(4,"Akado52",-78,"44:32:c8:fc:f3:2e",1) +CWLAP:(3,"SSID1",-86,"38:46:08:44:54:83",1) +CWLAP:(3,"Mgts 56",-79,"34:4b:50:1c:66:f1",1) +CWLAP:(2,"beeline-router105E44",-89,"84:c9:b2:10:5e:44",1) +CWLAP:(3,"MGTS71",-88,"34:4b:50:18:47:86",1) +CWLAP:(3,"mgts 53",-78,"4c:ac:0a:70:f1:93",6) +CWLAP:(4,"NetByNet_055",-69,"10:fe:ed:fb:89:92",6) +CWLAP:(3,"mgts 49",-85,"34:4b:50:1b:c9:4b",6) +CWLAP:(3,"mgts66",-86,"4c:ac:0a:70:a4:db",6) +CWLAP:(3,"mgts81",-87,"84:74:2a:09:7e:95",6) +CWLAP:(3,"SSID1",-92,"4c:ac:0a:70:e9:23",6) +CWLAP:(4,"onlime56",-77,"d4:bf:7f:0d:8c:d1",9) +CWLAP:(3,"mgts52",-82,"34:4b:50:1c:77:c2",11) +CWLAP:(4,"NetBynet",-84,"00:26:18:3d:4f:61",11) +CWLAP:(0,"Beeline_WiFi",-92,"00:18:b0:ee:e3:d0",1) +CWLAP:(0,"Beeline_WiFi_WPA",-87,"00:18:b0:ee:e3:d1",1) OK Инструкция конфигурирует режим работы softAP модуля ESP8266 (режим, когда модуль работает как точка доступа).
ssid строка, задающая имя (SSID) точки доступа модуля ESP8266. Значение SSID должно быть указано в двойных кавычках. pwd строка пароля, максимальная длина 64 символа. Значение пароля должно быть указано в двойных кавычках. chn идентификатор канала. enc шифрование доступа: 0 OPEN (доступ без пароля, доступ не защищен). Пример: AT+CWSAP="esp_123","1234567890",5,3 OK
mode: 1 режим станции (станция может подключаться к точке доступа). en: 0 запретить DHCP.
mac строка MAC-адреса станции ESP8266, заключенная в двойные кавычки. Пример: AT+CIPSTAMAC="18:aa:35:97:d4:7b" OK
mac строка MAC-адреса точки доступа ESP8266, заключенная в двойные кавычки. Пример: AT+CIPAPMAC="18:aa:35:97:d4:7b" OK
ip строка IP-адреса станции ESP8266, заключенная в двойные кавычки. Пример: AT+CIPSTA="192.168.0.23" OK
ip строка IP-адреса точки доступа ESP8266, заключенная в двойные кавычки. Пример: AT+CIPAP="192.168.0.100" OK [Команды TCP-IP]
stat текущее состояние модуля ESP8266: 2 получение IP-адреса от точки доступа. id идентификатор соединения (0..4) для режима множественного доступа. type строка, где в двойных кавычках указан тип IP-соединения, «TCP» или «UDP». addr строка в двойных кавычках, показывающая IP-адрес. port десятичный номер порта. tetype: 0 ESP8266 работает как клиент. Примечание: некоторые модули ESP-01 в ответ на команду AT+CIPSTATUS? выводят ошибку (ERROR), а в ответ на AT+CIPSTATUS выводят STATUS:1 вместо информации, показанной в таблице (означает нет дополнительной информации, но состояние поменялось). На прошивке 0018000902-AI03 эта команда возвращает вместо этого STATUS:2 (нет дополнительной информации, но состояние поменялось). Прошивка 00200.9.5(b1) AI-THINKER Dec 25 2014 выводит вместо этого STATUS:5. Пример вывода команды AT+CIPSTATUS, означающей, что установлено TCP-подключение к серверу ESP8266 от клиента с IP-адресом 192.168.0.56, порт клиента 29998: AT+CIPSTATUS STATUS:3 +CIPSTATUS:0,"TCP","192.168.0.56",29998,1 OK Пример вывода команды AT+CIPSTATUS, означающей, что есть подключение к точке доступа, но сетевых подключений к ESP8266 нет (сервер может быть запущен, но все сетевые подключения разорваны): AT+CIPSTATUS STATUS:4 OK Примечание: если нет обмена данными с сервером ESP8266, то сервер через определенное время (таймаут соединения) разрывает соединение. Таймаут устанавливается командой AT+CIPSTO (значение по умолчанию обычно 180 секунд). Команда устанавливает TCP-соединение с удаленным сервером или регистрирует локальный порт UDP и начинает соединение.
Описание параметров: id число от 0 до 4, идентификатор соединения. type строка, в двойных кавычках указывающая тип соединения «TCP» или «UDP». addr строка, в двойных кавычках указывающая IP-адрес удаленной точки подключения. port десятичное число, указывающее порт удаленной точки подключения.
Описание параметров: id номер идентификатора сетевого соединения (0..4). Существует 2 режима отправки данных — нормальный (normal) и прозрачный (unvarnished). Режим normal. В этом режиме данные передаются модулем ESP8266 порциями, при этом отправка каждой порции данных заранее подготавливается командой AT+CIPSEND=length. После ввода этой команды модуль ESP8266 выдает приглашение > и ждет поступления через сигнал RXD указанного length количества байт, после чего автоматически выходит обратно в режим обработки AT-инструкций. Режим unvarnished. Это прозрачный режим, когда все принимаемые через сигнал RXD данные прозрачно передаются через установленное сетевое соединение на удаленный хост сети, и когда все принимаемые данные от удаленного хоста прозрачно попадают на сигнал TXD. После ввода этой команды модуль выдает приглашение > и начинает работать в прозрачном режиме. Для выхода из прозрачного режима в режим обработки AT-инструкций необходимо поступление «магической» комбинации данных «+++». Примечание: не все версии прошивки позволяют выйти из прозрачного режима через магическую комбинацию. Например, мой модуль с прошивкой ai-thinker.com Version:0.9.2.4 выходит из прозрачного режима только после аппаратного сброса или передергивания питания.
mode: 0 одиночное соединение. Примечание: этот режим можно поменять только после того, как все соединения были закрыты. Если запущен сервер, то требуется перезагрузка.
mode: 0 удаляет сервер (после этого нужна перезагрузка). port номер порта сервера. Не обязательный параметр, если не указан, то по умолчанию используется порт 333. Примечание: сервер может быть запущен только в том случае, если разрешен режим множественных соединений (выполнена команда AT+CIPMUX=1). Когда создается сервер, то автоматически создается монитор сервера (кто бы объяснил, что это такое?..). Когда клиент подключается к серверу, то он получает одно соединение, и ему присваивается идентификатор соединения id. Всего допускается не более 5 одновременных соединений (идентификаторы 0..4).
mode: 0 нормальный (normal) режим передачи. Существует 2 режима отправки данных — нормальный (normal) и прозрачный (unvarnished). Режим normal. В этом режиме данные передаются модулем ESP8266 порциями, при этом отправка каждой порции данных заранее подготавливается командой AT+CIPSEND=length. После ввода этой команды модуль ESP8266 выдает приглашение > и ждет поступления через сигнал RXD указанного length количества байт, после чего автоматически выходит обратно в режим обработки AT-инструкций. Нормальный режим позволяет выполнять AT-команды в перерывах между передачами блоков данных. Режим unvarnished. Это прозрачный режим, когда все принимаемые через сигнал RXD данные прозрачно передаются через установленное сетевое соединение на удаленный хост сети, и когда все принимаемые данные от удаленного хоста прозрачно попадают на сигнал TXD. После ввода этой команды модуль выдает приглашение > и начинает работать в прозрачном режиме. Для выхода из прозрачного режима в режим обработки AT-инструкций необходимо поступление «магической» комбинации данных «+++». Примечание 1: не все версии прошивки позволяют выйти из прозрачного режима через магическую комбинацию. Например, мой модуль с прошивкой ai-thinker.com Version:0.9.2.4 выходит из прозрачного режима только после аппаратного сброса или передергивания питания. Примечание 2: к сожалению, мне не удалось заставить работать ESP-01 в режиме сервера с прозрачной передачей данных. Прозрачная передача почему-то работает только в режиме клиента. Экспериментировал с прошивками 0018000902-AI03 (Version:0.9.2.4) и 00200.9.5(b1) (Version:0.9.5(b1)).
n: 1 найден сервер. [Разное]
[Ссылки] 1. AT_Description site:github.com. |
microsin.net
Добавлено 9 июня 2018 в 09:01
Сохранить или поделиться
ESP8266 в своей конфигурации по умолчанию загружается в режим последовательного модема. В этом режиме вы можете общаться с ним с помощью набора AT-команд. AT-команды ESP8266 можно разделить на три категории: базовые, уровень Wi-Fi и уровень TCP/IP. Ниже приведен список всех базовых AT команд, поддерживаемых ESP8266, с объяснением, что они делают, и как их использовать.
Модуль ESP-12E на базе ESP8266Каждая команда имеет до 4 вариантов, изменяющих ее назначение. Вы можете выбирать между ними, добавляя одно из четырех возможных значений в конце основной команды. Эти четыре дополнения могут иметь следующие значения: ""
, =<parameter|[parameters]>
, "?"
, =?
.
Тип | Формат команды | Описание |
---|---|---|
Тест | AT+<x>=? | Запрос внутренних параметров и диапазона их значений для заданной команды. |
Запрос | AT+<x>? | Возвращает текущее значение параметра. |
Установка | AT+<x>=<…> | Установка параметров, заданных в команде пользователем, и запуск этой команды. |
Выполнение | AT+<x> | Запуск команды без заданных пользователем параметров. |
Примечание:
[]
обозначают значение по умолчанию; оно либо не требуется, либо может не отображаться;AT+CWSAP="ESP756290","21030826", 1,4
;CR LF
).Команда | Описание |
---|---|
AT | Проверить запуск AT |
AT+RST | Перезапустить модуль |
AT+GMR | Проверить информацию о версии |
AT+GSLP | Войти в режим глубокого сна |
ATE | Настроить эхо AT команд |
AT+RESTORE | Сбросить модуль на заводские настройки |
AT+UART_CUR | Текущая конфигурация UART |
AT+UART_DEF | Конфигурация UART по умолчанию, сохраненная во флеш-памяти |
AT+SLEEP | Настройка режимов сна |
AT+WAKEUPGPIO | Настройка GPIO для просыпания ESP8266 из режима легкого сна |
AT+RFPOWER | Установка максимального значения RF мощности передачи |
AT+RFVDD | Установка RF мощности передачи в соответствии с VDD33 |
AT+RFAUTOTRACE | Установка подстройки радиочастоты |
AT+SYSRAM | Проверка доступного размера RAM |
AT+SYSADC | Проверка значения АЦП |
AT+SYSIOSETCFG | Установка конфигурации выводов ввода/вывода |
AT+SYSIOGETCFG | Получение конфигурации выводов ввода/вывода |
AT+SYSGPIODIR | Настройка направления выводов ввода/вывода общего назначения (GPIO) |
AT+SYSGPIOWRITE | Настройка выходного уровня GPIO |
AT+SYSGPIOREAD | Проверка входного уровня GPIO |
AT+SYSMSG_CUR | Текущая установка системных сообщений |
AT+SYSMSG_DEF | Установка системных сообщений по умолчанию |
AT
– проверить запуск ATКоманда выполнения | AT |
---|---|
Отклик | OK |
Параметры | – |
AT+RST
– перезапустить модульКоманда выполнения | AT+RST |
---|---|
Отклик | OK |
Параметры | – |
AT+GMR
– проверить информацию о версииКоманда выполнения | AT+GMR |
---|---|
Отклик | <AT version info> <SDK version info> <compile time> OK |
Параметры |
|
AT+GSLP
– войти в режим глубокого снаКоманда установки | AT+GSLP=<time> |
---|---|
Отклик | <time> OK |
Параметры | <time> – продолжительность сна ESP8266. Единицы измерения: миллисекунды. После указанного времени ESP8266 выйдет из режима глубокого сна. |
Примечание | Перед входом модуля в режим глубокого сна необходимо выполнить небольшую настройку, т.е. подключить XPD_DCDC к EXT_RSTB с помощью 0-омного резистора. |
ATE
– включение/выключение эхоКоманда выполнения | ATE |
---|---|
Отклик | OK |
Параметры |
|
Примечание | Данная команда ATE используется для вызова эхо. Это означает, что при использовании команды ATE введенные команды могут быть возвращены эхом назад отправителю. Возможны два параметра. Команда возвращает OK в нормальном случае и ERROR, когда был указан параметр, отличающийся от 0 или 1. |
AT+RESTORE
– сброс на заводские настройкиКоманда выполнения | AT+RESTORE |
---|---|
Отклик | OK |
Примечание | Выполнение этой команды сбросит все параметры, сохраненные во флеш-памяти, и восстановит заводские настройки модуля. После выполнения команды чип будет перезапущен. |
AT+UART_CUR
– текущая конфигурация UART, не сохраненная во флеш-памятиКоманда | Команда запроса:AT+UART_CUR? | Команда установки:AT+UART_CUR=<baudrate>,<databits>,<stopbits>,<parity>,<flow control> |
---|---|---|
Отклик | +UART_CUR=<baudrate>,<databits>,<stopbits>,<parity>,<flow control> OK | OK |
Примечание | Команда AT+UART_CUR? вернет фактическое значение параметров конфигурации UART, которое может иметь допустимую ошибку по сравнению с установленным значением из-за деления тактовой частоты.Например, если скорость передачи данных UART установлена равной 115200, то скорость, возвращаемая командой | |
Параметры |
| |
Примечания |
| |
Пример | AT+UART_CUR=115200,8,1,0,3 |
AT+UART_DEF
– конфигурация UART по умолчанию, сохраненная во флеш-памятиКоманда | Команда запроса:AT+UART_DEF? | Команда установки:AT+UART_DEF=<baudrate>,<databits>,<stopbits>,<parity>,<flow control> |
---|---|---|
Отклик | +UART_DEF=<baudrate>,<databits>,<stopbits>,<parity>,<flow control> OK | OK |
Параметры |
| |
Примечания |
| |
Пример | AT+UART_DEF=115200,8,1,0,3 |
AT+SLEEP
– настройка режимов снаКоманда | Команда запроса:AT+SLEEP? | Команда установки:AT+SLEEP=<sleep mode> |
---|---|---|
Отклик | +SLEEP:<sleep mode> OK | OK |
Параметр | <sleep mode>:
| |
Примечания | Данная команда может использоваться только в режиме станции. Режим сна по умолчанию – это модемный режим сна. | |
Пример | AT+SLEEP=0 |
AT+WAKEUPGPIO
– настройка GPIO для просыпания ESP8266 из режима легкого снаКоманда установки | AT+WAKEUPGPIO=<enable>,<trigger_GPIO>,<trigger_level>[,<awake_GPIO>,<awake_level>] |
---|---|
Отклик | OK |
Параметры |
|
Примечания |
|
Пример |
|
AT+RFPOWER
– установка максимального значения RF мощности передачиКоманда установки | AT+RFPOWER=<TX Power> |
---|---|
Отклик | OK |
Параметры | <TX Power> – максимальное значение RF мощности передачи; значение в диапазоне [0…82]; единица: 0,25 дБм. |
Примечание | Данная команда устанавливает максимальное значение RF мощности передачи ESP8266; это неточно. Реальное значение может быть меньше, чем установленное значение. |
Пример | AT+RFPOWER=50 |
AT+RFVDD
–установка RF мощности передачи в соответствии с VDD33Команда | Команда запроса:AT+RFVDD? Назначение: проверяет значение на VDD33 ESP8266. | Команда установки:AT+RFVDD=<VDD33> Назначение: устанавливает RF мощность передаи в соответствии с <VDD33> . | Команда выполнения:AT+RFVDD Назначение: автоматически устанавливает RF мощность передачи. |
---|---|---|---|
Отклик | +RFVDD:<VDD33> OK | OK | OK |
Параметр | <VDD33> – напряжение питания на VDD33 ESP8266; единица: 1/1024 вольта. | <VDD33> – напряжение питания на VDD33 ESP8266; диапазон значений: [1900…3300]. | – |
Примечание | Данная команда должна использоваться, только когда вывод TOUT висит в воздухе, иначе возвращаемое значение будет неправильным. | Для правильного измерения напряжения на VDD33 вывод TOUT должен висеть в воздухе. | |
Пример | AT+RFVDD=2800 |
AT+RFAUTOTRACE
– установка подстройки радиочастотыКоманда | Команда запроса:AT+RFAUTOTRACE? | Команда установки:AT+RFAUTOTRACE=<enable> |
---|---|---|
Отклик | +RFAUTOTRACE:<enable> OK | OK |
Параметры | <enable>
| |
Примечания |
| |
Пример | AT+RFAUTOTRACE=0 |
AT+SYSRAM
– проверка доступного размера RAMКоманда запроса | AT+SYSRAM? |
---|---|
Отклик | +SYSRAM:<remaining RAM size> OK |
Параметр | <remaining RAM size> – оставшееся пространство ОЗУ, единица: байт. |
AT+SYSADC
– проверка значения АЦПКоманда запроса | AT+SYSADC? |
---|---|
Отклик | +SYSADC:<ADC> OK |
Параметр | <ADC> – значение АЦП; единица: 1/1024 вольта. |
AT+SYSIOSETCFG
– установка конфигурации выводов ввода/выводаКоманда установки | AT+SYSIOSETCFG=<pin>,<mode>,<pull-up> |
---|---|
Отклик | OK |
Параметры |
|
Примечание | Для использования команд AT+SYSIO... посмотрите список выводов ESP8266. |
Пример | AT+SYSIOSETCFG=12,3,1 // настроить GPIO12 для работы в качестве GPIO |
AT+SYSIOGETCFG
– проверить режим работы выводов ввода/выводаКоманда установки | AT+SYSIOGETCFG=<pin> |
---|---|
Отклик | +SYSIOGETCFG:<pin>,<mode>,<pull-up> OK |
Параметр |
|
Примечание | Для использования команд AT+SYSIO... посмотрите список выводов ESP8266. |
AT+SYSGPIODIR
– настройка направления выводов ввода/вывода общего назначения (GPIO)Команда установки | AT+SYSGPIODIR=<pin>,<dir> |
---|---|
Отклик |
|
Параметры |
|
Примечание | Для использования команд AT+SYSIO... посмотрите список выводов ESP8266. |
Пример | AT+SYSIOSETCFG=12,3,1 // настраивает GPIO12 для работы как GPIOAT+SYSGPIODIR=12,0 // настраивает GPIO12 для работы как вход |
AT+SYSGPIOWRITE
– настройка выходного уровня GPIOКоманда установки | AT+SYSGPIOWRITE=<pin>,<level> |
---|---|
Отклик |
|
Параметры |
|
Примечание | Для использования команд AT+SYSIO... посмотрите список выводов ESP8266. |
Пример | AT+SYSIOSETCFG=12,3,1 // настраивает GPIO12 для работы как GPIOAT+SYSGPIODIR=12,1 // настраивает GPIO12 для работы как выходAT+SYSGPIOWRITE=12,1 // устанавливает на выходе GPIO12 высокий уровень |
AT+SYSGPIOREAD
– прочитать входной уровень на GPIOКоманда установки | AT+SYSGPIOREAD=<pin> |
---|---|
Отклик |
|
Параметры |
|
Примечание | Для использования команд AT+SYSIO... посмотрите список выводов ESP8266. |
Пример | AT+SYSIOSETCFG=12,3,1 // настраивает GPIO12 для работы как GPIOAT+SYSGPIODIR=12,0 // настраивает GPIO12 для работы как входAT+SYSGPIOREAD=12 |
AT+SYSMSG_CUR
– текущая установка системных сообщенийКоманда установки | AT+SYSMSG_CUR=<n> |
---|---|
Отклик | OK |
Параметры | <n>
|
Примечание | Изменения конфигурации НЕ сохраняются во флеш-памяти. |
Пример | AT+SYSMSG_CUR=3 |
AT+SYSMSG_DEF
– установка системных сообщений по умолчаниюКоманда установки | AT+SYSMSG_DEF=<n> |
---|---|
Отклик | OK |
Параметры | <n>
|
Примечание | Изменения конфигурации сохраняются в области пользовательских параметров во флеш-памяти. |
Пример | AT+SYSMSG_DEF=3 |
Оригинал статьи:
Сохранить или поделиться
На сайте работает сервис комментирования DISQUS, который позволяет вам оставлять комментарии на множестве сайтов, имея лишь один аккаунт на Disqus.com.
WiFi модуль ESP-12E разработан компанией Ai-thinker и построен на базе процессора с ядром ESP8266, отличительной особенностью которого является наличие радиоинтерфейса WiFi. Ядро ESP8266 интегрировано в Tensilica L106 – 32-битный микроконтроллер с ультранизким энергопотреблением. Поддержка тактовых частот 80 и 160 МГц, поддержка RTOS, встроенные Wi-Fi MAC/BB/RF/PA/LNA, микрополосковая…
WeMos D1 Wi-Fi UNO (ESP8266 ESP-12E)Arduino IDE совместимый контроллер с Wi-Fi WeMos D1 на ESP8266 ESP-12E.
NodeMcu V3 Lua WiFi модуль (ESP8266 ESP-12E)NodeMCU представляет собой плату для разработки на базе чипа ESP8266 (версия ESP12E), который представляет собой UART-WiFi модуль с ультра низким потреблением. Сам чип проектировался для интернета вещей, а данная плата позволяет упростить разработку, т.к. на ней уже реализовано подключение по USB, установлен стабилизатор напряжения питания, и все выводы чипа разведены на гребенки со стандартным шагом…
ESP-01 Wi-Fi модуль (ESP8266)Wi-Fi модуль на базе однокристальной системы (SoC) ESP8266. По сравнению с другими модулями имеет небольшие размеры и ULP технологию. Модуль специально сконструирован для создания мобильных устройств и интернета вещей (IoT).
radioprog.ru
AT | Проверка модуля. Если модуль успешно стартовал, то отвечает «OK» | базовая | AT | — | — |
AT+RST | Перезапуск модуля. После успешного перезапуска возвращает «OK» | базовая | AR+RST | — | — |
AT+GMR | Отобразить версию прошивки. Версия отображается в виде 8 или 10 цифр. Первая группа 4 цифры — версия AT (например, 0019), вторая группа 4 или 6 цифр — версия SDK (например, 000902) | базовая | AT+GMR | — | — |
AT+CWMODE | Переключение режима wifi. Для вступления в силу требуется перезапуск модуля командой AT+RST | wifi | AT+CWMODE= | AT+CWMODE? AT+CWMODE=? | 1=Station, 2=AP, 3=Оба режима (Station+AP) |
AT+CWJAP | Подключение к AP | wifi | AT+CWJAP =, | AT+CWJAP? | SSID и пароль указываются в двойных кавычках |
AT+CWLAP | Отобразить список доступных AP. Выводит SSID, метод шифрования, силу сигнала. Типы шифрования: 0:Open, 1: WEP, 2:WPA_PSK, 3:WPA2_PSK, 4:WPA_WPA2_PSK | wifi | AT+CWLAP | — | — |
AT+CWQAP | Отключение от AP | wifi | AT+CWQAP | AT+CWQAP=? | — |
AT+CWSAP | Установить параметры для режима AP | wifi | AT+CWSAP= ,,, | AT+CWSAP? возвращает текущие параметры | SSID и пароль указываются в двойных кавычках. Типы шифрования: 0:Open, 1: WEP, 2:WPA_PSK, 3:WPA2_PSK, 4:WPA_WPA2_PSK |
AT+CWLIF | Отобразить IP адреса (только для режимов 2-SoftAP и 3-Station+SoftAP) подключенных клиентов | wifi | AT+CWLIF | — | — |
AT+CIPSTATUS | Отобразить статус подключения. Возвращает =ID соединения 0-4″ =тип соединения “TCP” or “UDP”, =IP адрес,=порт,=тип связи: 0: подсоединен как клиент, 1: как сервер | TCP/IP | AT+CIPSTATUS | — | — |
AT+CIPSTART | Установить подключение TCP или UDP. | TCP/IP | 1. Одиночное подключение (+CIPMUX=0) AT+CIPSTART= ,, 2. Множественное подключение: (+CIPMUX=1) AT+CIPSTART= ,, | AT+CIPSTART=? | ID соединения 0-4, =TCP или UDP, =IP адрес удаленного хоста, = порт удаленного хоста. Возвращает «OK», «ERROR» или «ALREADY CONNECT» |
AT+CIPSEND | Отправить данные | TCP/IP | 1. Одиночное подключение (+CIPMUX=0) AT+CIPSEND= 2. Множественное подключение: (+CIPMUX=1) AT+CIPSEND= , | AT+CIPSEND=? | Длина данных в пакете до 2048 байт. Между пакетами интервал 20мс. После получения данной команды модуль возвращает «>» и переходит в режим приема данных по RX, после приема данных необходимой длины передает их в радиоканал. При успешной передаче возвращает «SEND OK». Прервать режим приема данных и перейти в командный режим можно последовательностью «+++» |
AT+CIPCLOSE | Закрыть подключение TCP или UDP | TCP/IP | 1. Множественное подключение: (+CIPMUX=1) AT+CIPCLOSE= 2. Одиночное подключение (+CIPMUX=0) AT+CIPCLOSE | AT+CIPCLOSE=? | Возвращает «LINK IS NOT» или «UNLINK» если ID соединения уже разорвано, ERROR если соединения нет. |
AT+CIFSR | Отобразить IP адрес, который получили от AP | TCP/IP | AT+CIFSR | AT+CIFSR=? | — |
AT+CIPMUX | Выбрать режим одиночных или множественных подключений | TCP/IP | AT+CIPMUX= | AT+CIPMUX? | 0=одиночные подключение, 1=множественные подключения. Изменить режим можно только после закрытия всех подключений. Если запущен сервер, то требуется перезагрузка модуля. |
AT+CIPSERVER | Запустить (перезапустить) сервер | TCP/IP | AT+CIPSERVER= [, ] | — | 0=сервер отключен, 1=сервер запущен. Порт по умолчанию:333. Для запуска сервера модуль должен быть в режиме множественных подключений AT+CIPMUX=1. |
AT+CIPSTO | Установить таймаут сервера | TCP/IP | AT+CIPSTO= | AT+CIPSTO? | таймаут в секундах от 0 до 28800 |
AT+CIPMODE | Установить сквозной режим | — | AT+CIPMODE= | AT+CIPMODE? | 0=обычный режим, 2=сквозной режим |
AT+CIUPDATE | Обновление прошивки через облако. Модуль должен быть в режиме 1 или 3 и быть подключен к AP с доступом к интернет. В настоящее время имеет смысл только для официальных прошивок. | — | AT+CIUPDATE | ||
+IPD | Получить данные из сети | — | — | — | 1. Одиночные подключения (+CIPMUX=1) +IPD,: 2. Множественные подключения (+CIPMUX=1) +IPD,,, |
AT+CIOBAUD | Установить скорость соединения на порту (для прошивки electrogragon версии 0.922) | — | AT+CIOBAUD= | AT+CIOBAUD= AT+CIOBAUD=? | скорость=9600, 19200, 38400, 57600, 74880, 115200, 230400,460800, 921600 |
AT+CSYSWDTENABLE | Включение сторожевого таймера (для прошивки electrogragon версии 0.922) | WatchDogTimer перезапускает модуль при наличии ошибок | |||
AT+CSYSWDTDISABLE | Выключение сторожевого таймера (для прошивки electrogragon версии 0.922) | отключение WatchDogTimer | |||
AT+SETIP | Установить IP для режима AT+CWMODE=2 (для прошивки electrogragon версии 0.925) | ||||
AT+USETIP | Установить IP в режим авто (для прошивки electrogragon версии 0.925) | ||||
AT+SAPIP | Установить IP для режима AT+CWMODE=1 (для прошивки electrogragon версии 0.925) | ||||
AT+USAPIP | Установить IP по умолчанию 192.168.4.1 для режима AT+CWMODE=1 (для прошивки electrogragon версии 0.925) |
esp8266.ru
Добавлено 21 июня 2018 в 00:15
Сохранить или поделиться
В данной статье приведены некоторые конкретные примеры использования AT команд ESP8266. Для получения дополнительной информации о полном наборе команд смотрите предыдущие статьи из этой серии, в которых содержится полная документация на команды.
Для тестирования и отправки команд на ESP8266 вам понадобится установленный на компьютере UART терминал:
Внимание:
AT команды должны вводиться заглавными буквами.
AT+CWMODE=3 // режим softAP+station (точка доступа + станция)
Отклик:OK
AT+CWJAP=»SSID»,»password» // SSID и пароль роутера
Отклик:OK
AT+CIFSR
Отклик:+CIFSR:APIP,»192.168.4.1″
+CIFSR:APMAC,»1a:fe:34:a5:8d:c6″
+CIFSR:STAIP,»192.168.3.133″
+CIFSR:STAMAC,»18:fe:34:a5:8d:c6″
OK
AT+CIPSTART=»TCP»,»192.168.3.116″,8080 // протокол, IP адрес и порт сервера
Отклик:OK
AT+CIPSEND=4 // установить длину данных, которые будут посылаться, например, 4 байта
>test // ввод данных, без CR
Recv 4 bytes
SEND OK
Внимание:
+IPD,n:xxxxxxxxxx // принято n байтов, данные=xxxxxxxxxxx
AT+CIPCLOSE
Отклик:CLOSED
OK
UDP передача выполняется с помощью команды AT+CIPSTART
.
AT+CWMODE=3 // режим softAP+station (точка доступа + станция)
Отклик:OK
AT+CWJAP=»SSID»,»password» // SSID и пароль роутера
Отклик:OK
AT+CIFSR
Отклик:+CIFSR:APIP,»192.168.4.1″
+CIFSR:APMAC,»1a:fe:34:a5:8d:c6″
+CIFSR:STAIP,»192.168.101.133″
+CIFSR:STAMAC,»18:fe:34:a5:8d:c6″
OK
При UDP передаче, используются ли фиксированные удаленные IP адрес и порт или нет, определяется в последнем параметре AT+CIPSTART
. «0» означает, что удаленные IP адрес и порт фиксированы и не могут быть изменены. Такому соединению присваивается конкретный ID для того, чтобы убедиться, что отправитель и получатель данных не будут заменены другими устройствами.
AT+CIPMUX=1
Отклик:OK
AT+CIPSTART=4,»UDP»,»192.168.101.110″,8080,1112,0
Отклик:4,CONNECT
OK
Примечания:
AT+CIPSEND=4, X
”, они всё еще отправляются на первый компьютер. Если данный параметр не равен 0, то данные будут посланы на новый компьютер.AT+CIPSEND=4,7 // отправить 7 байтов на передачу №4
>UDPtest // ввод данных, без CR
Recv 7 bytes
SEND OK
Внимание:
+IPD,4,n:xxxxxxxxxx // принято n байтов, данные=xxxxxxxxxxx
AT+CIPCLOSE=4
Отклик:4,CLOSED
OK
При создании UDP передачи последний параметр «AT+CIPSTART
» установите в значение 2. Это означает, что удаленные IP адрес и порт могут быть изменены.
AT+CIPSTART=»UDP»,»192.168.101.110″,8080,1112,2
Отклик:CONNECT
OK
Примечания:
AT+CIPSEND=4, X
”, они отправляться на новый компьютер.AT+CIPSEND=7 // отправить 7 байтов на передачу
>UDPtest // ввод данных, без CR
Recv 7 bytes
SEND OK
Внимание:
AT+CIPSEND=7,»192.168.101.111″,1000 // отправить 7 байтов
>UDPtest // ввод данных, без CR
Recv 7 bytes
SEND OK
+IPD,n:xxxxxxxxxx // принято n байтов, данные=xxxxxxxxxxx
AT+CIPCLOSE
Отклик:CLOSED
OK
Сквозной режим UART-WiFI может быть включен, только когда ESP8266 работает как TCP клиент при одиночном подключении, или в UDP передаче.
В данном примере станция ESP8266 действует в качестве TCP клиента, чтобы создать одиночное подключение и выполнять сквозную передачу UART-WiFi. Для режима SoftAP (точка доступа) ESP8266, режим сквозной передачи UART-WiFi может быть выполнен аналогичным образом.
AT+CWMODE=3 // режим softAP+station (точка доступа + станция)
Отклик:OK
AT+CWJAP=»SSID»,»password» // SSID и пароль роутера
Отклик:OK
AT+CIFSR
Отклик:+CIFSR:APIP,»192.168.4.1″
+CIFSR:APMAC,»1a:fe:34:a5:8d:c6″
+CIFSR:STAIP,»192.168.101.133″
+CIFSR:STAMAC,»18:fe:34:a5:8d:c6″
OK
AT+CIPSTART=»TCP»,»192.168.101.110″,8080 // протокол, IP адрес и порт сервера
Отклик:OK
AT+CIPMODE=1
Отклик:OK
AT+CIPSEND
Отклик:> // Начиная с этого момента, данные, принимаемые с UART, будут передаваться на сервер автоматически.
Примечание:
Цель ввода «+++» заключается в выходе ESP8266 из режима сквозной передачи и возвращение в обычный прием AT команд, пока TCP соединение остается подключенным. Поэтому мы также можем использовать команду “AT+CIPSEND
” чтобы вернуться в режим сквозной передачи.
AT+CIPMODE=0
Отклик:OK
AT+CIPCLOSE
Отклик:CLOSED
OK
В данном примере точка доступа SoftAP ESP8266 создает сквозную UDP передачу UART-WiFi. Для режима станции ESP8266, режим сквозной UDP передачи UART-WiFi может быть выполнен аналогичным образом.
AT+CWMODE=3 // режим softAP+station (точка доступа + станция)
Отклик:OK
AT+CIPSTART=»UDP»,»192.168.4.2″,1001,2233,0
Отклик:OK
AT+CIPMODE=1
Отклик:OK
AT+CIPSEND
Отклик:> // Начиная с этого момента, данные, принимаемые с UART, будут передаваться на сервер автоматически.
Примечание:
Цель ввода «+++» заключается в выходе ESP8266 из режима сквозной передачи и возвращение в обычный прием AT команд, пока TCP соединение остается подключенным. Поэтому мы также можем использовать команду “AT+CIPSEND
” чтобы вернуться в режим сквозной передачи.
AT+CIPMODE=0
Отклик:OK
AT+CIPCLOSE
Отклик:CLOSED
OK
Когда ESP8266 работает в качестве TCP сервера, должны быть доступны несколько соединений, поскольку к ESP8266 может подключиться более одного клиента.
Ниже приведен пример, показывающий, как реализован TCP сервер, когда ESP8266 работает в режиме точки доступа SoftAP.
AT+CWMODE=3 // режим softAP+station (точка доступа + станция)
Отклик:OK
AT+CIPMUX=1
Отклик:OK
AT+CIPSERVER=1 // по умолчанию порт = 333
Отклик:OK
Примечание:
Когда ESP8266 работает как TCP сервер, используется механизм тайм-аута. Если TCP клиент подключился к TCP серверу ESP8266, но данные не передвались в течение определенного периода времени, то сервер закрывает соединение по истечении этого периода. Чтобы избежать подобных проблем, пожалуйста, настройте циркуляцию передачи данных каждые 5 секунд.
AT+CIPSEND=0,4 // установить длину данных, которые будут отправлены, здесь это 4 байта
>test // ввод данных, без CR
Recv 4 bytes
SEND OK
Внимание:
+IPD,0,n:xxxxxxxxxx // принято n байтов, данные=xxxxxxxxxxx
AT+CIPCLOSE=0
Отклик:0,CLOSED
OK
Оригинал статьи:
Сохранить или поделиться
На сайте работает сервис комментирования DISQUS, который позволяет вам оставлять комментарии на множестве сайтов, имея лишь один аккаунт на Disqus.com.
Wi-Fi модуль на базе однокристальной системы (SoC) ESP8266. По сравнению с другими модулями имеет небольшие размеры и ULP технологию. Модуль специально сконструирован для создания мобильных устройств и интернета вещей (IoT).
radioprog.ru
AT | Проверка модуля. Если модуль успешно стартовал, то отвечает «OK» | базовая | AT | — | — |
AT+RST | Перезапуск модуля. После успешного перезапуска возвращает «OK» | базовая | AR+RST | — | — |
AT+GMR | Отобразить версию прошивки. Версия отображается в виде 8 или 10 цифр. Первая группа 4 цифры — версия AT (например, 0019), вторая группа 4 или 6 цифр — версия SDK (например, 000902) | базовая | AT+GMR | — | — |
AT+GSLP | Переход в режим пониженного энергопотребления | базовая | AT+GSLP= | Пример: AT+GSLP=5000 (5сек) Для того, чтобы модуль вышел из режима сна, необходимо соединить выводы XPD_DCDC и EXT_RSTB | |
ATE | включить/выключить эхо | базовая | ATE0 ATE1 | Замечание: ATE без 0 или 1 приводит к ошибке. | |
AT+RESTORE | Сбросить на заводские настройки | базовая | AT+RESTORE | Примечание: после сброса настроек произойдет перезагрузка модуля | |
AT+ UART | Настройка последовательного интерфейса | базовая | AT+ UART=baudrate,databits,stopbits, parity,flow control | скорость data bits 5:5 bits data 6:6 bits data 7:7 bits data 8:8 bits data stop bits 1:1 bit stop bit 2:1.5 bit stop bit 3:2 bit stop bit parity 0:None 1:Odd 2:EVEN flow control 0:disable flow control 1:enable RTS 2:enable CTS 3:enable both RTS and CTS (MTCK — UART0 CTS , MTDO — UART0 RTS) Пример: AT+UART=115200,8,1,0,0 | |
AT+CWMODE | Переключение режима wifi. Для вступления в силу требуется перезапуск модуля командой AT+RST | wifi | AT+CWMODE= | AT+CWMODE? AT+CWMODE=? | 1=Station, 2=AP, 3=Оба режима (Station+AP) |
AT+CWJAP | Подключение к AP | wifi | AT+CWJAP =, | AT+CWJAP? | SSID и пароль указываются в двойных кавычках |
AT+CWLAP | Отобразить список доступных AP. Выводит SSID, метод шифрования, силу сигнала. Типы шифрования: 0:Open, 1: WEP, 2:WPA_PSK, 3:WPA2_PSK, 4:WPA_WPA2_PSK | wifi | AT+CWLAP | — | — |
AT+CWQAP | Отключение от AP | wifi | AT+CWQAP | AT+CWQAP=? | — |
AT+CWSAP | Установить параметры для режима AP | wifi | AT+CWSAP= ,,, | AT+CWSAP? возвращает текущие параметры | SSID и пароль указываются в двойных кавычках. Типы шифрования: 0:Open, 1: WEP, 2:WPA_PSK, 3:WPA2_PSK, 4:WPA_WPA2_PSK |
AT+CWLIF | Отобразить IP адреса (только для режимов 2-SoftAP и 3-Station+SoftAP) подключенных клиентов | wifi | AT+CWLIF | — | — |
AT+CWDHCP | 0 : ESP8266 softAP 1 : ESP8266 station 2 : softAP и station 0 : Включить DHCP 1 : Выключить DHCP | wifi | AT+CWDHCP=, | ||
AT+CIPSTAMAC | посмотреть/установить MAC адрес в режиме station | wifi | AT+CIPSTAMAC= | AT+CIPSTAMAC? | |
AT+CIPAPMAC | посмотреть/установить MAC адрес в режиме softAP | wifi | AT+CIPAPMAC= | AT+CIPAPMAC? | |
AT+ CIPSTA | посмотреть/установить IP адрес в режиме station | wifi | AT+CIPSTA= | AT+CIPSTA? | |
AT+ CIPAP | посмотреть/установить IP адрес в режиме softAP | wifi | AT+CIPAP= | AT+CIPAP? | |
AT+CIPSTATUS | Отобразить статус подключения. Возвращает =ID соединения 0-4″ =тип соединения “TCP” or “UDP”, =IP адрес,=порт,=тип связи: 0: подсоединен как клиент, 1: как сервер | TCP/IP | AT+CIPSTATUS | — | 2: Получен IP 3: Connected 4: Disconnected id соединения (0~4), “TCP” или “UDP” IP port 0: ESP8266 клиент 1: ESP8266 сервер |
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+CIPSEND | Отправить данные | TCP/IP | 1. Одиночное подключение (+CIPMUX=0) AT+CIPSEND= 2. Множественное подключение: (+CIPMUX=1) AT+CIPSEND= , | AT+CIPSEND=? | Длина данных в пакете до 2048 байт. Между пакетами интервал 20мс. После получения данной команды модуль возвращает «>» и переходит в режим приема данных по RX, после приема данных необходимой длины передает их в радиоканал. При успешной передаче возвращает «SEND OK». Прервать режим приема данных и перейти в командный режим можно последовательностью «+++» |
AT+CIPCLOSE | Закрыть подключение TCP или UDP | TCP/IP | 1. Множественное подключение: (+CIPMUX=1) AT+CIPCLOSE= 2. Одиночное подключение (+CIPMUX=0) AT+CIPCLOSE | AT+CIPCLOSE=? | Возвращает «LINK IS NOT» или «UNLINK» если ID соединения уже разорвано, ERROR если соединения нет. |
AT+CIFSR | Отобразить IP адрес, который получили от AP и адрес softAP | TCP/IP | AT+CIFSR | AT+CIFSR=? | — |
AT+CIPMUX | Выбрать режим одиночных или множественных подключений | TCP/IP | AT+CIPMUX= | AT+CIPMUX? | 0=одиночные подключение, 1=множественные подключения. Изменить режим можно только после закрытия всех подключений. Если запущен сервер, то требуется перезагрузка модуля. |
AT+CIPSERVER | Запустить (перезапустить) сервер | TCP/IP | AT+CIPSERVER= [, ] | — | 0=сервер отключен, 1=сервер запущен. Порт по умолчанию:333. Для запуска сервера модуль должен быть в режиме множественных подключений AT+CIPMUX=1. |
AT+CIPSTO | Установить таймаут сервера | TCP/IP | AT+CIPSTO= | AT+CIPSTO? | таймаут в секундах от 0 до 7200 |
AT+CIPMODE | Установить сквозной режим | TCP/IP | AT+CIPMODE= | AT+CIPMODE? | 0=обычный режим, 1=unvarnished transmission mode |
AT+CIUPDATE | Обновление прошивки через облако. Модуль должен быть в режиме 1 или 3 и быть подключен к AP с доступом к интернет. | 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=”esp8266.ru” | |
+IPD | Получить данные из сети | TCP/IP | (+CIPMUX=0) +IPD,: (+CIPMUX=1) +IPD,,: | — | 1. Одиночные подключения (+CIPMUX=1) +IPD,: 2. Множественные подключения (+CIPMUX=1) +IPD,,, |
esp8266.ru
Рано или поздно все мы приходить к тому что нам не хватает подключения к Сети в наших проектах на платформе Ардуино. Действительно как же в 21 веке без статуса Онлайн )) И тут нам на выручку приходит WiFI чип ESP8266 и готовые модули на его основе. У меня в руках самый простой модуль (для новичков) ESP-01 :
Модуль устроен достаточно просто и имеет минимальный набор выводов :
Китайский производитель Espressif сделал дешовый чип с интерфейсом Wi-Fi и возможностью исполнять программы из внешней флеш-памяти с интерфейсом SPI. По сути это микроконтроллер и радио модуль для Wi-Fi в одном корпусе :
Возможности чипа очень большие, будем разбираться по степенно.
Выводы модуля :
По умолчанию во флешь-память ужа записана заводская прошивка с поддержкой АТ команд для управления чипом. Конечно можно залить и другие прошивки, но в этой статье мы будем работать именно в таком режиме с модулем. Суть проста по UART передаем команду, получаем ответ от модуля. Для этого нам потребуется USB-to-Serial TTL конвертор что бы подключить модуль к компу. Так как у меня под рукой его нету то я буду использовать Arduino Nano в его качестве.
Питание модуля отдельный вопрос. Пиковое потребление чипа может достигать 250 мА ( в datasheet указано 170 мА при использование Tx802.11b). Внимание! Этот модуль основан на 3.3 В логике, так что придется его питать от своего источника питания. Или через резисторный делитель(1 кОм и 2 кОм) с вывода +5 Ардуино. Выводы RX и TX надо тоже подключить через делитель или через logic converter (например CD4050B).
Что бы Ардуино превратить в USB-to-Serial TTL конвертор зальем в контролер пустой скетч :
void setup() { } void loop() { }
Далее Arduino нужно замкнуть RESET на GND. Это изолирует процессор от I/O пинов. Альтернатива этому удаление микросхемы из «кроватки». При этом выводы TX, RX устройства нужно подключить без перекрещивания. т.е. :
esp TX → ard TX
esp RX → ard RX
Подключаем все , открываем монитор портов в Arduino IDE и поехали.
Для простоты вы можете купить USB адаптер у наших Китайских партнеров.
Для на чало мы проверим что все работает и отправим в терминале:
AT OK
Проверим прошивку :
AT+GMR AT version:1.2.0.0(Jul 1 2016 20:04:45) SDK version:1.5.4.1(39cb9a32) Ai-Thinker Technology Co. Ltd. Dec 2 2016 14:21:16 OK
Для подключения Wi-Fi выберем режим модуля: доступны следующие режимы: 1 — STA, 2 — AP, 3 — Station+AP
AT+CWMODE=1 OK
Смотрим список точек доступа командой:
AT+CWLAP +CWLAP:(3,"MTSRouter-047188",-77,"00:1f:ce:ac:e4:de",2,-21,0) +CWLAP:(3,"RT-WiFi_2958",-93,"78:96:82:44:29:58",4,10,0) +CWLAP:(3,"Test",-63,"ac:f1:df:c9:a5:82",6,0,0) +CWLAP:(3,"TP-LINK_4E54E0",-85,"f8:1a:67:4e:54:e0",6,103,0) +CWLAP:(3,"GARNIER",-89,"60:a4:4c:df:83:38",6,-31,0) +CWLAP:(2,"Oslik",-73,"bc:f6:85:cb:d7:53",7,-9,0) +CWLAP:(3,"Keenetic-6619",-80,"e8:37:7a:9a:93:46",8,8,0) +CWLAP:(2,"beeline-router_78",-90,"fc:75:16:4a:39:42",9,-26,0) +CWLAP:(3,"ASUS",-91,"f4:6d:04:df:d3:e8",11,-14,0) +CWLAP:(4,"Beeline_2G_F14986",-83,"78:94:b4:a3:8c:cc",11,-14,0) OK
В скобках указывается: SECURITY, SSID, RSSI, BSSID, CHANNEL
SECURITY может принимать значения:
0 — OPEN, 1 — WEP, 2 — WPA-PSK, 3 — WPA2-PSK, 4 — MIXED (WPA-WPA2-PSK)
Подключаемся к нашей точке:
AT+CWJAP="Oslik","password" WIFI CONNECTED WIFI GOT IP OK
Посмотреть какой ip получил наш модуль:
AT+CIFSR +CIFSR:STAIP,"192.168.0.55" +CIFSR:STAMAC,"b4:e6:2d:22:f6:61" OK
Все настройки запоминаются во флешь память, сбросить настройки на заводские можно командой:
AT+RESTORE
Задать скорость UART :
AT+CIOBAUD=9600 OK
Перезагрузить модуль :
AT+RST OK ?)⸮⸮⸮@H <⸮⸮⸮⸮@H⸮⸮!`̌⸮ ⸮K⸮ZHRh|$ ⸮⸮ؤ⸮ Ai-Thinker Technology Co. Ltd. ready
Команды делятся условно на три части : системные, Wi-Fi,TCP. Полный список команд можно посмотреть в datasheep. Ну а мы перейдем к командам режима TCP-сервера. На плате ESP-01 можно запустить TCP-сервер для приема-отправки данных или она может выступать TCP-клиентом для приема-отправки данных на сервер.
Для запуска TCP-сервера выполним следующие команды:
AT+CIPMODE=0 OK
0 — not data mode (сервер может отправлять данные клиенту и может принимать данные от клиента).
1 — data mode (сервер не может отправлять данные клиенту, но может принимать данные от клиента).
Устанавливаем возможность множественных соединений:
AT+CIPMUX=1 OK
0 — single connection.
1 — multiple connection.
Запускаем сервер на порту 80:
AT+CIPSERVER=1,80 (mode,port) OK
0 — to close server
1 — to open server
Теперь можно подключиться к ESP-01 и отправить-принять какие-нибудь данные. На потребуется telnet клиент, я использую PuTTY. При подключение модуль нам сообщает что подключился клиент и показывает нам id клиента.
0,CONNECT +IPD,0,21:⸮⸮⸮⸮ ⸮⸮⸮⸮'⸮⸮⸮⸮⸮⸮
Посмотреть список активных подключений к ESP-01 можно командой AT+CIPSTATUS
Пример:
AT+CIPSTATUS +CIPSTATUS:0,"TCP","192.168.0.19",57907,80,1 OK
Закрыть активное соединение можно командой
AT+CIPCLOSE=id или все соединения AT+CIPCLOSE без параметров.
AT+CIPCLOSE=0 0,CLOSED OK
Отправляем данные с ESP-01 на ПК. Для режима Single connection отправка идет так :AT+CIPSEND=length, для режима Multiple connection отправка идет так: AT+CIPSEND=id,length.
AT+CIPSEND=0,6 (6 байт) OK > Hellow busy s... Recv 6 bytes SEND OK
xn--90aeniddllys.xn--p1ai