新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

矜辰所致_ESP32C3
Posts: 13
Joined: Thu Jan 13, 2022 3:24 am

新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby 矜辰所致_ESP32C3 » Wed Sep 07, 2022 11:01 am

我新画了一块板子,基本测试一切正常,但是一运行 wifi 的例程就无线重启,提示 SHA-256 comparison failed。

我以前画过板子,都没有出现这个问题,两块板子的设计流程思路我都写了文章:

没问题的:https://blog.csdn.net/weixin_42328389/a ... /121224411

有问题的:https://blog.csdn.net/weixin_42328389/a ... /126548199

最主要根本不知道问题在哪里? 环境也是以前测试过搭建好的。

只要运行 ESP-IDF 的例程wifi 有关的,应该是用到了 NVS ,就一直报这个错误重启!!!!!
Attachments
1212.png
问题图片
1212.png (82.88 KiB) Viewed 13772 times

ESP_LJY
Posts: 58
Joined: Mon Sep 27, 2021 3:06 am

Re: 新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby ESP_LJY » Thu Sep 08, 2022 2:19 am

使用的官网 wifi 例程吗?

关闭 wifi nvs 试试: idf.py menuconfig > conponent config > disable WiFi NVS flash

矜辰所致_ESP32C3
Posts: 13
Joined: Thu Jan 13, 2022 3:24 am

Re: 新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby 矜辰所致_ESP32C3 » Thu Sep 08, 2022 5:16 am

ESP_LJY wrote:
Thu Sep 08, 2022 2:19 am
使用的官网 wifi 例程吗?

关闭 wifi nvs 试试: idf.py menuconfig > conponent config > disable WiFi NVS flash
是使用的官方的 ESP-IDF 的例程,使用最基本的 Station 示例,当然其他的与 wifi 有关的也测试过了,还是一样,
因为自己画了两块板子,去年一块,今年一块,去年的是好的,芯片的型号也是一样的,只不过批次不一样吧
62.png
依然有问题
62.png (139.71 KiB) Viewed 13728 times

矜辰所致_ESP32C3
Posts: 13
Joined: Thu Jan 13, 2022 3:24 am

Re: 新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby 矜辰所致_ESP32C3 » Fri Sep 09, 2022 6:51 am

求大佬指点一下啊,实在是头大,完全没有头绪,这个除了问题网上也查不到什么的

ESP_LJY
Posts: 58
Joined: Mon Sep 27, 2021 3:06 am

Re: 新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby ESP_LJY » Fri Sep 09, 2022 8:40 am

检查一下芯片供电电压是不是稳定?
也可以确认一下,注释下面这段代码,位置https://github.com/espressif/esp-idf/bl ... nit.c#L713,然后示例中只执行到 esp_wifi_init(), 看是否还会自动重启?

Code: Select all


// #ifdef CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE
//     esp_phy_calibration_mode_t calibration_mode = PHY_RF_CAL_PARTIAL;
//     uint8_t sta_mac[6];
//     if (esp_rom_get_reset_reason(0) == RESET_REASON_CORE_DEEP_SLEEP) {
//         calibration_mode = PHY_RF_CAL_NONE;
//     }
//     esp_err_t err = esp_phy_load_cal_data_from_nvs(cal_data);
//     if (err != ESP_OK) {
//         ESP_LOGW(TAG, "failed to load RF calibration data (0x%x), falling back to full calibration", err);
//         calibration_mode = PHY_RF_CAL_FULL;
//     }

//     esp_efuse_mac_get_default(sta_mac);
//     memcpy(cal_data->mac, sta_mac, 6);
//     esp_err_t ret = register_chipv7_phy(init_data, cal_data, calibration_mode);
//     if (ret == ESP_CAL_DATA_CHECK_FAIL) {
//         ESP_LOGW(TAG, "saving new calibration data because of checksum failure, mode(%d)", calibration_mode);
//     }

