How to Install CH340 Driver on Windows

What is CH340?

CH340 is a TTL (serial) to USB converter and vice versa. This chip has been used in some boards such as Arduino Uno CH340G, ESP8266, etc. The boards using the CH340 chip, don’t need a programmer in order to access the processor or to program them.
But there is a downside. An extra driver must be installed before starting to work with boards having this IC. In this tutorial, you will learn how to install CH340 driver.

You can apply this guide to all Windows versions, including Windows 11, 10, 8, and Vista. The process of installing the CH340 driver on Windows 11 closely resembles that of Windows 10 (or other earlier versions).

Installing CH340 Driver on Windows

If you connect your board to the computer before installing the driver, your computer will not recognize the board correctly and you will see following image in Device Manager.

To open Device Manager, search for it in the Windows Start menu.

Follow the steps below to install the CH340 driver:

Step 1: Download CH340 driver

First, download the CH340 driver from the this link.

You can also download the latest version of the driver directly from the manufacturer’s site.

Step 2: Install CH340 Driver

After downloading the CH340 driver, open it and click Install.

After successful installation you should see this message.


In some cases, you may need to restart Windows after the driver installation is complete.

Step 3: Checking Correct Driver Installation in Device Manager

If your CH340 driver has been installed correctly, and if you connect your board to a computer, then you can see its name and port number in the Port section. For example, my Arduino board is connected to COM7.

Step 4: Checking Correct Driver Installation in Arduino IDE

Open the Arduino IDE software. Go to the Tools menu and from the Port section, select the port number appropriate port that your board is connected to. Note that this port number must be the same as the number you saw in the previous step.

To make sure, you can upload a code that you have already written to your board. For example, I use the Blink example, which is a Built-in example of the Arduino IDE.

If your code is uploaded correctly to the Arduino, you should see a Done uploading message.


At this point, you have successfully installed the CH340 driver correctly and from now on you can easily upload the code you have written to your board.

Liked What You See?​
Get Updates And Learn From The Best​

