欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 新车 > ESP8266_ESP32 Smartconfig一键配网功能

ESP8266_ESP32 Smartconfig一键配网功能

2025/4/24 5:07:47 来源:https://blog.csdn.net/qq_42250136/article/details/147381405  浏览:    关键词:ESP8266_ESP32 Smartconfig一键配网功能

目录

  • SmartConfig一键配网
    • 基本原理
    • 设备绑定流程
  • ESP8266/ESP32 SmartConfig配网
    • AT指令配置方式
    • Arduino程序配置方式
  • 总结

SmartConfig一键配网

SmartConfigTM 是由 TI 开发的配网技术,用于将新的 Wi-Fi 设备连接到 Wi-Fi 网络。它使用移动应用程序将无线网凭据从智能手机或平板电脑端广播给未配网的 Wi-Fi 设备。这项技术的优势在于,设备无需直接获知 AP 的 SSID 或密码,而是通过智能手机获取。这对于没有用户界面的无头设备和系统而言十分重要。目前, ESP32 支持三种类型的 SmartConfig 配网: Airkiss、ESPTouch 和 ESPTouch v2。ESPTouch v2 自 SmartConfig v3.0 (SmartConfig 的版本可以从 esp_smartconfig_get_version() 获取)起开始支持,ESPTouch v2 和 vESPTouch 采用完全不同的配网算法,因此配网速度更快。此外,ESPTouch v2 还增加了 AES 加密功能和自定义数据字段。

基本原理

设备进入 Wi-Fi 混杂模式(promiscuous mode)以监听捕获周围的 Wi-Fi 报文。由于设备暂未联网,且 Wi-Fi 网络的数据帧已通过加密,设备无法获取 payload 的内容,但可以获取报文的某些特征数据,例如每个报文的长度。同时对于某些数据帧,例如 UDP 的广播包或多播包,其报文的帧头结构比较固定,较容易识别。
此时在手机 App 或者小程序端,即可通过发送 UDP 的广播包或多播包,并利用报文的特征,例如长度变化进行编码。
将目标 Wi-Fi 路由器的 SSID/PSW 字符以约定的编码方式发送出去,设备端在捕获到 UDP 报文后,按约定的方式进行解码,即可得到目标 Wi-Fi 路由器的相关信息并进行联网。

设备绑定流程

SmartConfig 方式配网,每个厂商的编码方式和报文选择上有自己的协议,文章里的 ESP8266和ESP32采用的协议是乐鑫 ESP-TOUCH协议。基于该协议,设备端在连接 Wi-Fi 路由器成功后,将会告知手机端自己的 IP 地址。此时手机端可以通过数据通道,例如 TCP/UDP 通讯将后台提供的配网 Token 发送给设备,并由设备转发至物联网后台,依据 Token 进行设备绑定。

简单来说,smartconfig一键配网就是ESP8266/32打开配网模式,手机连接WIFI(必须是2.4GWIFI )后打开乐鑫软件APP进入ESPTOUCH,输入密码,点击确认后手机会往外进行发送报文,设备接收到报文后进行连接WiFi,获取ip地址。

ESP8266/ESP32 SmartConfig配网

AT指令配置方式

在这里插入图片描述

ESP8266/ESP32两个通过smartconfig配网的方法是相同,只是烧录的固件不同。

ESP8266模组烧录的是乐鑫的ESP-WROOM-02-AT-V2.2.2.0固件,可直接从乐鑫的官网: ESP8266固件进行获取,压缩包里面都会有文档进行说明这个固件是如何使用以及AT指令集。
ESP32模组烧录的是乐鑫的ESP32-WROOM-32-AT-V3.4.0.0固件,可直接从乐鑫的官网: ESP32固件进行获取,压缩包里面都会有文档进行说明这个固件是如何使用以及AT指令集。

烧录对应固件后,发送以下指令打开配网

AT+CWMODE=1   //设置WiFi模式为单Station模式
AT+CWSTARTSMART  //开启 SmartConfig

手机端打开ESPTOUCH软件,进入ESPTOUCH界面,然后输入密码点击确认后,就会开始向外部发送报文了。( ESPTOUCH软件下载地址)
在这里插入图片描述
过一会后就可以看到ESP8266/32设备配网成功了。
软件页面:
在这里插入图片描述
串口页面:

在这里插入图片描述
出现Smartconfig connected wifi则表示连接成功。

Arduino程序配置方式

官方在Arduino IDE中,同样为ESP32提供了SmartConfig的示例,实际使用开发可以修改移植到自己的项目中,下面我们来测试一下实际效果。
下载好ESP32的开发环境,我们可以看官方已经为我们提供了SmartConfig的例程,直接打开进行烧录就可以。
在这里插入图片描述
烧录完成后我们打开串口输出,查看连接现象,操作和上面的是一样的,这里就不多说了,直接看连接成功的输出结果:
在这里插入图片描述
这里输出获取到的IP地址则已经连接上了。

总结

  1. 无论 SmartConfig 成功与否,都请在执行其他命令之前调用AT+CWSTOPSMART 释放 SmartConfig 占用的内存。
  2. 串口的接线两个单片机各有不同,可以看对应固件的用户指南进行接线。
    在这里插入图片描述
    在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词