windwows wifi函数接口_WIFI实战应用第二章 ESP32配网之SmartConfig一键配置

学习目的及目标

· 掌握SmartConfig原理和工作过程

· 掌握乐鑫ESP32的SmartConfig的程序设计

WIFI设备配网方法

· WiFi设备处于AP模式,配置工具连上这个AP,对这个AP发送联网信息,WiFi设备收到后,切换到STA模式,利用收到的信息联网。此方法优势是成功率基本在100%,缺点是配置过程复杂,做出的产品不易操作。

· Airkiss微信配网,玩玩可以,项目不考虑。

· SmartConfig模式,采用UDP广播模式(UDP接收IP地址是255.255.255.255)。WiFi设备先scan环境下AP,得到AP的相关信息,如工作的channel,然后配置WiFi芯片工作在刚才scan到的channel上去接收UDP包,如果没有接收到,继续配置工作在另外的channel上,如此循环,直到收到UDP包为止。随意此种办法的致命缺点是成功率只有70%,而且有些路由器不支持;优点显而易见,一键完成。

· UDP广播配网,类似SmartConfig,自己实现可以自由一些。

· 网页、硬件接口等配网方式,不想说他。

SmartConfig特点

SmartConfig又名快连,当前设备在没有和其他设备建立任何实际性通信链接的状态下,一键配置该设备接入WIFI。

SmartConfig实际应用场景

现状:当手机端接入路由器的WIFI,未联网设备没有任何实质性通信链接(信息孤立)。

目的:如果未联网设备也想接入这个路由器的WIFI。

分析:肯定需要有人告诉未联网设备,路由器的WIFI的账号(ssid)和密码(password)。

手段:目前我们只有手机端的资源可以利用,所以只能手机端告诉设备未联网设备。

未联网设备在没有任何链接的情况下,手机端是如何告知未联网设备信息,这个方法就是SmartConfig。流程如下图所示:

21b7bcc1867348999e9739c2519836a4

软件设计

ESP32的SmartConfig主逻辑

81157a6d437e45cbaec9ab626ee818d8

ESP32的SmartConfig详细过程逻辑

b2556ac90bab4816a6f0ebf682c3bf7d

ESP32的SmartConfig接口介绍

· SmartConfig配置类型设置函数:esp_smartconfig_set_type();

· SmartConfig开始一键配置函数esp_smartconfig_start();

· SmartConfig停止一键配置函数esp_smartconfig_stop();

更多更详细接口请参考官方指南。

ESP32的SmartConfig总结

初始化wifi配置后,程序会根据WIFI的实时状态,在回调函数中给出状态返回,所以只需要在回调中进行相关操作,STA开始事件触发SC开始进行一键配置,在SC的回调中处理SC配置过程的事件。

SmartConfig任务编写

配置工具设置->注册smartconfig回调函数->等待回调事件

SmartConfig的回调函数解析

WiFi连接的回调函数解析

效果展示

0e00d9f51c5146299868f1840c87d886

SmartConfig总结

· SC工作模式也是初始化+回调的状态机结构,逻辑清晰简单,方便学习和使用。

· Wifi回调和SC回调相互协调工作,保证产品顺利配网成功。

· 配网工具有很多,我这里(IOS)测试使用两个,安卓使用后者。并且官方有源码。

ca4524be82724e4383f5c422f9870dd5

· 此处没有将配网信息保存,产品中要保存,下次就不用再配了,如果配错了,可以加按键操作清楚配置信息,官方已经把这个功能做好了,自己怼怼。

· 源码地址:https://github.com/xiaolongba/wireless-tech

开源地址:https://github.com/HX-IoT/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值