Comments (30)

  • swetha chiliveri Reply

    Thank you so much, it worked! Just that I was getting “drive installation failed”, in that case I uninstalled and then installed again.

    January 28, 2021 at 2:57 pm
    • Mehran Maleki Reply

      You’re so welcome! And thanks for sharing your experience.

      January 30, 2021 at 1:43 pm
  • Eric Reply

    After I installes the driver (Step 2) I got the following message: “The driver is succesfully Pre-installed in advance.”

    And thats it!

    No connections to the board. (No Windows plug in sound, nothing)

    And yes, i tried it with several cables.
    And yes, I tried it on all my hubs.
    And yes, I uses a another computer.
    And yes, I cleaned ab my USB-Devices, my registry.
    And yes, I used different boards (3pcs), all of them are not working.
    And yes, they are from differnt stores.

    April 3, 2021 at 1:46 am
  • Mehran Maleki Reply

    What board are you using? Make sure that it comes with CH340 driver. Also open the Device Manager on your computer to see if any new device is added to the “Other devices” or “Ports (COM & LPT)” section when you plug in your board.

    April 3, 2021 at 3:58 am
  • Rens Reply

    Hi encountered exactly the same issue as Eric. Any solutions found?

    April 17, 2021 at 10:38 am
    • Mehran Maleki Reply

      First see if this comment helps you. If not, we can think of something else.
      “What board are you using? Make sure that it comes with CH340 driver. Also open the Device Manager on your computer to see if any new device is added to the “Other devices” or “Ports (COM & LPT)” section when you plug in your board.”

      April 18, 2021 at 5:02 am
      • Rens Reply

        Thanks for the comment. I am using a Mega2560 . Windows10 device manager shows an unknown device (error 43) , but not within COM&LPT section but within the USB controller section.
        In the com lpt section Com1 ,Lpt and the intel active management technology SOL at com3 is listed.
        Any suggestions will be welcome. Thanks

        April 18, 2021 at 10:47 am
  • Rens Reply

    Good news. Issue has been solved! The usb cable was too long , changed from 1.5 meter to 1 meter. Now ok

    April 18, 2021 at 2:10 pm
    • Mehran Maleki Reply

      Well, that’s great.

      April 19, 2021 at 4:55 am
  • umut Reply

    Hello ı have non original arduino uno. I cant see port and ı installed driver. But still cant see on my laptop. Driver says “the driver is succesfully pre- installed in advance. I couldnt see port. I did few things but still cant see. Can anyone help me ?

    April 19, 2021 at 6:46 pm
    • Mehran Maleki Reply

      Hi. Open the Device Manager on your computer to see if any new device is added to the “Other devices” or “Ports (COM & LPT)” section when you plug in your board. If nothing appears, there might be something wrong with the Arduino board you have.

      April 20, 2021 at 4:25 am
  • Ardhian Reply

    Thank you. In my case, I need to connect the board first before install. Otherwise, the installation was always fail.

    May 14, 2021 at 1:23 am
    • Mehran Maleki Reply

      That’s because when you connect the board, the PC can recognize the driver of it. So, it’s better that you connect it first.

      May 17, 2021 at 4:47 am
  • P Reply

    I hope that I can get a reply, I think I installed the driver correctly because the bafang programming tool can now see it. When I press conect it starts connecting and my cable starts flikkering a blue light.

    The problem now is that no information is showing up and I cant press “read”. The button stays grey. What is the cause of this and how do I solve it?

    July 31, 2021 at 11:00 am
    • Mehran Maleki Reply

      What’s the board you’re using? Do you see the port of that board in the “Device Manager” when you connect it to the PC?
      And also, as Rick said, try a different cable to see if it solves the problem.

      August 1, 2021 at 4:46 am
  • Rick Reply

    Try a different cable. Some just don’t work proerly.

    July 31, 2021 at 5:06 pm
  • DIego Reply

    Hi, I have an issue with the ch340 as well, I have download it and isntall, also got the pre-nstalled message. Went to my device manager and no “other devices” displeady as No porst also. the thing is I can´t see my 3D printer by the micro USB cable. Have tryed different things notihing works

    January 13, 2022 at 6:00 pm
    • Mehran Maleki Reply

      The device manager must display the PORT related to your 3D printer whether you have installed the right driver or not. If you can’t see the 3D printer in device manger when you connect it to your PC via a micro USB cable, there might be something wrong either the cable you’re using or with the 3D printer itself. So, to troubleshoot the issue, first check the device manager thoroughly to make sure no new PORT is added when you plug in your 3D printer. Notice that the new PORT might appear in “Other devices”, “PORTS” or “Universal Serial Bus controllers”. So, check all these 3 parts carefully. In the next step, in case you didn’t see any new port appear in the device manager, try different cables. This usually solves the problem. But, if the problem still existed, the problem might be related to the 3D printer itself.

      January 15, 2022 at 6:32 am

    I have the same problem with the ch340>rs232 board. My most recent trial was with a download directly from the chinese mfg. What happens is that when I click the Install I get “install fails” Interestingly, I have an ES32camera board and it appears to have the same chip a ch340 on it. That board dd installed fine. I thought I could simply copy the dd for that board over to the ch340 but of course its just not that simple. Something in a new windows update or something else causes that install to fail maybe windows is trying to protect us from a chinese chip provider.

    March 29, 2022 at 3:16 am
    • Mehran Maleki Reply

      I couldn’t fully understand your problem! If you have already installed the CH340 driver for another board, you don’t need to install it again for another CH340 board you have. You can just connect it to your PC and it will work just fine.

      April 4, 2022 at 5:27 am
  • don Reply

    Ch340 install problems. Since my last posting I have discovered some things that may help eliminate this problem. First thing to do is run/click the uninstall button. After doing that I was able to solve the install failed problem.

    Next, it is apparent that the Ch340 design does not meet USB standards in the area of critical timings. I say this because I have noticed that if I plug my Ch340 board directly into my USB port it works. However, if I use an extension USB cable most of the time it fails to work. From my work experience I know that the USB timings are very critical in order to maximize performance. Consequently if a chip designer is not careful about meeting USB timing specs then there will be situations when that chip will not work. This would also explain why sometimes it will work after installing into a different USB connector on the PC since those timings can vary as well. When I say I get it to work, all I have been able to do is install the wrap connector and get the adapter to talk to itself as verified with putty.

    Recently I got a ESS32-CAM card and it contains the same Ch340 chip and it has worked fine even with the USB cable so I suspect that the ch340 designer released an updated design of the chip that meets the USB timing specs or maybe some aspects of the board design are adjusted to help make the timings.

    Bottom line, unless you enjoy chasing down problems you will be better off buying the more expensive ftdi or other non-Chinese designed chips.

    March 29, 2022 at 2:57 pm
    • Mehran Maleki Reply

      Thank you so much for sharing your valuable experiences. That means a lot to us.

      April 4, 2022 at 5:31 am
  • Andrew A Hayes Reply

    The download is dead!

    June 17, 2022 at 2:58 am
    • Mehran Maleki Reply

      You’re right! The link is now fixed.

      June 19, 2022 at 6:32 pm
  • Jonathan Reply

    Hello, this is for my 3d printer, sometimes it works some times it doesn’t. I have tried installing CH341 and it says it’s preinstalled yet when I try to uninstall it says no device detected. I tried to manually select the LL file for CH341 however it said please select one that works with windows. It appears on the device manager but is recognized this can change from either plugging it into a USB extender and trying to put it in a random port for it to work but it has never worked directly connected to my pc. Any ideas would help thx

    March 12, 2023 at 1:29 pm
    • Mohammad Damirchi Reply

      Hi there
      you can connect a CH340 or CH341 device to your pc and then go to the device manager and right-click on your port and then select the “uninstall device” option. Next, install the driver again. This might help.

      April 8, 2023 at 1:42 pm
  • M. Hamza Khan Reply

    I installed the driver but it isn’t showing up anywhere when i open the device manager.
    p.s. i’m trying to connect my FS-i6X controller to my laptop.

    April 21, 2023 at 11:24 am
    • Mohammad Damirchi Reply

      What module are you using for communication?

      May 6, 2023 at 7:03 am
  • dennis Reply

    Hello I am trying to use this but keep getting a message saying it’s been preinstalled. But I don’t see the device in device manager or hear windows connect to it.

    January 29, 2024 at 5:42 am

Leave a Reply

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