首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ubuntu20.04-不能上传Arduino的草图

Ubuntu20.04-不能上传Arduino的草图
EN

Ask Ubuntu用户
提问于 2021-10-06 10:32:20
回答 4查看 3K关注 0票数 7

在重新安装了Ubuntu之后,我尝试使用Arduino IDE v1.8.16 (使用从web下载的.deb文件安装)上传草图。

An error occurred while uploading the sketch avrdude: ser_open(): can't open device "/dev/ttyACM0": Device or resource busy

在新的Linux机器上首次安装Arduino IDE之后,需要成为:sudo usermod -a -G dialout $USER和注销的成员,登录没有按预期进行更改。

因此,我尝试使用chmod of connected /dev/ttyUSB0,它没有更改错误消息(顺便说一句,在USB1上也是如此,而ACM0则得到了相同的输出--当我试图上传到Nano时)。

现在我得到了这个错误:

代码语言:javascript
复制
esptool.py v3.0
Serial port /dev/ttyUSB0
Connecting........_____....._____....._____....._____....._____....._____....._____
Traceback (most recent call last):
  File "/home/guy/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/upload.py", line 66, in <module>
    esptool.main(cmdline)
  File "/home/guy/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/esptool/esptool.py", line 3552, in main
    esp.connect(args.before, args.connect_attempts)
  File "/home/guy/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/esptool/esptool.py", line 529, 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
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header

为了验证它不是IDE错误,我尝试使用esptool.py擦除闪存,并得到了相同的行为Connecting........_____....._____....._____....._____....._____....._____....._____

EN

回答 4

Ask Ubuntu用户

回答已采纳

发布于 2021-10-07 05:40:21

这发生在拥有最新内核和多个版本的arduino-ide (从snap,从apt安装,甚至安装在arduino的网站上的最新版本)的最新的ubuntu上,它尝试了几个板版本的尝试--尝试了未修改的esptool,尝试了几个(不只是充电)电缆,尝试了几个esp32板和esp32供应商( wemos,nodemcu等等)。

我相信串行驱动可能有问题?所有的板都在windows上工作,在Ubuntu20.04上测试了所有版本的arduino-ide,以及相同的电缆。我排除了任何可能的问题:软件(ide),电缆,板。

会更深入地研究这件事。

找到问题了!看起来在ch340/ch341的内核驱动程序中有一个bug,我安装了一个旧内核( 5.9.x ),并且这个内核可以工作。这让我在互联网上找到了一些搜索:)所以这里

Bug ID: 214131 Summary: ch341 communication problem Product: Drivers Version: 2.5 Kernel Version: 5.14-rc5 Hardware: All OS: Linux Tree: Mainline Status: NEW Severity: normal Priority: P1 Component: USB

在我看来,启动内核5.10.x直到5.14-rc5,bug才出现。

快乐的编码人

票数 7
EN

Ask Ubuntu用户

发布于 2021-10-07 20:13:01

ESP板的解决办法:

上传草图之前的设置:

  • Boardtype:泛型ESP8266
  • 闪存尺寸: 4MB
  • 重置方法:"dtr (又名nodemcu)“(默认)

然后:

  1. 将重置方法更改为:"no dtr (又名ck)“(Tools -> reset方法)
  2. 然后按Flash按钮
  3. 按复位键
  4. 然后释放Flash
  5. 在Arduino IDE中上传草图

来源:https://forum.manjaro.org/t/manjaro-21-1-0-und-esp8266-sketch-upload-doesnt-work-anymore/79712/2

注:在ESP8266 (NodeMCU)上测试

更新:

这个问题已经在最新的内核版本中解决了。请更新内核并再次测试。

票数 4
EN

Ask Ubuntu用户

发布于 2021-10-08 16:45:34

在内核linux-映像-5.4.0-87-泛型@ ubuntu 18.04中,我遇到了完全相同的问题(运行最新的arduino、板定义和libz),当我重新启动到5.4.0-86-泛型时,它再次工作,不知道为什么,但是今天花了很长时间找出改变了什么(bcs我在这台计算机上使用了很长一段时间,所有事情都很顺利.)

所以试着引导旧的内核,也许它会有帮助。

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

https://askubuntu.com/questions/1367706

复制
相关文章

相似问题

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