次のようなエラーが、書き込んだときに出る。
“””
最大262144バイトのフラッシュメモリのうち、スケッチが39092バイト(14%)を使っています。 最大32768バイトのRAMのうち、グローバル変数が3952バイト(12%)を使っていて、ローカル変数で28816バイト使うことができます。 “/home/rinta/.arduino15/packages/arduino/tools/dfu-util/0.11.0-arduino5/dfu-util” –device 0x2341:0x0069,:0x0369 -D “/home/rinta/.cache/arduino/sketches/15101D5580BA5AA3AD16F3F883402733/sketchnov22a.ino.bin” -a0 -Q dfu-util: Cannot open DFU device 2341:0069 found on devnum 4 (LIBUSBERROR_ACCESS) dfu-util: No DFU capable USB device available dfu-util 0.11-arduino4
Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc. Copyright 2010-2021 Tormod Volden and Stefan Schmidt This program is Free Software and has ABSOLUTELY NO WARRANTY Please report bugs to http://sourceforge.net/p/dfu-util/tickets/
Failed uploading: uploading error: exit status 74
“””
解決方法
1. USBアクセス権限の問題(Linux)
LIBUSB_ERROR_ACCESS
は、現在のユーザーにUSBデバイスへのアクセス権限がないことを意味します。- 対処法:
sudo chmod a+rw /dev/bus/usb/XXX/YYY
dfu-util
を使うには、sudo
を使うか、udev
ルールを設定する必要があります。- 一時的に試すには:※
XXX
とYYY
はlsusb
コマンドで確認できます。
2. udevルールの設定
- もっと機械的にしたくて、永続的に解決するには、まず「lsusb」を実行して下さい:
rinta@rinta-HP-LapTop:~$ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0408:5483 Quanta Computer, Inc. HP HD Camera
Bus 003 Device 005: ID 2341:0369 Arduino SA Santiago DFU
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 06cb:00f0 Synaptics, Inc.
Bus 001 Device 003: ID 0bda:c85c Realtek Semiconductor Corp. Bluetooth Radio
Bus 001 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
その時、Arduino〜があるはずです。そのときにほしいのが「2341:0369」がある部分です。
※この数字は環境によって変わると思います
次のコードでファイルを作成
sudo nano /etc/udev/rules.d/99-arduino-dfu.rules
そして以下の内容を書く
SUBSYSTEM=="usb", ATTR{idVendor}=="左側", ATTR{idProduct}=="右側", MODE="0666"
##例
SUBSYSTEM=="usb", ATTR{idVendor}=="2341", ATTR{idProduct}=="0369", MODE="0666
これでリスタート:
sudo udevadm control --reload-rules
sudo udevadm trigger
3. DFUモードに入っていない
- 一部のArduino(特にLeonardoやDueなど)は、DFUモードに手動で入る必要があります。
- 対処法:
- リセットボタンを2回押す(または押しながらUSB接続)してDFUモードに入る。
4. ボードの選択ミス
- Arduino IDEで正しいボードとポートが選択されているか確認してください。

とある高専生。
AIとネットが好き。
将来はAIの妹と火星に住みたい。
discord : r_nightcore
このサイトの管理者。
コメント