//     if ((calibration_mode != PHY_RF_CAL_NONE && err != ESP_OK) ||
//             (calibration_mode != PHY_RF_CAL_FULL && ret == ESP_CAL_DATA_CHECK_FAIL)) {
//         err = esp_phy_store_cal_data_to_nvs(cal_data);
//     } else {
//         err = ESP_OK;
//     }
// #else
//     register_chipv7_phy(init_data, cal_data, PHY_RF_CAL_FULL);
// #endif


矜辰所致_ESP32C3
Posts: 13
Joined: Thu Jan 13, 2022 3:24 am

Re: 新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby 矜辰所致_ESP32C3 » Wed Sep 21, 2022 9:04 am

ESP_LJY wrote:
Fri Sep 09, 2022 8:40 am
检查一下芯片供电电压是不是稳定?
也可以确认一下,注释下面这段代码,位置https://github.com/espressif/esp-idf/bl ... nit.c#L713,然后示例中只执行到 esp_wifi_init(), 看是否还会自动重启?

Code: Select all


// #ifdef CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE
//     esp_phy_calibration_mode_t calibration_mode = PHY_RF_CAL_PARTIAL;
//     uint8_t sta_mac[6];
//     if (esp_rom_get_reset_reason(0) == RESET_REASON_CORE_DEEP_SLEEP) {
//         calibration_mode = PHY_RF_CAL_NONE;
//     }
//     esp_err_t err = esp_phy_load_cal_data_from_nvs(cal_data);
//     if (err != ESP_OK) {
//         ESP_LOGW(TAG, "failed to load RF calibration data (0x%x), falling back to full calibration", err);
//         calibration_mode = PHY_RF_CAL_FULL;
//     }

//     esp_efuse_mac_get_default(sta_mac);
//     memcpy(cal_data->mac, sta_mac, 6);
//     esp_err_t ret = register_chipv7_phy(init_data, cal_data, calibration_mode);
//     if (ret == ESP_CAL_DATA_CHECK_FAIL) {
//         ESP_LOGW(TAG, "saving new calibration data because of checksum failure, mode(%d)", calibration_mode);
//     }

//     if ((calibration_mode != PHY_RF_CAL_NONE && err != ESP_OK) ||
//             (calibration_mode != PHY_RF_CAL_FULL && ret == ESP_CAL_DATA_CHECK_FAIL)) {
//         err = esp_phy_store_cal_data_to_nvs(cal_data);
//     } else {
//         err = ESP_OK;
//     }
// #else
//     register_chipv7_phy(init_data, cal_data, PHY_RF_CAL_FULL);
// #endif

感谢回答,我最近网上查找了一些信息,虽然没有明确的回答,但是有人提到过供电的问题,我想起来 wifi 启动的时候电流应该会比较大,虽然我的 LDO 是有 500mA 的电流,但是我可以在这方面下手先测试一下。

当然,一段时间没测试,我今天测试了一下,跑的乐鑫官方的 STATION 示例,发现他不像第一次一样一直重启,有时候好的可以正常连接上 WIFI ,手动按键复位有时候就会一直重启,感觉确实某个东西不稳定,我持续测试中,再次感谢回答!

矜辰所致_ESP32C3
Posts: 13
Joined: Thu Jan 13, 2022 3:24 am

Re: 新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby 矜辰所致_ESP32C3 » Wed Sep 21, 2022 10:50 am

ESP_LJY wrote:
Fri Sep 09, 2022 8:40 am
检查一下芯片供电电压是不是稳定?
也可以确认一下,注释下面这段代码,位置https://github.com/espressif/esp-idf/bl ... nit.c#L713,然后示例中只执行到 esp_wifi_init(), 看是否还会自动重启?

Code: Select all


