FW: 智能設備 WiFi 配網的兩種方式

智能家居的設備智能化,很多家電設備都安裝上了 WiFi 模塊, 方便用戶通過手機控制和遠程查看家裏情況,典型的設備如智能插座,智能空調,智能空氣淨化器。

智能設備首次配置,這個過程簡單來講就是把 WiFi 設備初始化後,連到家裏的無線路由器上。第一次配置成功後,基本就一勞永逸了。

目前流行的wifi配置模式一般有以下2種:

  • 1:智能硬件處於AP模式,手機用於station模式,手機連接智能插座的AP後組成局域網,手機發送需要連接路由的SSID及密碼至智能插座,智能硬件主動去連接指定路由後,完成連接
  • 2:一鍵配置(smartconfig)模式:智能硬件處於混雜模式下,監聽網絡中的所有報文;手機APP將SSID和密碼編碼到UDP報文中,通過廣播包或組播報發送,智能硬件接收到UDP報文後解碼,得到正確的SSID和密碼,然後主動連接指定SSID的路由,完成連接

AP(兼容) 模式

AP 是 (Wireless) Access Point 的縮寫,即 (無線) 訪問接入點。簡單來講就像是無線路由器一樣,設備打開後進入 AP 模式,在手機的網絡列表裏面,可以搜索到類似 TPLINK_XXX 的名字(SSID)。
連接步驟:

  • 1、連接路由器(獲取路由器名稱)
  • 2、請求配網token,用戶輸入 WiFi 名字和密碼後
  • 3、初始化硬件設備,使設備進入 AP 模式,Wifi 燈慢閃
  • 4、手機切回 WiFi:接入上述 設備出現的 WiFi 名字(SSID)的網絡 (類似 TPLINK_XXX)。連上設備後,通過 UDP 發送 經過 AES 加密過的 ssid/password/token
  • 5、設備通過 UDP 包獲取配置信息,切換網絡模式,連接上家裏 WiFi,配置完成。斷開設備熱點。發送token,註冊到服務端,登錄MQTT服務器
  • 6、手機切回到家裏面的 WiFi ,根據token,去服務端查找設備。
  • 7、服務器返回智能設備的信息

 

EZ(快捷)Easy-Connect 模式

這種快速連接方式,相對於 AP 模式連接簡化操作,省了很多步驟,首次配置速度更快。

  • 1、手機連上 WiFi,開啓 APP 軟件,點擊"添加新設備",進入配置界面,輸入手機所在 WiFi 密碼,請求配網token
  • 2、智能硬件開啓混雜模式監聽所有網絡數據包,Wifi 燈快閃
  • 3、手機通過廣播、組播循環發送 ssid/password/token
  • 4、硬件設備通過 UDP 包(長度)獲取配置信息捕捉到ssid/password/token,Wifi燈熄滅,連接路由器,連接成功後Wifi燈常亮。發送token,註冊到服務端,註冊成功後登錄MQTT服務器。(廣播根據 UDP 包長度,組播根據 IP 地址信息)
  • 5、手機根據token,去服務端查找設備,返回設備信息

當前主流IOT的wifi方案有:

這個功能最早是TI提出並應用於CC3200上;不過從原理上講,只要芯片驅動支持開啓混雜模式(WiFi Promiscuous),就可以支持一鍵配網功能,只是各個廠家叫法及實現編碼方式不同而已;
手機編碼發送採用有UDP組播或廣播,不同的發送方式和編碼,對應的解碼過程也不一樣.,當前測試發現,微信是通過UDP廣播包實現的;TI是通過往一固定IP地址發送udp包;其他芯片廠家提供的一般爲UDP組播方式;
由於無線數據傳播必定是廣播的,所以必然可以被監聽到;如果AP沒有加密的話,UDP直接可以把相關的信息發送出來.但是路由器AP一般都是加密的,而且加密方式不固定.wifi模塊在無法直接解析出數據包

  • 1、廣播:發送方可通過改變其所需要發送數據包的長度進行控制
    所以只要指定出一套利用長度編碼的通訊協議,就可利用數據包的Lenght字段進行數據傳遞
  • 2、 組播:組播地址是保留的D類地址從224.0.0.0-239.255.255.255
    IP地址與MAC地址映射關係爲:將MAC地址的前25位設定爲01.00.5e,而MAC地址的後23位對應IP地址的位;故發送端可以將數據編碼在組播ip的後23bit中,通過組播包發送,接收端進行解碼即可



作者:Orange_iOS
鏈接:https://www.jianshu.com/p/4fca16d8702f
來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

本文轉載自:https://www.jianshu.com/p/4fca16d8702f

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章