ESP8266烧写固件5-chip efuse check fail错误的解决过程
(若有类似报错,请直接先看最后,尝试解决报错办法顺序应为:9 -> 1 -> 2-> 3-> 4 -> 5->6 -> 7 -> 8)记录自己的解决报错的过程,以方便后边可能碰了同样情况的人。新买了一个ESP-01S模块,尝试按照店家给的办法烧写新固件ESP8266可以使用MQTT的我按照要求接好线之后,第一次烧写固件成功了。
ESP8266烧写固件5-chip efuse check fail错误的解决过程
(若有类似报错,请直接先看最后,尝试解决报错办法顺序应为:9 -> 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 -> 8)
记录自己的解决报错的过程,以方便后边可能碰了同样情况的人。

新买了一个ESP-01S模块,尝试按照店家给的办法烧写新固件ESP8266可以使用MQTT的
我按照要求接好线之后,第一次烧写固件成功了。
一直卡在等待上电同步
但是同样的设置,第二次烧写就显示失败,一直卡在等待上电同步;
我在网上查询解决办法,有人说RESET引脚不用接3.3V,
等到点了烧写START之后,RESET引脚碰下地线,
让芯片复位就可以继续下一步烧写,
我尝试了,的确可以解决,相应手动上电复位了
(也有人说卡在等待上电同步的话,烧写前先不要接ESP8266的3.3v引脚,
等到下载器显示等待上电同步时,再接上3.3v引脚供电,
此方法是否有效我没有尝试);
5-chip efuse check fail
我又多尝试烧写了几个其他的固件;
中间几次烧写都还是成功的,突然某次就不成功了
报错弹窗:5-chip efuse check fail、ESP8266 Chip efuse check error esp_check_mac_and_efuse,
烧写伴随着以下这种错误信息,RESET引脚碰地线,烧写也没有反应了
test offset : 0 0x0
case ok
======
CONNECT BAUD: 115200
============
Uploading stub...
Running stub...
[2026-01-11 00:04:35,855][ESP8266Loader_spi[1]][espDownloader.py][line:462][ERROR]: ESP8266 Chip stub error esp_stub_and_set_baud.
test offset : 0 0x0
case ok
======
CONNECT BAUD: 115200
============
....._____....._____....._____....._Uploading stub...
Running stub...
Stub running...
[2026-01-11 00:04:58,309][ESP8266Loader_spi[1]][espDownloader.py][line:468][ERROR]: ESP8266 Chip efuse check error esp_check_mac_and_efuse.
test offset : 0 0x0
case ok
======
CONNECT BAUD: 115200
============
....._____.Uploading stub...
Running stub...
Stub running...
[2026-01-11 00:05:19,170][ESP8266Loader_spi[1]][espDownloader.py][line:468][ERROR]: ESP8266 Chip efuse check error esp_check_mac_and_efuse.
我以为是不小心把线碰松了,来回调整很多次接线,还是不行,网上搜了很多种可行性,根据以下可能尝试了以下各种办法
1、接线错误
类似TTL的TX要接esp8266芯片的RX之类的引脚要对应正确,不同芯片模块可以跟店家要模块的规格书,规格书上有引脚定义,我用的ESP-01S模块引脚定义及接法如下
管脚功能定义
| 序号 | ESP-01S的Pin 脚名称 | ESP-01S的引脚功能说明 | 烧写时要接的USB转TTL模块的引脚 |
|---|---|---|---|
| 1 | GND | GND | 接TTL的GND |
| 2 | IO2 | 通用 IO,内部已上拉 | 可以不用接 |
| 3 | IO0 | 工作模式选择:悬空时:Flash Boot,工作模式 下拉:UART DownLoad,下载模式 | 接TTL的GND |
| 4 | RXD | 串口 0 数据接收端 RXD | 接TTL的TX |
| 5 | VCC | 3.3V,模块供电 | 接TTL的3.3V |
| 6 | RST | 1)外部复位管脚,低电平复位 2)可以悬空或者接外部 MCU | 可以不用接 |
| 7 | EN | 芯片使能,高电平使能,低电平失能 | 接TTL的3.3V(TTL引脚不够就再接个面包板,或者把两个杜邦线绑在一起都接3.3V) |
| 8 | TXD | 串口 0 数据发送端 TXD | 接TTL的RX |
2、串口通讯设置错误
要选择跟自己插上的USB转TTL对应的那个端口,如果电脑上有多个USB或线,把无关的线都拔掉,排除干扰,别选错端口了;
还有波特率设置,ESP8266烧写波特率一般都是115200,很少有其他值,注意1152后边是两个0,不是3个0;

跟电脑设备管理器的端口对应

3、虚接的可能性
有些杜邦线不牢固,使用时容易松开,尝试换线
4、电压不足
TTL的3.3V不足以驱动ESP8266,尝试把TTL的5V接到ESP8266的3.3V上
5、路径改为全英文
烧写器如果保存在中文路径,移动到全英文路径下再尝试运行试试
6、重启电脑
7、重装CH340驱动
8、下载器版本问题
去乐鑫官网下载最新的下载器
还是不行
经过以上折腾,还是不行,我不得不怀疑我把这个新买的模块弄烧了
时间不早,先去睡觉吧。
我最终想放弃这个模块的时候,我不死心的在网上又搜了搜
突然,我看到一个新的可能性,链接如下:
ESP8266-01S烧录MQTT固件ERROR问题 - 知乎
9、efuse_err_halt设置成0
" 客服让我把configure里面的spi download.conf中的efuse_err_halt设置成0,最终解决问题。 "
这个跟我的报错信息多么匹配,我激动的心颤抖的手,睡觉前最后尝试了一下,感谢该作者,成功烧写了。
要修改下载器的配置文件地址
下载器位置\flash_download_tool_3.9.5\configure\esp8266\spi_download.conf
打开文件,开头就是
[EFUSE CHECK]
efuse_mode = 1
efuse_err_halt = 0
把efuse_err_halt改为 =0 ;

更多推荐



所有评论(0)