Alcoma ASD + Wine + USB serial

Pokud potrebujete provozovat ASD Clienta pod linuxem ve Wine, zde je navod:

So, here is what I did to make it work. First of all, unless you want to run Wine each time as root, add yourself to the dialout group, so you can access serial ports without root permissions. This can be done from Terminal:

sudo adduser <your_username> dialout

You should log off and back in for the changes to take effect. This affects not only Wine, but all other Linux application that need serial port access.

The first step is to make the necessary symbolic links. Again, in Terminal:

ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com1
ln -s /dev/ttyS0 ~/.wine/dosdevices/com2

Adapt these commands for your situation. The first one is needed if you use a serial to USB adapter while the second one is for hardware motherboard ports. Add a symbolic link for each of the available serial ports. This command actually gives access to serial ports from Wine. And any Windows software where you can manually edit the serial port will work with only this. However many Windows apps allow user to select a port from a detected ports list. And they will detect nothing in Wine.

Now you need to add a Wine registry key as stated on Strangen0tes blog. Although you could use Wine’s regedit, it is easier to launch a text editor and add the required registry key(s). In Terminal:

gedit ~/.wine/system.reg

What you should add here is not clearly known, so you should try with the following options from Wine Wiki until you find something that works.

This is the common option that works with most applications:

[Hardware\\Devicemap\\Serialcomm] 1231984861
"Serial0"="COM1"

The other one is:

[Hardware\\Devicemap\\Serialcomm] 1131331688
"COM1"="COM1"

Both worked for me. Yet there may be apps that don’t read this registry key when looking for serial ports.

The association between COMx and /dev/ttyX is made in the symbolic link you made earlier.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *