0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【AI技術(shù)支持】ESP32無線Wi-Fi常用調(diào)試API

啟明云端 ? 2024-10-26 08:00 ? 次閱讀


啟明云端/01

Wi-Fi常用調(diào)試API

在使用 esp32 調(diào)試 Wi-Fi 功能時(shí),由于場景和各種因素的影響,難免會(huì)遇到各種連接不上,Wi-Fi斷連等問題。下面介紹一些 API,方便新手調(diào)試 Wi-Fi 時(shí)更好的定位并解決問題。

啟明云端/02

常見問題

ESP32進(jìn)行Wi-Fi連接時(shí),如何判斷失敗原因?


在ESP-IDF 4.0以上的版本,可以在Wi-Fi斷連事件處理中加入以下代碼,從而通過錯(cuò)誤碼來判斷連接失敗的原因。

4fde8f54-932d-11ef-8084-92fbcf53809c.jpg

當(dāng)回調(diào)函數(shù)接收到WIFI_EVENT_STA_DISCONNECTED事件時(shí),可以通過結(jié)構(gòu)體wifi_event_sta_disconnected_t的變量reason獲取到失敗原因。

常見的錯(cuò)誤碼

4ffba242-932d-11ef-8084-92fbcf53809c.jpg

完整的錯(cuò)誤碼請參考這里。

啟明云端/03

Wi-Fi如何自動(dòng)重連?

Wi-Fi 在斷連后如何自動(dòng)重連?


在收到WIFI_EVENT_STA_DISCONNECTED事件時(shí),調(diào)用esp_wifi_connectAPI,具體代碼如下:

50248388-932d-11ef-8084-92fbcf53809c.jpg

ESP32 Wi-Fi發(fā)射功率最高值是多少?如何調(diào)整 Wi-Fi 的發(fā)射功率?


ESP32的Wi-Fi功率輸出最高可以配置為20dBm。高功率輸出會(huì)對電池壽命和 Wi-Fi 信號(hào)穩(wěn)定性產(chǎn)生影響,因此在選擇功率輸出水平時(shí),需要根據(jù)具體的應(yīng)用場景和要求進(jìn)行權(quán)衡和選擇。


可通過 menuconfig 配置中,改變ESP_PHY_MAX_WIFI_TX_POWER的值來調(diào)整發(fā)射功率,配置項(xiàng)如下:

502b5a5a-932d-11ef-8084-92fbcf53809c.jpg

或者在代碼中調(diào)用esp_wifi_set_max_tx_power()這個(gè) API來設(shè)置調(diào)整。

啟明云端/04

提示bcn_timeout怎么辦?

連接 Wi-Fi,打印bcn_timeout,ap_probe_send_start是什么情況?


默認(rèn)設(shè)置下,ESP32默認(rèn)六秒未收到 AP 的beacon幀,就會(huì)提示bcn_timeout。造成這個(gè)問題的原因有可能會(huì)有以下幾點(diǎn):


(1)內(nèi)存資源不足。ESP32_WIFI_MGMT_SBUF_NUM不夠 (log中會(huì)打出“esf_buf: t=8, l=beacon_len, …”這樣的Error)。如果內(nèi)存不夠,可在收到disconnect event時(shí)打出 heap大小來排查。

(2)AP未發(fā)出beacon幀。可通過抓包AP的beacon幀來排查。

(3)AP Rssi值太低。在復(fù)雜環(huán)境下Rssi值較低時(shí),可能導(dǎo)致STA收不到beacon幀,可通過調(diào)用esp_wifi_sta_get_ap_info()獲取Rssi值來排查。

(4)硬件原因。收包性能太差。


注意:在出現(xiàn)bcn_timeout時(shí),STA會(huì)嘗試發(fā)送5次Probe Request,如果 AP回Probe Reponse,就保持連接;如果AP未回復(fù),STA發(fā)送Disconnect事件,并斷開連接。

啟明云端/05

如何連接最佳AP?

如果環(huán)境中存在多個(gè)相同ssid/password時(shí),能否默認(rèn)選擇信號(hào)最好的AP連接?


