Hello everyone.
For now I can identify two different USB-IDs depending on the Jumper
position on the board:
1-2 connected: idVendor=1a86, idProduct=5512
2-3 or none : idVendor=1a86, idProduct=5523
I'm not sure how I'd plug it to reach the Parallel Printer Interface
mentioned before.
The advertised position of this Jumper is 1-2.
Both positions are labeled with two different chinese symbols, "2-3" is
labeled with TTL as well.
Looking at the devices schematics I think its safe to revert my original
commit and I'm sorry to have caused you all this trouble.
At the time I added the device I missidentified the Jumper as voltage
level selector.
I had seen others using the board on youtube, with Jumper position 1-2;
and did not understand, why my system would not recognize it at all.
Sorry again and thanks for the effort
Jan-Niklas
On 2/9/22 15:18, Johan Hovold wrote:
On Tue, Feb 08, 2022 at 03:34:19PM +0200, Dmytro Bagrii wrote:
On 08.02.22 12:34, Greg KH wrote:
On Mon, Feb 07, 2022 at 02:08:23AM +0200, Dmytro Bagrii wrote:
This reverts commit 46ee4abb10a07bd8f8ce910ee6b4ae6a947d7f63.
CH341A has three different modes of operation selectable either by
hardware pin connections or by external EEPROM configuration. Each
mode is represented by corresponding product ID:
0x5523: Asyncronous Serial Interface
0x5584: Parallel Printer Interface
0x5512: EPP/MEM Interface
That does not corrispond with what Jan-Niklas said in the original
commit.
The page mentioned in the original commit is unavailable for me for some
reason.
I refer to the chip manufacturer documentation from here:
http://wch-ic.com/downloads/CH341DS1_PDF.html.
I have this kind of CH341A programmer:
http://www.chinalctech.com/cpzx/Programmer/Serial_Module/266.html
When mode selection jumper is set to UART:
[52206.834474] usb 1-4.1: new full-speed USB device number 10 using xhci_hcd
[52206.925482] usb 1-4.1: New USB device found, idVendor=1a86,
idProduct=5523, bcdDevice= 3.04
[52206.925494] usb 1-4.1: New USB device strings: Mfr=0, Product=0,
SerialNumber=0
[52206.973701] usbcore: registered new interface driver ch341
[52206.973710] usbserial: USB Serial support registered for ch341-uart
[52206.973720] ch341 1-4.1:1.0: ch341-uart converter detected
[52206.974424] usb 1-4.1: ch341-uart converter now attached to ttyUSB0
ch341 creates /dev/ttyUSB0 and it works as a serial port, as expected.
When mode selection jumper is set to I2C/SPI (it uses EPP/MEM Interface):
[52413.942116] usb 1-4.1: new full-speed USB device number 11 using xhci_hcd
[52414.033085] usb 1-4.1: New USB device found, idVendor=1a86,
idProduct=5512, bcdDevice= 3.04
[52414.033097] usb 1-4.1: New USB device strings: Mfr=0, Product=0,
SerialNumber=0
[52414.040928] ch341 1-4.1:1.0: ch341-uart converter detected
[52414.041930] usb 1-4.1: ch341-uart converter now attached to ttyUSB0
ch341 creates /dev/ttyUSB0 but it doesn't work.
To use CH341A programmer as I2C/SPI converter either external module is
required or userspace tools must be used. But they don't work until
ch341 handles 1a86:5512.
If unbind device from ch341 module:
# echo 1-4.1:1.0 > /sys/bus/usb/drivers/ch341/unbind
I2C/SPI tools start to work correctly.
(See "5.3.Function configuration" in datasheet at wch-ic.com/downloads/CH341DS1_PDF.html)
When CH341A is configured as EPP/MEM Interface it appears as 1a86:5512 and being mistakenly
handled by ch341 USB serial driver.
It is possible to use CH341A in EPP/MEM mode only if ch341 module is blacklisted, but it must be
unblacklisted every time to use CH341A as a serial converter. Also obviously it is impossible
to use two CH341A boards in different modes simoultaneously.
Please wrap your lines at 72 columns.
Sure. Should i submit new patch verіon then?
Please do so. But make sure you read this thread first if you haven't
already:
https://lore.kernel.org/r/YJ0OCS/sh+1ifD/q@xxxxxxxxxxxxxxxxxxxx
I don't remember all the details, but judging from a quick look it seems
we're just waiting for someone to resend the revert with a proper
explanation.
It would be good if Jan-Niklas could chime in too and confirm if he's
able to use the device in UART mode instead.
Johan