此问题与此相关,Cannot program ESP8266,但设置不同。
我有一个 NodeMCU devkit v1 ,其商业名称是 NodeMCU v2 。我尝试了不同的设置来连接devkit。
首先,devkit有一个usb串行桥(CP2102)和5v(USB)到3.3v的电压适配器。所以我通过USB将devkit与机器连接起来。驱动程序安装正确,我可以看到com,它是COM3。
打开NodeMCU后,我可以看到Wifi AI-THINKER-adfe21
。
然后我尝试了nodemcu-flasher - WINDOWS。
Waiting MAC
并且日志显示Begin Find ESP8266
,因为我在开始时告诉我的问题,而ESP的领导(蓝色led )闪烁。使用ESPtool - LINUX - 尝试这些命令
python2 esptool.py --port /dev/ttyUSB0 read_mac
python2 esptool.py --port /dev/ttyUSB0 write_flash 0x00000 firmware.bin
Connecting... A fatal error occurred: Failed to connect to ESP8266
通过Arduino IDE,我安装了ESP8266板并选择了NodeMCU 1.0
。尝试上传一些代码的结果 - > warning: espcomm_sync failed error: espcomm_open failed
我试图在没有USB的情况下连接NodeMCU。使用Arduino UNO,连接如下......我也遇到了同样的错误。
UNO | NodeMCU
5v -> Vin
GND -> GND
Rx -> Tx
Tx -> Rx
我做的最后一次测试是将Putty或Arduino SerialMonitor连接到COM3
或/dev/ttyUSB0
并打开NodeMCU。如果它有不同的波特率,我应该看到一些字符或垃圾。但我一无所获,终端是空白的。我重新启动NodeMCU,将其置于Flash模式。没有回应。
是否有一些解决方案,提示或技巧可以使其可编程?
PS:我知道NodeMCU处于Flash模式,因为它的wifi消失了。
我发现了一些东西。
我刚刚将NodeMcu与移动充电器连接,并将D0连接到串行接地,将D3连接到串行接收器。在具有115200波特率的油灰上,我可以在重置时获得以下代码。
node : sta(mac address) + softAP(mac address)
add if0
add if1
dhcp server start:(ip:192.168.4.1, mask:255.255.255.0,gw:192.168.4.1)
bcn 100
答案 0 :(得分:2)
我一直在使用node-mcu闪光灯和esptool。 首先在esptool中你应该在调用中使用更多参数。使用类似这样的东西
python esptool.py -p SERIAL_PORT_NAME --baud 9600 write_flash --flash_size = 8m 0 firmware-combined.bin
小心波特率,我总是使用9600。 如果您更喜欢使用Windows程序,则只能通过USB连接ESP8266,不要连接任何其他引脚。如果它仍然给你带来问题,你应该检查你是否安装了com端口。
祝你好运
答案 1 :(得分:0)
如果您使用的是esptool(在Linux或Windows中),则应在esptool命令中包含-fm和-fs。如果您没有包含这两个参数,即使它显示成功上传,也没有响应。您可以参考此youtube教程中的详细信息或其描述,了解nodemcu V2或v1.0中的闪存固件。
esptool.py --port [serial-port-of-ESP8266] write_flash -fm [mode] -fs [size] 0x00000 [nodemcu-firmware].bin
如何使用esptool(windows)刷新固件的教程:
https://www.youtube.com/watch?v=MHrm7axsImI
喝彩!
答案 2 :(得分:0)
也许你可以尝试这个设置。
$sudo esptool.py -p /dev/ttyUSB0 --baud 115200 write_flash -fs 16m -fm qio -ff 0x00000 firmware.bin