分類
發燒車訊

esp8266 smartconfig-智能配網分析和使用及注意事項

基本知識:

  樂鑫⾃主研發的 ESP-TOUCH 協議采⽤的是 Smart Config(智能配置)技術,幫助⽤戶將 采⽤ ESP8266EX 和 ESP32 的設備(以下簡稱“設備”)連接⾄ Wi-Fi ⽹絡。⽤戶只需在⼿ 機上進⾏簡單操作即可實現智能配置。整個過程如下圖所示:

   

 由於設備在⼀開始並未連接⾄⽹絡,ESP-TOUCH App ⽆法直接向設備發送信息。通過 ESP-TOUCH 通信協議,具備 Wi-Fi ⽹絡接⼊能⼒的設備(例如智能⼿機)就可以向接 ⼊點 (AP) 發送⼀系列 UDP 包,其中每⼀包的⻓度(即 Length 字段)都按照 ESPTOUCH 通信協議進⾏編碼,SSID 和密碼就包含在 Length 字段中,隨後設備便可以獲 得並解析出所需的信息。數據包結構如圖 1-2 所示:

 

源碼和app:

源碼的路徑如下所示:

源碼路徑:

根據你的所需進行修改或直接安裝,筆者的截圖如下所示:

 

操作步驟:

準備⼀台⽀持 ESP-TOUCH 的設備,開啟配置功能;
將⼿機連接⾄路由器;
打開安裝在⼿機上的 ESP-TOUCH App;
在 App 界⾯輸⼊路由器的 SSID 和密碼(若路由不加密則密碼為空),開始連接。

注意事項:

• 設備與⼿機建⽴鏈路所需的時間和兩者之間的距離有關,若距離很近,僅需數秒即可完成。

• 在開啟設備端 ESP-TOUCH 智能配置功能之前,請確保路由器已經開啟。由於開啟此功能后,設備會先 掃描周圍的 AP 信息,如果路由器沒有開啟,則⽆法獲取周圍的 AP 列表。

• ESP-TOUCH App 端發送序列有超時限制,即如果沒有在規定的時間配置上路由,App 會返回配置失敗 信息(參考 App 源碼)。設備端也會有超時限制,從設備鎖定通道開始計時到獲取 SSID 和密碼信息, 如果達到超時限制但並未獲取到 SSID 和密碼信息,設備會⾃動重新開始⼀次 Smart Config。⽤戶可以通 過 esptouch_set_timeout(uint8 time_s) 或 esp_smartconfig_set_timeout(uint8 time_s) 設置超時時 間。

• Smart Config 過程中設備需要開啟 Sniffer 模式,所以在 ESP8266 上 Station 和 soft-AP 模式都是關閉 的,不要調⽤其他相關 API。ESP32 不受此限制,可以同時開啟 Sniffer 和 Station 模式。

• 配置結束后,發送端獲取設備的 IP,設備端也會返回發送端的 IP,如果⽤戶需要⾃定義發送端和設備端 的信息交互,可以使⽤此 IP 信息進⾏局域⽹通信。 • 如果路由器設置了“AP 隔離”,會出現設備連接路由器成功,但 App 未收到連接成功的提示的現象。

• ⽀持⼿機同時配置多個設備到同⼀路由器上,配置時 App 端選擇接收多個返回結果。

• ESP8266 和 ESP32 不⽀持 5G 和 11AC 模式,因此不⽀持 Smart Config 連接 5G 或 11AC 模式的路由 器。

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!