From 6aaff0887b5d7db21cf97cb1f70ff1929322a02c Mon Sep 17 00:00:00 2001 From: Roland Dobai Date: Wed, 13 May 2020 12:29:51 +0200 Subject: [PATCH] Update DFU flashing with fixes and known issues --- docs/en/api-guides/dfu.rst | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/docs/en/api-guides/dfu.rst b/docs/en/api-guides/dfu.rst index fc9d78fe3..3d77a94d9 100644 --- a/docs/en/api-guides/dfu.rst +++ b/docs/en/api-guides/dfu.rst @@ -13,9 +13,9 @@ DFU is supported by ESP32-S2 chips. The necessary connections for the USB periph +------+-------------+ | GPIO | USB | +======+=============+ -| 20 | D- (green) | +| 20 | D+ (green) | +------+-------------+ -| 19 | D+ (white) | +| 19 | D- (white) | +------+-------------+ | GND | GND (black) | +------+-------------+ @@ -27,6 +27,10 @@ DFU is supported by ESP32-S2 chips. The necessary connections for the USB periph achieved by pulling GPIO0 down (e.g. pressing the BOOT button), pulsing RESET down for a moment and releasing GPIO0. +.. warning:: + Some cables are wired up with non-standard colors and some drivers are able to work with swapped D+ and D- + connections. Please try to swap the cables connecting to D+ and D- if your device is not detected. + The software requirements of DFU are included in :ref:`get-started-get-prerequisites` of the Getting Started Guide. Section :ref:`api_guide_dfu_build` describes how to build firmware for DFU with ESP-IDF and @@ -91,10 +95,19 @@ USB drivers (Windows only) Please see the `libusb wiki `_ for more details. +The drivers can be installed by the `Zadig tool `_. Please make sure that the device is in +download mode before running the tool and that it detects the ESP32-S2 device before installing the drivers. The Zadig +tool might detect several USB interfaces of ESP32-S2. Please install the WinUSB driver for only that interface for +which there is no driver installed (probably it is Interface 2) and don't re-install the driver for the other interface. + +.. warning:: + The manual installation of the driver in Device Manager of Windows is not recommended because the flashing might + not work properly. + .. _api_guide_dfu_flash_errors: -Common errors -------------- +Common errors and known issues +------------------------------ - ``dfu-util: command not found`` might indicate that the tool hasn't been installed or is not available from the terminal. An easy way of checking the tool is running ``dfu-util --version``. Please see :ref:`get-started-get-prerequisites` for @@ -102,3 +115,5 @@ Common errors - The reason for ``No DFU capable USB device available`` could be that the USB driver wasn't properly installed on Windows (see :ref:`api_guide_dfu_flash_win`), udev rule was not setup on Linux (see :ref:`api_guide_dfu_flash_udev`) or the device isn't in bootloader mode. +- Flashing with ``dfu-util`` on Windows fails on the first attempt with error ``Lost device after RESET?``. Please + retry the flashing and it should succeed the next time.