I run into this problem trying to program an ESP8266 board, which uses the CH341 chip in the programming interface as a USB-to-Serial interface. The problem appeared after an upgrade from 19.10 to 20.04 (that I carried out yesterday).
This is the kernel I am using:
$ uname -r 5.4.0-58-generic
When I connect the ESP8266 board (a Wemos D1 mini) to the USB there is no activity on the syslog (or dmesg), and the kernel module is not loaded. In fact I do not see the /dev/ttyACM0 device in the /dev directory and no useful device appears in the Arduino GUI.
I have found the module in the kernel tree but, even forcing the installation, nothing happens:
augusto@Legion:~$ ls /usr/lib/modules/5.4.0-58-generic/kernel/drivers/usb/serial/ch* /usr/lib/modules/5.4.0-58-generic/kernel/drivers/usb/serial/ch341.ko augusto@Legion:~$ sudo modprobe ch341 [sudo] password di augusto: augusto@Legion:~$ lsusb Bus 002 Device 002: ID 05e3:0626 Genesys Logic, Inc. USB3.1 Hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 13d3:56a6 IMC Networks Integrated Camera Bus 001 Device 005: ID 0cf3:e500 Qualcomm Atheros Communications Bus 001 Device 006: ID 046d:c517 Logitech, Inc. LX710 Cordless Desktop Laser Bus 001 Device 004: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. 4-port hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub augusto@Legion:~$ lsmod | grep ch34 ch341 20480 0 usbserial 53248 1 ch341
Without this module it is impossible to work with a relevant number of SBC devices, besides the named Wemos D1 Mini.
Trying to solve the problem I also downloaded the module source from https://github.com/juliagoda/CH341SER and compiled on my PC, but with module signature problems.
If no help is available on this group, I'll appreciate a redirection to a more focused group.
Thank you for any help.