# Nano ESP32 Errno71 Protocol error

**URL:** <https://forum.arduino.cc/t/nano-esp32-errno71-protocol-error/1458469>\
**Category:** Nano ESP32\
**Created:** [September 5, 2026, 9:36am UTC](https://forum.arduino.cc/t/nano-esp32-errno71-protocol-error/1458469 "2026-09-05T09:36:01Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![francescomennella](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/francescomennella/32/1126542_2.png) [@francescomennella](https://forum.arduino.cc/u/francescomennella)\
**Post date:** [September 5, 2026, 9:36am UTC](https://forum.arduino.cc/t/nano-esp32-errno71-protocol-error/1458469/1 "2026-09-05T09:36:01Z")

</div>

I am trying to upload a sketch on a brand new Arduino Nano ESP32 board. The first time I try to upload some sketch, the upload works, but from the second time on I get the following error:

```arduino
Traceback (most recent call last):
  File "/home/ciccio/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool.py", line 34, in <module>
    esptool._main()
  File "/home/ciccio/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/ __init__.py", line 1032, in _main
    main()
  File "/home/ciccio/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/ __init__.py", line 674, in main

    esp = esp or get_default_connected_device(
  File "/home/ciccio/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/ __init__.py", line 921, in get_default_connected_device
    _esp.connect(before, connect_attempts)
  File "/home/ciccio/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/loader.py", line 640, in connect
    last_error = self._connect_attempt(reset_strategy, mode)
  File "/home/ciccio/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/loader.py", line 525, in _connect_attempt
    reset_strategy() # Reset the chip to bootloader (download mode)
  File "/home/ciccio/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/reset.py", line 83, in __call__
    self._setDTRandRTS(False, False)
  File "/home/ciccio/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/reset.py", line 58, in _setDTRandRTS
    fcntl.ioctl(self.port.fileno(), TIOCMSET, struct.pack("I", status))
OSError: [Errno 71] Protocol error
Failed chip erase: uploading error: exit status 1

```

Some things to take into account:

- The code is uploaded using Programmer (CTRL+Shift+U), as uploading it normally resulted in the `dfu-util: Failed to retrieve language identifiers dfu-util: Cannot set alternate interface: LIBUSB_ERROR_OTHER Failed uploading: uploading error: exit status 74` error;
- This happens with brand-new boards, as well as with boards I've already been using for a long time before and didn't give me this error with any of the sketched I've tried uploading;
- This happens with both different USB cables and different USB ports;

How could this problem be addressed? Any help in solving it will be appreciated!!

Thanks in advance 🙂

Francesco

---

<div class="post-metadata">

**Author:** ![InquisitiveMind](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/inquisitivemind/32/1272398_2.png) [@InquisitiveMind](https://forum.arduino.cc/u/InquisitiveMind)\
**Post date:** [September 5, 2026, 10:55am UTC](https://forum.arduino.cc/t/nano-esp32-errno71-protocol-error/1458469/2 "2026-09-05T10:55:56Z")

</div>

> [@francescomennella](#):
>
> Any help in solving it

Have a look at this:  
[Reset the Arduino bootloader on the Nano ESP32 – Arduino Help Center](https://support.arduino.cc/hc/en-us/articles/9810414060188-Reset-the-Arduino-bootloader-on-the-Nano-ESP32?utm_source=chatgpt.com)

In particular, see the section **“If the board is only recognized once or requires a double-press reset to upload a sketch.”** Since your first upload works and subsequent uploads fail, the recommended full bootloader recovery procedure, including **Tools → Burn Bootloader** , seems worth trying.

---

<div class="post-metadata">

**Author:** ![sonofcy](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/sonofcy/32/1283617_2.png) [@sonofcy](https://forum.arduino.cc/u/sonofcy)\
**Post date:** [September 5, 2026, 11:05am UTC](https://forum.arduino.cc/t/nano-esp32-errno71-protocol-error/1458469/3 "2026-09-05T11:05:06Z")

</div>

Your best bet is to fix the original error.

---

<div class="post-metadata">

**Author:** ![sterretje](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/sterretje/32/391294_2.png) [@sterretje](https://forum.arduino.cc/u/sterretje)\
**Post date:** [September 5, 2026, 11:12am UTC](https://forum.arduino.cc/t/nano-esp32-errno71-protocol-error/1458469/4 "2026-09-05T11:12:36Z")

</div>

> [@francescomennella](#):
>
> ```arduino
> File "/home/ciccio/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool.py", line 34, in <module>
> esptool._main()
> 
> ```

This seems to indicate that you're using Espressif's ESP32 board package.  
Have you tried with the Arduino ESP32 board package?

 ![image](https://europe1.discourse-cdn.com/arduino/original/4X/a/7/4/a7405f5b8415dd9a009c6c2332ab1d46c470e1d5.png)

---

<div class="post-metadata">

**Author:** ![xfpd](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/xfpd/32/1120236_2.png) [@xfpd](https://forum.arduino.cc/u/xfpd)\
**Post date:** [September 6, 2026, 12:23am UTC](https://forum.arduino.cc/t/nano-esp32-errno71-protocol-error/1458469/5 "2026-09-06T00:23:40Z")

</div>

Are you trying to load non-compatible code again? [Nano ESP32 on bootloop after uploading sketch - #17 by jim-p](https://forum.arduino.cc/t/nano-esp32-on-bootloop-after-uploading-sketch/1439116/17)
