MyTetra Share
Делитесь знаниями!
Настройка планшета Wacom под Ubuntu с чувствительностью нажатия
Время создания: 08.08.2009 15:24
Раздел: Компьютер - Linux - Манипуляторы - Планшет Wacom
Запись: xintrea/mytetra_syncro/master/base/0000001183/text.html на raw.github.com

1. Убедиться, что ядро видит планшет

Вначале нужно убедиться, что планшет видит система. Для этого надо выдернуть и через несколько секунд засунуть обратно USB разъем планшета в компьтер. После чего дать команду

dmesg

в последних строчках вывода этой команды должно быть написано, что планшет был увиден и подключен. Строчки будут выглядеть примерно так:

input: Wacom Graphire3 6x8 as /class/input/input3

usbcore: registered new interface driver wacom

drivers/input/tablet/wacom_sys.c: v1.46:USB Wacom Graphire and Wacom Intuos tablet driver

Если ничего подобного нет (или пишутся ошибки) то это значит, что ядро не знает планшета, и нужно доустанавливать драйверы ядра для поддержки Wacom. Впрочем, в Убунту эти драйвера уже есть, и скорее всего планшет будет виден.

2. Убедиться, что видны данные, передаваемые по USB

Теперь нужно убедиться, что данные по USB интерфейсу поступают от планшета в компьютер. В Убунту уже внесена настройка, что планшет Wacom будет видиться как устройство /dev/input/wacom. Этот файл является линком на какой-либо файл /dev/input/event0 ... /dev/input/event9. При каждом подключении/отключении Wacom номер event может меняться, но /dev/input/wacom будет автоматически указывать на нужный файл устройства.

Чтобы проверить передачу данных, надо воспользоваться программой wacdump. Эта программа есть в убунтовских репозитариях, ставится стандартым путем через apt-get или synaptic или что кому больше нравится. От рута даем команду

wacdump /dev/input/wacom

и в консоли появятся строки, которые отображают передаваемые из планшета данные в реальном времени. В моем случае на экране видна вот такая информация

wacdump v0.7.4

MODEL=Wacom Graphire3 ROM=3.1-4

CLS=USB VNDR=Wacom DEV=Graphire3 SUB=ET_0608

56 B0 47 49 36 94 0A 00 00 00 00 00 00 00 00 00 V.GI6...........

TOOLTYPE=PEN IN_PROX=in

BUTTON=+00000 (+00000 .. +00000) POS_X=+08417 (+00000 .. +16704)

POS_Y=+02491 (+00000 .. +12064) DISTANCE=+00000 (+00000 .. +00063)

PRESSURE=+00000 (+00000 .. +00511) RELWHEEL=+00000 (-00001 .. +00001)

LEFT= MIDDLE= RIGHT= EXTRA=

SIDE= TOUCH= STYLUS= STYLUS2=

BT0= BT1= BT2= BT3=

BT4= BT5= BT6= BT7=

BT8= BT9= BT10= BT11=

BT12= BT13= BT14= BT15=

BT16= BT17= BT18= BT19=

BT20= BT21= BT22= BT23=

Подвигаем пером по планшету, понажимаем кнопки на пере, все эти действия будут отображаться в соответствующих строках. Особое внимание следует оратить на строчку PRESSURE. Если при нажатии на перо значения в ней меняются (при слабом нажатии - малое число, при сильном - большое), то это значит, что драйвер Wacom поддерживает определение степени нажима на перо.

Внимание! Бывают ситуации, когда программа wacdump работает некорректно. То есть запускается, показывает наличие wacom-девайса (например, MODEL=Wacom Graphire3), но не показывает передаваемые данные. С чем связана работа/неработа этой программы я понять не смог. Чаще всего программа нормально работает на свежезапущеной системе (кстати, она может работать без иксов), или после выдергивания-вставки USB разъема планшета в компьютер.

Кроме того, похоже, что wacdump блокирует и не отпускает устройство Wacom после завершения своей работы. Поэтому даже в настроенной системе, после запуска wacdump, определение степени нажатия в Gimp перестает работать. В общем, возьмите за правило, что после запуска wacdump следует перегружаться.

3. Проверяем настройку иксов

Вначале нужно проверить, что прописано в файле настройки иксов /etc/X11/xorg.conf. В Ubuntu, начиная с версии 7.04 уже присутсвуют опции работы с Wacom. Однако зачастую они не полные и обеспечивают только базовую функциональность планшета в виде аналога мышки. А для таких вещей как степень нажатия настроек по-умолчанию нет, и надо их добавить.

Вот как должны выглядеть настройки. После строки ########## идут опции, которых нет в стандартных настройках. Самая главная опция - это "SendCoreEvents" "on". Именно благодаря ей планшет может работать не только как мышка, но и обеспечивать более широкий функционал, например извещать компьютер о силе нажатия. Почему-то в стандарном файле xorg.conf в Убунту эта опция иначально отсутсвует.

Section "InputDevice"

Identifier "stylus"

Driver "wacom"

Option "Device" "/dev/input/wacom"

Option "Type" "stylus"

###########################

Option "SendCoreEvents" "on"

Option "Mode" "Absolute"

Option "USB" "on"

Option "PressCurve" "0,0,100,100"

Option "Vendor" "WACOM"

EndSection

Section "InputDevice"

Identifier "eraser"

Driver "wacom"

Option "Device" "/dev/input/wacom"

Option "Type" "eraser"

###########################

Option "SendCoreEvents" "on"

Option "Mode" "Absolute"

Option "USB" "on"

Option "Vendor" "WACOM"

EndSection

Section "InputDevice"

Identifier "cursor"

Driver "wacom"

Option "Device" "/dev/input/wacom"

Option "Type" "cursor"

###########################

Option "SendCoreEvents" "on"

Option "Mode" "Absolute"

Option "USB" "on"

Option "Vendor" "WACOM"

EndSection

4. Проверяем видимость Wacom в иксах

После внесения изменений в /etc/X11/xorg.conf перезагружаем компьютер (хотя можно перезагрузить только иксы Ctrl+Alt+BackSpace). И чтобы удостовериться, что устройство Wacom присутсвует иксах, даем команду получения списка устройств ввода оконной системы

xsetpointer -l

в ответ должна выдаться примерно такая информация

"eraser" [XExtensionDevice]

"cursor" [XExtensionDevice]

"stylus" [XExtensionDevice]

"Configured Mouse" [XPointer]

"Generic Keyboard" [XKeyboard]

наличие строчек "eraser", "cursor", "stylus" говорит о том, что планшет Wacom виден и поддерживается.

После этого надо убедиться, что оконная система видит события от Wacom. Для этого дадим команду

xidump -l

в ответ должны увидеть примерно следующее

eraser extension

cursor extension

stylus extension

Configured Mouse disabled

Generic Keyboard keyboard

наличие строчек eraser, cursor, stylus говорит о том, что оконная подсистема способна принимать события от Wacom. Степень нажатия передается через события, и если в выводе команды xidump присутсвуют только мышь и клавиатура, то степень нажатия определяться в X не будет! Нужно крутить дальше настройку иксов. Про себя скажу, что строчки eraser, cursor, stylus у меня появились только после того, как я прописал в /etc/X11/xorg.conf опцию "SendCoreEvents" "on" для каждого Wacom девайса.

Впринципе, после всех вышеперечисленных действий, определение степени нажатия пера должна работать.

5. Проверка работоспособности планшета в Gimp

Запустим Gimp, перейдем в настройки Файл->Настройка->Устройства ввода->Конфигурировать устройства ввода. Там будет выбор устройства (eraser, cursor, stylus) и по умолчанию эти устройства запрещены (Disabled). Вместо Disabled надо выбрать значение Screen или Window.

После применения настроек, можно попробовать порисовать аэрографом. Если все работает как надо, аэрограф будет реагировать на степень нажатия. Чтобы лучше увидеть, в опциях кисти аэрографа установите кисть побольше (размер ~20), убедитесь что стоят галки "Чувствительность к нажиму"->"Непрозрачность", "Размер". Скорость нужно выставить в ~80, нажим ~50. При таких настройках изменение характера штриха при разной степени нажатия будет хорошо видно.

 
MyTetra Share v.0.59
Яндекс индекс цитирования