Fork me on GitHub

Project Notes

#736 CH340 on Apple Silicon

Programming over CH340-based serial interfaces (such as with some versions of the Arduino Nano) from macOS on Apple Silicon

Build

Notes

Apple’s macOS does not come with drivers for the CH340 series of USB-Serial interface chips.

The CH340 is commonly used instead of FTDI chips and drivers. They are produced by 南京沁恒微电子股份有限公司 (Nanjing Qinheng Microelectronics Co., Ltd.).

Circuit Design

I am testing with a version of the Arduino Nano that uses the CH340G chip.

bb

schematic

Obtaining Drivers

Current drivers are available for Mac, Windows and Linux. Mac download here.

The download includes:

  • CH34xVCPDriver.pkg - I think for use with OS X 10.9 to OS X 10.15
  • CH34xVCPDriver.dmg - for use in later macOS version (this is the driver I am using)
  • CH34X_DRV_INSTAL_INSTRUCTIONS.pdf - installation instructions

Driver Installation

Running CH34xVCPDriver.dmg - drag to Applications to install as usual

install1

run the app from the Applications folder. Grant first-time access

install2

System Extension is initially blocked - go to System Settings

install3

From System Settings, allow the CH34xVCPDriver.app application:

install4

Install is a success!

install5

Programming a CH340G Nano

Plugging in my Nano with hte CH340G interface driver, I see it correctly recognised in the System Report USB tree. The Vendor ID 0x1a86 is the expected value.

system_report

Programming the Nano with the AppleSilicon.ino sketch works perfectly:

nano

Credits and References

About LEAP#736 ArduinoAVRApplemacOSUSB
Project Source on GitHub Project Gallery Return to the LEAP Catalog

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

LEAP is just my personal collection of projects. Two main themes have emerged in recent years, sometimes combined:

  • electronics - usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting
  • scale modelling - I caught the bug after deciding to build a Harrier during covid to demonstrate an electronic jet engine simulation. Let the fun begin..
To be honest, I haven't quite figured out if these two interests belong in the same GitHub repo or not. But for now - they are all here!

Projects are often inspired by things found wild on the net, or ideas from the many great electronics and scale modelling podcasts and YouTube channels. Feel free to borrow liberally, and if you spot any issues do let me know (or send a PR!). See the individual projects for credits where due.