Skip to content

USB serial drivers for CH340, CP2102, and CH9102

Short answer: identify the USB bridge first, then use its manufacturer package. CH340/CH341 and CH9102 are WCH devices; CP2102 is a Silicon Labs CP210x device. Do not install all three drivers blindly.

Identify the bridge

  • Windows: reconnect the board while Device Manager is open. Read the device name or Properties → Details → Hardware Ids.
  • macOS: hold Option and choose Apple menu → System Information → USB. Apple documents this as the hardware-level check.
  • Linux: reconnect, inspect the latest kernel log, and note the USB VID/PID and driver bound to the device.

Native-USB ESP32-S2/S3/C5 boards are not CH340/CP2102/CH9102 devices. If a Cardputer, CoreS3, StickS3, T-Display-S3, T-Deck, ESP32-C5, or Flipper Wi-Fi Dev Board is missing, try its download-mode gesture before installing a bridge driver.

Windows

BridgeOfficial packageWhat to do
CH340 / CH341WCH CH341SERInstall or update this package only when Hardware Ids identify a CH34x bridge.
CH9102WCH CH343SERWCH's CH343 family package covers CH9102-class USB serial devices; M5Stack links this driver for StickC Plus2.
CP2102 / CP210xSilicon Labs CP210x VCPUse the current CP210x Universal Windows Driver. Silicon Labs lists v11.5.0 dated 2025-12-31.

After installation, reconnect the board and confirm that a new COM port appears. If the COM port exists but cannot open, use Failed to open serial port.

macOS — Apple silicon and Intel

  1. On an Apple silicon laptop, unlock the Mac and approve the accessory when prompted. Apple says Don't Allow permits power but blocks data.
  2. Confirm the device appears under System Information → USB before changing drivers.
  3. Install the bridge vendor's current macOS package only when the USB identity matches:
    • CH340/CH341/CH9102: WCH CH34x macOS driver. WCH's official macOS repository lists CH340, CH341, CH342, CH343, CH344, CH9101, CH9102, and CH9103 support.
    • CP2102/CP210x: Silicon Labs CP210x VCP. Silicon Labs lists macOS driver v6.0.3 dated 2025-05-30.
  4. Follow macOS Privacy & Security prompts from the signed installer, restart if the installer requests it, then reconnect the board.

Do not use an old third-party kernel extension when the vendor's current package supports your OS and CPU. The official WCH repository and Silicon Labs download page are the source of truth.

Linux

Linux distributions ship USB-serial drivers through the kernel. Silicon Labs states its CP210x Linux driver is maintained in the kernel tree. First confirm whether the device bound to a driver and created /dev/ttyUSB* or /dev/ttyACM*; do not compile an out-of-tree module merely because the browser picker is empty.

If the node exists but access is denied, add the user to the device's owning serial group according to the distribution documentation, then start a new login session. Espressif names dialout and uucp as common groups. If a current kernel truly lacks support for the detected WCH device, use WCH's official Linux repositories rather than an unsigned mirror.

Sources

Released under the MIT License.