默認(rèn)ESP32會(huì)連接掃描到的第一個(gè)符合的AP,并不會(huì)自動(dòng)選擇信號(hào)值最強(qiáng)的AP。如果要連接最佳AP,需要在配置station時(shí),添加信號(hào)強(qiáng)度優(yōu)先配置,具體配置代碼如下:

503a8b74-932d-11ef-8084-92fbcf53809c.jpg

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 無線
    +關(guān)注

    關(guān)注

    31

    文章

    5415

    瀏覽量

    172949
  • AI
    AI
    +關(guān)注

    關(guān)注

    87

    文章

    29740

    瀏覽量

    268037
  • ESP32
    +關(guān)注

    關(guān)注

    17

    文章

    950

    瀏覽量

    16980
收藏 人收藏

    評論

    相關(guān)推薦

    請問ESP32-AT支持Wi-Fi漫游指令嗎?

    請問 ESP32-AT 支持 Wi-Fi 漫游指令嗎?我這邊在 ESP-IDF 下面看到有 roaming 的示例,但是在 esp-at 中
    發(fā)表于 06-27 07:13

    如何記住ESP8266中的Wi-Fi憑據(jù)?

    您好,我正在與ESP8266合作,在公司進(jìn)行一個(gè)項(xiàng)目。在成功智能配置后,我無法記住 Wi-Fi 憑據(jù)。ESP8266軟件版本如下: 在GMR AT版本:1.2.0.0(Jul 1, 2016 20
    發(fā)表于 07-15 07:07

    Wi-Fi CERTIFIED?交流會(huì)的Wi-Fi?技術(shù)的性能提升到新的高度

    %的受訪者表示,在他們的家比電視中斷,更具破壞性的Wi-Fi停運(yùn)。Wi-Fi認(rèn)證的AC產(chǎn)品帶來額外的容量,性能和魯棒性來支持今天和明天的應(yīng)用連接,在家里,在公共場所,在企業(yè)網(wǎng)絡(luò)中的一致好評。
    發(fā)表于 06-27 10:25

    Wi-Fi是第一項(xiàng)得到廣泛部署的高速無線技術(shù)

    支持的范圍非常有限:用戶只有保持在距離無線接入點(diǎn)設(shè)備(AP)300英尺的范圍內(nèi)才能實(shí)現(xiàn)高速連接。Wi-Fi是最早期的高速無線數(shù)據(jù)技術(shù)之一,現(xiàn)
    發(fā)表于 06-27 06:15

    樂鑫2.4 GHz Wi-Fi 和雙模藍(lán)牙模組ESP32-WROVER-B

    提升。ESP32-WROVER-B 同時(shí)支持 2.4 GHz Wi-Fi 和雙模藍(lán)牙(經(jīng)典和低功耗),在多種應(yīng)用場景下均可保證暢連無阻。其中,Wi-Fi 功能可以滿足用戶的遠(yuǎn)距離聯(lián)網(wǎng)需
    發(fā)表于 10-14 11:25

    評測通用型 Wi-Fi+BT+BLE MCU 模組ESP32-SOLO-1內(nèi)置芯片ESP32-S0WD

    及其他 IoT 設(shè)備。 ESP32-SOLO-1 是一款通用型 Wi-Fi+BT+BLE MCU 模組,功能強(qiáng)大,用途廣泛,可以用于低功耗傳感器網(wǎng)絡(luò)和要求極高的任務(wù),例如語音編碼、音頻流和 MP3 解碼
    發(fā)表于 12-05 10:50

    超低功耗Wi-Fi技術(shù)

    Wi-Fi芯片有什么樣的區(qū)別。為何現(xiàn)在市場需要超低功耗Wi-Fi?作為誕生20多年的一項(xiàng)成熟技術(shù),Wi-Fi成功地深入了我們生活中的各方面,但Wi
    發(fā)表于 05-24 07:37

    樂鑫WiFi芯片模塊技術(shù)應(yīng)用,ESP32-WROOM-32模組,飛??萍即矸桨?/a>

    `WiFi是無線通信主流技術(shù),而物聯(lián)網(wǎng)是無線通信與Wi-Fi芯片發(fā)展的重要驅(qū)動(dòng)力。近年來物聯(lián)網(wǎng)領(lǐng)域的快速發(fā)展,全球整體Wi-Fi芯片市場規(guī)模
    發(fā)表于 07-17 15:13

    無線WiFi芯片模塊,樂鑫ESP32模組技術(shù)應(yīng)用,物聯(lián)網(wǎng)無線通信發(fā)展

    ESP32模組能夠讓用戶靈活實(shí)現(xiàn)并發(fā)通信功能,支持Wi-Fi、ESP-Now,Wi-Fi+Bluetooth LE等通信。與PCB板載天線相
    發(fā)表于 08-10 14:44

    ESP32C3射頻測試,是否需要使用Wi-Fi Adaptivity方法來進(jìn)行Wi-Fi范圍測試?

    我們在 ESP32C3 上刷寫了 Espressif 提供的 RF 測試二進(jìn)制文件。我們正在使用 RF 測試工具進(jìn)行測試。我們已經(jīng)在模塊上完成了與 Wi-Fi 和 BLE 相關(guān)的基本測試,但我們在理
    發(fā)表于 04-12 07:36

    基于ESP32-C3芯片的Wi-Fi單火線智能開關(guān)方案

    基于ESP32-C3的Wi-Fi單火線智能開關(guān)方案,用戶無需改線、無需配置網(wǎng)關(guān),即可將傳統(tǒng)機(jī)械單火線開關(guān)升級為智能單火線開關(guān),構(gòu)建功耗低、Wi-Fi 性能卓越、安全可靠的智能開關(guān)。
    發(fā)表于 03-18 14:33 ?1464次閱讀

    樂鑫 Wi-Fi 6 SoC ESP32-C6特點(diǎn)概述

    ESP32-C6 是樂鑫科技首款支持 Wi-Fi 6 的 SoC,集成 2.4 GHz Wi-Fi 6、Bluetooth 5 (LE) 和 IEEE 802.15.4 協(xié)議 (Thr
    發(fā)表于 01-10 11:13 ?4525次閱讀

    合宙ESP32S3+Air780E,低成本DIY隨身Wi-Fi

    可以大大降低成本,但是很多受限于場地沒有Wi-Fi網(wǎng)絡(luò)覆蓋,所以——可以通過ESP32S3+Air780E無線熱點(diǎn)的方式,實(shí)現(xiàn)低成本的Wi-Fi覆蓋。DIY隨身
    的頭像 發(fā)表于 02-21 14:00 ?1.5w次閱讀
    合宙<b class='flag-5'>ESP32</b>S3+Air780E,低成本DIY隨身<b class='flag-5'>Wi-Fi</b>

    【新品】ESP32雙核藍(lán)牙Wi-Fi模塊,穩(wěn)定性、兼容性一網(wǎng)打盡

    作為一款高度集成的MCU芯片,ESP32-C6在無線通信技術(shù)的前沿,為開發(fā)者提供了廣闊的應(yīng)用空間。ESP32-C6在ESP32系列的基礎(chǔ)上增
    的頭像 發(fā)表于 07-12 08:21 ?1473次閱讀
    【新品】<b class='flag-5'>ESP32</b>雙核藍(lán)牙<b class='flag-5'>Wi-Fi</b>模塊,穩(wěn)定性、兼容性一網(wǎng)打盡

    基于ESP32-C3FN4為核心自主研發(fā)的Wi-Fi+BT模塊-RF-WM-ESP32B1

    WI-FI模組 - RF-WM-ESP32B1是基于ESP32-C3FN4為核心自主研發(fā)的Wi-Fi+BT模塊,支持IEEE 802.11b
    的頭像 發(fā)表于 11-07 09:45 ?56次閱讀
    基于<b class='flag-5'>ESP32</b>-C3FN4為核心自主研發(fā)的<b class='flag-5'>Wi-Fi</b>+BT模塊-RF-WM-<b class='flag-5'>ESP32</b>B1