Skip to content

Commit c764f7c

Browse files
Improvements to "Reset the Arduino bootloader on the Nano ESP32" [HC-1612] (#445)
* Document bootloader mode option and clarify some steps based on article feedback * Update content/Hardware Support/Nano Family/Reset-the-Arduino-bootloader-on-the-Nano-ESP32.md Co-authored-by: Renat0Ribeir0 <[email protected]> * Update content/Hardware Support/Nano Family/Reset-the-Arduino-bootloader-on-the-Nano-ESP32.md Co-authored-by: Renat0Ribeir0 <[email protected]> * Clarify development tools needed for each option --------- Co-authored-by: Renat0Ribeir0 <[email protected]>
1 parent 0884df4 commit c764f7c

File tree

2 files changed

+54
-7
lines changed

2 files changed

+54
-7
lines changed

content/Hardware Support/Nano Family/Reset-the-Arduino-bootloader-on-the-Nano-ESP32.md

Lines changed: 54 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,36 +3,65 @@ title: Reset the Arduino bootloader on the Nano ESP32
33
id: 9810414060188
44
---
55

6-
Learn how to reset the default Arduino bootloader on the Nano ESP32 using Arduino IDE.
6+
Learn how to reset the default Arduino bootloader on the Nano ESP32.
77

88
These are some reasons you may want to reset the bootloader:
99

1010
* Update the Arduino bootloader already on the board. This can resolve issues with Nano ESP32 being misidentified as other ESP32 boards.
1111
* Restore the ability to upload regular Arduino sketches to a Nano ESP32 that has been flashed with the MicroPython firmware.
1212

13+
In this article:
14+
15+
* [Option 1: Using the bootloader mode](#bootloader-mode)
16+
* [Option 2: Use the Esptool programmer option in Arduino IDE](#esp32-download-mode)
17+
18+
---
19+
20+
## Option 1: Using bootloader mode {#bootloader-mode}
21+
22+
The quickest way to reset your Arduino Nano ESP32 is by activating the bootloader mode and uploading any sketch.
23+
24+
Follow these steps:
25+
26+
1. Press the RST button two times, waiting 0.3 to 1 second between each press.
27+
28+
> [!IMPORTANT]
29+
> The timing between presses is different compared to bootloader mode on most other Arduino boards. If bootloader mode won’t activate, try adjusting your timing.
30+
31+
2. Check the on-board LED near the RST button:
32+
* **If the LED pulses slowly in green[^colors]:** The board is in bootloader mode. Go to the next step.
33+
* **If the LED is off:** Repeat step 1 or try [Option 2: Use the Esptool programmer option in Arduino IDE](#esp32-download-mode).
34+
3. Select Arduino Nano ESP32 in Arduino IDE or the Cloud Editor.
35+
4. Upload any sketch to restore the standard Arduino bootloader.
36+
1337
---
1438

15-
Before you begin, it is recommended to have the latest version of the **Arduino ESP32 Boards** or **esp32** boards package installed using the Board Manager.
39+
## Option 2: Use the Esptool programmer option in Arduino IDE {#esp32-download-mode}
40+
41+
> [!TIP]
42+
> Before you begin, it is recommended to have the latest version of the **Arduino ESP32 Boards** or **esp32** boards package installed using the Board Manager.
1643
1744
Follow these steps:
1845

19-
1. Connect a jumper cable between the **GND** and **B1** pins. The RGB LED will turn on with a green or blue color.
46+
1. Connect a jumper cable between the **GND** and **B1** pins. The RGB LED will turn on with a green[^colors] color.
2047

2148
![The GND and B1 pins](img/nano-esp32-gnd-b1.png)
2249

2350
2. While the **GND** and **B1** pins are shorted, press the white **RST** button on the top of the board to reset the board to **firmware download mode**.
2451

25-
3. Remove the jumper cable. The RGB LED should stay on, in a purple or yellow color.
52+
3. Remove the jumper cable. The RGB LED should stay on, in a purple[^colors] color.
2653

2754
4. Open Arduino IDE.
2855

2956
5. Go to **Tools > Port** and select the board (it may be identified as an arbitrary ESP32 board).
3057

3158
6. Go to **Tools > Board** and select **Arduino ESP32 Boards > Arduino Nano ESP32** (or **esp32 > Arduino Nano ESP32** if you're using the full esp32 package).
3259

33-
7. Open **Tools > Programmer** and ensure **Esptool** is selected.
60+
7. Open the **Tools > Programmer** menu.
61+
62+
8. Click on the **Esptool** option to select it.
3463

35-
8. Select **Sketch > Upload Using Programmer** to begin uploading the firmware.
64+
9. Select **Sketch > Upload Using Programmer** to begin uploading the firmware.
3665

3766
The process is complete when you see these lines:
3867

@@ -41,4 +70,22 @@ Follow these steps:
4170
Hard resetting via RTS pin...
4271
```
4372

44-
9. Press the **RST** button on top of the board to exit firmware download mode.
73+
10. Press the **RST** button on top of the board to exit firmware download mode.
74+
75+
### Troubleshooting
76+
77+
#### dfu-util: No DFU capable USB device available
78+
79+
If you see this error, it means that the sketch is still being uploading with the regular upload process.
80+
81+
Try this:
82+
83+
* Ensure that the **Esptool** option is selected in the **Sketch > Upload Using Programmer** menu. It needs to be actively selected, even if no other options are available. You will know the Esptool option is selected if a checkmark is displayed next to the name.
84+
85+
![The Esptool option in the Tools > Programmer menu. A checkmark indicates that the option is currently selected.](img/esptool-selected.png)
86+
87+
* Ensure you are uploading the sketch by selecting **Sketch > Upload Using Programmer** and not by clicking the regular Upload button.
88+
89+
[^colors]: On some earlier versions of the Nano ESP32, the LED will be blue instead of green, and yellow instead of purple.
90+
91+
<!-- markdownlint-disable-file HC001 -->
Loading

0 commit comments

Comments
 (0)