WiFi配网流程—SmartConfig 配网流程

目录

📌 SmartConfig 配网流程

👉 阶段 1:设备进入配网模式

👉 阶段 2:手机 App 发送 Wi-Fi 配置信息

👉 阶段 3:设备解析 Wi-Fi 配置,连接家庭网络

👉 阶段 4:App 检测设备是否上线,完成配网

📌 SmartConfig 配网技术架构

📌 SmartConfig 配网的核心技术

📌 SmartConfig 配网的优缺点

🔍 SmartConfig vs Soft-AP vs BLE配网


📌 SmartConfig 配网流程

SmartConfig 配网的核心思路是:
📡 让手机充当“信息广播器”,使用 UDP 广播/组播 Wi-Fi SSID & 密码,让设备被动监听并解析出 Wi-Fi 信息,完成自动联网。


👉 阶段 1:设备进入配网模式

🔹 过程

  1. 设备启动后,检测 Wi-Fi 连接状态:
    • 若已有 Wi-Fi 配置,尝试连接已存 Wi-Fi;
    • 若无 Wi-Fi 配置(首次使用或长按复位),进入 SmartConfig 配网模式
  2. 设备切换到 Wi-Fi 监听模式(Promiscuous Mode),开始监听所有 Wi-Fi 报文。
  3. 设备等待 App 通过广播 / 组播方式发送 Wi-Fi 配置数据。

🔹 技术要点
监听模式(Promiscuous Mode):设备捕获所有 Wi-Fi 包(非正常连接模式)。
无需 Soft-AP 热点:设备不创建 Wi-Fi 热点,用户无需手动切换网络。


👉 阶段 2:手机 App 发送 Wi-Fi 配置信息

🔹 过程

  1. 用户打开 App,选择 SmartConfig 配网模式。
  2. App 获取当前已连接的 Wi-Fi SSID,并提示用户输入 Wi-Fi 密码。
  3. App 通过 Wi-Fi UDP 广播 / 组播 方式,将 SSID 和密码编码到 Wi-Fi 数据包中,并不断发送。
  4. 设备监听网络中的 Wi-Fi 包,并解析出 SSID 和密码。

🔹 常见编码方式:

  1. AirKiss(微信版)

    • 采用 UDP 变长包编码,通过 Wi-Fi 广播 SSID & 密码
    • 设备通过数据包的长度变化,解码出 SSID 和密码。
  2. EZ Mode(涂鸦版)

    • 采用 UDP 固定长度数据包 + MAC 地址索引方式
    • 设备根据收到的 Wi-Fi 包信息,解析 SSID & 密码。
  3. SmartConfig(ESP8266 / TI)

    • 采用 UDP 变频调制,通过特定 Wi-Fi 信道序列传输 SSID & 密码。
    • 设备监听 Wi-Fi 信道变化,解析配网数据。

🔹 技术要点
UDP 广播 / 组播 方式,允许设备无需连接 Wi-Fi 即可接收数据。
不同设备的兼容性部分低端路由器 可能会丢弃异常 UDP 包,导致 SmartConfig 失败。


👉 阶段 3:设备解析 Wi-Fi 配置,连接家庭网络

🔹 过程

  1. 设备解析 Wi-Fi 数据包,获取 SSID 和密码。
  2. 设备关闭监听模式(Promiscuous Mode),切换到 STA 模式
  3. 设备尝试连接目标 Wi-Fi:
    • 连接成功,获取路由器分配的 IP 地址。
    • 连接失败,可能返回 SmartConfig 模式,等待用户重新发送数据。
  4. 设备上报 Wi-Fi 连接状态:
    • 可通过 MQTT / HTTP 向云端上报状态。
    • 可通过 UDP 广播 在局域网内通知 App。

🔹 技术要点
设备进入 STA 模式 连接 Wi-Fi。
Wi-Fi 连接成功后上报状态,App 通过局域网或云端获取状态
✅ 设备会将 Wi-Fi 配网信息存储到 Flash(NVS),确保断电后仍可记住 Wi-Fi 连接。


👉 阶段 4:App 检测设备是否上线,完成配网

🔹 过程

  1. 设备连接 Wi-Fi 成功后,自动连接云端服务器或在局域网广播自身信息。
  2. App 通过以下方式发现设备:
    • 局域网 UDP 组播 / mDNS / SSDP 发现
    • 设备云端注册(MQTT / HTTP 上报上线状态)。
  3. 设备上线后,App 提示用户配网成功,用户可正常控制设备。

🔹 技术要点
UDP 广播 / mDNS 设备发现
MQTT / HTTP 设备云端注册


📌 SmartConfig 配网技术架构

