Skip to content

HC-924 DFU flashing article does not apply to Uno WiFi Rev2 #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,17 @@
title: "Flash USB-to-serial firmware in DFU mode"
---

UNO and Mega boards use either an Atmega16U2 or Atmega8U2 chip as a USB-to-serial converter, with its own firmware. The firmware can be flashed by connecting it to a computer and setting the board to **DFU mode** (Device Firmware Update).
The following boards use either an Atmega16U2 or Atmega8U2 chip as a USB-to-serial converter:

* Arduino Uno
* Arduino Uno Rev3
* Arduino Mega
* Arduino Mega2560 Rev3
* Arduino MegaADK Rev3

The converter chip firmware can be flashed with a computer by setting the board to **DFU mode** (Device Firmware Update).

> Note that this article does _not_ apply to the Uno WiFi Rev2, which uses a different chip with closed source firmware.

## 1. Get the firmware

Expand All @@ -14,8 +24,8 @@ Within the platform directory, the usb to serial firmware is found in `firmwares
|-----------------------|------------------------------------------------|
| Arduino Mega2560 Rev3 | Arduino-usbserial-atmega16u2-Mega2560-Rev3.hex |
| Arduino MegaADK Rev3 | Arduino-usbserial-atmega16u2-MegaADK-Rev3.hex |
| Arduino UNO Rev3 | Arduino-usbserial-atmega16u2-Uno-Rev3.hex |
| Arduino UNO | Arduino-usbserial-uno.hex |
| Arduino Uno Rev3 | Arduino-usbserial-atmega16u2-Uno-Rev3.hex |
| Arduino Uno | Arduino-usbserial-uno.hex |
| Arduino Mega | Arduino-usbserial-mega.hex |

## 2. Program the chip with the firmware
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "If Arduino UNO or Mega 2560 is not recognized by the computer"
---

Missing or corrupted **USB-to-Serial** firmware can cause UNO and Mega boards to be recognized as any of the following:
Missing or corrupted **USB-to-Serial** firmware can cause Uno (except WiFi Rev2) and Mega boards to be recognized as any of the following:

- Unknown Device
- Composite Device
Expand Down
4 changes: 2 additions & 2 deletions content/Hardware/Generic/Set-a-board-to-DFU-mode.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@
title: "Set a board to DFU mode"
---

UNO and Mega boards use either an Atmega16U2 or Atmega8U2 chip as a USB-to-serial converter. By setting a board to **DFU mode** you can [upload USB-to-Serial firmware to the chip](https://support.arduino.cc/hc/en-us/articles/4408887452434-Flash-USB-to-serial-firmware-in-DFU-mode).
Uno (except WiFi Rev2) and Mega boards use either an Atmega16U2 or Atmega8U2 chip as a USB-to-serial converter. By setting a board to **DFU mode** you can [upload USB-to-Serial firmware to the chip](https://support.arduino.cc/hc/en-us/articles/4408887452434-Flash-USB-to-serial-firmware-in-DFU-mode).

1. Connect the board to your computer

2. Find the RESET and GND pins for the ATmega USB-Serial Processor. They are the innermost two pins of the six located close to the Ethernet port.

![Uno front DFU reset](img/UNO-DFU-reset-pins.png)

3. Briefly short the pins (follow [these instructions](#rev1) for UNO Rev1)
3. Briefly short the pins (follow [these instructions](#rev1) for Uno Rev1)

The board will reset to DFU mode.

Expand Down