Nano with CH340G USB chip driver

Nano with CH340G USB chip driver

For those of you familiar with buying Arduino-related products on eBay, you probably would have seen a slew of cheap Arduino Nano boards (specifically the V3.0 ATmega328 16M 5V) being sold ($4 vs. $7.50).

So, what’s the catch?

Well, instead of the more common FTDI (FT232) chip, these modules include a CH340G USB interface chip, which is apparently much cheaper. Now, while the FT232, and specifically the FT232R, can throw driver errors (see this post for discussion), the CH340G requires a specific driver. I found the driver online although there were only Chinese instructions. However, installation is very straight-forward (on a Windows 7 (64 bit) machine, at least.

HERE’S MY DISCLAIMER…

I cannot attest to the quality of the download files. I have tried it, successfully run a Microsoft Security Essentials scan and it does not trigger any issues with virus protection. Please proceed at your own risk!

Click here for the driver software

Before connecting the Nano to your USB port:

  1. Download the “ch341ser,exe” file and run it.The software extracts about 8 files.
  2. The software asks whether it can install the CH341SER.INF driver for the CH340 chip (Version 11/04/2011, 3.3.2011.11). Click INSTALL
  3. A Windows message asks whether the driver has installed correctly. Click YES.
  4. Connect your Nano.
  5. From Control Panel, open Device Manager and Ports. If installed correctly you should see an entry “USB-SERIAL CH340 (COMXX)

That’s it… Cheap Nanos for all!

31 thoughts on “Nano with CH340G USB chip driver

  1. Same problem – Windows 7, 64bit Ultimate. Used the wch.cn link to get the driver, installed as described and…nothing. Device Manager doesn’t show anything new, neither does Devices and Printers. IDE only shows COM1 (and nothing attached. If I try to upload I get an error with an authorization error.
    Unsuprisingly, I click Uninstall and the driver program comes back with No Devices…

  2. Please note: This was a big head ache for me:

    You cannot use a USB 3.0 port with this driver. I tried this and it didn’t program the unit properly. I was getting gibberish / garbled text from the serial monitor in the arduino IDE.

    if you previously installed it using a usb 3 port you must uninstall it, restart, plug the device into a usb 2 port and the reinstall.

    My node MCU which uses the same usb-serial works on 57600 baud.

  3. Alfonso said (lines above):

    “””Hi Adrian

    thanks for your help. I’m sure you invested some time to find the solution.

    Already it is working my dccduino nano from China

    Alfonso (Hermosillo, Mexico) “””

    But I moreover say: a lot of tanks.

    Eduardo Muñoz , Celaya, Gto. MExico

  4. I’ve bought one of these cheap nanos. I’m a total beginner (that’s why I bought a cheap one), but I don’t know if this driver works or not for me. At first I want to control the LED on the board, I wrote a tiny code, uploaded it with Ardunio console but no effect. I would like to use Ardunio console, and there are a lot of board types on the list. Which one to choose? How to start a small project?

    1. Honestly, a Beginner should probably start with a FTDI chipset model.
      https://www.arduino.cc/en/Tutorial/HomePage
      check out the built in examples on that page, the basic’s section should cover what you’re looking for
      if your on windows check “Ports (COM & LPT)” for children
      (could say USB Serial port (COM3)
      try disconnecting and reconnecting the usb cable from the host (PC) and see if something appears there. thats the easiest way to check.

      1. aS…
        I’m not sure I understand or share your argument.

        As someone who uses many development boards, I look for the best value for money. In my experience, these are now the ones that use the CH340 chip, and with the right driver, they work perfectly. You see this USB device on Arduino NANO and UNO, ESP8266 NodeMCU and WeMos boards and M3 Cortex boards, and many others.
        To take advantage of the lower cost and plentiful supply, all you need is the appropriate driver, and a simple explanation as to how to load them… I have tried to do both.
        I do not believe it is a “beginner” vs. “experienced” user debate. I feel it is an issue of choice and value for money.

        Many thanks,

        … Adrian

        1. people who are just starting out shouldn’t have to worry about that one extra thing if it’s going to become a barrier to getting started with something (applies to many things)

          for example you stated “I look for the best value for money” but buying the components alone is MUCH cheaper so why aren’t you buying ATmega328p’s and putting your own boot loader on there instead of using Arduino IDE? or using a FTDI breakout board to interface with the cheap Arduino vs. drivers? (as an Arduino uno/nano is basically just a breakout board for a ATmega328P)

          when you’re already making this easier for yourself using drivers, what right do you have to complain if somebody else should start off without that one extra step? you’re already skipping plenty – presumably for ease of access (to get to programming and controlling other items – the meat of most projects).

          I’m merely suggesting that a beginner should start with a FTDI board purely for ease. and eventually work towards making their own Arduino from parts, to fully understand how it works.

          all that being said, it depends on the users personal comfort level.
          thanks for posting links to the drivers

          1. aS,
            Thanks for your comments.
            Please note that I stated that “As someone who uses many development boards, I look for the best value for money…”. I can’t always justify buying chip components, designing and having a board made, etc. so I buy inexpensive modules, and there are loads to choose from.

            As my projects attest, I purchase a lot of ESP8266 WeMos Mini D1s, M3 CORTEX Maple boards and Nanos at around $4CDN, $3 and $2CDN respectively. For me there is generally little time or $$ incentive for me to bother with chip components – I don’t even bother with TTL-USB breakout boards as the USB interfaces are already included on these modules – because rapid prototyping of my ideas is my priority and is much more important than shaving off cents.

            Having said that, a lot has changed since I wrote this post two years ago. At that time, the cheaper CH340 was making its way into the knock-off market. However I would humbly suggest that the CH340 is now the defacto TTL-USB driver chip – its drivers are already included in the board descriptors within the Arduino IDE – so it’s a done deal.

            So, I agree with your conclusion… horses for courses!

  5. Hello,

    I followed all these steps and it still won’t work. I even tried the drivers from Microsoft’s Update Catalog site. I tried restarting. Power led is on , light led is on. Any further suggestions, please?

    1. Hello,

      I followed all these steps and it still won’t work. I even tried the drivers from Microsoft’s Update Catalog site. I tried restarting. Power led is on , light led is on. Any further suggestions, please?

  6. Hi! Thanks for the post. Worked perfectly for me. Driver installed without a hitch and my Chinese Nano is sitting on COM3 waiting for something to do.

  7. Hi Adrian

    thanks for your help. I’m sure you invested some time to find the solution.

    Already it is working my dccduino nano from China

    Alfonso (Hermosillo, Mexico)

  8. Hello there!

    I am Antonis from codebender, and I noticed that you faced some difficulties,
    when you tried to install the drivers for CH340G chip,on Mac.

    If you want to overcome this problem, without disabling your computers’ security settings,
    Maybe I can help you with this! We just released our new Mac drivers package,
    which includes a new driver that supports the CH340G chip on Yosemite and all OSX for Mac.
    This will help you to install these drivers securely, and
    all you have to do is to download and install them.

    You are more than welcomed to check them out (https://codebender.cc/),
    or read about them in our blog(http://blog.codebender.cc/2015/06/12/new-stuff-updated-mac-drivers/)

    You can also drop me a line if you want at support@codebender.cc, with any questions you might have.

    Thank you for reading so far and I hope I meet you in codebender soon!

    Best Regards
    Antonis CC

  9. Thanks for posting this. I just spent the last two hours trying to load arduino drivers but no luck until i found this.

  10. Allright so happy my cheap ass nano stopped fucking blinking red when i uploaded an empty sketch. Just found your hint and it work great
    i just had to delete the driver of my previous attempts after i installed your driver, reconnect the nano and good to go, no virus 🙂

Leave a Reply to Anonymous Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: