# Configure ESP32-S3 Built-in JTAG Interface

[中文]

ESP32-S3 has built-in JTAG circuitry and can be debugged without any additional chip. Only a USB cable connected to the D+/D- pins is necessary. For dev kits without an exposed USB Serial Jtag connector, a USB breakout cable can be used. The necessary connections are shown in the following section.

## Configure Hardware

ESP32-S3 pins and USB signals
ESP32-S3 Pin | USB Signal
--- | ---
GPIO19 | D-
GPIO20 | D+
5V | V_BUS
GND | Ground

Please verify that the ESP32-S3 pins used for USB communication are not connected to some other HW that may disturb the JTAG operation.

## Configure USB Drivers

JTAG communication should work on all supported platforms. Windows and Linux require extra steps as described below.

### Windows

Windows users might get LIBUSB_ERROR_NOT_FOUND errors. To resolve this, install drivers using one of the following methods:

- In Espressif Installation Manager (EIM) graphical user interface (GUI), click `Open Dashboard` under `Manage Installations`, and then click `Install Drivers`:

  > Install Drivers in EIM GUI

- Run the following command from PowerShell to install drivers with EIM command line interface:

  >     eim install-drivers

- Run the following command from PowerShell to install drivers with idf-env:

  >     Invoke-WebRequest 'https://dl.espressif.com/dl/idf-env/idf-env.exe' -OutFile .\idf-env.exe; .\idf-env.exe driver install --espressif

### Linux

On Linux adding OpenOCD udev rules is required and is done by placing the following udev rules file in the `/etc/udev/rules.d` folder.

Was this page helpful?

- Thank you! We received your feedback.
- If you have any comments, fill in Espressif Documentation Feedback Form.

- We value your feedback.
- Let us know how we can improve this page by filling in Espressif Documentation Feedback Form.