首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NodeMCU ESP8266无法上传示意图超时错误。

NodeMCU ESP8266无法上传示意图超时错误。
EN

Stack Overflow用户
提问于 2021-10-04 09:14:17
回答 1查看 1.2K关注 0票数 0

使用arduino-cli、arduino-ide或直接使用esptool.py (来自https://github.com/espressif/esptool),在上传一个简单(正确)的草图时,我会得到以下错误。

代码语言:javascript
复制
x@y:~/blink$ ~/tools/arduino-cli upload -p /dev/ttyUSB0 --fqbn esp8266:esp8266:nodemcuv2
esptool.py v3.1
Serial port /dev/ttyUSB0
Connecting........_____....._____....._____....._____....._____....._____....._____
Traceback (most recent call last):
  File "/home/x/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/upload.py", line 66, in <module>
    esptool.main(cmdline)
  File "/home/x/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/esptool/esptool.py", line 4074, in main
    esp = esp or get_default_connected_device(ser_list, port=args.port, connect_attempts=args.connect_attempts,
  File "/home/x/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/esptool/esptool.py", line 121, in get_default_connected_device
    _esp.connect(before, connect_attempts)
  File "/home/x/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/esptool/esptool.py", line 639, in connect
    raise FatalError('Failed to connect to %s: %s' % (self.CHIP_NAME, last_error))
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
Error during Upload: Failed uploading: uploading error: exit status 1 
esptool.py v3.1
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-04 09:14:17

问题是,我的上一次apt upgrade将内核从5.4.0-86泛型更新到5.4.0-88-generic (我在/var/log/apt/history.log.1.gz中检查了更新)。5.4.0-88中的驱动程序CH341不能正常工作(我使用的ESP需要CH340G驱动程序)。解决方案是回到5.4.0-86驱动程序,然后在下面列出我所做的事情。

  1. 断开任何连接到任何USB的电除尘器或板。然后测试是否加载了CH341模块(允许与EPS进行串行通信)。您可以在步骤2,3.

中使用此代码测试模块的正确卸载/加载。

代码语言:javascript
复制
x@y:~$ lsmod | egrep serial
usbserial              53248  2 cp210x,ch341

  1. 是当前(5.4.0-88)和以前(5.4.0-86)内核的模块都是

的地方。

代码语言:javascript
复制
x@y:~$ ls -larh /lib/modules/
total 164K
drwxr-xr-x  6 root root 4,0K set 29 09:19 5.4.0-88-generic
drwxr-xr-x  6 root root 4,0K set 23 09:45 5.4.0-86-generic
[...]

使用命令

  1. 卸载当前(5.4.0-88) CH341模块

代码语言:javascript
复制
sudo rmmod /lib/modules/5.4.0-88-generic/kernel/drivers/usb/serial/ch341.ko

  1. 加载前一个(5.4.0-86) CH341模块,命令

代码语言:javascript
复制
sudo insmod /lib/modules/5.4.0-86-generic/kernel/drivers/usb/serial/ch341.ko

就是这样:)你现在应该能够上传一个新的草图到你的ESP8266。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69433568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档