尝试上传或更新草图或固件总是失败

问题描述 投票:0回答:1

我的主机是 popOS,我怀疑这在这里很重要。

我插入 Arduino 并看到设备出现:

$ ls /dev | grep -i -E 'acm|usb'
ttyACM0
usb

默认草图正在工作,因为电源 LED 和闪烁程序似乎都工作正常。

Arduino IDE 检测到它。我尝试上传一个简单的草图并收到此模糊错误:

Performing 1200-bps touch reset on serial port /dev/ttyACM0
"/home/$USER/.arduino15/packages/arduino/tools/rp2040tools/1.0.6/rp2040load" -v -D "/tmp/$USER/sketches/A5EA0D0CAA8498593C6DBE39B6DE9B19/sketch_sep11a.ino.elf"
rp2040load 1.0.6 - compiled with go1.16.2
.....................
Failed uploading: uploading error: exit status 1

再次检查

/dev

ls /dev | grep -i -E 'acm|usb'
usb

似乎表明该设备已经消失。 Blink 程序已停止,但电源 LED 仍亮起。

同时,在Files应用程序中。名为

RPI-RP2
的 SD 卡现已安装。

我可以通过按下 Arduino 上的硬件重置按钮轻松重现这一点。

我怀疑 popOS 发生了一些事情,强制安装 SD 卡,从而在 IDE 完成上传之前删除 TTY?

这就是

dmesg
在这一切发生时所说的

[11623.779472] usb 1-6: USB disconnect, device number 34
[11624.098516] usb 1-6: new full-speed USB device number 35 using xhci_hcd
[11624.259724] usb 1-6: New USB device found, idVendor=2e8a, idProduct=0003, bcdDevice= 1.00
[11624.259734] usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[11624.259738] usb 1-6: Product: RP2 Boot
[11624.259740] usb 1-6: Manufacturer: Raspberry Pi
[11624.259743] usb 1-6: SerialNumber: E0C9125B0D9B
[11624.263943] usb-storage 1-6:1.0: USB Mass Storage device detected
[11624.264150] scsi host8: usb-storage 1-6:1.0
[11625.275162] scsi 8:0:0:0: Direct-Access     RPI      RP2              3    PQ: 0 ANSI: 2
[11625.275576] sd 8:0:0:0: Attached scsi generic sg1 type 0
[11625.275929] sd 8:0:0:0: [sdb] 262144 512-byte logical blocks: (134 MB/128 MiB)
[11625.276389] sd 8:0:0:0: [sdb] Write Protect is off
[11625.276391] sd 8:0:0:0: [sdb] Mode Sense: 03 00 00 00
[11625.276755] sd 8:0:0:0: [sdb] No Caching mode page found
[11625.276755] sd 8:0:0:0: [sdb] Assuming drive cache: write through
[11625.282206]  sdb: sdb1
[11625.282535] sd 8:0:0:0: [sdb] Attached SCSI removable disk

还有

lsof

$ lsof /dev/ttyACM0 
COMMAND     PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
serial-mo 28185    $USER    3u   CHR  166,0      0t0 1814 /dev/ttyACM0
$ ps auxww | grep 28185
$USER   28185  0.0  0.0 1075580 4160 ?        Sl   19:52   0:00 /home/$USER/.arduino15/packages/builtin/tools/serial-monitor/0.13.0/serial-monitor

linux arduino gnome arduino-ide
1个回答
0
投票

它不是 SD 卡,而是 UF2 引导加载程序,将自身呈现为大容量存储设备。

如果没有运行草图,此行为是正常的。必须有一个在 1200 波特率连接上调用重置的草图。

在 IDE 尝试上传之前点击重置按钮。上传好的草图后,将自动处理重置。

© www.soinside.com 2019 - 2024. All rights reserved.