
Появление нового модуля на базе ESP32 заставило систематизировать систему AT команд, а так же систему обновления и для модулей на базе ESP8266.
Начиная с версии v2.0 в ESP8266 внедряется прошивка AT на основе нового стиля IDF ESP8266_RTOS_SDK, а так же используются разные порты для UART для обновления и для работы с AT командами. Некоторые из команд AT отличаются от старой ESP8266 NonOS AT.
Учитывая, что эти серьезные изменения могут оказать существенное влияние на существующие проекты, рекомендуется, чтобы эта версия использовалась только для реализации новых проектов, а не использовалась в качестве обновления для любых существующих проектов массового производства.
Для обновления ESP8266 AT версии 2,0 можно, также как и для ESP32, загрузить двоичный файл находящийся в папке в ESP8266-IDF-AT/factory, c адреса 0x00000.
Для обновления используется выводы порта UART0 выводы IO1 и IO2, а для работы с AT командами (в IDF ESP8266_RTOS_SDK), необходимо использовать выводы:
GPIO13 – это RXD
GPIO15 – это TXD
GPIO1 – это RTS (необязательно)
GPIO3 – это CTS (необязательно)
Производитель будет поддерживать старую ESP8266 NonOS AT (только для исправление ошибок) в течение определенного, но длительного срока, но для новых изделий рекомендуется использовать переход новую версию ESP8266 IDF AT 2.0.
От себя добавлю переходить на версию 2.0 необходимо работает она значительно шустрее.
Первое отличие коснется команд в имени которых были части _CUR и _DEF, хотя и останутся некоторые команды с этими расширениями.
Схема подключения позволяющая в устройстве независимо обновлять и использовать модуль в работе.
Для тестирования версии прошивки IDF при подключении к различным ЮСБ-мостам наличие резистора R8 обязательно его сопротивление может быть (для скорости 115200) до 1 КОм. Этот резистор необходим, чтобы при подачи питания на ESP загрузчик модуля разобрался с каким портом работать. Если не сможет в момент теста на выводе IO15 установить низкий уровень, он останеться в режиме бутлоадера. В рабочем изделии при старте необходимо предусмотреть наличие низкого уровня на порту МК в момент старта, для правильного запуска радио-модуля.

