Arduino Nano CH340

Introduction: Arduino Nano CH340

About: Hello, My name is Samuel, I am a student. I love micro controllers like arduino, they are my favorite interest. I also do geocaching, a worldwide treasure hunt game. I hope you enjoy my instructables! Samuel

If you are like me and ordered a cheap arduino nano clone from a chinese website like aliexpress or banggood, chances are that they come with the cheaper CH340 USB to Serial chip. This is a cheap chip that manufacturers exploit to make the clone a lot cheaper. This can also be a downside. For me, being a mac user, I had a real hard time finding drivers etc for it. In the end I found some drivers, which were pretty good and I finally could get a blink sketch uploaded. I now want to share my experience for future buyers so you can get it working a lot faster. Enjoy!

Step 1: Drivers

Basically, let me put it this way. Buy from chinese site, get chinese drivers. I got my drivers from here. Once you have downloaded the file. Unzip the install file and start the install process. Once this is done, reboot your computer. ALTHOUGH WAIT. If you have mac and are running yosemite. You will need to follow the instructions in the next step. If you are not a yosemite user, please skip the next step and restart your computer.

Step 2: If You Have Yosemite

For the drivers to work for you, you will have to do this before you reboot your mac:

1. Open terminal

2. Write the following (just copy from here): sudo nvram boot-args="kext-dev-mode=1" Do not ess up here. It may ruin your computer if you write the wrong code.

3. Once you have pressed enter, terminal will prompt you for your user password. Insert this and press enter.

4. Once done, restart your computer.

Step 3: Testing

If everything is done correctly and there were no errors appearing. You should be able to restart your arduino IDE and see the port. For my mac it is usually like above in the picture but sometimes it changes. You will also notice that once in a while (maybe 1 time of 3) you will get errors when uploading but you do not have to care, the code will usually upload either way.

I hope this tutorial helped you and remember that the CH340 chip is a bit complicated and it may also be used in other cheap arduino board clones. Thanks for reading and once again, I hope it helped you.




  • Tiny Home Contest

    Tiny Home Contest
  • Metalworking Contest

    Metalworking Contest
  • Fix It! Contest

    Fix It! Contest

56 Discussions

I went to

for the driver download as you suggested but I see no download link for any of the files and I do not read or speak Chinese. Do you have links to the driver downloads that are not html pages?

This is super helpful!! Thanks for posting! Wouldn't have been able to get this working on my own without these drivers.

I ran this step without having Yosemite, then restarted. My Mac won’t turn on, the led on the charger won’t either. Anyone familiar with solutions ?

Upon restart my Mac remained off. I can’t seem to turn it on via the power button, and the charger LED remains off.

This is the MOST ANNOYING issue I have found using a Mac. I did the csrutil thing and just can´t make this thing work. Anyone having the same issue with a USB-C only MacBook Pro??

Oops you can't copy paste that you'll have to write it

Thanks! So helpful...

If your running Sierra or later get your driver here:

Driver installation restart ...hold ⌘-R during start up.

In recovery mode now, select Utilities -> Terminal and copy paste:

$ csrutil enable --without kext

Press enter, type:

$ reboot

Login and open Arduino IDE (appears to reinstall) -> Tools

Board: "Arduino Nano"

Port: "/dev/cu/wchusbserial1420"

Test it with Examples -> Blink.

This worked first try for me thanks to all of you.


7 months ago

What about the ch340c chip?

Thanks so much for this instructible!


10 months ago

Thanks, works fine (Win7 -64)

Ou ou. I missed the step 2, shame on me, just installed without "sudo nvram boot-args="kext-dev-mode=1" and now the screen freezes after starting the computer, Keyboard and trackpad non-reactive, not even a plugged one. How can I revert that? Argh. On Sierra with a MBP 5,1.

Yes, these CH340 may have drawbacks but they have a HUGE ADVANTAGE vis-a-vis the FTDI's: they are not bricked on Windoze. Be careful guys and girls, the FTDI chips get bricked with the new Windoze drivers.

1 reply

I can't get this working with Windows 10 - I run the install for the driver then Windows takes over and tries to load its own drivers - then I keep getting Code 31 in device manager on the nano

Thank you! Works well!

I am running Mac Sierra, and after following your instructions, installing the driver and running the boot command "csrutil enable --without kext" listed below, my Mac now kernel panics and reboots when plugging the Arduino Nano into the USB port. What do I do now? How do I uninstall the driver?

4 replies

Use this link

The china link is the bad one

sorry it was this site: