#author("2022-03-02T13:08:17+08:00","default:Admin","Admin")
#author("2022-05-12T17:39:37+08:00","default:Admin","Admin")
[[ESP32]]

#contents

* failed to load RF calibration data [#f68ae740]

错误现象:

 W (54) phy_init: failed to load RF calibration data (0x1107), falling back to full calibration
 Brownout detector was triggere

原因:电流不足。

对策:

禁用掉这个选项,将不再检测电平。
 make menuconfig->component config->ESP32-specific->Hardware brownout detect & reset

或者也可在再这个选项的下面选择一个更合适的保护电平。

* 重启原因 [#fd88d2a6]

- NO_MEAN                =  0,
- POWERON_RESET          =  1,    /**<1, Vbat power on reset*/
- RTC_SW_SYS_RESET       =  3,    /**<3, Software reset digital core*/
- DEEPSLEEP_RESET        =  5,    /**<5, Deep Sleep reset digital core*/
- TG0WDT_SYS_RESET       =  7,    /**<7, Timer Group0 Watch dog reset digital core*/
- TG1WDT_SYS_RESET       =  8,    
/**<8, Timer Group1 Watch dog reset digital core*/
也有可能因为电压、电流不稳造成的。

 rst:0x8 (TG1WDT_SYS_RESET),boot:0x3f (SPI_FAST_FLASH_BOOT)

- RTCWDT_SYS_RESET       =  9,    /**<9, RTC Watch dog Reset digital core*/
- INTRUSION_RESET        = 10,    /**<10, Instrusion tested to reset CPU*/
- TG0WDT_CPU_RESET       = 11,    /**<11, Time Group0 reset CPU*/
- RTC_SW_CPU_RESET       = 12,    /**<12, Software reset CPU*/
- RTCWDT_CPU_RESET       = 13,    /**<13, RTC Watch dog Reset CPU*/
- RTCWDT_BROWN_OUT_RESET = 15,    /**<15, Reset when the vdd voltage is not stable*/
- RTCWDT_RTC_RESET       = 16,    /**<16, RTC Watch dog reset digital core and rtc module*/
- TG1WDT_CPU_RESET       = 17,    /**<17, Time Group1 reset CPU*/
- SUPER_WDT_RESET        = 18,    /**<18, super watchdog reset digital core and rtc module*/
- GLITCH_RTC_RESET       = 19,    /**<19, glitch reset digital core and rtc module*/

* tcp_poll_read select error 113 [#q6244fca]

wifi 掉线了,需要重新连接wifi

#codeprettify{{
TRANS_TCP: tcp_poll_read select error 113, errno = Software caused connection abort, fd = 54
MQTT_CLIENT: Poll read error: 119, aborting connection
TRANS_TCP: DNS lookup failed err=202 res=0x0
MQTT_CLIENT: Error transport connect
MQTT: MQTT_EVENT_ERROR.
}}


* wifi:pm stop, total sleep time [#te519f92]

Wifi的节电模式打开了(ESP32 idf的默认模式有可能时节电模式)

#codeprettify{{
I (532989) wifi:state: run -> init (6c0)
I (532999) wifi:pm stop, total sleep time: 491610374 us / 531899959 us
I (532999) wifi:new:<3,0>, old:<3,0>, ap:<255,255>, sta:<3,0>, prof:1
W (532999) wifi:Haven't to connect to a suitable AP now!
W (533009) wifi:Haven't to connect to a suitable AP now!
}}

在esp_wifi_start()函数之后,添加下面的代码
#codeprettify{{
esp_wifi_set_ps(WIFI_PS_NONE);
}}
* wifi:sta is connecting, return error [#jadfd175]

#codeprettify{{
MQTT_CLIENT: mqtt_message_receive: transport_read() error: errno=128
E (47345) wifi:sta is connecting, return error
MQTT: MQTT_EVENT_ERROR.
MQTT_CLIENT: mqtt_process_receive: mqtt_message_receive() returned -1
}}

* Brownout detector was triggered [#i130e43a]

USB供电不稳,使用外接充电头供电即可

* rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (SPI_FAST_FLASH_BOOT) [#fbfbb120]


问题的出现和上电时GPIO状态有关,大概率是上电以后某个GPIO的电压。

程序里面不要使用 GPIO 12、15


* ESP32 ETHERNET PHY Reset Timeout, init mac failed Error [#ad09dd63]

GPIO0 didn't get the RMII clock(50MHz) from outside

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS