5

I have a USB to serial adapter. It works OK with my desktop computer, but no on my laptop. My desktop PC is a generic computer (Athlon 64 X2 6000+ on board MSI K9AGM, 6 USB 2.0 ports, no USB 3.0 ports), and my laptop is an HP ENVY4-1015DX (2 USB 2.0 ports, 1 USB 3.0 port)

My desktop has Ubuntu 12.04.2 64 bits, kernel 3.5.0-37. When I plug it into any USB port on this PC, I got this in kern.log:

Sep  9 15:31:07 amdx2 kernel: [   57.968035] usb 4-2: new full-speed USB device number 2 using ohci_hcd
Sep  9 15:31:07 amdx2 kernel: [   58.128306] usb 4-2: New USB device found, idVendor=4348, idProduct=5523
Sep  9 15:31:07 amdx2 kernel: [   58.128311] usb 4-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Sep  9 15:31:07 amdx2 kernel: [   58.302088] usbcore: registered new interface driver usbserial
Sep  9 15:31:07 amdx2 kernel: [   58.302530] usbcore: registered new interface driver usbserial_generic
Sep  9 15:31:07 amdx2 kernel: [   58.302544] USB Serial support registered for generic
Sep  9 15:31:07 amdx2 kernel: [   58.302548] usbserial: USB Serial Driver core
Sep  9 15:31:07 amdx2 kernel: [   58.318155] usbcore: registered new interface driver ch341
Sep  9 15:31:07 amdx2 kernel: [   58.318178] USB Serial support registered for ch341-uart
Sep  9 15:31:07 amdx2 kernel: [   58.318194] ch341 4-2:1.0: ch341-uart converter detected
Sep  9 15:31:07 amdx2 kernel: [   58.340514] usb 4-2: ch341-uart converter now attached to ttyUSB0

However, when I plug exactly the same adapter with the same USB cable into any port on my laptop (it doesn't matters if I plug it into a USB 2.0 or USB 3.0 port), I got:

Sep  9 15:31:50 envy4 kernel: [10776.099052] usb 3-1: new full-speed USB device number 37 using xhci_hcd
Sep  9 15:31:50 envy4 kernel: [10776.115364] usb 3-1: device descriptor read/8, error -71
Sep  9 15:31:50 envy4 kernel: [10776.235486] usb 3-1: device descriptor read/8, error -71
Sep  9 15:31:50 envy4 kernel: [10776.450932] usb 3-1: new full-speed USB device number 38 using xhci_hcd
Sep  9 15:31:50 envy4 kernel: [10776.467242] usb 3-1: device descriptor read/8, error -71
Sep  9 15:31:50 envy4 kernel: [10776.587459] usb 3-1: device descriptor read/8, error -71
Sep  9 15:31:50 envy4 kernel: [10776.802756] usb 3-1: new full-speed USB device number 39 using xhci_hcd
Sep  9 15:31:50 envy4 kernel: [10776.819142] usb 3-1: device descriptor read/8, error -71
Sep  9 15:31:51 envy4 kernel: [10776.939484] usb 3-1: device descriptor read/8, error -71
Sep  9 15:31:51 envy4 kernel: [10777.042877] hub 3-0:1.0: unable to enumerate USB device on port 1

My laptop has Ubuntu 12.04.3 64 bits, kernel 3.8.0-30.

I see that the main difference is that, in my PC, Ubuntu uses driver ohci_hcd, and in my laptop Ubuntu uses xhci_hcd. I've tried doing:

sudo modprobe ohci_hcd

And also tried:

sudo modprobe -r xhci_hcd

However, none of these works. In first case, no error at modprobe, but system still uses xhci_hcd. In second case, on modprobe it gives me an error:

FATAL: Module xhci_hcd is builtin

What else could I do to solve my issue? Thanks!

2 Answers2

1

I've found that my Serial-to-USB converter (ch341-uart) doesn't works with USB 3.0 ports. Unfortunately, my HP Envy doesn't have a USB 2.0 hub, all ports are reported as USB 3.0 ports to OS. Seems like this device isn't supported under USB 3.0. However, I've got a USB 2.0 hub. If I connect this hub to any port, and then connect the Serial converter to this hub, it works OK, even using xhci_hcd:

Sep 13 10:36:36 envy4 kernel: [ 1852.477261] usb 3-3: new high-speed USB device number 53 using xhci_hcd
Sep 13 10:36:36 envy4 kernel: [ 1852.493499] usb 3-3: New USB device found, idVendor=1a40, idProduct=0101
Sep 13 10:36:36 envy4 kernel: [ 1852.493504] usb 3-3: New USB device strings: Mfr=0, Product=1, SerialNumber=0
Sep 13 10:36:36 envy4 kernel: [ 1852.493508] usb 3-3: Product: USB 2.0 Hub
Sep 13 10:36:36 envy4 kernel: [ 1852.493811] hub 3-3:1.0: USB hub found
Sep 13 10:36:36 envy4 kernel: [ 1852.493842] hub 3-3:1.0: 4 ports detected

Sep 13 10:36:37 envy4 kernel: [ 1852.781193] usb 3-3.1: new full-speed USB device number 54 using xhci_hcd
Sep 13 10:36:37 envy4 kernel: [ 1852.798586] usb 3-3.1: New USB device found, idVendor=4348, idProduct=5523
Sep 13 10:36:37 envy4 kernel: [ 1852.798592] usb 3-3.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Sep 13 10:36:37 envy4 kernel: [ 1852.799069] ch341 3-3.1:1.0: ch341-uart converter detected
Sep 13 10:36:37 envy4 kernel: [ 1852.800220] usb 3-3.1: ch341-uart converter now attached to ttyUSB0
0

if anyone have problems with ch341 drivers on Ubuntu 14.04 I have a patched driver and it works with 3.13.X kernel:

https://www.mediafire.com/?3ph5x6ttc7ddde4

thanks to:

https://stackoverflow.com/questions/23040820/driver-ch341-usb-adapter-serial-port-or-qserialport-not-works-in-linux

carlos
  • 1