Last Updated: 10/02/2024

Windows 11 CH340 driver problems

Components/How To >> Windows 11 CH340 driver problems

Windows 11 CH340 driver problems

CH340 Chip

I've used various Arduino UNO and ESP8266 D1 mini boards with CH340 drivers for some time and never had an issue.

This is a typical CH340 Arduino UNO, they don't have the socketed chip of the original UNO that makes them slightly cheaper to make. I have used a number of these over the years wihotu problem.... until Windows 11.

There is nothing wrong with this type of board, some people even think the CH340 version uses less power and for the end user the only difference is having to load the CH340 drivers but once loaded they work exactly the same.
CH340 Uno

However, for part of a forthcoming set of tutorials I needed a freshly installed machine and so reinstalled my main computer to Windows 11. Installation went well including the latest Arduino v2 IDE and the Old 1.8 version.

It was only after installation that I got asked to test a sketch on an old UNO that has the CH340 style chipset that I had an issue, the board would register in the device manager but would not upload, instead I got the error:

avrdude: ser_open(): can't set com-state for "\\.\COM5"
Failed uploading: uploading error: exit status 1

At first I thought I had messed up the board but later had a similar issue with a brand new ESP8266 D1 mini, then a 2nd one. This time with the error:

A fatal esptool.py error occurred: Cannot configure port, something went wrong. Original message: PermissionError(13, 'A device attached to the system is not functioning.', None, 31)

These boards had never been used so when the 3rd didn't work I started to get suspicious.

The problem was I had D1 mini boards and Uno boards all with CH340 chips that worked so what could be wrong?

I took out my Windows 10 laptop and all the boards worked perfectly.

At this point I was using the same cable so ruled that out. I then stated searching online and started to find some information about "fake" CH340 chips. Fake in that they are not made by the original supplier. The tell tail sign is that they have no writing on them.

Checked my boards and all the faulty ones had no writing on the CH340 chip as shown in the photos below.

This is a genuine CH340 Chip on a D1 mini.

As can be seen the Chip is clearly marked.
Genui9ne CH340 D1 Mini
This is the unmarked "fake" chip.

Although "fake", it still works under Windows 10.

So maybe unlicensed "copy"
Fake CH340 chip

The Solution

It took a couple of days seraching around the internet to fix the issue. The solution I wanted had to be simple to implement AND in my view Microsoft approved.

The problem is with the new Windows 11 driver version 3.8.2023.2

Open the Device manager (Right Click on Windows Start Menu).

When your Arduino with CH340 driver is plugged in you will see something like the image below.

Device Manger

Right click on the USB-SERIAL CH340 and select Properties. In the image below my version is 3.5.2019.1 that is the version installed on Windows 10.

If you have the Windows 11 version such as 3.8.2023.2 you have the driver that causes issues.

CH340 Driver Version

Just trying to install the old driver in the normal way doesn't work because Windows updates it to the latest driver.

After some searching I found the following link to a genuine Microsoft site.

https://answers.microsoft.com/en-us/windows/forum/all/how-do-i-force-windows-to-allow-me-to-update-a/33218b2e-5ccf-4415-872d-24cb59926f0d

It gives a set of steps to install an older version of the driver.

This is a link to the 3.5.2019.1 drivers that I used. Install the drivers BEFORE following the Microsoft instructions, they will then be ready for you to select in step 7.

Plug your board in and give it a try and hopefully your board will be working as normal.

The only BAD news is if you plug into a different COM port you will need to repeat the procedure for the new port.

Comments


To ask a question please email the address in this image: and use Windows 11 CH340 driver problems as a reference.