// #ifdef CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE
//     esp_phy_calibration_mode_t calibration_mode = PHY_RF_CAL_PARTIAL;
//     uint8_t sta_mac[6];
//     if (esp_rom_get_reset_reason(0) == RESET_REASON_CORE_DEEP_SLEEP) {
//         calibration_mode = PHY_RF_CAL_NONE;
//     }
//     esp_err_t err = esp_phy_load_cal_data_from_nvs(cal_data);
//     if (err != ESP_OK) {
//         ESP_LOGW(TAG, "failed to load RF calibration data (0x%x), falling back to full calibration", err);
//         calibration_mode = PHY_RF_CAL_FULL;
//     }

//     esp_efuse_mac_get_default(sta_mac);
//     memcpy(cal_data->mac, sta_mac, 6);
//     esp_err_t ret = register_chipv7_phy(init_data, cal_data, calibration_mode);
//     if (ret == ESP_CAL_DATA_CHECK_FAIL) {
//         ESP_LOGW(TAG, "saving new calibration data because of checksum failure, mode(%d)", calibration_mode);
//     }

我刚才第一块板子,10天没测试,今天烧录 STATION ,莫名其妙好了,很奇怪,然后我想想确定是不是电源不稳定的问题,我想起来焊接了另外一块,当时都是不断重启,然后另外一块给他肯定够用的电源,发现还是不断重启。

然后您这个说的注释代码?是在哪里改?是在 IDF 那些库文件中修改注释,然后再生成示例测试吗?

//     if ((calibration_mode != PHY_RF_CAL_NONE && err != ESP_OK) ||
//             (calibration_mode != PHY_RF_CAL_FULL && ret == ESP_CAL_DATA_CHECK_FAIL)) {
//         err = esp_phy_store_cal_data_to_nvs(cal_data);
//     } else {
//         err = ESP_OK;
//     }
// #else
//     register_chipv7_phy(init_data, cal_data, PHY_RF_CAL_FULL);
// #endif

Attachments
reboot.gif
reboot.gif (2.44 MiB) Viewed 13472 times

矜辰所致_ESP32C3
Posts: 13
Joined: Thu Jan 13, 2022 3:24 am

Re: 新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby 矜辰所致_ESP32C3 » Wed Sep 21, 2022 10:51 am

我刚才第一块板子,10天没测试,今天烧录 STATION ,莫名其妙好了,很奇怪,然后我想想确定是不是电源不稳定的问题,我想起来焊接了另外一块,当时都是不断重启,然后另外一块给他肯定够用的电源,发现还是不断重启。

然后您这个说的注释代码?是在哪里改?是在 IDF 那些库文件中修改注释,然后再生成示例测试吗?

矜辰所致_ESP32C3
Posts: 13
Joined: Thu Jan 13, 2022 3:24 am

Re: 新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby 矜辰所致_ESP32C3 » Wed Sep 21, 2022 12:16 pm

对了,我上面说,我有一块板子莫名其妙好了,以前2块板子都测试的都是无限重启,
现在有一块板子放了10来天没动,然后我今天测试发现第一把就好了,后来偶尔有重启的情况,
但是测了1个多小时,发现越来越稳定,基本上感觉就是慢慢变正常了,
上面我上的图就是这个板子测试过程也有重启的情况,
但是现在这张图就是最终这个板子正常了???
莫名其妙,
然后我想找问题,于是拿了另外一块板子,给另外一块板子稳定的3.3V,还是无线重启,就和上面的图一样,
我现在上一下好了的这块板子,图中我手动按复位了
Attachments
reboot2.gif
reboot2.gif (2.36 MiB) Viewed 13456 times

ESP_LJY
Posts: 58
Joined: Mon Sep 27, 2021 3:06 am

Re: 新画一块ESP32-C3板子,一运行 wifi 例程就无线重启,SHA-256 comparison failed

Postby ESP_LJY » Thu Sep 22, 2022 3:36 am

是的,修改代码重新编译下载试试。esp_wifi_start 会调用 esp_phy_load_cal_and_init(), 加些 log 检查一下是不是这个函数没有走完, 是否是 注释掉的那段代码导致的重启。

Who is online

Users browsing this forum: Baidu [Spider], WKJay_ and 41 guests