On Sat, Apr 23, 2022 at 03:51:46PM -0700, John Paul Morrison wrote: > Hi Johan > > This is the debugging output from the problem device - the chip version > does not match and there's no break message or quirk flags. > I compared the circuit boards and the problem device has a 12 MHz crystal > and the chip is labelled WCH CH340G. > The working device doesn't have a crystal and the chip is unmarked or > scrubbed. The circuit boards and construction appear the same. > > Comparing datasheets the 340 requires an external crystal while the 341 can > use an internal oscillator, so the working devices have a 341 of some sort. > > I'll try a usbpcap/wireshark of the windows device - anything to look for? Compare the control requests sent during probe and open with those of the working device. In theory the bulk data could also packaged differently but start with looking at the control requests. You never answered my question on how this device is failing to work. Is receive working at all? Do you see anything being transmitted even if garbled? > Another question - the CH340/341 datasheets list the maximum speed as 2 > Mbps, and the MAX485 line diver says it can do 2.5 Mbps. > I have not been able to get them to work at 2 Mbps with either Linux or > Windows but they work at 1.5 Mbps. > Data is completely corrupted at 2 Mbps as if the baud rate is mismatched. > Curious if anyone has these working above 1.5 Mbps. I'm pretty sure we got both 2 Mbps and 3 Mbps to work accurately (at least at TTL level). See commit 35714565089e ("USB: serial: ch341: reimplement line-speed handling") that went into v5.5. > [2419514.614782] usb 3-3.1: new full-speed USB device number 34 using > xhci_hcd > [2419514.821688] usb 3-3.1: New USB device found, idVendor=1a86, > idProduct=7523, bcdDevice= 2.63 > [2419514.821694] usb 3-3.1: New USB device strings: Mfr=0, Product=2, > SerialNumber=0 > [2419514.821697] usb 3-3.1: Product: USB2.0-Serial > [2419514.831394] ch341 3-3.1:1.0: ch341-uart converter detected > [2419514.831434] usb 3-3.1: ch341_control_in - (5f,0000,0000,2) > [2419514.832185] usb 3-3.1: Chip version: 0x31 Note that the CH340G I have is here working correctly, but the chip version is reported as 0x30 like your functioning device. > [2419514.832190] usb 3-3.1: ch341_control_out - (a1,0000,0000) > [2419514.832680] usb 3-3.1: ch341_control_out - (9a,1312,b282) > [2419514.833181] usb 3-3.1: ch341_control_out - (9a,2518,00c3) > [2419514.833685] usb 3-3.1: ch341_control_out - (a4,ffff,0000) > [2419514.834987] usb 3-3.1: ch341-uart converter now attached to ttyUSB0 Johan