Site menu:


Recent Posts

Site search



Arduino Nanos, Chinese Clones and WCH CH340 Drivers

One of the things I’ve learned during my recent electronics tinkery, is that China produces very cheap components. Intellectually I knew this to be the case, but after a few searches on Amazon I discovered in a much more practical way quite how cheap they are. So, I now have a big ‘bits’ box full of sensors and displays, which I’ve been playing with. However, one recent foray didn’t work quite as well as expected until this morning – Arduino Nano clones.

Arduino Nano
It’s so tiny!

The Nano is, as you may expect from the name, a tiny Arduino. It is, as with all Arduinos, open source and designers Gravitech have published the schematics. This, inevitably, led to boards being produced in China and sold around the world for stupidly small amounts of money. For example, in the UK a bare Nano (no soldered headers) will set you back about £27 from Farnell, however, the pair I picked up from eBay (with headers) set me back £2.79 each, including shipping and a USB cable. However, things are never that simple…

The original Gravitech schematic had an error in it. The USB controller on the original Nano has a TEST pin, that should be pulled low when you’re using the chip. However, the reference design had it floating, which leads to entirely random USB operation and a not particularly reliable piece of kit. The Gravtech produced Nanos were patched early on, but many of the clone boards used the original design, complete with error.

Fortunately, it’s a known issue and there’s a known solution: solder the reset pin (26) to the analogue ground pin (25) – there are a few guides to the fix online. So, when my Chinese Nanos didn’t work, I assumed it was that issue, and started looking for really really fine soldering iron tips.

However, when checking out my boards this morning to see what I’d actually need to solder (and having seen pictures now, it’s something I’d not even try – my hands are way too shaky), I found out that I don’t have the same USB controller. The problem also didn’t present itself in quite the same way – the USB just didn’t connect rather than spitting out a pile of errors. It seems that some of the Chinese producers have switched over to using a WCH CH340 chip instead of the FTDI chip that’s in the spec – the current theory is that licensing the chip is too expensive. Fortunately, while my Nanos were still not working, the fix was much easier and doesn’t involve me burning myself.

Not only does it say CH340 on it, it has way fewer pins that the FTDI chip

Simply put, you need a driver for the CH340 chip installed on your computer. WCH have drivers from the end of 2013 on their (remarkably slow) website – download them, install them, reboot (as necessary), play with your cheap Nano. There’s an extra step on a Mac running Yosemite (and probably later), as the driver isn’t signed. You can find details here, but it’s just running a command to disable checks for signed kernel extensions. That’s potentially a dangerous thing to do, but I’ve not heard of anyone having their Mac destroyed by a malicious kernel extension yet…

Update: the drivers have moved. You can now find them here. Thanks to Mike in the comments.

And now that I have an even smaller microcontroller, it’s time to start actually thinking of things to do with it. So far I’ve managed to plug it into a breadboard. Well done me.


Comment from charles
Time 7th March 2015 at 11:42 am

thank you
for helping me to install the driver for the ch340
thank you very much, you are the best

Comment from mihaisofti
Time 24th June 2015 at 12:29 am

I followed your solution, and it seemed to work, until I rebooted. Since then, as soon as I connect the nano, the screen darkens and a message appears telling me to restart by holding down the power button until it shuts down, then press the power buttton again to boot up, but the same thing happens. Interesting that it worked before I rebooted. Anyone have any ideas for a fix?

Comment from mihaisofti
Time 25th June 2015 at 2:12 am

I have the same problem. Running 10.6.8. Also worked before the reboot. I’ve given up on nanos with ch340g; I’ve got a box full of them. Found ebay nanos with FTDI chip, awaiting their arrival. Will report back as and when.

Comment from billy
Time 25th June 2015 at 7:17 am

No clue, I’m afraid – such is the peril of using cheap nanos rather than ‘real’ ones. FTDI ones should be fine and hopefully weren’t much more expensive.

Comment from THEM
Time 10th July 2015 at 6:21 pm

Downloaded the CH340 driver (may well have been from the same link you helpfully give) and installed it – all works fine. Once you’ve installed that driver though, go to Microsoft “Windows Update” and you should (certainly I did for “Windows 7 x64”) find a signed driver which won’t die on you on the next reboot – it’ll be listed as an optional update.
Hope that helps, E.g., anyone with a box full of cheap Chinese Nano-Clones 🙂

Comment from Mike_Malaysia
Time 14th June 2018 at 11:50 am

Driver link now:

Write a comment