Cheap alternative usb to serial adaptor ( CH340 CH341 )

In the last years everybody saw the problematic situation with FTDI chips as well as with Prolific. Both companies faced the situation that there have been clones of their chips been created and sold to millions of devices. The companies started to build in additional detections into their software drivers or even added code to make the clone chips unusable when detected. At the end the end user was suffering from this situation.

So the “Makers” of tiny home-made devices and electronics hobbyists started to look for alternatives and it looks like the CH340 and CH341 chips are exactly what they need. The chips are very cheap, but documenation is only available in chinese. But luckily the people over at Seeedstudio offering a documentation:

http://www.seeedstudio.com/wiki/images/7/7c/CH340DS1_EN.PDF

For both the CH340 and CH341 I found following drivers for several operating Systems:

Win98 up to Win8.1 (32Bit & 64 bit):
http://www.wch.cn/download/CH341SER_ZIP.html

MacOS
http://www.wch.cn/download/CH341SER_MAC_ZIP.html

Linux
http://www.wch.cn/download/CH341SER_LINUX_ZIP.html

Android
http://wch.cn/download/CH341SER_ANDROID_ZIP.html

At least for Linux, I can say that there is offical code included in the Kernel ( see https://github.com/torvalds/linux/blob/master/drivers/usb/serial/ch341.c ). So in the new future it should be available broadly without any additional downloads.

 

A good hint by ColorsofJava: When using Mac OS X 10.10 (Yosemite) you need to ensure that unsigned drivers can be loaded by following

After installing the driver open a terminal and write:
sudo nvram boot-args=”kext-dev-mode=1″

Then unsigned “Developer” Drivers can be used in Yosemite.

 

 

2 thoughts on “Cheap alternative usb to serial adaptor ( CH340 CH341 )”

  1. Hallo,
    ich denke, es wird auch deutsch verstanden, wenn die Homepage eine deutsche Domäne hat ;-).
    Ich habe einen von den ‘billigen’ CH34X-Chips und der Linux Standardtreiber funktioniert leider nicht. Unter Windows ist das keine Problem (Treiber von der Herstellerseite).
    Ich habe auch Sourcen vom Hersteller, die es mir ermöglicht habe, unter Ubuntu auf einem Laptop die Schnittstelle erfolgreich anzusprechen (mussten kompiliert werden mit den Kernelsouren im “build”-Verzeichnis).
    Nun zu meiner Frage / Problem: Ich habe auf meinem Cubietruck ein Update auf einen der fertigen Kernels von dieser Domäne erfolgreich durchgeführt (für die Arbeit und Veröffentlichung an dieser Stelle vielen Dank!).
    Die Sourcen (bulid-Verzeichnis) sind aber keine Bestandteil der Zip-Files. Wie wurde der Kernel erstellt (bei mir 4.9.20-a)? Kann das Verzeichnis ergänzt werden?
    Vielen Dank für die Hilfe!

    Noch einen schönen Abend!

    Hardy

    1. Hallo Hardy,

      Die Sourcen sind die “originalen” von https://www.kernel.org/ . Im Falle von 4.9.20-a wäre das also https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.9.20.tar.gz
      Du kannst aber auch gerne Wünsche an weitere Module bei mir nennen. Die baue ich dann mit ein.

      Bei dem ch340/ch341 wird aber üblicherweise der CONFIG_USB_SERIAL_CH341 genommen. Dieser ist in meinen Kernels natürlich dabei:

      root@truckb:~# modprobe -v ch341
      insmod /lib/modules/4.10.0-sunxi/kernel/drivers/usb/serial/usbserial.ko
      insmod /lib/modules/4.10.0-sunxi/kernel/drivers/usb/serial/ch341.ko
      root@truckb:~#

      Gruß,

      Daniel

Leave a Reply

Your email address will not be published. Required fields are marked *

Protected with IP Blacklist CloudIP Blacklist Cloud