设备配网方案:SmartConfig、AP 与蓝牙配网
墨里代码
5 min read
无屏幕、无键盘的设备第一次联网,难点在于怎么把 WiFi 账号密码交给它。三条主流路径:SmartConfig 用手机广播把凭据编码进 WiFi 报文让设备嗅探;AP 模式让设备自己开热点,手机连上它再下发;蓝牙配网走点对点先把 WiFi 信息传给已连蓝牙的设备。选哪条,取决于设备有没有蓝牙、手机系统限制和安全性要求。配网失败是智能硬件售后投诉的头号来源,值得花最多精力打磨。
SmartConfig(广播编码)
原理是手机连上目标路由器后,持续发送特定长度的 UDP/组播包,包长度或内容被故意编码成 0/1 序列。设备处于混杂模式监听空中报文,统计长度变化还原出账号密码。优点是无须设备额外硬件,缺点是与路由器、手机芯片强相关,兼容性脆弱,且凭据在空中以弱编码形式存在,安全弱。一旦附近有同型号设备在配网,还可能串台。
AP 模式(设备当热点)
设备先以软 AP 启动,例如 SSID 叫 Dev-XXXX,手机切到这个热点,通过 HTTP 或私有协议把目标 WiFi 的 SSID/密码 POST 过去,设备存好后再切回 Station 去连真实路由器。流程清晰、成功率高、调试方便,代价是用户要手动切换 WiFi 网络,体验稍差。它的优势是几乎不依赖路由器特性,只要手机能连热点就能配。
伪流程:
设备启动 -> 进入 AP 模式,开放 HTTP 服务
手机连接 Dev-XXXX -> 访问 192.168.4.1/config
提交 {ssid, password}
设备保存 -> 重启进入 Station -> 连接目标路由器
蓝牙配网
设备先广播 BLE,手机通过 GATT 把 WiFi 凭据写入特征值。由于是点对点加密链路,比广播编码安全,且不受 WiFi 混杂模式兼容性影响。前提是设备带 BLE 模组,且手机已开蓝牙。很多同时带 WiFi 和 BLE 的模组首选此方案,体验也最顺:手机发现设备、配对、填密码一气呵成。
边界条件
iOS 对本地网络组播和混杂模式限制严格,SmartConfig 在 iPhone 上常失败或需特殊 SDK,Android 相对宽松。目标路由器若为 WPA3 或仅 5GHz,老设备不支持会连不上,配网逻辑要能返回明确错误而非静默失败。断网、密码错误时设备应给出可观测的状态(指示灯闪烁模式),否则用户无从判断卡在哪一步。凭据在设备上落盘建议加密,明文等于把家里 WiFi 密码写在板子上。
踩坑清单
SmartConfig 靠报文长度编码,路由器若做聚合或手机节能限速会打乱时序,导致设备永远解不出密码。AP 模式下的 HTTP 服务要做基本输入校验,避免畸形 SSID 撑爆缓冲区。蓝牙配网要处理手机系统对后台 BLE 的限制,配网过程被切到后台可能中断。最隐蔽的是双频路由器:设备只支持 2.4GHz,用户却把 5GHz 的 SSID 和密码发了过来,连接必然失败,配网 UI 应提示请使用 2.4GHz 网络。配网成功后建议让设备回连并上报一次确认,避免以为配好了其实没连上的伪成功。
配网状态机
无论哪种方案,设备侧都该有一个清晰的状态机:扫描可用网络、关联路由器、获取 IP(DHCP 或静态)、连接云端并注册、进入正常工作。每一步都要有超时和失败回调,而不是卡死在某一步。经验上最容易出问题的是 DHCP 拿不到地址和云端注册失败这两步,前者要提示"网络不通",后者要提示"账号或服务异常",把模糊的"配网失败"拆解成可定位的具体环节,售后和用户都能少走弯路。
安全性深化
SmartConfig 把密码编码进广播包,附近任何人都能嗅探尝试还原,安全性最弱,只适合对安全不敏感的家庭场景。AP 模式下手机直连设备热点,凭据只在本地链路传输,风险可控,但要注意设备热点本身应设随机密码或限时开放,别让它一直开着成为后门。蓝牙配网走加密配对,安全性最好,代价是配对流程稍复杂。还有二维码配网:把 SSID 和密码生成二维码,设备摄像头或 App 扫码获取,既避开了无线嗅探,也不依赖特定手机系统,越来越多设备采用。
失败排查清单
用户报"配不上网"时,按顺序排查:路由器是否 2.4GHz、密码是否含特殊字符、设备是否离路由器太远、手机是否连着 5GHz 的同名网络、路由器是否开启了 MAC 过滤或 AP 隔离、设备是否已达配网时长上限需要重启。这几条覆盖了绝大多数现场问题。其中 AP 隔离最隐蔽——它让连在同一路由器的设备互相不可见,设备配好联网后手机却找不到它,表现为"能配网但用不了",需要在路由器后台关闭该选项。
1 view
0 likes
0 comments