樂鑫ESP32無線接收器芯片wifi無線模組Wi-Fi一鍵配網,物聯網行業的發展催生了大批需要聯網的設備,但這類設備不像智能手機、平板電腦等豐富的人機交互界面,在這類設備上,用戶不能直接輸入要連接的路由器 SSID 和密碼。如何賦能這類設備、解決它們快速連接到路由器,并進一步連接到互聯網或其他局域網絡呢?這是Wi-Fi 設備的重要特性之一。本文將介紹一些樂鑫ESP32無線接收器芯片wifi無線模組主流的配網方式,以及這些配網方式的實現。
Wi-Fi配網導讀
配網指的是外部向 Wi-Fi 設備提供 SSID 和密碼,以 Wi-Fi 設備可以連接指定的 AP 并加入AP所建立的 Wi-Fi網絡。樂鑫ESP32無線接收器芯片wifi無線模組Wi-Fi 配網的核心其實就是通過各種方法,將要連接的 AP 的 SSID 和密碼發送到需要聯網設備的 Wi-Fi 設備,然后由 Wi-Fi 設備去連接指定的 Wi-Fi 網絡,達到接入局域網或者互聯網的目的。
待配網的物聯網設備,除了要連接到網絡,一般還需要與某個賬戶進行關聯,所以衍生了如下幾個概念:
(1)俠義配網。Wi-Fi 設備取AP 信息 (SSID 和密碼等) 并連接 AP 的過程
(2)綁定。用戶智能手機 App 賬戶與被配網設備關聯的過程。
(3)廣義配網。狹義配網+綁定。
本文主要介紹狹義配網,不對綁定進行介紹。目前主流的 Wi-Fi配網方式有 SotAP 配網、一鍵配網、藍牙配網和其他配網等。
SotAP配網
SoftAP 配網又稱為傳統配網。樂鑫ESP32無線接收器芯片wifi無線模組待配網的 Wi-Fi 設備會建立一個 AP,用戶將智能手機或其他具備人機交互功能的設備連接到這個 AP,如平板電腦等。然后,將要連接的設備信息發送給待配網的 Wi-Fi 設備,待配網的 Wi-Fi 設備收到信息后,找到對應的AP 并主動與之連接完成配網。
SoftAP 配網屬于局域網直連模式,其優點是沒有路由器參與,不受路由器兼容性的干擾,所以配網的成功率相比一鍵配網要高;其缺點是需要智能手機先連接物聯網 SoftAP,用戶需要先進入 Wi-Fi 列表頁面,然后手動切換到物聯網 SoftAP,連接成功。如果需要上云,還需要切換到路由器。有的智能手機并不能自動切換上網 AP,如蘋果 iOS 11.0系統以下的智能手需要用戶進入 Wi-Fi列表頁面,選擇新的上網AP,相對比較煩瑣。后續在分析 Wi-Fi編程時,將結合代碼對 SoftAP 配網進行更為詳盡的介紹,此處先不據此展開,各位了解 SoftAP 配網的流程即可。
一鍵配網
一鍵配網是指智能手機將 SSID 和密碼按照一定的編碼格式填充在MAC包中不加密的包頭部分,并采用廣播和組播方式分段多次發送給 Wi-Fi 設備。一般需要在發送 SSID 和密碼的設備上安裝一個App,該App 實現了和 Wi-Fi 設備之間發送 SSID 和密碼的協議交互。
樂鑫ESP32無線接收器芯片wifi無線模組接收端進入一鍵配置功能后,Wi-Fi 設備從信道1開始監聽路由器上的數據,如果當前被監聽的信道有符合規則的數據包,就停止信道切換,停留在當前信道接收全部的數據。否則就依次切換至信道2、3、4···直到信道 13 后又從信道1開始繼續監聽信道,并依次循環。
從IEEE 802.11的MAC層格式中可以看到,鏈路層載荷數據(即網絡層頭部及網絡層數據)在數據幀中是清晰可辨的,只要接收到IEEE 802.11的MAC 就可以立刻提取出鏈路層載荷數據,計算載荷數據的長度。這里的載荷數據,通常就是密文。
在發送端,通常采用以下兩種不同的編碼發送方式:
(1)UDP廣播,根器1EBE 021的MAC 格式可知,從無線信號監聽方的角度來說,不管無線信道有沒有加密,DA、SA、LENGTH、LIC、SNAP、FCS 字段總是暴露的,因此無線信號監聽方可以從這 6個字段獲取有效信息。從發送端的角度來說,由于操作系統的限制,如里用廣播,則只剩下LENGTH字段,發送端可通過改變其所需要發送數據包的長度進行控制,樂鑫ESP32無線接收器芯片wifi無線模組以只需要指定一套利用長度編碼的通信協議,就可利用數據包的 LENGTH 字段來發送數據。
(2) UDP組播。組播地址是保留的 D 類地址,其范圍是 224.0.0~239.255.255.255。IP地址與MAC 地址映射關系為: 將MAC 地址的前 25 bit 設定為 01.00.5E,而 MAC 地址的后23bit對應IP 地址的位。故發送端可以在組播 IP 的后 23 bit 中進行數據編碼,通過組播包發送編碼后的數據,接收端只需要對接收到的數據進行解碼即可。
樂鑫ESP32無線接收器芯片wifi無線模組鍵配網優點是用戶操作簡單、體驗好: 其缺點是對智能手機和路由器的兼容性有嚴格的要求。例如,有些路由器默認關閉廣播/組播報文轉發使得設備無法接收路由器轉發的報文,或者智能手機和設備所用的頻段不同導致配網失敗,如手機以 5 GHZ 的頻段連接到路由器,而2.4 GHz 的設備壓根就接收不到數據等,諸如此類的不可控因素會導致整體的兼容性變差,配網成功率低。