[ 设备 (Wi-Fi 监听模式) ]↓  (监听 Wi-Fi 广播)
[ App 通过 UDP 发送 Wi-Fi 配置 ]↓  (设备解析 SSID/密码)
[ 设备加入家庭 Wi-Fi ]↓  (局域网发现 / 云端注册)
[ 设备上线,配网成功 ]

📌 SmartConfig 配网的核心技术

技术作用
Wi-Fi 监听模式(Promiscuous Mode)设备在不连接 Wi-Fi 的情况下捕获数据包
UDP 广播 / 组播App 通过 UDP 发送 Wi-Fi 配置
Wi-Fi 包长编码设备解析 UDP 包,获取 Wi-Fi SSID 和密码
STA 模式设备连接家庭 Wi-Fi
mDNS / SSDP设备在局域网中发现
MQTT / WebSocket / HTTP设备云端上报状态

📌 SmartConfig 配网的优缺点

优点缺点
用户无需手动切换 Wi-Fi,体验更流畅部分路由器丢弃 UDP 广播包,可能导致配网失败
适用于无屏设备(如智能灯泡、插座)配网成功率依赖 Wi-Fi 网络环境
可同时配网多个设备无法兼容 5GHz 设备(只能 2.4GHz)

🔍 SmartConfig vs Soft-AP vs BLE配网

配网方式是否需要手动切 Wi-Fi连接稳定性设备要求适用场景
SmartConfig(AirKiss / EZ Mode)❌ 不需要可能不稳定(受干扰)设备需支持 UDP 配网适用于 Wi-Fi 设备
Soft-AP 配网✅ 需要稳定设备需支持 Wi-Fi适用于 Wi-Fi 设备
BLE 配网❌ 不需要稳定设备需支持 BLE适用于 Wi-Fi + BLE 设备

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/70727.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

win10 llamafactory模型微调相关②

微调 使用微调神器LLaMA-Factory轻松改变大语言模型的自我认知_llamafactory 自我认知-CSDN博客 【大模型微调】使用Llama Factory实现中文llama3微调_哔哩哔哩_bilibili 样本数据集 (数据集管理脚本处需更改,见报错解决参考1) 自我认知微…

从基础到人脸识别与目标检测

前言 从本文开始,我们将开始学习ROS机器视觉处理,刚开始先学习一部分外围的知识,为后续的人脸识别、目标跟踪和YOLOV5目标检测做准备工作。我采用的笔记本是联想拯救者游戏本,系统采用Ubuntu20.04,ROS采用noetic。 颜…

TCP长连接、HTTP短轮询、HTTP长轮询、HTTP长连接、WebSocket的区别

1.TCP长连接 (1)概念:该连接属于传输层的协议。客户端和服务器之间建立连接后,不立即断开该连接,而是一直保持这个状态,以便后续数据的持续、连续传输。(2)应用场景:适合…

【Linux Oracle】杂货铺 日常实用2024

1.跨服务器移动文件 passwd=^T^bxxxx `/usr/bin/expect <<-EOF set timeout -1 spawn scp -r ${BATCH_TIME} sxnhtc@192.168.3.x:${EXP_MCRO_DIR}/ expect "*password:" send "$passwd\r" interact expect eof EOF` curl -k -X GET https://192.16…

索引失效的14种常见场景

在 MySQL 中&#xff0c;索引有时可能会失效&#xff0c;导致查询性能下降。以下是常见的 14 种场景&#xff0c;在这些场景下&#xff0c;索引可能会失效 1. 使用 OR 连接多个条件 场景: 当查询中包含 OR 时&#xff0c;如果 OR 连接的多个条件中有一个没有使用索引&#xff0…

06排序 + 查找(D2_查找(D2_刷题练习))

目录 1. 二分查找-I 1.1 题目描述 1.2 解题思路 方法&#xff1a;二分法&#xff08;推荐使用&#xff09; 2. 二维数组中的查找 2.1 题目描述 2.2 解题思路 方法一&#xff1a;二分查找&#xff08;推荐使用&#xff09; 3. 寻找峰值 3.1 题目描述 3.2 解题思路 方…

防火墙综合练习2

准备阶段 实验拓扑图如下&#xff1a; 试验要求如下&#xff1a; 需求一&#xff1a;完成相关配置 需求二&#xff1a;配置DHCP协议 需求三&#xff1a;防火墙安全区域配置 需求四&#xff1a;防火墙地址组信息 需求五&#xff1a;管理员 需求六&#xff1a;用户认证…

Word中Ctrl+V粘贴报错问题

Word中CtrlV粘贴时显示“文件未找到&#xff1a;MathPage.WLL”的问题 Word的功能栏中有MathType&#xff0c;但无法使用&#xff0c;显示灰色。 解决方法如下&#xff1a; 首先找到MathType安装目录下MathPage.wll文件以及MathType Commands 2016.dotm文件&#xff0c;分别复…

