|
| 1 | +--- |
| 2 | +title: "dfu-util errors when uploading (exit status 74)" |
| 3 | +--- |
| 4 | + |
| 5 | +Many Arduino boards use the **dfu-util** utility to upload sketches to the board. Some of these include: |
| 6 | + |
| 7 | +* Arduino UNO R4 Minima |
| 8 | +* Arduino GIGA R1 WiFi |
| 9 | + |
| 10 | +In this article: |
| 11 | + |
| 12 | +* [`Failed uploading: uploading error: exit status 74`](#exit-status-74) |
| 13 | +* [`dfu-util: No DFU capable USB device available`](#no-dfu-capable-usb-device-available) |
| 14 | +* [`dfu-util: Cannot open DFU device {vid}:{pid} found on devnum {n} (LIBUSB_ERROR_ACCESS)`](#libusb-error-access) |
| 15 | +* [`dfu-util: More than one DFU capable USB device found!`](#more-than-one-dfu-capable-usb-device) |
| 16 | +* [`Warning: Invalid DFU suffix signature`](#invalid-dfu-suffix-signature) |
| 17 | + |
| 18 | +--- |
| 19 | + |
| 20 | +<a id="exit-status-74"></a> |
| 21 | + |
| 22 | +## `Failed uploading: uploading error: exit status 74` |
| 23 | + |
| 24 | +When an upload fails, you may see the message `Failed uploading: uploading error: exit status 74`. This is a generic message indicating that the upload process has failed. The specific exit status code (74) is used by the dfu-util upload utility. To understand the issue, always review the messages that appear before this notification, as they offer more detailed context about the failure. |
| 25 | + |
| 26 | +--- |
| 27 | + |
| 28 | +<a id="no-dfu-capable-usb-device-available"></a> |
| 29 | + |
| 30 | +## `dfu-util: No DFU capable USB device available` |
| 31 | + |
| 32 | +This message indicates that no USB devices supporting the DFU upload protocol were found by dfu-util. |
| 33 | + |
| 34 | +Follow these steps to resolve the error: |
| 35 | + |
| 36 | +1. Make sure you have the right board selected in the board selector, or the **Tools > Board** menu. If you're unsure about which board you should use, see [Select board and port in Arduino IDE](https://support.arduino.cc/hc/en-us/articles/4406856349970-Select-board-and-port-in-Arduino-IDE). |
| 37 | + |
| 38 | +2. Make sure the device you're using is properly connected with a working USB data cable. Try using a different USB cable, and avoid using USB hubs if possible. |
| 39 | + |
| 40 | +--- |
| 41 | + |
| 42 | +<a id="libusb-error-access"></a> |
| 43 | + |
| 44 | +## `dfu-util: Cannot open DFU device {vid}:{pid} found on devnum {n} (LIBUSB_ERROR_ACCESS)` |
| 45 | + |
| 46 | +The message varies depending on the board you are using. |
| 47 | + |
| 48 | +On Linux, this error can be caused by missing udev rules (This is more likely to be the cause if the error appears on the first time you're uploading from the system). |
| 49 | + |
| 50 | + <a class="link-chevron-right" href="https://support.arduino.cc/hc/en-us/articles/9005041052444-Fix-udev-rules-on-Linux">Fix udev rules on Linux</a> |
| 51 | + |
| 52 | +--- |
| 53 | + |
| 54 | +<a id="more-than-one-dfu-capable-usb-device"></a> |
| 55 | + |
| 56 | +## `dfu-util: More than one DFU capable USB device found!` |
| 57 | + |
| 58 | +When uploading a sketch, you may see this error: |
| 59 | + |
| 60 | +``` |
| 61 | +dfu-util: More than one DFU capable USB device found! Try `--list' and specify the serial number or disconnect all but one device |
| 62 | +``` |
| 63 | + |
| 64 | +To resolve the error, disconnect any extra boards or dfu capable devices you have connected to your computer. |
| 65 | + |
| 66 | +> **Note:** The port selection is not considered when dfu-util is used for uploading the sketch. |
| 67 | +
|
| 68 | +--- |
| 69 | + |
| 70 | +<a id="invalid-dfu-suffix-signature"></a> |
| 71 | + |
| 72 | +## `Warning: Invalid DFU suffix signature` |
| 73 | + |
| 74 | +When uploading a sketch, you may receive this warning in the console: |
| 75 | + |
| 76 | +``` |
| 77 | +Warning: Invalid DFU suffix signature |
| 78 | +A valid DFU suffix will be required in a future dfu-util release |
| 79 | +``` |
| 80 | + |
| 81 | +This warning is expected and does not indicate a problem. It is only displayed if [verbose output is enabled](https://support.arduino.cc/hc/en-us/articles/4407705216274) in Preferences. If there are no other warnings or errors in the output, the sketch most likely **uploaded successfully**. |
| 82 | + |
| 83 | +<!-- markdownlint-disable-file HC001 --> |
0 commit comments