Ссылки на доп информацию https://github.com/espressif/esp32-at/tree/master/docs
После обновления модуля мы получим сообщение о версии
ESP AT Commands Set
Вот список команд AT. Некоторые из команд AT могут работать только на ESP32, который будет помечен как [ESP32 Only]; другие могут работать как на ESP8266, так и на ESP32.
Ссылка на оригинал https://github.com/espressif/esp-at/blob/master/docs/ESP_AT_Commands_Set.md
PS Как сгенерировать прошивку ESP8266 AT .
1. Список команд AT
1.1 Базовый список AT-команд
- AT : Тесты при запуске.
- AT + RST : перезапуск модуля.
- AT + GMR : проверяет информацию о версии.
- AT+GSLP : Enters Deep-sleep mode.
- ATE : Настраивает эхо-команды AT-команд.
- AT + RESTORE : восстановление заводских настроек модуля по умолчанию.
- AT + UART_CUR : текущая конфигурация UART.
- AT + UART_DEF : конфигурация UART по умолчанию, сохраненная во флэш-памяти.
- AT + SLEEP : установка режима ожидания.
- AT + SYSRAM : проверяет оставшееся место в оперативной памяти.
- AT + SYSMSG : установить формат сообщения.
- AT + RFPOWER : установка радиочастотной мощности передачи .
- [Только ESP32] AT + SYSFLASH : установка пользовательских разделов во Flash.
- [Только ESP32] AT + FS : Операции с файловой системой .
- AT + SYSROLLBACK : откат к предыдущей прошивке.
- AT + SYSTIMESTAMP : установить местное время.
- AT + SYSLOG : включить или отключить запрос кода ошибки AT.
- AT + SYSLSPCFG : Конфигурируйте источник пробуждения при легком сне.
- AT + SYSLSP : переход в режим ожидания.
1.2 Список команд Wi-Fi AT
- AT + CWMODE : Устанавливает режим Wi-Fi (STA / AP / STA + AP).
- AT + CWJAP : подключается к точке доступа.
- AT + CWLAPOPT : Устанавливает конфигурацию команды AT + CWLAP.
- AT + CWLAP : список доступных точек доступа.
- AT + CWQAP : отключается от точки доступа.
- AT + CWSAP : Устанавливает конфигурацию ESP32 SoftAP.
- AT + CWLIF : получает IP-адрес станции, к которой подключена ESP32 SoftAP.
- AT + CWDHCP : включает / отключает DHCP.
- AT + CWDHCPS : устанавливает диапазон IP-адресов DHCP-сервера ESP32 SoftAP. Сохраняет настройку во вспышке.
- AT + CWAUTOCONN : автоматически подключается к точке доступа при включении питания.
- AT + CIPSTAMAC : Устанавливает MAC-адрес станции ESP32.
- AT + CIPAPMAC : устанавливает MAC-адрес ESP32 SoftAP.
- AT + CIPSTA : устанавливает IP-адрес станции ESP32.
- AT + CIPAP : Устанавливает IP-адрес ESP32 SoftAP.
- AT + CWSTARTSMART : запускает SmartConfig.
- AT + CWSTOPSMART : останавливает SmartConfig.
- AT + WPS : включает функцию WPS.
- AT + MDNS : настраивает функцию MDNS
- [Только ESP32] AT + CWJEAP : подключается к точке доступа WPA2 Enterprise.
- AT + CWHOSTNAME : настраивает имя станции ESP
1.3 Список AT-команд, связанных с TCP / IP
- AT+CIPSTATUS : Gets the connection status.
- AT + CIPDOMAIN : функция разрешения доменных имен.
- AT + CIPSTART : устанавливает TCP-соединение, UDP-передачу или SSL-соединение.
- AT+CIPSEND : Sends data.
- AT + CIPSENDEX : отправляет данные, когда длина данных длина или когда в данных появляется \ 0.
- AT + CIPCLOSE : закрывает соединение TCP/UDP/SSL.
- AT + CIFSR : получает локальный IP-адрес.
- AT + CIPMUX : настройка режима нескольких соединений.
- AT + CIPSERVER : Deletes/Creates TCP or SSL server.
- AT + CIPSERVERMAXCONN : установите максимальное количество соединений, разрешенных сервером.
- AT + CIPMODE : настройка режима передачи.
- AT + SAVETRANSLINK : сохраняет прозрачный канал передачи во флэш-памяти.
- AT + CIPSTO : устанавливает время ожидания, когда ESP32 работает как сервер TCP.
- AT + CIPSNTPCFG : Настраивает временную область и SNTP-сервер.
- AT + CIPSNTPTIME : Запрашивает время SNTP.
- AT + CIUPDATE : обновление программного обеспечения через Wi-Fi.
- AT + CIPDINFO : показывает удаленный IP и удаленный порт с + IPD.
- AT + CIPSSLCCONF : настройка клиента SSL.
- AT + CIPRECONNINTV : установите прозрачный интервал автоматического подключения Wi-Fi.
- AT + CIPRECVMODE : установить режим приема сокетов.
- AT + CIPRECVDATA : получение данных сокета в режиме пассивного приема.
- AT + CIPRECVLEN : Получить длину данных сокета в режиме пассивного приема.
- AT + PING : пинг пакеты
- AT + CIPDNS : настраивает систему доменных имен. Конфигурация будет сохранена во флэш-памяти.
1.4 [Только для ESP32] Список команд BLE AT
Загрузить BLE Spec (ESP32 поддерживает Core версии 4.2)
- [Только ESP32] AT + BLEINIT : инициализация Bluetooth с низким энергопотреблением (BLE)
- [Только ESP32] AT + BLEADDR : Устанавливает адрес устройства BLE
- [Только ESP32] AT + BLENAME : устанавливает имя устройства BLE
- [Только ESP32] AT + BLESCANPARAM : Устанавливает параметры сканирования BLE
- [Только ESP32] AT + BLESCAN : включает сканирование BLE
- [Только ESP32] AT + BLESCANRSPDATA : Устанавливает реакцию сканирования BLE
- [Только ESP32] AT + BLEADVPARAM : устанавливает параметры рекламы BLE
- [Только ESP32] AT + BLEADVDATA : Устанавливает рекламные данные BLE
- [Только ESP32] AT + BLEADVSTART : запуск рекламы BLE
- [Только ESP32] AT + BLEADVSTOP : останавливает рекламу BLE
- [Только ESP32] AT + BLECONN : устанавливает соединение BLE
- [Только ESP32] AT + BLEDISCONN : Завершает соединение BLE
- [Только ESP32] AT+BLEDATALEN : Sets BLE data length
- [Только ESP32] AT + BLECFGMTU : устанавливает длину BLE MTU
- [Только ESP32] AT + BLEGATTSSRVCRE : Сервер общих атрибутов (GATTS) создает службы
- [Только ESP32] AT + BLEGATTSSRVSTART : GATTS запускает службы
- [Только ESP32] AT + BLEGATTSSRV : GATTS обнаруживает услуги
- [Только ESP32] AT + BLEGATTSCHAR : GATTS обнаруживает характеристики
- [Только ESP32] AT + BLEGATTSNTFY : GATTS уведомляет о характеристиках
- [Только ESP32] AT+BLEGATTSIND : GATTS indicates characteristics
- [Только ESP32] AT + BLEGATTSSETATTR : GATTS устанавливает атрибуты
- [Только ESP32] AT + BLEGATTCPRIMSRV : Клиент общих атрибутов (GATTC) обнаруживает первичные службы
- [Только ESP32] AT + BLEGATTCINCLSRV : GATTS обнаруживает включенные услуги
- [Только ESP32] AT + BLEGATTCCHAR : GATTC обнаруживает характеристики
- [Только ESP32] AT + BLEGATTCRD : GATTC считывает характеристики
- [Только ESP32] AT + BLEGATTCWR : GATTC записывает характеристики
- [Только ESP32] AT + BLESPPCFG : Устанавливает параметры BLE spp
- [Только ESP32] AT+BLESPP : Enter BLE spp mode
- [Только ESP32] AT + BLESECPARAM : установить параметры шифрования BLE
- [Только ESP32] AT+BLEENC : Initiate BLE encryption request
- [Только ESP32] AT + BLEENCRSP : Предоставить доступ для запроса безопасности.
- [Только ESP32] AT + BLEKEYREPLY : Ответьте значение ключа равноправному устройству на этапе соединения lagecy.
- [Только ESP32] AT + BLECONFREPLY : Ответьте значение comfirm одноранговому устройству на этапе соединения lagecy.
- [Только ESP32] AT + BLEENCDEV : запрос списка устройств шифрования BLE
- [Только ESP32] AT + BLEENCCLEAR : очистить список устройств шифрования BLE
- [Только ESP32] AT + BLESETKEY : Установить BLE статическую пару ключей
- [Только ESP32] AT+BLEHIDINIT : BLE HID device profile initialization
- [Только ESP32] AT + BLEHIDKB : BLE HID Информация о клавиатуре отправлена
- [Только ESP32] AT + BLEHIDMUS : BLE HID информация о мышке отправлена
- [Только ESP32] AT+BLEHIDCONSUMER : BLE HID consumer information send
- [Только ESP32] BLE AT Примеры
1.5 [Только ESP32] Список команд ETH AT
- [Только ESP32] AT + CIPETHMAC : Устанавливает MAC-адрес ESP32 Ethernet.
- [Только ESP32] AT + CIPETH : Устанавливает IP-адрес ESP32 Ethernet.
1.6 [Только ESP32] Список команд BT AT
Скачать BlueTooth Spec (ESP32 поддерживает Core версии 4.2)
- [Только ESP32] AT + BTINIT : Классическая инициализация Bluetooth
- [Только ESP32] AT + BTNAME : устанавливает имя устройства BT
- [Только ESP32] AT + BTSCANMODE : Устанавливает режим BT SCAN.
- [Только ESP32] AT + BTSTARTDISC : Запустить обнаружение BT
- [Только ESP32] AT + BTSPPINIT : инициализация классического Bluetooth SPP профиля
- [Только ESP32] AT + BTSPPCONN : устанавливает соединение SPP
- [Только ESP32] AT + BTSPPDISCONN : Завершает соединение SPP
- [Только ESP32] AT + BTSPPSTART : запуск классического профиля Bluetooth SPP
- [Только ESP32] AT + BTSPPSEND : отправка данных на удаленное устройство bt spp
- [Только ESP32] AT + BTA2DPINIT : инициализация классического профиля Bluetooth A2DP
- [Только ESP32] AT + BTA2DPCONN : устанавливает соединение A2DP
- [Только ESP32] AT + BTA2DPDISCONN : Завершает соединение A2DP
- [Только ESP32] AT + BTA2DPSRC : установить или запросить URL аудиофайла
- [Только ESP32] AT + BTA2DPCTRL : управление воспроизведением аудио
- [Только ESP32] AT + BTSECPARAM : установите и запросите параметры безопасности Classic Bluetooth
- [Только ESP32] AT + BTKEYREPLY : введите ключ простой пары
- [Только ESP32] AT + BTPINREPLY : введите PIN-код устаревшей пары
- [Только ESP32] AT + BTSECCFM : Ответьте значение подтверждения на одноранговое устройство на этапе устаревшего соединения
- [Только ESP32] AT + BTENCDEV : список устройств шифрования Query BT
- [Только ESP32] AT + BTENCCLEAR : очистить список устройств шифрования BT
1.7 [Только ESP32] Список команд MQTT AT
- [Только ESP32] AT + MQTTUSERCFG : Установить конфигурацию пользователя MQTT
- [Только ESP32] AT + MQTTCONNCFG : Установить конфигурацию соединения MQTT
- [Только ESP32] AT+MQTTCONN : Connect to MQTT Broker
- [Только ESP32] AT + MQTTPUB : публикация данных MQTT в строке
- [Только ESP32] AT + MQTTPUBRAW : опубликовать сообщение MQTT в двоичном формате
- [Только ESP32] AT + MQTTSUB : Подписаться на тему MQTT
- [Только ESP32] AT + MQTTUNSUB : отписаться от темы MQTT
- [Только ESP32] AT + MQTTCLEAN : закрыть соединение MQTT
- [Только ESP32] Коды ошибок MQTT
- [Только ESP32] MQTT Примечания
- [Только ESP32] Пример 1: MQTT через TCP
- [Только ESP32] Пример 2: MQTT поверх TLS
- [Только ESP32] Пример 3: MQTT через WSS
1.8 HTTP AT Список команд
- AT+HTTPCLIENT – Send HTTP Client Request
- HTTP AT Код ошибки
2. Основные AT-команды
2,1 АТ—Tests AT Startup
Выполнить команду:
1 2 |
AT |
Отклик:
1 2 |
OK |
2.2 AT + RST – перезапускает модуль
Выполнить команду:
1 2 |
AT+RST |
Отклик:
1 2 |
OK |
2.3 AT+GMR—Checks Version Information
Выполнить команду:
1 2 |
AT+GMR |
Response:
1 2 3 4 5 6 |
AT version info SDK version info compile time OK |
Параметры:
- Информация о версии AT : информация о версии AT.
- Информация о версии SDK : информация о версии SDK.
- время компиляции : продолжительность времени компиляции BIN.
2.4 AT+GSLP—Enters Deep-sleep Mode
Установить команду:
1 2 |
AT+GSLP=time |
Отклик:
1 2 3 4 |
time OK |
Параметры:
- time: the duration of ESP32’s sleep. Unit: ms.
ESP32 will wake up after Deep-sleep for as many milliseconds (ms) as time indicates.
2.5 ATE—AT Commands Echoing
Выполнить команду:
1 2 |
ATE |
Response:
1 2 |
OK |
Параметры:
- ATE0 : выключает эхо.
- ATE1 : включает эхо.
2.6 AT+RESTORE—Restores the Factory Default Settings
Выполнить команду:
1 2 |
AT+RESTORE |
Response:
1 2 |
OK |
Примечание:
- The execution of this command will reset all parameters saved in flash, and restore the factory default settings of the module.
- Чип будет перезапущен при выполнении этой команды.
AT + UART_CUR – текущая конфигурация UART, не сохраненная во Flash
2.7Команда запроса:
1 2 |
AT+UART_CUR? |
Отклик:
1 2 3 4 |
+UART_CUR:baudrate,databits,stopbits,parity,flow control OK |
Note:
- Команда
AT+UART_CUR?
вернет фактическое значение параметров конфигурации UART, которое может иметь допустимые ошибки по сравнению с установленным значением из-за деления часов.
Set Command:
1 2 |
AT+UART_CUR=baudrate,databits,stopbits,parity,flow control |
Отклик:
1 2 |
OK |
Параметры:
- baudrate: UART baud rate
- databits : биты данных
- 5: 5-битные данные
- 6: 6-bit data
- 7: 7-битные данные
- 8: 8-битные данные
- stopbits: stop bits
- Стоповый бит 1: 1
- 2: 1,5-битный стоп-бит
- 3: 2-битный стоп-бит
- четность : бит четности
- 0: нет
- 1: Нечетный
- 2: даже
- управление потоком : управление потоком
- 0: управление потоком не включено
- 1: включить RTS
- 2: включить CTS
- 3: включить RTS и CTS
Примечания:
- Изменения конфигурации НЕ будут сохранены во флэш-памяти.
- Использование управления потоком требует поддержки аппаратного обеспечения:
- IO15 – это UART0 CTS
- IO14 – это UART0 RTS
- Диапазон поддерживаемых скоростей передачи: 80 ~ 5000000.
Пример:
1 2 |
AT+UART_CUR=115200,8,1,0,3 |
AT+UART_DEF—Default UART Configuration, Saved in Flash
2.8Команда запроса:
1 2 |
AT+UART_DEF? |
Отклик:
1 2 3 4 |
+UART_DEF:baudrate,databits,stopbits,parity,flow control OK |
Установить команду:
1 2 |
AT+UART_DEF=baudrate,databits,stopbits,parity,flow control |
Отклик:
1 2 |
OK |
Параметры:
- скорость передачи : скорость передачи UART
- databits : биты данных
- 5: 5-битные данные
- 6: 6-битные данные
- 7: 7-bit data
- 8: 8-битные данные
- стопбиты : стоповые биты
- Стоповый бит 1: 1
- 2: 1,5-битный стоп-бит
- 3: 2-битный стоп-бит
- четность : бит четности
- 0: нет
- 1: Нечетный
- 2: даже
- управление потоком : управление потоком
- 0: управление потоком не включено
- 1: включить RTS
- 2: включить CTS
- 3: включить RTS и CTS
Примечания:
- Изменения конфигурации будут сохранены в области NVS и будут действительны при повторном включении чипа.
- Использование управления потоком требует поддержки аппаратного обеспечения:
- IO15 – это UART0 CTS
- IO14 – это UART0 RTS
- Диапазон поддерживаемых скоростей передачи: 80 ~ 5000000.
Пример:
1 2 |
AT+UART_DEF=115200,8,1,0,3 |
2.9 AT+SLEEP—Sets the Sleep Mode
Установить команду:
1 2 |
AT+SLEEP=sleep mode |
Отклик:
1 2 |
OK |
Параметры:
- спящий режим :
- 0: отключить спящий режим.
- 1: режим ожидания модема.
Пример:
1 2 |
AT+SLEEP=0 |
2.10 AT + SYSRAM – проверка оставшегося пространства оперативной памяти
Команда запроса:
1 2 |
AT+SYSRAM? |
Отклик:
1 2 3 |
+SYSRAM:remaining RAM size OK |
Parameters:
- оставшийся объем ОЗУ : оставшееся пространство ОЗУ, единица измерения: байт
Пример:
1 2 3 4 |
AT+SYSRAM? +SYSRAM:148408 OK |
2.11 AT+SYSMSG—Control to use new or old information
Команда запроса:
1 2 3 4 |
AT+SYSMSG? Function: Query the current system message state. |
Отклик:
1 2 3 |
+SYSMSG:state OK |
Установить команду:
1 2 3 4 |
AT+SYSMSG=state Function: Control to use new or old information. |
Отклик:
1 2 |
OK |
Параметры:
- состояние :
- Бит 0: выйти из прозрачной передачи 0: выйти из прозрачной передачи без информации. 1: прекратить прозрачную передачу предоставит информацию.
- Бит 1: Информация о соединении 0: Использовать старую информацию о соединении. 1: использовать новую информацию о соединении.
Примечания:
- Изменения конфигурации будут сохранены в области NVS.
- If set Bit0 to 1 will supply information “+QUITT” when quit transparent transmission.
- Если бит 1 установлен на 1, это повлияет на информацию о команде
AT+CIPSTART
иAT+CIPSERVER
,- Вместо «XX, CONNECT» он будет выдавать «+ LINK_CONN: status_type, link_id, ip_type, terminal_type, remote_ip, remote_port, local_port». Пример:
// Использовать новую информацию о соединении и выйти из прозрачной передачи нет информации AT + SYSMSG = 2
2.12 [Только ESP32] AT + SYSFLASH – установка пользовательских разделов во Flash
Команда запроса:
1 2 3 4 |
AT+SYSFLASH? Function: Check the user partitions in flash. |
Response:
1 2 3 |
+SYSFLASH:partition,type,subtype,addr,size OK |
Установить команду:
1 2 3 4 |
AT+SYSFLASH=operation,partition,offset,length Function: Read/write the user partitions in flash. |
Отклик:
1 2 3 |
+SYSFLASH:length,data OK |
Parameters:
- operation:
- 0: стереть сектор
- 1: записать данные в пользовательский раздел
- 2: read data from the user partition
- раздел : имя пользовательского раздела
- смещение : смещение пользовательского раздела
- длина : длина данных
- тип : тип пользовательского раздела
- subtype : подтип пользовательского раздела
- addr: address of user partition
- размер : размер пользовательского раздела
Notes:
- Необходимо загрузить at_customize.bin, чтобы можно было использовать соответствующие команды. Пожалуйста, обратитесь к ESP32_Customize_Partitions для более подробной информации.
- Важные вещи, на которые следует обратить внимание при удалении пользовательских разделов:
- При удалении целевого пользовательского раздела параметры полностью
offset
иlength
могут быть опущены. Например, командаAT+SYSFLASH=0,"ble_data"
может стереть весь раздел пользователя ble_data. - Если параметры
offset
иlength
не опущены при удалении пользовательского раздела, они должны быть выровнены по 4 КБ.
- При удалении целевого пользовательского раздела параметры полностью
- Введение в разделы содержится в таблицах разделов ESP-IDF .
Пример:
1 2 3 4 5 6 7 |
// read 100 bytes from the "ble_data" partition offset 0. AT+SYSFLASH=2,"ble_data",0,100 // write 10 bytes to the "ble_data" partition offset 100. AT+SYSFLASH=1,"ble_data",100,10 // erase 8192 bytes from the "ble_data" partition offset 4096. AT+SYSFLASH=0,"ble_data",4096,8192 |
2.13 [Только ESP32] AT + FS – Операции файловой системы
Set Command:
1 2 |
AT+FS=type,operation,filename,offset,length |
Отклик:
1 2 |
OK |
Параметры:
- type: only FATFS is currently supported
- 0: FATFS
- операция :
- 0: удалить файл
- 1: записать файл
- 2: прочитать файл
- 3: запросить размер файла
- 4: список файлов в определенном каталоге, в настоящее время поддерживается только корневой каталог
- смещение : смещение, только для операций записи и чтения
- длина : длина данных, только для операций записи и чтения
Примечания:
- Необходимо загрузить at_customize.bin, чтобы можно было использовать соответствующие команды. Определения пользовательских разделов находятся в esp-at / at_customize.csv. Пожалуйста, обратитесь к ESP32_Customize_Partitions для более подробной информации.
- Если длина прочитанных данных больше, чем фактическая длина файла, будет возвращена только фактическая длина данных файла.
Example:
1 2 3 4 5 6 7 8 9 |
// delete a file. AT+FS=0,0,"filename" // write 10 bytes to offset 100 of a file. AT+FS=0,1,"filename",100,10 // read 100 bytes from offset 0 of a file. AT+FS=0,2,"filename",0,100 // list all files in the root directory. AT+FS=0,4,"." |
2.14 AT + RFPOWER -Установить мощность RF TX
Команда запроса:
1 2 3 |
AT+RFPOWER? Function: to query the RF TX Power. |
Отклик:
1 2 3 |
+RFPOWER:wifi_power,ble_adv_power,ble_scan_power,ble_conn_power OK |
Установить команду:
1 2 |
AT+RFPOWER=wifi_power[,ble_adv_power,ble_scan_power,ble_conn_power] |
Отклик:
1 2 |
OK |
Параметры:
- wifi_power : диапазон [40, 82], единица измерения составляет 0,25 дБм, например, если значение равно 78, то максимальная мощность RF составляет 78 * 0,25 дБм = 19,5 дБм.
- ble_adv_power : RF TX Мощность рекламы BLE, диапазон: [0, 7]
- 0: 7dBm
- 1: 4dBm
- 2: 1dBm
- 3: -2 дБм
- 4: -5 дБм
- 5: -8 дБм
- 6: -11 дБм
- 7: -14 дБм
- ble_scan_power : мощность радиочастотной передачи сканирования BLE, диапазон: [0, 7], такой же, как ble_adv_power
- ble_conn_power : мощность RF TX соединения BLE, диапазон: [0, 7], такой же, как ble_adv_power
Примечания: Поскольку мощность RF TX фактически разделена на несколько уровней, и каждый уровень имеет свой собственный диапазон значений, поэтому wifi_power
запрашиваемое значение esp_wifi_get_max_tx_power
может отличаться от значения, установленного параметром esp_wifi_set_max_tx_power
. И значение запроса не будет больше установленного.
2.15 AT + SYSROLLBACK – откат к предыдущей прошивке
Выполнить команду:
1 2 |
AT+SYSROLLBACK |
Отклик:
1 2 |
OK |
Примечание:
- Эта команда не будет обновляться через OTA, а только откатится на прошивку, которая находится в другом разделе ota.
2.16 AT + SYSTIMESTAMP —Установить метку местного времени.
Команда запроса:
1 2 3 |
AT+SYSTIMESTAMP? Function: to query the time stamp. |
Отклик:
1 2 3 |
+SYSTIMESTAMP:Unix_timestamp OK |
Установить команду:
1 2 3 |
AT+SYSTIMESTAMP=Unix_timestamp Function: to set local time stamp, it will update to SNTP time, if SNTP time is updated. |
Отклик:
1 2 |
OK |
Параметры:
- Unix_timestamp : метка времени Unix, единица измерения – секунды.
Пример:
1 2 |
AT+SYSTIMESTAMP=1565853509 //2019-08-15 15:18:29 |
2.17 AT + SYSLOG : включить или отключить запрос кода ошибки AT.
Команда запроса:
1 2 3 |
AT+SYSLOG? Function: to query the AT error code prompt for whether it is enabled or disabled. |
Отклик:
1 2 3 4 |
+SYSLOG:status OK |
Установить команду:
1 2 3 |
AT+SYSLOG=status Function: Enable or disable the AT error code prompt. |
Отклик:
1 2 |
OK |
Параметры:
- статус :: включить или отключить
- 0: отключить
- 1: включить
Пример:
если включить подсказку с кодом ошибки AT:
1 2 3 4 5 6 7 8 |
AT+SYSLOG=1 OK AT+FAKE ERR CODE:0x01090000 ERROR |
Если отключить запрос кода ошибки AT:
1 2 3 4 5 6 7 8 |
AT+SYSLOG=0 OK AT+FAKE //No `ERR CODE:0x01090000` ERROR |
2.18 AT + SYSLSP – ввод режима легкого сна (только поддержка ESP32)
Выполнить команду: AT + SYSLSP Ответ:
1 2 |
OK |
Пример:
1 2 |
AT+SYSLSP |
при слабом сне (только поддержка ESP32)
2.19 AT + SYSLSPCFG —Настройка источника пробужденияУстановить команду:
1 2 |
AT+SYSLSPCFG=wakeup source,param[,wakeup level] |
Отклик:
1 2 |
OK |
Параметры:
- источник пробуждения :
- 0: пробуждение по таймеру.
- 1: пробуждение от уарта.
- 2: пробуждение от GPIO.
- param :
- Если источником пробуждения является таймер, этот параметр – время до пробуждения, единицы измерения – миллисекунды.
- Если источником пробуждения является UART. этот параметр номер Uart.
- Если источником пробуждения является GPIO, параметром является номер ввода-вывода.
- уровень пробуждения : используется только для GPIO, 0: низкий уровень, 1: высокий уровень.
Пример:
1 2 3 4 |
AT+SYSLSPCFG=0,1000 // Timer wakeup AT+SYSLSPCFG=1,1 // Uart1 wakeup AT+SYSLSPCFG=2,12,1 // GPIO12 wakeup, high level |
3 Wi-Fi AT команды
3.1 AT + CWMODE —Устанавливает режим Wi-Fi (Station / SoftAP / Station + SoftAP)
Команда запроса:
1 2 3 |
AT+CWMODE? Function: to query the Wi-Fi mode of ESP32. |
Отклик:
1 2 3 |
+CWMODE:mode OK |
Установить команду:
1 2 3 |
AT+CWMODE=mode Function: to set the Wi-Fi mode of ESP32. |
Отклик:
1 2 |
OK |
Параметры:
- режим :
- 0: нулевой режим, WiFi RF будет отключен
- 1: режим станции
- 2: режим SoftAP
- 3: режим SoftAP + Station
Примечание:
- Изменения конфигурации будут сохранены в области NVS.
Пример:
1 2 |
AT+CWMODE=3 |
3.2 AT + CWJAP – подключается к точке доступа
Команда запроса:
1 2 3 |
AT+CWJAP? Function: to query the AP to which the ESP32 Station is already connected. |
Отклик:
1 2 3 |
+CWJAP:ssid,bssid,channel,rssi OK |
Параметры:
- ssid : строковый параметр, показывающий SSID точки доступа.
- bssid : MAC-адрес точки доступа.
- канал : канал
- rssi : уровень сигнала
Установить команду:
1 2 3 |
AT+CWJAP=ssid,pwd[,bssid][,pci_en][,reconn] Function: to set the AP to which the ESP32 Station needs to be connected. |
Отклик:
1 2 |
OK |
или + CWJAP: ERROR Параметры:
- SSID : идентификатор сети целевой AP.
- Синтаксис escape-символов необходим, если SSID или пароль содержат какие-либо специальные символы, такие как, или «или \».
- pwd : пароль, MAX: 64-байтовый ASCII.
- [bssid] : MAC-адрес целевой точки доступа, используемый, когда несколько точек доступа имеют одинаковый SSID.
- [pci_en] : включить аутентификацию PCI, которая отключит соединение OPEN и WEP AP.
- [reconn] : включить переподключение Wi-Fi; по истечении времени ожидания маяка ESP32 автоматически переподключится.
- код ошибки : (только для справки)
- 1: время ожидания соединения.
- 2: неверный пароль.
- 3: не удается найти целевой AP.
- 4: соединение не удалось.
- другие: произошла неизвестная ошибка.
Примечание:
- Изменения конфигурации будут сохранены в области NVS.
- Эта команда требует, чтобы режим Station был активным.
Примеры:
1 2 3 4 5 6 |
AT+CWJAP="abc","0123456789" For example, if the target AP's SSID is "ab\,c" and the password is "0123456789"\", the command is as follows: AT+CWJAP="ab\\\,c","0123456789\"\\" If multiple APs have the same SSID as "abc", the target AP can be found by BSSID: AT+CWJAP="abc","0123456789","ca:d7:19:d8:a6:44" |
3.3 AT + CWLAPOPT – устанавливает конфигурацию для команды AT + CWLAP
Установить команду:
1 2 |
AT+CWLAPOPT=sort_enable,mask |
Отклик:
1 2 |
OK |
Параметры:
- sort_enable : определяет, будет ли результат команды AT + CWLAP отображаться в соответствии с RSSI:
- 0: результат не упорядочен в соответствии с RSSI.
- 1: результат упорядочен по RSSI.
- маска : определяет параметры, показанные в результате
AT+CWLAP
;- 0 означает, что параметр не соответствует биту, а 1 означает его отображение.
- бит 0: определяет, будет ли ecn отображаться в результате
AT+CWLAP
. - бит 1: определяет, будет ли ssid отображаться в результате
AT+CWLAP
. - бит 2: определяет, будет ли rssi отображаться в результате
AT+CWLAP
. - бит 3: определяет, будет ли mac отображаться в результате
AT+CWLAP
. - Бит 4: определяет, будет ли канал отображаться в результате
AT+CWLAP
.
Пример:
1 2 3 4 |
AT+CWLAPOPT=1,31 The first parameter is 1, meaning that the result of the command AT+CWLAP will be ordered according to RSSI; The second parameter is 31, namely 0x1F, meaning that the corresponding bits of mask are set to 1. All parameters will be shown in the result of AT+CWLAP. |
3,4 AT + CWLAP -Lists Доступные точки доступа
Установить команду:
1 2 3 |
AT+CWLAP=[ssid,mac,channel,scan_type,scan_time_min,scan_time_max] Function: to query the APs with specific SSID and MAC on a specific channel. |
Выполнить команду:
1 2 3 |
AT+CWLAP Function: to list all available APs. |
Отклик:
1 2 3 |
+CWLAP:ecn,ssid,rssi,mac,channel OK |
Параметры:
- ecn : метод шифрования.
- 0: ОТКРЫТО
- 1: WEP
- 2: WPA_PSK
- 3: WPA2_PSK
- 4: WPA_WPA2_PSK
- 5: WPA2_Enterprise (AT пока не может подключиться к точке доступа WPA2_Enterprise.)
- ssid : строковый параметр, SSID точки доступа.
- rssi : уровень сигнала.
- mac : строковый параметр, MAC-адрес точки доступа.
- тип_сканирования : тип сканирования Wi-Fi, активный или пассивный.
- 0: активное сканирование
- 1: пассивное сканирование
- scan_time_min : минимальное время активного сканирования на канал, единицы: миллисекунда, диапазон [0,1500], если тип сканирования пассивный, этот параметр недействителен.
- scan_time_max : максимальное время активного сканирования на канал, единицы: миллисекунда, диапазон [0,1500]. если этот параметр равен нулю, встроенное ПО будет использовать время по умолчанию, тип активного сканирования – 120 мс, тип пассивного сканирования – 360 мс.
Примеры:
1 2 3 4 |
AT+CWLAP="Wi-Fi","ca:d7:19:d8:a6:44",6,0,400,1000 Or search for APs with a designated SSID: AT+CWLAP="Wi-Fi" |
3.5 AT + CWQAP – отключение от точки доступа
Выполнить команду:
1 2 |
AT+CWQAP |
Отклик:
1 2 |
OK |
3.6 AT + CWSAP – Настройка ESP32 SoftAP
Команда запроса:
1 2 3 |
AT+CWSAP? Function: to obtain the configuration parameters of the ESP32 SoftAP. |
Отклик:
1 2 3 |
+CWSAP:ssid,pwd,channel,ecn,max conn,ssid hidden OK |
Установить команду:
1 2 3 |
AT+CWSAP=ssid,pwd,chl,ecn[,max conn][,ssid hidden] Function: to set the configuration of the ESP32 SoftAP. |
Отклик:
1 2 |
OK |
Параметры:
- ssid : строковый параметр, SSID точки доступа.
- pwd : строковый параметр, длина пароля: 8 ~ 64 байта ASCII.
- канал : идентификатор канала.
- ecn : метод шифрования; WEP не поддерживается.
- 0: ОТКРЫТО
- 2: WPA_PSK
- 3: WPA2_PSK
- 4: WPA_WPA2_PSK
- [max conn] (необязательный параметр): максимальное количество станций, к которым может быть подключена ESP32 SoftAP; в пределах [1, 10].
- [ssid hidden] (необязательный параметр):
- 0: SSID транслируется. (настройка по умолчанию)
- 1: SSID не транслируется.
Примечание:
- Эта команда доступна только тогда, когда SoftAP активен.
- Изменения конфигурации будут сохранены в области NVS.
Пример:
1 2 |
AT+CWSAP="ESP32","1234567890",5,3 |
3.7 AT + CWLIF – IP станций, к которым подключена ESP32 SoftAP
Выполнить команду:
1 2 |
AT+CWLIF |
Отклик:
1 2 3 |
ip addr,mac OK |
Параметры:
- ip addr : IP-адрес станций, к которым подключен ESP32 SoftAP.
- mac : MAC-адрес станций, к которым подключена ESP32 SoftAP.
Примечание:
- Эта команда не может получить статический IP. Он работает только в том случае, если включены оба протокола DHCP ESP32 SoftAP и станции, к которой подключен ESP32.
3.8 AT + CWDHCP – включает / отключает DHCP
Команда запроса:
1 2 |
AT+CWDHCP? |
Ответ: состояние
Установить команду:
1 2 3 |
AT+CWDHCP=operate,mode Function: to enable/disable DHCP. |
Отклик:
1 2 |
OK |
Параметры:
- работа :
- 0: отключить
- 1: включить
- режим :
- Бит 0: станция DHCP
- Бит 1: SoftAP DHCP
- состояние :
- DHCP отключен или включен?
- Бит 0: – 0: DHCP станция отключена. 1: DHCP станция включена.
- Бит 1: – 0: SoftAP DHCP отключена. 1: SoftAP DHCP включена.
Примечания:
- Изменения конфигурации будут сохранены в области NVS.
- Эта команда set взаимодействует с AT-командами, связанными со статическим IP-адресом (команды, связанные с AT + CIPSTA и AT + CIPAP):
- Если DHCP включен, статический IP будет отключен;
- Если статический IP включен, DHCP будет отключен;
- Будь то DHCP или статический IP, который включен, зависит от последней конфигурации.
Примеры:
1 2 3 |
AT+CWDHCP=1,1 //Enable Station DHCP. If the last DHCP mode is 2, then the current DHCP mode will be 3. AT+CWDHCP=0,2 //Disable SoftAP DHCP. If the last DHCP mode is 3, then the current DHCP mode will be 1. |
3.9 AT + CWDHCPS —Устанавливает IP-адрес, выделенный ESP32 SoftAP DHCP (конфигурация сохраняется во Flash.)
Команда запроса:
1 2 |
AT+CWDHCPS? |
Отклик:
1 2 3 |
+CWDHCPS=lease time,start IP,end IP OK |
Установить команду:
1 2 3 |
AT+CWDHCPS=enable,lease time,start IP,end IP Function: sets the IP address range of the ESP32 SoftAP DHCP server. |
Отклик:
1 2 |
OK |
Parameters:
- enable :
- 0: отключить настройки и использовать диапазон IP-адресов по умолчанию.
- 1: Включите настройку диапазона IP-адресов, и должны быть установлены параметры ниже.
- время аренды : время аренды, единица измерения: минута, диапазон [1, 2880].
- start IP : начальный IP-адрес диапазона IP-адресов, который можно получить с DHCP-сервера ESP32 SoftAP.
- end IP : конечный IP-адрес диапазона IP-адресов, который можно получить с DHCP-сервера ESP32 SoftAP.
Notes:
- Изменения конфигурации будут сохранены в области NVS.
- Эта команда AT включена, когда ESP8266 работает как SoftAP, и когда включен DHCP.
- IP-адрес должен находиться в том же сегменте сети, что и IP-адрес ESP32 SoftAP.
Примеры:
1 2 3 4 |
AT+CWDHCPS=1,3,"192.168.4.10","192.168.4.15" or AT+CWDHCPS=0 //Disable the settings and use the default IP range. |
3.10 AT + CWAUTOCONN – автоматически подключается к точке доступа или нет
Установить команду:
1 2 |
AT+CWAUTOCONN=enable |
Отклик:
1 2 |
OK |
Parameters:
- enable :
- 0: НЕ подключается автоматически к точке доступа при включении питания.
- 1: автоматически подключается к точке доступа при включении питания.
Note:
- Изменения конфигурации будут сохранены в области NVS.
- Станция ESP32 подключается к точке доступа автоматически при включении по умолчанию.
Пример:
1 2 3 |
AT+CWAUTOCONN=1 AT+CWAUTOCONN? // запрос состояния |
3.11 AT + CIPSTAMAC – устанавливает MAC-адрес станции ESP32
Команда запроса:
1 2 3 |
AT+CIPSTAMAC? Function: to obtain the MAC address of the ESP32 Station. |
Отклик:
1 2 3 4 5 6 7 8 |
+CIPSTAMAC:mac OK --------------------------------------- AT+CIPSTAMAC? +CIPSTAMAC:"18:fe:34:e0:72:ec" OK |
Установить команду:
1 2 3 |
AT+CIPSTAMAC=mac Function: to set the MAC address of the ESP32 Station. |
Response:
1 2 |
OK |
Параметры:
- mac : строковый параметр, MAC-адрес станции ESP8266.
Notes:
- Изменения конфигурации будут сохранены в области NVS.
- MAC-адрес ESP32 SoftAP отличается от MAC-адреса станции ESP32. Пожалуйста, убедитесь, что вы не установили одинаковый MAC-адрес для них обоих.
- Бит 0 MAC-адреса ESP32 НЕ МОЖЕТ быть равен 1.
- Например, MAC-адрес может быть «1a:…», но не «15:…».
- FF: FF: FF: FF: FF: FF и 00: 00: 00: 00: 00: 00 являются недействительными MAC и не могут быть установлены.
Пример:
1 2 |
AT+CIPSTAMAC="1a:fe:35:98:d3:7b" |
3.12 AT+CIPAPMAC—Sets the MAC Address of the ESP32 SoftAP
Команда запроса:
1 2 3 |
AT+CIPAPMAC? Function: to obtain the MAC address of the ESP32 SoftAP. |
Отклик:
1 2 3 |
+CIPAPMAC:mac OK |
Установить команду:
1 2 3 |
AT+CIPAPMAC=mac Function: to set the MAC address of the ESP32 SoftAP. |
Отклик:
1 2 |
OK |
Параметры:
- mac : строковый параметр, MAC-адрес EAP8266 SoftAP.
Примечания:
- Изменения конфигурации будут сохранены в области NVS.
- MAC-адрес ESP32 SoftAP отличается от MAC-адреса станции ESP32. Пожалуйста, убедитесь, что вы не установили одинаковый MAC-адрес для них обоих.
- Бит 0 MAC-адреса ESP32 НЕ МОЖЕТ быть равен 1.
- Например, MAC-адрес может быть «18:…», но не «15:…».
- FF:FF:FF:FF:FF:FF and 00:00:00:00:00:00 are invalid MAC and cannot be set.
Пример:
1 2 |
AT+CIPAPMAC="18:fe:35:98:d3:7b" |
3.13 AT+CIPSTA—Sets the IP Address of the ESP32 Station
Query Command:
1 2 3 4 |
AT+CIPSTA? Function: to obtain the IP address of the ESP32 Station. Notice: Only when the ESP32 Station is connected to an AP can its IP address be queried. |
Отклик:
1 2 3 4 5 6 7 8 9 10 |
+CIPSTA:ip OK ----------------------------- например, реальный ответ AT+CIPSTA? +CIPSTA:ip:"192.168.2.150" +CIPSTA:gateway:"192.168.2.70" +CIPSTA:netmask:"255.255.255.0" OK |
Установить команду:
1 2 3 |
AT+CIPSTA=ip[,gateway,netmask] Function: to set the IP address of the ESP32 Station. |
Отклик:
1 2 |
OK |
Параметры:
- ip: string parameter, the IP address of the ESP32 Station.
- [шлюз] : шлюз.
- [Маска подсети]: netmask.
Примечания:
- Изменения конфигурации будут сохранены в области NVS.
- Команда set взаимодействует с командами AT, связанными с DHCP (команды, связанные с AT + CWDHCP):
- Если статический IP включен, DHCP будет отключен;
- If DHCP is enabled, static IP will be disabled;
- Будь то DHCP или статический IP, который включен, зависит от последней конфигурации.
Пример:
1 2 |
AT+CIPSTA="192.168.6.100","192.168.6.1","255.255.255.0" |
3.14 AT + CIPAP – устанавливает IP-адрес ESP32 SoftAP
Команда запроса:
1 2 3 |
AT+CIPAP? Function: to obtain the IP address of the ESP32 SoftAP. |
Отклик:
1 2 3 4 5 6 7 8 9 10 |
+CIPAP:ip,gateway,netmask OK ------------------- например, реальный ответ AT+CIPAP? +CIPAP:ip:"192.168.4.1" +CIPAP:gateway:"192.168.4.1" +CIPAP:netmask:"255.255.255.0" OK |
Set Command:
1 2 3 |
AT+CIPAP=ip[,gateway,netmask] Function: to set the IP address of the ESP32 SoftAP. |
Отклик:
1 2 |
OK |
Параметры:
- ip : строковый параметр, IP-адрес ESP32 SoftAP.
- [шлюз] : шлюз.
- [маска сети] : маска сети.
Notes:
- Изменения конфигурации будут сохранены в области NVS.
- Команда set взаимодействует с командами AT, связанными с DHCP (команды, связанные с AT + CWDHCP):
- Если статический IP включен, DHCP будет отключен;
- Если DHCP включен, статический IP будет отключен;
- Будь то DHCP или статический IP, который включен, зависит от последней конфигурации.
Пример:
1 2 |
AT+CIPAP="192.168.5.1","192.168.5.1","255.255.255.0" |
3.15 AT+CWSTARTSMART—Starts SmartConfig
Выполнить команду:
1 2 3 |
AT+CWSTARTSMART Function: to start SmartConfig. (The type of SmartConfig is ESP-TOUCH + AirKiss.) |
Установить команду:
1 2 3 |
AT+CWSTARTSMART=type Function: to start SmartConfig of a designated type. |
Response:
1 2 |
OK |
Параметры:
- тип :
- 1: ESP-TOUCH
- 2: AirKiss
- 3: ESP-TOUCH + AirKiss
Примечания:
- For details on SmartConfig please see ESP-TOUCH User Guide.
- SmartConfig доступен только в режиме станции ESP32.
- Сообщение
Smart get Wi-Fi info
означает, что SmartConfig успешно получил информацию AP. ESP32 попытается подключиться к целевой точке доступа. - Сообщение
Smartconfig connected Wi-Fi
распечатывается, если соединение установлено успешно. - Используйте команду,
AT+CWSTOPSMART
чтобы остановить SmartConfig перед выполнением других команд. Пожалуйста, убедитесь, что вы не выполняете другие команды во время SmartConfig.
Пример:
1 2 3 |
AT+CWMODE=1 AT+CWSTARTSMART |
3.16 AT + CWSTOPSMART—Stops SmartConfig
Выполнить команду:
1 2 |
AT+CWSTOPSMART |
Отклик:
1 2 |
OK |
Примечание:
- Независимо от того, успешно ли выполняется SmartConfig или нет, перед выполнением любых других AT-команд всегда звоните,
AT+CWSTOPSMART
чтобы освободить внутреннюю память, занятую SmartConfig.
Example:
1 2 3 4 |
AT+CWMODE=1 AT+CWSTARTSMART AT+CWSTOPSMART |
3.17 AT + WPS – включает функцию WPS
Установить команду:
1 2 |
AT+WPS=enable |
Отклик:
1 2 |
OK |
Параметры:
- enable :
- 1: включить WPS / Wi-Fi Protected Setup (реализовано с помощью конфигурации PBC / Push Button).
- 0: отключить WPS (реализовано PBC).
Notes:
- WPS необходимо использовать, когда включена станция ESP32.
- WPS не поддерживает шифрование WEP / Wired-Equivalent Privacy.
Пример:
1 2 3 |
AT+CWMODE=1 AT+WPS=1 |
3.18 AT + MDNS—Configurates the MDNS Function
Установить команду:
1 2 |
AT+MDNS=enable[,hostname,service_name,port] |
Отклик:
1 2 |
OK |
Параметры:
- enable :
- 1: включает функцию MDNS; следующие три параметра должны быть установлены.
- 0: отключает функцию MDNS; следующие три параметра не нужно устанавливать.
- имя хоста : имя хоста MDNS
- service_name : имя службы MDNS
- порт : порт MDNS
Пример:
1 2 3 |
AT+MDNS=1,"espressif","_iot",8080 AT+MDNS=0 |
3.19 AT+CWJEAP—Connects to an WPA2 Enterprise AP.
Команда запроса:
1 2 3 |
AT+CWJEAP? Function: to query the Enterprise AP to which the ESP32 Station is already connected. |
Отклик:
1 2 3 |
+CWJEAP:ssid,method,identity,username,password,security OK |
Set Command:
1 2 3 |
AT+CWJEAP=ssid,method,identity,username,password,security Function: to set the Enterprise AP to which the ESP32 Station needs to be connected. |
Отклик:
1 2 |
OK |
или + CWJEAP: Параметры ОШИБКИ тайм-аута:
- SSID: the SSID of the Enterprise AP.
- Синтаксис escape-символов необходим, если SSID или пароль содержат какие-либо специальные символы, такие как, или «или \».
- method : метод аутентификации предприятия wpa2.
- 0: EAP-TLS.
- 1: EAP-PEAP.
- 2: EAP-TTLS.
- identity: identity for phase 1, string limited to 1~32.
- username : имя пользователя для фазы 2, должно быть задано для режимов EAP-PEAP и EAP-TTLS, равно как и для EAP-TLS, строка ограничена 1 ~ 32.
- пароль : пароль для фазы 2, должен быть установлен для режимов EAP-PEAP и EAP-TTLS, а также для EAP-TLS, строка ограничена 1 ~ 32.
- Безопасность:
- Бит0: сертификат клиента
- Бит 1: сертификат сервера
Пример:
1 2 3 4 5 |
1. Connect to EAP-TLS mode enterprise AP, set identity, verify server certificate and load client certificate AT+CWJEAP="dlink11111",0,"example@espressif.com",,,3 2. Connect to EAP-PEAP mode enterprise AP, set identity, username and password, not verify server certificate and not load client certificate AT+CWJEAP="dlink11111",1,"example@espressif.com","espressif","test11",0 |
Примечание:
- Изменения конфигурации будут сохранены в области NVS.
- Эта команда требует, чтобы режим Station был активным.
- Режим TLS будет использовать сертификат клиента, убедитесь, что включен.
3.20 AT+CWHOSTNAME : Configures the Name of ESP Station
Команда запроса:
1 2 3 |
AT+CWHOSTNAME? Function: Checks the host name of ESP Station. |
Отклик:
1 2 3 4 5 6 7 8 9 |
+CWHOSTNAME:hostname OK ----------------- например, запрос и реальный ответ AT+CWHOSTNAME? +CWHOSTNAME:LWIP OK |
Установить команду:
1 2 3 |
AT+CWHOSTNAME=hostname Function: Sets the host name of ESP Station. |
Response:
1 2 |
OK |
Если режим станции не включен, команда вернет:
1 2 |
ERROR |
Параметры:
- имя хоста : имя хоста станции ESP, максимальная длина 32 байта.
Примечание:
- Изменения конфигурации не сохраняются во флэш-памяти.
Example:
1 2 3 |
AT+CWMODE=3 AT+CWHOSTNAME="my_test" |
4. Связанные с TCP / IP AT-команды
4.1 AT+CIPSTATUS—Gets the Connection Status
Выполнить команду:
1 2 |
AT+CIPSTATUS |
Отклик:
1 2 3 4 5 6 7 8 |
STATUS:stat +CIPSTATUS:link ID,type,remote IP,remote port,local port,tetype -----------------например, запрос и реальный ответ AT+CIPSTATUS STATUS:2 OK |
Параметры:
- stat : состояние интерфейса ESP32 Station.
- 0: станция ESP32 неактивна.
- 1: станция ESP32 не используется.
- 2: Станция ESP32 подключена к точке доступа, и ее IP-адрес получен.
- 3: Станция ESP32 создала передачу TCP или UDP.
- 4: передача TCP или UDP станции ESP32 отключена.
- 5: Станция ESP32 НЕ подключается к точке доступа.
- link ID : идентификатор соединения (0 ~ 4), используемый для нескольких соединений.
- тип : строковый параметр, «TCP» или «UDP».
- remote IP : строковый параметр, обозначающий удаленный IP-адрес.
- удаленный порт : номер удаленного порта.
- локальный порт : номер локального порта ESP32.
- tetype :
- 0: ESP32 работает как клиент.
- 1: ESP32 работает как сервер.
4.2 AT + CIPDOMAIN – функция разрешения доменных имен
Выполнить команду:
1 2 |
AT+CIPDOMAIN=domain name |
Отклик:
1 2 |
+CIPDOMAIN:IP address |
Параметр:
- имя домена : имя домена.
Пример:
1 2 3 4 |
AT+CWMODE=1 // set Station mode AT+CWJAP="SSID","password" // access to the internet AT+CIPDOMAIN="iot.espressif.cn" // Domain Name Resolution function |
4.3 AT + CIPSTART – устанавливает соединение TCP, передачу UDP или соединение SSL
4.3.1 Установить TCP-соединение
Установить команду:
1 2 3 4 5 |
Single TCP connection (AT+CIPMUX=0): AT+CIPSTART=type,remote IP,remote port[,TCP keep alive][,local IP] Multiple TCP Connections (AT+CIPMUX=1): AT+CIPSTART=link ID,type,remote IP,remote port[,TCP keep alive][,local IP] |
Отклик:
1 2 |
OK |
Или, если соединение TCP уже установлено, ответом будет: УЖЕ СОЕДИНЕННАЯ ОШИБКА Параметры:
- link ID: ID of network connection (0~4), used for multiple connections.
- тип : строковый параметр, указывающий тип соединения: «TCP», «UDP» или «SSL».
- remote IP: string parameter indicating the remote IP address.
- удаленный порт : номер удаленного порта.
- [TCP keep alive] (необязательный параметр): интервал времени обнаружения, когда TCP поддерживается живым; эта функция отключена по умолчанию.
- 0: disable TCP keep-alive.
- 1 ~ 7200: интервал времени обнаружения; единица измерения: секунда
- [local IP] (необязательный параметр): выберите, какой IP-адрес хотите использовать, это полезно при использовании как Ethernet, так и WiFi; этот параметр по умолчанию отключен. Если вы хотите использовать этот параметр, должен быть указан в первую очередь, также допустимо значение null.
Examples:
1 2 3 4 |
AT+CIPSTART="TCP","iot.espressif.cn",8000 AT+CIPSTART="TCP","192.168.101.110",1000 AT+CIPSTART="TCP","192.168.101.110",1000,,"192.168.101.100" |
4.3.2 Установить UDP-передачу
Установить команду:
1 2 3 4 5 |
Single connection (AT+CIPMUX=0): AT+CIPSTART=type,remote IP,remote port[,(UDP local port),(UDP mode)][,local IP] Multiple connections (AT+CIPMUX=1): AT+CIPSTART=link ID,type,remote IP,remote port[,(UDP local port),(UDP mode)][,local IP] |
Отклик:
1 2 |
OK |
Or if the UDP transmission is already established, the response is: ALREADY CONNECTTED ERROR Parameters:
- link ID : идентификатор сетевого подключения (0 ~ 4), используемый для нескольких подключений.
- тип : строковый параметр, указывающий тип соединения: «TCP», «UDP» или «SSL».
- remote IP : строковый параметр, обозначающий удаленный IP-адрес.
- удаленный порт : номер удаленного порта.
- [UDP local port] (необязательный параметр): UDP-порт ESP32.
- [Режим UDP] (необязательный параметр): при прозрачной передаче UDP значение этого параметра должно быть 0.
- 0: конечный объект UDP не изменится; Это значение по умолчанию.
- 1: конечный объект UDP может измениться один раз.
- 2: одноранговый объект назначения UDP может измениться.
- [local IP] (необязательный параметр): выберите, какой IP-адрес хотите использовать, это полезно при использовании как Ethernet, так и WiFi; этот параметр по умолчанию отключен. Если вы хотите использовать этот параметр и должны быть указаны в первую очередь, также допустимо значение null.
Примечание:
- Чтобы использовать параметр UDP mode, параметр UDP local port должен быть установлен первым.
Пример:
1 2 3 |
AT+CIPSTART="UDP","192.168.101.110",1000,1002,2 AT+CIPSTART="UDP","192.168.101.110",1000,,,"192.168.101.100" |
[Только ESP32] 4.3.3 Установка SSL-соединения
Установить команду:
1 2 |
AT+CIPSTART=[link ID,]type,remote IP,remote port[,TCP keep alive][,local IP] |
Отклик:
1 2 |
OK |
Или, если соединение TCP уже установлено, ответом будет: УЖЕ СОЕДИНЕННАЯ ОШИБКА Параметры:
- идентификатор ссылки: ID of network connection (0~4), used for multiple connections.
- тип : строковый параметр, указывающий тип соединения: «TCP», «UDP» или «SSL».
- remote IP : строковый параметр, обозначающий удаленный IP-адрес.
- удаленный порт : номер удаленного порта.
- [TCP keep alive] (необязательный параметр): интервал времени обнаружения, когда TCP поддерживается живым; эта функция отключена по умолчанию.
- 0: disable the TCP keep-alive function.
- 1 ~ 7200: интервал времени обнаружения, единица измерения: секунда (с).
- [local IP] (необязательный параметр): выберите, какой IP-адрес хотите использовать, это полезно при использовании как Ethernet, так и WiFi; этот параметр по умолчанию отключен. Если вы хотите использовать этот параметр, должен быть указан в первую очередь, также допустимо значение null.
Примечания:
- ESP32 может установить не более одного SSL-соединения.
- SSL-соединение не поддерживает сквозной режим UART-WiFi (прозрачная передача).
- SSL-соединение требует большого объема памяти; в противном случае это может привести к перезагрузке системы.
Пример:
1 2 3 |
AT+CIPSTART="SSL","iot.espressif.cn",8443 AT+CIPSTART="SSL","192.168.101.110",1000,,"192.168.101.100" |
4.4 AT + CIPSEND – отправляет данные
Установить команду:
1 2 3 4 5 6 7 8 |
Single connection: (+CIPMUX=0) AT+CIPSEND=length Multiple connections: (+CIPMUX=1) AT+CIPSEND=link ID,length Remote IP and ports can be set in UDP transmission: AT+CIPSEND=[link ID,]length[,remote IP,remote port] Function: to configure the data length in normal transmission mode. |
Отклик:
1 2 3 |
OK |
Начните получать серийные данные. Когда требование длины данных выполнено, начинается передача данных. Если соединение не может быть установлено или прерывается во время передачи данных, система возвращает:
1 2 |
ERROR |
Если данные успешно переданы, система возвращает:
1 2 |
SEND OK |
Выполнить команду:
1 2 3 |
AT+CIPSEND Function: to start sending data in transparent transmission mode. |
Отклик:
1 2 3 |
OK |
Введите прозрачную передачу с интервалом 20 мс между каждым пакетом и максимум 2048 байтов на пакет. При получении одного пакета, содержащего +++, ESP32 возвращается в обычный командный режим. Пожалуйста, подождите хотя бы одну секунду перед отправкой следующей AT-команды. Эта команда может использоваться только в прозрачном режиме передачи, который требует одного соединения. Для прозрачной передачи UDP значение должно быть 0 при использовании AT + CIPSTART.
Или же
1 2 |
ERROR |
Параметры:
- link ID : идентификатор соединения (0 ~ 4) для нескольких соединений.
- длина : длина данных, МАКС .: 2048 байтов.
- [remote IP] (необязательный параметр): удаленный IP может быть установлен при передаче UDP.
- [удаленный порт] (необязательный параметр): удаленный порт можно настроить при передаче UDP.
4.5 AT + CIPSENDEX – отправляет данные
Установить команду:
1 2 3 4 5 6 7 8 |
Single connection: (+CIPMUX=0) AT+CIPSENDEX=length Multiple connections: (+CIPMUX=1) AT+CIPSENDEX=link ID,length Remote IP and ports can be set in UDP transmission: AT+CIPSENDEX=[link ID,]length[,remote IP,remote port] Function: to configure the data length in normal transmission mode. |
Отклик:
1 2 3 |
OK |
Send data of designated length. Wrap return after the set command. Begin receiving serial data. When the requirement of data length, determined by , is met, or when \0 appears in the data, the transmission starts. If connection cannot be established or gets disconnected during transmission, the system returns:
1 2 |
ERROR |
Если данные успешно переданы, система возвращает: SEND OK Параметры:
- идентификатор ссылки: ID of the connection (0~4), for multiple connections.
- длина : длина данных, МАКС .: 2048 байтов.
- Когда выполняется требование длины данных, определяемое length, или когда появляется строка \ 0, начинается передача данных. Вернитесь в обычный командный режим и дождитесь следующей AT-команды.
- При отправке \ 0, пожалуйста, отправьте как \\ 0.
4.6 AT + CIPCLOSE – закрывает соединение TCP / UDP / SSL
Установить команду (для нескольких подключений):
1 2 3 |
AT+CIPCLOSE=link ID Function: to close TCP/UDP connection. |
Параметры:
- link ID : идентификационный номер соединения, которое будет закрыто; когда ID = 5, все соединения будут закрыты.
Выполнить команду (для одиночного соединения):
1 2 |
AT+CIPCLOSE |
Response:
1 2 |
OK |
4.7 AT + CIFSR – получает локальный IP-адрес
Выполнить команду:
1 2 |
AT+CIFSR |
Response:
1 2 3 4 |
+CIFSR:SoftAP IP address +CIFSR:Station IP address OK |
Параметры:
- IP address:
- IP-адрес ESP32 SoftAP;
- IP-адрес станции ESP32.
Примечания:
- Только когда станция ESP32 подключена к точке доступа, IP-адрес станции может быть запрошен.
4.8 AT + CIPMUX – включает / отключает несколько подключений
Команда запроса:
1 2 3 |
AT+CIPMUX? Function: to query the connection type. |
Отклик:
1 2 3 |
+CIPMUX:mode OK |
Установить команду:
1 2 3 |
AT+CIPMUX=mode Function: to set the connection type. |
Отклик:
1 2 |
OK |
Параметры:
- режим :
- 0: одиночное соединение
- 1: несколько соединений
Notes:
- Режим по умолчанию – режим одиночного соединения.
- Несколько соединений могут быть установлены только когда прозрачная передача отключена (
AT+CIPMODE=0
). - This mode can only be changed after all connections are disconnected.
- Если TCP-сервер работает, он должен быть удален (
AT+CIPSERVER=0
), прежде чем активируется режим единого соединения.
Пример:
1 2 |
AT+CIPMUX=1 |
4.9 AT + CIPSERVER – Удаляет / Создает сервер TCP или SSL
Установить команду:
1 2 |
AT+CIPSERVER=mode[,port][,SSL,SSL CA enable] |
Отклик:
1 2 |
OK |
Параметры:
- режим :
- 0: удалить сервер.
- 1: создать сервер.
- порт : номер порта; 333 по умолчанию.
- [Только ESP32] [SSL] (необязательный параметр): строка «SSL», чтобы установить сервер SSL
- [Только ESP32] [SSL CA enable] (необязательный параметр):
- 0: отключить CA.
- 1: включить CA.
Примечания:
- Сервер TCP может быть создан только тогда, когда активировано несколько подключений (
AT+CIPMUX=1
). - Монитор сервера будет создан автоматически при создании TCP-сервера. И только один сервер разрешен.
- When a client is connected to the server, it will take up one connection and be assigned an ID.
Пример:
1 2 3 4 5 6 7 |
// To create a TCP server AT+CIPMUX=1 AT+CIPSERVER=1,80 // To create a SSL server AT+CIPMUX=1 AT+CIPSERVER=1,443,"SSL",1 |
4.10 AT + CIPSERVERMAXCONN —Установите максимальное количество соединений, разрешенных сервером
Команда запроса:
1 2 3 |
AT+CIPSERVERMAXCONN? Function: obtain the maximum number of clients allowed to connect to the TCP or SSL server. |
Response:
1 2 3 |
+CIPSERVERMAXCONN:num OK |
Установить команду:
1 2 3 |
AT+CIPSERVERMAXCONN=num Function: set the maximum number of clients allowed to connect to the TCP or SSL server. |
Отклик:
1 2 |
OK |
Параметры:
- num : максимальное количество клиентов, которым разрешено подключаться к серверу TCP или SSL.
Примечания:
- Чтобы настроить эту конфигурацию, вы должны вызвать команду
AT+CIPSERVERMAXCONN=num
перед созданием сервера.
Пример:
1 2 3 4 |
AT+CIPMUX=1 AT+CIPSERVERMAXCONN=2 AT+CIPSERVER=1,80 |
4.11 AT + CIPMODE — Настраивает режим передачи
Команда запроса:
1 2 3 |
AT+CIPMODE? Function: to obtain information about transmission mode. |
Отклик:
1 2 3 |
+CIPMODE:mode OK |
Установить команду:
1 2 3 |
AT+CIPMODE=mode Function: to set the transmission mode. |
Отклик:
1 2 |
OK |
Параметры:
- режим :
- 0: нормальный режим передачи.
- 1: транзитный режим UART-Wi-Fi (прозрачная передача), который может быть включен только в режиме единого соединения TCP или в режиме UDP, когда удаленный IP-адрес и порт не изменяются.
Примечания:
- Изменения конфигурации НЕ будут сохранены во флэш-памяти.
- Если во время передачи по протоколу UART-WiFi разрывается соединение TCP, ESP32 будет пытаться восстановить соединение, пока не будет введен
+++
вход для выхода из передачи. - Если это обычная передача TCP и соединение TCP разрывается, ESP32 выдаст запрос и не будет пытаться восстановить соединение.
Пример:
1 2 |
AT+CIPMODE=1 |
4,12 AT+SAVETRANSLINK—Saves the Transparent Transmission Link in Flash
4.12.1. Сохранение одного TCP-соединения во Flash
Установить команду:
1 2 |
AT+SAVETRANSLINK=mode,remote IP or domain name,remote port[,type,TCP keep alive] |
Отклик:
1 2 |
OK |
Parameters:
- режим :
- 0: нормальный режим, ESP32 НЕ войдет в режим сквозного подключения UART-WiFi при включении питания.
- 1: ESP32 will enter UART-WiFi passthrough mode on power-up.
- удаленный IP : удаленный IP или имя домена.
- удаленный порт : удаленный порт.
- [тип] (необязательный параметр): TCP или UDP, TCP по умолчанию.
- [TCP keep alive] (необязательный параметр): TCP поддерживается живым. Эта функция по умолчанию отключена.
- 0: отключает функцию поддержания активности TCP.
- 1 ~ 7200: интервал времени обнаружения активности; единица измерения: секунда
Notes:
- Эта команда сохранит режим сквозного прохождения UART-WiFi и его ссылку в области NVS. ESP32 войдет в режим сквозного прохождения UART-WiFi при любых последующих циклах питания.
- Пока удаленный IP-адрес (или имя домена) и порт действительны, конфигурация будет сохранена во флэш-памяти.
Example:
1 2 |
AT+SAVETRANSLINK=1,"192.168.6.110",1002,"TCP" |
4.12.2 Сохранить UDP-передачу во Flash
Установить команду:
1 2 |
AT+SAVETRANSLINK=mode,remote IP,remote port,type[,UDP local port] |
Отклик:
1 2 |
OK |
Параметры:
- mode:
- 0: нормальный режим; ESP32 НЕ войдет в режим сквозного подключения UART-WiFi при включении питания.
- 1: ESP32 входит в режим сквозного подключения UART-WiFi при включении питания.
- удаленный IP : удаленный IP или имя домена.
- удаленный порт : удаленный порт.
- [Тип](optional parameter): UDP, TCP by default.
- [UDP local port] (необязательный параметр): локальный порт, когда прозрачная передача UDP включена при включении питания.
Примечания:
- Эта команда сохранит режим сквозного прохождения UART-WiFi и его ссылку в области NVS. ESP32 войдет в режим сквозного прохождения UART-WiFi при любых последующих циклах питания.
- Пока удаленный IP-адрес (или имя домена) и порт действительны, конфигурация будет сохранена во флэш-памяти.
Пример:
1 2 |
AT+SAVETRANSLINK=1,"192.168.6.110",1002,"UDP",1005 |
4.13 AT+CIPSTO—Sets the TCP Server Timeout
Команда запроса:
1 2 3 |
AT+CIPSTO? Function: to check the TCP server timeout. |
Отклик:
1 2 3 |
+CIPSTO:time OK |
Установить команду:
1 2 3 |
AT+CIPSTO=time Function: to set the TCP server timeout. |
Отклик:
1 2 |
OK |
Параметр:
- time: TCP server timeout within the range of 0 ~ 7200s.
Примечания:
- ESP32, настроенный как сервер TCP, будет отключаться от клиента TCP, который не связывается с ним до истечения времени ожидания.
- Если
AT+CIPSTO=0
соединение никогда не истечет. Эта конфигурация не рекомендуется.
Example:
1 2 3 4 |
AT+CIPMUX=1 AT+CIPSERVER=1,1001 AT+CIPSTO=10 |
4.14 AT + CIPSNTPCFG – устанавливает часовой пояс и сервер SNTP
Команда запроса:
1 2 |
AT+CIPSNTPCFG? |
Отклик:
1 2 3 |
+CIPSNTPCFG:enable,timezone,SNTP server1[,SNTP server2,SNTP server3] OK |
Выполнить команду:
1 2 3 |
AT+CIPSNTPCFG Function: to clear the SNTP server information. |
Отклик:
1 2 |
OK |
Установить команду:
1 2 |
AT+CIPSNTPCFG=timezone[,SNTP server1,SNTP server2,SNTP server3] |
Отклик:
1 2 |
OK |
Параметры:
- enable :
- 1: сервер SNTP настроен.
- 0: сервер SNTP не настроен.
- часовой пояс : часовой пояс, диапазон: [-11,13].
- SNTP server1 : первый сервер SNTP.
- SNTP server2 : второй SNTP-сервер.
- SNTP server3 : третий SNTP-сервер.
Примечание:
- Если три сервера SNTP не настроены, используется следующая конфигурация по умолчанию: «cn.ntp.org.cn», «ntp.sjtu.edu.cn», «us.pool.ntp.org».
Пример:
1 2 |
AT+CIPSNTPCFG=8,"cn.ntp.org.cn","ntp.sjtu.edu.cn" |
4.15 AT+CIPSNTPTIME—Queries the SNTP Time
Команда запроса:
1 2 |
AT+CIPSNTPTIME? |
Отклик:
1 2 3 |
+CIPSNTPTIME:SNTP time OK |
Пример:
1 2 3 4 5 6 |
AT+CIPSNTPCFG=8,"cn.ntp.org.cn","ntp.sjtu.edu.cn" OK AT+CIPSNTPTIME? +CIPSNTPTIME:Mon Dec 12 02:33:32 2016 OK |
AT + CIUPDATE – обновление программного обеспечения через Wi-Fi
4.16Выполнить команду:
1 2 3 |
AT+CIUPDATE Function: OTA the lastest version via TCP from server. |
Отклик:
1 2 3 |
+CIPUPDATE:n OK |
Выполнить команду:
1 2 3 |
AT+CIUPDATE=ota mode[,version] Function: OTA the specified version from server. |
Отклик:
1 2 3 |
+CIPUPDATE:n OK |