понедельник, 17 марта 2008 г.

Настройка Genius G-Pen 560 в (K)ubuntu 7.10

Как и обещал, опишу настройку графического планшета Genius G-Pen 560 в (K)ubuntu 7.10.
При подключении к компьютеру G-Pen 560 определяется как обычная мышь, т.е работает в режиме relative и силу нажатия на перо не отрабатывает. Нам нужно сделать все наоборот - вогнать планшет в абсолютный режим и отрабатывать силу нажатия.

Данный планшет поддерживается драйвером WizardPen, его можно собрать из исходников, а можно (нужно) взять готовый:

wget http://www.dallerweb.dk/ubuntu/wp/i386/wizardpen_drv.so

и поместить его в нужную директорию:

sudo cp wizardpen_drv.so /usr/lib/xorg/modules/input/

Теперь узнаем под каким именем планшет известен системе:

cat /sys/bus/usb/devices/*/product

В выводе этой команды ищем название планшета. У меня он определился как G-Pen.
Далее подсистеме udev объясняем что у нас есть еще одно usb устройство и его нужно определять как /dev/tablet-event. Для этого создаем в /etc/udev/rules.d новый файл 010-local.rules, или, если он уже существует, добавляет в него строку для нашего планшета:

BUS=="usb", KERNEL=="event*", SYSFS{product}=="G-Pen", NAME="input/%k", SYMLINK+="tablet-event", MODE="0666"

Перезапускаем udev:

sudo /etc/int.d/udev restart

В директории /dev/ появится ссылка tablet-event.

Настало время править конфиг xorg.conf.
Добавляем секцию, определяющую графический планшет и его параметры:

Section "InputDevice"
Identifier "WizardPen Tablet"
Option "SendCoreEvents" "relative"
Driver "wizardpen"
Option "Mode" "Absolute"
Option "Device" "/dev/tablet-event"
Option "TopX" "66"
Option "TopY" "196"
Option "TopZ" "128"
Option "BottomX" "12000"
Option "BottomY" "9000"
#Option "BottomZ" "300"
Option "MaxX" "12000"
Option "MaxY" "9000"
Option "MaxZ" "1023"
EndSection

И добавляем ссылку на планшет в секцию ServerLayout:

Section "ServerLayout"
Identifier "Default Layout"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "WizardPen Tablet" "AlwaysCore"
...
В Х-сах мышь висит на эвенте /dev/input/mice, который принимает запросы от всех указательных устройств. Чтобы мышь нормально работала при подключенном планшете, ее нужно повесить на собственный эвент. У меня это /dev/input/mouse1

Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
# Option "Device" "/dev/input/mice"
Option "Device" "/dev/input/mouse1"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSection
Перегружаем X-сы. Предупреждаю, что планшет должен быть подключен, иначе Х-сы не стартуют. Где-то видел для этого хак - нужно внести еще такую секцию в xorg.conf:

Section "ServerFlags"
Option "AllowMouseOpenFail" "on"
EndSection
После всех этих плясок с бубном система узнает наш планшет... но сила нажатия так и не работает... Тут есть два пути. Первый - загрузиться в виндах (с установленными драйверами), чтобы планшет инициализировался. После этого, не отключая планшет, перегрузиться в Линукс. G-Pen заработает как и ему положено, с отработкой силы нажатия.
Второй путь - скачать и собрать утилитку init-gpen, которая зашлет нужные байты в планшет. Порядок действий такой:

1. sudo rmmod usbhid
2. ./init-gpen
3. sudo modprobe usbhid
4. Restart Xorg

Правда на 4-м пункте у меня иногда Х-сы не перегружаются. Я просто ребутаю всю систему. Главное не отключать планшет, иначе придется выполнять 1-4 пункты заново.

Для настройки кнопок пера нужно выполнить команду:

xinput set-button-map "WizardPen Tablet" 1 3 2

или, при возникновении проблем

xinput set-button-map "WizardPen Tablet" 1 0 0

Все. Планшет полностью готов к работе.

Сила нажатия пера работает в Gimp и inkscape. В Gimp заходим в Файл->Настройка->Устройства ввода->Конфигурирование устройств ввода, добавляем WizardPen Tablet, Режим - Экран.
Радуемся жизни, она прекрасна.

17 комментариев:

Анонимный комментирует...

Hello. This post is likeable, and your blog is very interesting, congratulations :-). I will add in my blogroll =). If possible gives a last there on my blog, it is about the Home Theater, I hope you enjoy. The address is http://home-theater-brasil.blogspot.com. A hug.

Анонимный комментирует...

Спасибо огромное, сейчас будем пробовать! А то уже второй месяц планшет валяется в ящике стола.

Анонимный комментирует...

Спасибо за интересную статью.

Nez комментирует...

Статья хорошая, только вот я не могу создать файл rules т.к. etc/udev/rules принадлежит root'у, а войти под рутом у меня не получается...

Nez комментирует...

Сори, разобрался, все сделал - не работает! то есть работает как и с самого начала, без всего этого - не учитывает силу нажатия и при отрыве стилуса от планшета думает что нажимается кнопка...

Анонимный комментирует...

добрвй день. я плохо разбираюсьв таких вещах.
я преобрел планшет G-Pen 560
драйвер с компакт диска устанавливался некоректно.
И после недолгого пользования отказался работать вообще.
Скачивал драйвер с сайта. та же проблема.
Драйвер вроде бы устанвавливается. но не запускается приложение настроек планшета.
(пробовал на 3х разных компьютерах)
планшет ни как не реагирует. при загрузке Видновс индикатор наченает мигать, что говорит о том что с самим планшетом все впорядке.
Он не работает дажекакмішка (((
ПОмогите пожалуста решить эту проблемму. Нигде полезной информации не нашел

Nez комментирует...

aleksde, ХЗ, под виндой у меня лично все работает.. драйвер скачивал с их сайта. А здесь вообще-то обсуждается планшет не под windows а под linux..
П.С. забил я на попытки настроить планшет г-пен под убунтой.. куплю себе ваком=)

Анонимный комментирует...

Посмотрите по ссылке -->> https://help.ubuntu.com/community/TabletSetupWizardpen
Всё есть что необходимо, в том числе новый драйвер ;) Убунтейцы толковые ребята, всегда эт знал.

Анонимный комментирует...

/TabletSetupWizardpen

Felix комментирует...

мда, после таких статей понимаешь почему линукс не сильно популярен.

А с watcom'овскими планшетами ситуация лучше? Или же такие же пляски приходиться совершать?

Nez комментирует...

felix, с вакомовским дела получше, но некоторые пляски всеже надо будет исполнить=) но их намного меньше понадобится) в убунте 8.04 ваком работал замечательно. обновился до 8.10 - появились косяки...

klek комментирует...

8.10 еще не стабильна, может поэтому косяки.

EvilSon комментирует...

Всё работает, кроме того, что никак не реагирует на нажатия. Когда запустил wizardpen-calibrate, оно всё прекрасно определило, т.е. на нажатия среагировало. Но в гноме ничего не могу нажать. В чем может быть дело?

Анонимный комментирует...

у меня после
Перезапускаем udev:

sudo /etc/int.d/udev restart

В директории /dev/ НЕ появится ссылка tablet-event.(((

Ubuntu 9.04 что делать?

explicit_noise комментирует...

Та же проблема...

Анонимный комментирует...

Спасибо за новост

Фрай комментирует...

А в opensuse этот способ сработает?