单例模式详解(Java)

单例模式详解(Java) 一、引言 1.1 概述单例模式的基本概念和重要性 单例模式是一种常用的软件设计模式,它确保一个类在整个应用程序中只有一个实例,并提供一个全局访问点来访问这个唯一实例。这种模式在资源管理、配置设置和日志记录等方面非常有用,因为它们通常只需要…

什么是FPGA?

目录 一、什么是 FPGA 二、FPGA 的发展历史 三、FPGA 的基本结构 可编程逻辑单元&#xff08;CLB&#xff09; 输入输出块&#xff08;IOB&#xff09; 块随机访问存储器模块&#xff08;BRAM&#xff09; 时钟管理模块&#xff08;CMM&#xff09; 四、FPGA 的工作原理…

ESP8266配置为TCP客户端,连接电脑和手机(使用Arduino配置)

一、简介 基于 ESP8266 的 Arduino 代码&#xff0c;其主要功能是将 ESP8266 连接到指定的 Wi-Fi 网络&#xff0c;并与指定 IP 地址和端口号的服务器建立 TCP 连接。在连接成功后&#xff0c;实现了串口和网络数据的双向传输&#xff0c;也就是将从串口接收到的数据通过 Wi-Fi…

未来科技趋势浅析

基因编辑技术在农业育种上越来越火。这技术能改植物的基因&#xff0c;让它长得更好。比如&#xff0c;科学家用它来培育抗病虫害的作物。这样&#xff0c;农民就不必喷那么多农药了。还有&#xff0c;这种技术还能让作物适应不同的气候条件&#xff0c;这样即使天气不好&#…

力扣-栈与队列-347 前k个高频元素

思路 利用优先队列进行排序&#xff0c;然后利用multiset对count进行排序&#xff0c;最后收集k个高频元素就行 代码 class Solution { public:vector<int> topKFrequent(vector<int>& nums, int k) {priority_queue<int> pq;for(int i 0; i < nu…

【深度学习】多目标融合算法(四):多门混合专家网络MMOE(Multi-gate Mixture-of-Experts)

目录 一、引言 二、MMoE&#xff08;Multi-gate Mixture-of-Experts&#xff0c;多门混合专家网络&#xff09; 2.1 技术原理 2.2 技术优缺点 2.3 业务代码实践 2.3.1 业务场景与建模 2.3.2 模型代码实现 2.3.3 模型训练与推理测试 2.3.4 打印模型结构 三、总结 一、…

关于“i18n“在vue中的使用

关于"i18n"在vue中的使用 <!-- vue2中 --> <template><div>{{ $t("This campaign has expired.") }}}}</div> </template> <script> export default {created() {this.onLoading();},methods: {onLoading () {this.$…

9 数据流图

9 数据流图 9.1数据平衡原则 子图缺少处理后的数据操作结果返回前端应用以及后端数据库返回操作结果到数据管理中间件。 9.2解题技巧 实件名 存储名 加工名 数据流

Hdoop之MapReduce的原理

简单版本 AppMaster: 整个Job任务的核心协调工具 MapTask: 主要用于Map任务的执行 ReduceTask: 主要用于Reduce任务的执行 一个任务提交Job --> AppMaster(项目经理)--> 根据切片的数量统计出需要多少个MapTask任务 --> 向ResourceManager(Yarn平台的老大)索要资源 --…

网络协议课程笔记上

一、 TCP 协议核心概念 端口: 0-65535 范围&#xff0c;用于区分不同应用和服务。 0-1023: 系统/特权端口 (root 用户)。1024-49151: 应用/注册端口 (常用服务)。49152-65535: 动态/私有端口 (客户端临时分配)。 三次握手 (Three-way Handshake): 建立可靠 TCP 连接的关键步骤…

Linux云计算SRE-第六周

1. 总结openssh服务安全加固和总结openssh免密认证原理&#xff0c;及免认证实现过程。 1、 openssh服务安全加固 OpenSSH&#xff08;Open Secure Shell&#xff09;服务安全加固是确保远程登录会话和其他网络服务安全性的关键步骤。以下是一些常见的OpenSSH服务安全加固措施…

SQL最佳实践(笔记)

写在前面&#xff1a; 之前baeldung的Java Weekly &#xfeff;Reviews里面推荐了一篇关于SQL优化的文章&#xff0c;正好最近在学习数据库相关知识&#xff0c;记一些学习笔记 原文地址&#xff1a;SQL Best Practices Every Java Engineer Must Know 1. 使用索引 使用索引…