Serial port and USB to serial port conflict

I have a PC running openSUSE 12.2 x86_64. This PC has a serial port which is connected to an UPS. All is OK. I have inserted an USB to serial converter for a Windows program (Freeze Framer) running with crossover. When I launch this program, it functions correctly but the connexion between the PC serial port and the UPS is broken.
I have made the following tests:

lsusb

Bus 002 Device 002: ID 0bda:8187 Realtek Semiconductor Corp. RTL8187 Wireless Adapter
Bus 005 Device 002: ID 046d:c517 Logitech, Inc. LX710 Cordless Desktop Laser
Bus 006 Device 002: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

dmesg | grep tty

0.000000] console [tty0] enabled
0.439109] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
0.459881] 00:09: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
0.480144] 0000:00:03.3: ttyS4 at I/O 0x3440 (irq = 17) is a 16550A
0.973020] tty tty16: hash matches

** 947.451288] usb 6-1: FTDI USB Serial Device converter now attached to ttyUSB0**

I have created a symbolic link with my program in crossover:

ln -s /dev/ttyUSB0 ~/.cxoffice/Freeze \Framer/dosdevices/com3

I have inserted me in the dialout group.

When I launch Freeze Framer, it runs but the connexion between the PC serial port and the UPS is broken.

Where is the conflict?
Thank you in advance for your answer.

A forums technical advise for your next postings.

Please when copying/pasting from a terminal window into a post here, make your mouse sweep a little bit larger so that you copy not only the output, but also the prompt, the command and the prompt that follows. And then copy it between CODE tags, not QUOTE tags. That is using the # button from the toolbar.

On 2012-12-16 13:46, Gian-Piero wrote:
> I have a PC running openSUSE 12.2 x86_64. This PC has a serial port
> which is connected to an UPS. All is OK. I have inserted an USB to
> serial converter for a Windows program (Freeze Framer) running with
> crossover. When I launch this program, it functions correctly but the
> connexion between the PC serial port and the UPS is broken.

Because probably it steals the connection that the UPS uses. Nice Windows…


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

On 12/16/2012 04:14 PM, Carlos E. R. wrote:
> Because probably it steals the connection that the UPS uses. Nice Windows…

hmmmm…good thought…i remember in the old days (with Windows) you had
to really pay attention to the IRQs or if (for example) you clicked the
mouse the modem would disconnect, i don’t have any idea how, but if you
could FORCE Wine/Freeze Framer to NOT use IRQ 4 (but, i have no idea
which IRQ might be free)…

or, sorry i don’t remember … i think you have to find a Linux AND
Windows guru (i’m neither)…


dd

I think Carlos may be right - crossover perhaps discovers the serial ports, and generates the links that provide access to the serial ports (/dev/ttyS*), and this gets discovered and stolen by your windoze app.

I’m more familiar with wine, and for that one must explicitly supply the required serial port links, eg

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

so that the only serial port visibility would be the one you supplied for your usb-serial device. I wonder if it would be worth testing the behaviour of your app under wine, assuming it is possible of course…

Following on from that line of thinking, do you see any other serial port ‘dosdevices’ present?

ls -l ~/.cxoffice/Freeze \Framer/dosdevices/

Have you tried assigning another com port no. (just in case there is some other conflict)? eg com4 perhaps?

On 2012-12-16 16:48, dd wrote:
> On 12/16/2012 04:14 PM, Carlos E. R. wrote:
>> Because probably it steals the connection that the UPS uses. Nice
>> Windows…
>
> hmmmm…good thought…i remember in the old days (with Windows) you had
> to really pay attention to the IRQs or if (for example) you clicked the
> mouse the modem would disconnect, i don’t have any idea how, but if you
> could FORCE Wine/Freeze Framer to NOT use IRQ 4 (but, i have no idea
> which IRQ might be free)…

I don’t think a normal app can steal an IRQ in Linux, that must be done
by wine/crossover with root powers.

> or, sorry i don’t remember … i think you have to find a Linux AND
> Windows guru (i’m neither)…

Add wine to the mixture…


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

On 2012-12-17 02:26, deano ferrari wrote:
>
> I think Carlos may be right - crossover perhaps discovers the serial
> ports, and generates the links that provide access to the serial ports
> (/dev/ttyS*), and this gets discovered and stolen by your windoze app.

Yep.

> I’m more familiar with wine, and for that one must explicitly supply
> the required serial port links, eg
>
> Code:
> --------------------
> ln -s /dev/ttyS0 ~/.wine/dosdevices/com1
> --------------------

Yes, I think that’s the place to look at first.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

Thank you all.
I have tried different com ports, 3 to 8, and changing the link between comx and ttyUSB0. But there were no change.
I also have tried wine, the behaviour is the same.
I have also tried on another PC running openSUSE 11.3. but i have not use the PC serial port, but two USB to serial converters, and the problem did no appear.
Strange, is not it?

On 2012-12-17 13:06, Gian-Piero wrote:
> Strange, is not it?

If what I inferred is true, then not strange at all :slight_smile:


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))