Содержание

Использование TouchScreen совместно с X-Server

Возникла у меня задача, подружить пингвина с тачскрином. Имени его я к сожалению не знаю, производитель предположительно Clear Tek. Тач скрин подключается к обычному последовательному порту (у меня /dev/ttyS0) на скорости 9600.

В xfree86 v4.3.0 идущем с knoppix 4 всё нужное уже есть. В ubuntu 6.06, где используется xorg 7.0, драйвер по умолчанию не установлен.

Драйвер в xorg 7.0

xorg 7.0 входящий в состав ubuntu 6.06 drapper не содержит в своём составе драйвера mutouch. Но он есть в xorg 6.8.2 входящий в состав ubuntu breezy.

deb http://archive.ubuntu.com/ubuntu/ breezy main restricted
# apt-get update
# apt-get install xserver-xorg-input-mutouch
# cd /usr/lib/xorg/modules/input
# ln -s /usr/X11R6/lib/modules/input/mutouch_drv.o

Конфигурирование

В интернете нашел XFree86-Touch-Screen-HOWTO. Но к сожалению не всё оказалось гладко. Непосредственно воспользоваться HOWTO не удалось, и пришлось повозиться.

Для начала я скачал предложенную программу настроек touchcal-0.1.tar.gz, но у меня она заработала не корректно. А именно - указатель оказывался все время в одном месте. Но это не беда. Когда касание распознаётся, программа выдаёт координаты касания. Потыкав в углы экрана и собрав статистику координат, я получил искомое: минимальные и максимальные координаты экрана.

В конфигурационный файл x-server'а нужно добавить секцию.

Section "InputDevice"
	Identifier	"TouchScreen"
	Driver	"mutouch"
	Option	"Device"	"/dev/ttyS0"
	Option	"Type"	"finger"
	Option	"MinX"	"14281"
	Option	"MaxX"	"3045"
	Option	"MinY"	"13964"
	Option	"MaxY"	"3738"
	Option	"SendCoreEvents"	"yes"
	Option	"Type"	"finger"
EndSection

По сравнению с предложенной в HOWTO здесь добавилась опция Option «Type» «finger», без неё у меня иксы вылетали с ошибкой. И вместо длинных опций типа MinimumXPosition применены короткие. Опять же, потому что длинные не воспринимались.

Указываем использовать это устройство.

Section "ServerLayout"
...
        InputDevice    "TouchScreen" "CorePointer"
...
EndSection

Мышь и тачскрин прекрасно дружат, и не спорят друг с другом.

Подбирать значения MinX, MaxX, MinY, MaxY следует тщательно. С первого раза наверняка не получится.

~~LINKBACK~~