我在Ubuntu22.04.1LTS上使用了带有Arduino扩展的vscode,它到目前为止一直运行良好。如果我想上传,我就会得到错误:
avrdude: ser_open(): can't open device "/dev/ttyACM0: Permission denied"
当试图上传一个草图到一个Arduino微。
然后,我用Arduino IDE 1.8.19进行了尝试,这会产生同样的错误。
我已经将我的用户添加到了拨号组中,尽管它以前在没有拨号组的情况下工作过(然后我就重新启动了)。如果我更改/dev/ttyACM0的chmod,这一点也没有帮助。
如果我这样做了:
~ $ ls -al /dev/ttyACM0
crw-rw----+ 1 root dialout 166, 0 Sep 14 00:15 /dev/ttyACM0
~ $ id
uid=1000(magraina) gid=1000(magraina) groups=1000(magraina),4(adm),20(dialout),24(cdrom),27(sudo),30(dip),46(plugdev),122(lpadmin),134(lxd),135(sambashare)
我能用sudo手动运行avrdude
因此,我现在在以下设置了一个规则:/etc/udev/rues.d,命名为50-myusb.Rule
通过以下方式:
SUBSYSTEM=="usb", MODE="0666", GROUP="dialout"
现在,我可以在终端上运行avrdude,在没有sudo的情况下手动上传我的草图,但我仍然无法通过vscode或Arduino IDE运行它。
我还能做什么?
发布于 2022-09-14 16:33:50
这更像是一个解决办法,但它是一个对我有效的解决方案。
现在版本2.0中的Arduino IDE已经发布。我下载并运行了它。有了那个版本,我现在可以像往常一样上传一个草图。但遗憾的是,我无法找到vscode的解决方案,因为Arduino扩展目前只支持旧版本。
尽管vscode在与Arduino IDE的新版本相同的路径上运行avr杜德。在我看来,似乎vscode有不同的用户权限,我不知道如何改变它。
发布于 2022-11-25 18:44:17
a+rw /dev/ttyUSB0 0或/dev/ttyACM0 0,哪个端口使用了参阅工具
https://stackoverflow.com/questions/73709809
复制相似问题