ESP-AT 用户指南 Choose target... Choose version... 入门 AT Binary 列表 AT 命令集 基础 AT 命令集 Wi-Fi AT 命令集 TCP-IP AT 命令集 Bluetooth® Low Energy 命令集 Bluetooth® AT 命令集 MQTT AT 命令集 HTTP AT 命令集 文件系统 AT 命令集 WebSocket AT 命令集 以太网 AT 命令集 信令测试 AT 命令集 驱动 AT 命令集 Web 服务器 AT 命令集 用户 AT 命令集 AT 命令分类 参数信息保存在 flash 中的 AT 命令 AT 消息 AT 日志 AT 命令示例 AT 版本简介 编译和开发 第三方开放云平台定制化 AT FAQ 缩写词索引 特别声明 关于 ESP-AT ESP-AT 用户指南 AT 命令集 在 GitHub 上编辑 AT 命令集 [English] 本章将具体介绍如何使用各类 AT 命令。 基础 AT 命令集 Wi-Fi AT 命令集 TCP-IP AT 命令集 Bluetooth® Low Energy 命令集 Bluetooth® AT 命令集 MQTT AT 命令集 HTTP AT 命令集 文件系统 AT 命令集 WebSocket AT 命令集 以太网 AT 命令集 信令测试 AT 命令集 驱动 AT 命令集 Web 服务器 AT 命令集 用户 AT 命令集 强烈建议在使用命令之前先阅读以下内容,了解 AT 命令的一些基本信息。 AT 命令分类 参数信息保存在 flash 中的 AT 命令 AT 消息 AT 日志 AT 命令分类 通用 AT 命令有四种类型: 类型 命令格式 说明 测试命令 AT+<命令名称>=? 查询设置命令的内部参数及其取值范围 查询命令 AT+<命令名称>? 返回当前参数值 设置命令 AT+<命令名称>=<…> 设置用户自定义的参数值,并运行命令 执行命令 AT+<命令名称> 运行无用户自定义参数的命令 不是每条 AT 命令都具备上述四种类型的命令。 命令里输入参数,当前只支持字符串参数和整形数字参数。 尖括号 < > 内的参数不可以省略。 方括号 [ ] 内的参数可以省略,省略时使用默认值。例如,运行 AT+CWJAP 命令时省略某些参数: AT+CWJAP="ssid","password" AT+CWJAP="ssid","password","11:22:33:44:55:66" 当省略的参数后仍有参数要填写时,必须使用 ,,以示分隔,如: AT+CWJAP="ssid","password",,1 使用双引号表示字符串参数,如: AT+CWSAP="ESP756290","21030826",1,4 特殊字符需作转义处理,当前需要转义的字符有 ,、"、\。 \\:转义反斜杠。 \,:转义逗号,分隔参数的逗号无需转义。 \":转义双引号,表示字符串参数的双引号无需转义。 \:转义 字符,即只使用 字符,不使用反斜杠。 只有 AT 命令 中的特殊字符需要转义,其它地方无需转义。例如,AT 命令口打印 > 等待输入数据时,该数据不需要转义。 AT+CWJAP="comma\,backslash\\ssid","1234567890" AT+MQTTPUB=0,"topic","\"{\"sensor\":012}\"",1,0 AT 命令的默认波特率为 115200。 每条 AT 命令的长度不应超过 256 字节。 AT 命令以新行 (CR-LF) 结束,所以串口工具应设置为“新行模式”。 AT 命令错误代码的定义请见 AT API Reference: esp_at_error_code esp_at_para_parse_result_type esp_at_result_code_string_index 参数信息保存在 flash 中的 AT 命令 以下 AT 命令的参数更改将始终保存在 flash 的 NVS 区域中,因此重启后,会直接使用。 AT+UART_DEF: AT+UART_DEF=115200,8,1,0,3 AT+SAVETRANSLINK: AT+SAVETRANSLINK=1,"192.168.6.10",1001 AT+CWAUTOCONN: AT+CWAUTOCONN=1 其它一些命令的参数更改是否保存到 flash 可以通过 AT+SYSSTORE 命令来配置,具体请参见命令的详细说明。 备注 AT 命令里的参数保存,是通过 NVS 库实现的。因此,如果命令配置相同的参数值,则不会写入 flash;如果命令配置不同的参数值,flash 也不会被频繁擦除。 AT 消息 从 ESP-AT 命令端口返回的 ESP-AT 消息有两种类型:ESP-AT 响应(被动)和 ESP-AT 消息报告(主动)。 ESP-AT 响应(被动) 每个输入的 ESP-AT 命令都会返回响应,告诉发送者 ESP-AT 命令的执行结果。响应的最后一条消息必然是 OK 或者 ERROR。 ESP-AT 响应 AT 响应 说明 OK AT 命令处理完毕,返回 OK ERROR AT 命令错误或执行过程中发生错误 SEND OK 数据已发送到协议栈(针对于 AT+CIPSEND 和 AT+CIPSENDEX 命令),但不代表数据已经发到对端 SEND FAIL 向协议栈发送数据时发生错误(针对于 AT+CIPSEND 和 AT+CIPSENDEX 命令) SET OK URL 已经成功设置(针对于 AT+HTTPURLCFG 命令) +:... 详细描述 AT 命令处理结果 ESP-AT 消息报告(主动) ESP-AT 会报告系统中重要的状态变化或消息。 ESP-AT 消息报告 ESP-AT 消息报告 说明 ready ESP-AT 固件已经准备就绪 busy p… 系统繁忙,正在处理上一条命令,无法处理新的命令 ERR CODE:<0x%08x> 不同命令的错误代码 Will force to restart!!! 立即重启模块 smartconfig type: Smartconfig 类型 Smart get wifi info Smartconfig 已获取 SSID 和 PASSWORD +SCRD:, ESP-Touch v2 已获取自定义数据 smartconfig connected wifi Smartconfig 完成,ESP-AT 已连接到 Wi-Fi WIFI CONNECTED Wi-Fi station 接口已连接到 AP WIFI GOT IP Wi-Fi station 接口已获取 IPv4 地址 WIFI GOT IPv6 LL Wi-Fi station 接口已获取 IPv6 链路本地地址 WIFI GOT IPv6 GL Wi-Fi station 接口已获取 IPv6 全局地址 WIFI DISCONNECT Wi-Fi station 接口已与 AP 断开连接 +ETH_CONNECTED 以太网接口已连接 +ETH_GOT_IP 以太网接口已获取 IPv4 地址 +ETH_DISCONNECTED 以太网接口已断开 [,]CONNECT ID 为 的网络连接已建立(默认情况下,ID 为 0) [,]CLOSED ID 为 的网络连接已断开(默认情况下,ID 为 0) +ERRNO: 命令执行失败时的错误码 建立 TCP 连接、UDP 传输、SSL 服务器失败时,错误码按优先级返回:首先为套接字的 SO_ERROR;若 SO_ERROR 为 0,则返回 LwIP 的 errno;若 errno 为 0,则返回 ESP-AT 定义的错误码。 建立 SSL 连接失败时,错误码按优先级返回:首先为证书相关错误码;若证书相关错误码为 0,则返回 mbedTLS 的错误码;若 mbedTLS 的错误码为 0,则返回 esp-tls 的错误码;若 esp-tls 的错误码为 0,则返回 ESP-AT 定义的错误码。 +LINK_CONN TCP/UDP/SSL 连接的详细信息 +STA_CONNECTED: station 已连接到 ESP-AT 的 Wi-Fi softAP 接口 +DIST_STA_IP: , ESP-AT 的 Wi-Fi softAP 接口给 station 分配 IP 地址 +STA_DISCONNECTED: station 与 ESP-AT 的 Wi-Fi softAP 接口的连接断开 > ESP-AT 正在等待用户输入数据 Recv bytes ESP-AT 从命令端口已接收到 字节 +IPD ESP-AT 在非透传模式下,已收到来自网络的数据。有以下的消息格式: 如果 AT+CIPMUX=0,AT+CIPRECVTYPE=1,打印:+IPD, 如果 AT+CIPMUX=1,AT+CIPRECVTYPE=,1,打印:+IPD,, 如果 AT+CIPMUX=0,AT+CIPRECVTYPE=0,AT+CIPDINFO=0,打印:+IPD,: 如果 AT+CIPMUX=1,AT+CIPRECVTYPE=,0,AT+CIPDINFO=0,打印:+IPD,,: 如果 AT+CIPMUX=0,AT+CIPRECVTYPE=0,AT+CIPDINFO=1,打印:+IPD,,<"remote_ip">,: 如果 AT+CIPMUX=1,AT+CIPRECVTYPE=,0,AT+CIPDINFO=1,打印:+IPD,,,<"remote_ip">,: 其中的 link_id 为连接 ID,length 为数据长度,remote_ip 为远端 IP 地址,remote_port 为远端端口号,data 为数据。 注意:当这是个 SSL 连接时,在被动接收模式下(AT+CIPRECVTYPE=1),AT 命令口回复的 length 可能和实际可读的 SSL 数据长度不一致。因为 AT 会优先返回 SSL 层可读的数据长度,如果 SSL 层可读的数据长度为 0,AT 会返回套接字层可读的数据长度。 透传模式 下的数据 ESP-AT 在透传模式下,已收到来自网络或蓝牙的数据 SEND Canceled 取消在 普通传输模式 下发送数据 Have Connections 已达到服务器的最大连接数 +QUITT ESP-AT 退出 透传模式 NO CERT FOUND 在自定义分区中没有找到有效的设备证书 NO PRVT_KEY FOUND 在自定义分区中没有找到有效的私钥 NO CA FOUND 在自定义分区中没有找到有效的 CA 证书 +TIME_UPDATED 系统时间已更新。只在发送 AT+CIPSNTPCFG 命令后或者掉电重启后,系统从 SNTP 服务器获取到新的时间,才会打印此消息 +MQTTCONNECTED MQTT 已连接到 broker +MQTTDISCONNECTED MQTT 与 broker 已断开连接 +MQTTSUBRECV MQTT 已从 broker 收到数据 +MQTTPUB:FAIL MQTT 发布数据失败 +MQTTPUB:OK MQTT 发布数据完成 +BLECONN Bluetooth LE 连接已建立 +BLEDISCONN Bluetooth LE 连接已断开 +READ 通过 Bluetooth LE 连接进行读取操作 +WRITE 通过 Bluetooth LE 进行写入操作 +NOTIFY 来自 Bluetooth LE 连接的 notification +INDICATE 来自 Bluetooth LE 连接的 indication +BLESECNTFYKEY Bluetooth LE SMP 密钥 +BLESECREQ: 收到来自 Bluetooth LE 连接的加密配对请求 +BLEAUTHCMPL:, Bluetooth LE SMP 配对完成 +SSID: BluFi 配网模式下,ESP32 收到手机端发送的 SSID +PASSWORD: BluFi 配网模式下,ESP32 收到手机端发送的密码 +BLUFIDATA:, ESP32 收到从手机端发送的 BluFi 用户自定义数据 +WS_DISCONNECTED: 连接 ID 为 的 WebSocket 连接已断开 +WS_CONNECTED: 连接 ID 为 的 WebSocket 连接已建立 +WS_DATA:,, 连接 ID 为 的 WebSocket 连接收到数据,你可以通过 AT+WSDATAFMT 命令来控制接收的数据格式 +WS_CLOSED: 连接 ID 为 的 WebSocket 连接已关闭 +BLESCANDONE 扫描结束 +BLESECKEYREQ: 对端已经接受配对请求,ESP 设备可以输入密钥了 +BLE_TT_MODE 进入 BLE 透传模式 +WRITE: 在透传模式下,使能 notify 或者 indicate 时,打印以 “+WRITE:” 开头的提示消息 AT 日志 通过 硬件连接 中 输出日志 功能对应的管脚,ESP-AT 会输出丰富的日志信息,帮助用户了解 ESP-AT 的运行状态。你也可以 启用不同的日志配置,以查看更多详细的日志信息。下面列出了部分常见的日志信息和对应说明: ESP-AT 日志 AT 日志 说明 at-common: write dlen:0 AT 命令口的 RX 收到非预期的数据,通常这些数据里含有多个 \0 字符。如果使用 UART 和 MCU 通信,请检查: ESP32 的 UART RX 引脚是否正确连接到 MCU 的 TX 引脚 MCU 是否发送了非 AT 命令格式的数据 MCU 是否正确配置了 UART 波特率、数据位、停止位、奇偶校验位、流控 MCU 的 GND 是否正确连接到 ESP32 的 GND 引脚 at-init: at param mode: AT 初始化时的参数模式 0: 无参数 1: 使用 mfg_nvs 分区里的参数 2: 使用 factory_param 分区里的参数 at-init: v4.1.0.0 () AT 固件的版本号和对应固件生成的来源 at-wifi: negotiated phy mode: Wi-Fi Station 连接到 AP 时协商的 PHY 模式 0: Low Rate 1: 11b 2: 11g 3: 11a 4: HT20 5: HT40 6: HE20 7: VHT20 at-wifi: wifi disconnected, rc: Wi-Fi station 断开连接的 原因代码 at-wifi: wifi reconnect..(/) Wi-Fi station 正在重连到 AP at-net: unknown host: 无法解析主机名 ,请检查 DNS 设置和网络连接 at-net: send failed, s: r: 发送数据失败,发送长度为 ,实际返回长度为 。请检查网络连接 at-net: link is changed AT 作为服务器时,在数据发送过程中,客户端连接断开后,新的客户端连接到服务器 at-net: link: is on netif: 连接 在网络接口 上建立成功了 1: Wi-Fi station 接口 2: Wi-Fi softAP 接口 3: 以太网接口 提供有关此文档的反馈 上一页 下一页 © 版权所有 2016 - 2026 乐鑫信息科技(上海)股份有限公司。 利用 Sphinx 构建,使用的 主题 based on Read the Docs Sphinx Theme. Download PDF ESP-AT 用户指南 Choose target... Choose version... 入门 AT Binary 列表 AT 命令集 基础 AT 命令集 介绍 AT:测试 AT 启动 执行命令 AT+RST:重启模块 执行命令 AT+GMR:查看版本信息 执行命令 参数 说明 示例 AT+CMD:查询当前固件支持的所有命令及命令类型 查询命令 参数 AT+GSLP:进入 Deep-sleep 模式 设置命令 参数 说明 ATE:开启或关闭 AT 回显功能 执行命令 参数 AT+RESTORE:恢复出厂设置 执行命令 说明 AT+SAVETRANSLINK:设置开机 Network/Bluetooth LE 透传模式 信息 设置开机进入 TCP/SSL 客户端 透传模式 信息 设置开机进入 TCP/SSL 服务器 透传模式 信息 设置开机进入 UDP 透传模式 信息 设置开机进入 BLE 透传模式 信息 AT+TRANSINTVL:设置 透传模式 模式下的数据发送间隔 查询命令 设置命令 参数 说明 示例 AT+UART_CUR:设置 UART 当前临时配置,不保存到 flash 查询命令 设置命令 参数 说明 示例 AT+UART_DEF:设置 UART 默认配置,保存到 flash 查询命令 设置命令 参数 说明 示例 AT+SLEEP:设置睡眠模式 查询命令 设置命令 参数 说明 示例 AT+SYSRAM:查询堆空间使用情况 查询命令 参数 说明 示例 设置命令 参数 说明 AT+SYSMSG:查询/设置系统提示信息 查询命令 设置命令 参数 说明 示例 AT+SYSMSGFILTER:启用或禁用 系统消息 过滤 查询命令 设置命令 参数 说明 AT+SYSMSGFILTERCFG:查询/配置 系统消息 的过滤器 查询过滤器 清除所有过滤器 增加一个过滤器 删除一个过滤器 AT+SYSFLASH:查询或读写 flash 用户分区 查询命令 设置命令 参数 说明 示例 AT+SYSMFG:查询或读写 manufacturing nvs 用户分区 查询命令 擦除命名空间或键值对 说明 读取命名空间或键值对 说明 向命名空间内写入键值对 说明 AT+RFPOWER:查询/设置 RF TX Power 查询命令 设置命令 参数 说明 AT:RF 全面校准 执行命令 说明 AT+SYSROLLBACK:回滚到以前的固件 查询命令 执行命令 参数 说明 AT+SYSTIMESTAMP:查询/设置本地时间戳 查询命令 设置命令 参数 示例 AT+SYSLOG:启用或禁用 AT 错误代码提示 查询命令 设置命令 参数 示例 AT+SLEEPWKCFG:设置 Light-sleep 唤醒源和唤醒 GPIO 设置命令 参数 示例 说明 AT+SYSSTORE:设置参数存储模式 查询命令 设置命令 参数 说明 示例 AT+SYSREG:读写寄存器 设置命令 参数 说明 Wi-Fi AT 命令集 TCP-IP AT 命令集 Bluetooth® Low Energy 命令集 Bluetooth® AT 命令集 MQTT AT 命令集 HTTP AT 命令集 文件系统 AT 命令集 WebSocket AT 命令集 以太网 AT 命令集 信令测试 AT 命令集 驱动 AT 命令集 Web 服务器 AT 命令集 用户 AT 命令集 AT 命令分类 参数信息保存在 flash 中的 AT 命令 AT 消息 AT 日志 AT 命令示例 AT 版本简介 编译和开发 第三方开放云平台定制化 AT FAQ 缩写词索引 特别声明 关于 ESP-AT ESP-AT 用户指南 AT 命令集 基础 AT 命令集 在 GitHub 上编辑 基础 AT 命令集 [English] 介绍 AT:测试 AT 启动 AT+RST:重启模块 AT+GMR:查看版本信息 AT+CMD:查询当前固件支持的所有命令及命令类型 AT+GSLP:进⼊ Deep-sleep 模式 ATE:开启或关闭 AT 回显功能 AT+RESTORE:恢复出厂设置 AT+SAVETRANSLINK:设置开机 Network/Bluetooth LE 透传模式 信息 AT+TRANSINTVL:设置 透传模式 模式下的数据发送间隔 AT+UART_CUR:设置 UART 当前临时配置,不保存到 flash AT+UART_DEF:设置 UART 默认配置, 保存到 flash AT+SLEEP:设置睡眠模式 AT+SYSRAM:查询堆空间使用情况 AT+SYSMSG:查询/设置系统提示信息 AT+SYSMSGFILTER:启用或禁用 系统消息 过滤 AT+SYSMSGFILTERCFG:查询/配置 系统消息 的过滤器 AT+SYSFLASH:查询或读写 flash 用户分区 AT+SYSMFG:查询或读写 manufacturing nvs 用户分区 AT+RFPOWER:查询/设置 RF TX Power AT+RFCAL:RF 全面校准 AT+SYSROLLBACK:回滚到以前的固件 AT+SYSTIMESTAMP:查询/设置本地时间戳 AT+SYSLOG:启用或禁用 AT 错误代码提示 AT+SLEEPWKCFG:设置 Light-sleep 唤醒源和唤醒 GPIO AT+SYSSTORE:设置参数存储模式 AT+SYSREG:读写寄存器 介绍 重要 默认的 AT 固件支持此页面下的所有 AT 命令。 AT:测试 AT 启动 执行命令 命令: AT 响应: OK AT+RST:重启模块 执行命令 命令: AT+RST 响应: OK AT+GMR:查看版本信息 执行命令 命令: AT+GMR 响应: Bin version:() OK 参数 :AT 核心库的版本信息,它们在 esp-at/components/at/lib/ 目录下。代码是闭源的,无开放计划。 :AT 使用的平台 SDK 版本信息,它们定义在 esp-at/module_config/module_{platform}_default/IDF_VERSION 文件中。 :固件生成时间。 :AT 固件版本信息。版本信息