Install USB Drivers for ESP32: Fix Connection & COM Port Issues [Windows]

Setting up your ESP32/ESP2866 for the first time? If your computer doesn’t recognize the device, or you’re running into errors, you’re not alone! Many ESP boards require additional USB drivers to communicate properly with your computer. This guide will walk you through how to install USB drivers for ESP32/ESP8266 microcontroller boards on Windows.

Table of Contents

    Why You Need USB Drivers for ESP32/ESP2866

    Most ESP32/ESP2866 development boards use USB-to-Serial converter chips like the CP210x or CH340. More specifically, they function as USB-to-UART bridges.
    These bridges convert your computer’s USB (Universal Serial Bridge) signals into UART (Universal Asynchronous Receiver/Transmitter) signals that the ESP microcontroller can understand. At the same time, they convert UART signals from the microcontroller back into USB signals that the computer can process, allowing communication in both ways.

    However, if your computer doesn’t have these drivers pre-installed or if the drivers are outdated, you’ll need to download and install them manually. This is especially common with older operating systems or when using budget-friendly development boards that rely on less common USB-to-UART bridges.

    Hint: Check out the differences between the ESP32 and the ESP8266 here.

    Why Some Computers Don’t Need Additional Drivers

    Some operating systems, particularly newer versions of Windows, macOS, and Linux distributions, come with pre-installed drivers for common USB-to-UART bridges. This means your board might be recognized automatically without any additional drivers.

    Step 1: Identify Your ESP32 USB-to-Serial Chip

    Depending on your development board, there are different USB-to-Serial chips. The two most common chips are Silicon Labs (CP210x) chips and WCH (CH340) chips. Both need different drivers, so we need to identify which chip we have and what driver we need to download.

    As a rule of thumb, many ESP boards like the ESP32 DevKitC use CP210x chips, while the CH340 is found in most budget-friendly boards.

    But to make sure, we look at the board directly or check its documentation to see which chip it uses. On the board, look at the chip next to the voltage regulator. The type of chip is usually written on it.

    ESP32 USB-to-Serial Chip
    ESP32 Dev Module WCH CH340 Chip

    In my case of a budget ESP32 Dev Module, there is a WCH CH340 chip.

    Step 2: Download and Install the USB Drivers

    After you identified the USB-to-Serial chip on your board, you need to install the corresponding driver. In the following, I will explain how to install the USB drivers for ESP32/ESP2866 on Windows.

    For CP210x (Silicon Labs) Chips

    If you identified a Silicon Labs chip on your ESP32 development board, you need to download the CP210x Windows Drivers from the official Silicon Labs Drivers page.

    Install USB drivers for ESP32 on Windows - Download Silicon Labs CP210x Windows Drivers

    Next, extract the downloaded ZIP file, run the CP210xVCPInstaller_x64.exe, and follow the steps in the installer.

    Extracted Zip File

    That’s it! Your microcontroller board with a Silicon Labs USB-to-UART bridge is now ready for use!

    For CH340 (WCH) Chips

    If you identified a WCH (CH340) chip on your ESP32 development board, you need to download the CH341SER.exe file from the official WCH Drivers page.
    Run the download .exe file and follow the steps in the installer.

    Driver Setup for CH34x drivers

    That’s it! Your board with a WCH (CH340) USB-to-UART bridge is now ready for use!

    Step 3: Verify the Installation

    Open the device manager on your Windows computer and expand the Ports (COM & LPT) section. Then, plug in your ESP board.
    You should see a COM port saying something like CH340 or CP210x. If that’s the case, the installation was successful!

    Drivers for ESP32: Check in Device Manager

    It’s time to start programming your ESP32 board! Here’s how to set it up in the Arduino IDE.

    Install USB Drivers for ESP32: Wrapping Up

    Some computers might be missing the correct drivers for communicating with the USB-to-UART bridge on your development boards. Therefore, we need to install them manually.

    Following these steps, you should have your ESP32/ESP2866 connected and ready for development. If the issues persist, double-check your drivers, cables, and IDE settings.

    Did you know there’s a way of uploading code to your ESP over Wi-Fi without a USB cable? Check out this post about Over-the-Air Programming.


    Share your thoughts and experiences with ESP32 boards in the comments below!

    Happy coding!

    Links marked with an asterisk (*) are affiliate links which means we may receive a commission for purchases made through these links at no extra cost to you. Read more on our Affiliate Disclosure Page.

    Share this article

    Leave a Reply

    Your email address will not be published. Required fields are marked *