Handling touch screen with udev

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to


I am working on an embedded system with a USB touch screen (penmount
6000 controller). During service a mouse might be connected to the USB
port too. Though the touch screen is supposed to be always up I am
trying to make the system more robust so that in case the TS goes
offline for any reason and comes back online the touch screen stays in
a fail safe mode.

The Xorg driver opens the event? device under /dev/input (actually it
opens a symbolic link to the event source). The problem is this driver
does not support resuming operation for the go offline/back online
scenario. However, when the TS is reconnected the mice input device
receives events from the TS as well but as it is not calibrated, the
mouse pointer is out of phase. I played with some udev rules and the
only way I could make to have the system working was adding entries to
xorg.conf with references to /dev/input/mouse* instead of /dev/input/
mice and suppressing the addition of a mouse entry when the TS is (re)
connected using the rules bellow (60-penmount.rules file):

SUBSYSTEMS=="usb", KERNEL=="event*", ATTRS=="PenMount USB",\
SUBSYSTEMS=="usb", KERNEL=="mouse*", ATTRS=="PenMount USB",\

Unfortunately this solution requires the mouse (for service) to be
connected before X starts and it does not come back on line if
disconnected as it happens when the mice input device is configured as
mouse events source.

So my questions are:

1- Is there a way to make the touch screen not to be linked to the
mice device e.g. by means of an udev rule? I searched the Internet for
hints but could not find anything.

2- Is there some driver that implements that self recovery that I
could use as a template to rewrite the penmount driver do do the same?

FWIW the embedded system is based on a stripped down version of Ubuntu
7.04 (aka Feisty.)

Thank you very much in advance for any help


Site Timeline