Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: HOWTO: Настройка планшета Wacom с определением силы нажатия  (Прочитано 21700 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн xintrea

  • Автор темы
  • Новичок
  • *
  • Сообщений: 38
    • Просмотр профиля
Настройка планшета Wacom с определением силы нажатия

В этом HOWTO рассказывается, как настроить графический планшет Wacom в Ubuntu, и как сделать так, чтобы программа Gimp обрабатывала степень нажатия на перо. Все опробовано на Ubuntu 7.04 (!), однако должно работать и в более новых версиях.

Настройка расписана по шагам.


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. Впрочем, в Ubuntu эти драйвера уже есть, и скорее всего планшет будет виден.


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

Теперь нужно убедиться, что данные по USB интерфейсу поступают от планшета в компьютер. В Ubuntu уже внесена настройка, что планшет 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 в Ubuntu эта опция иначально отсутсвует.


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. При таких настройках изменение характера штриха при разной степени нажатия будет хорошо видно.

Все, графический планшет Wacom готов к нормальной работе.


Со всяческими пожеланиями, Сергей.
« Последнее редактирование: 19 Декабря 2008, 21:37:35 от xintrea »

Оффлайн GrayCat

  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
следует так же проверить секцию "ServerLayout" на наличие
## Wacom input devices
        InputDevice     "stylus"
        InputDevice     "eraser"
        InputDevice     "cursor"

Оффлайн BigDogs.Ru

  • Участник
  • *
  • Сообщений: 100
  • Да, это ДОГ
    • Просмотр профиля
    • BigDogs.Ru
Увидела это хауту. Достала из "секретного долгого ящика" старенький Graphire 2000-го года рождения. В "долгий ящик" он попал после отказа работать в WinXP - новых дров к нему не было, а старые безбожно глючили. Оттерла спиртиком. Сделала все по инструкции - работает!!!
Только в Karmic нет такого пакета - wacdump. Утилита идет в пакете wacom-tools.
И еще xsetpointer -l у меня почему-то говорит, что оно клавиатура  :o
~$ xsetpointer -l
0: "Virtual core pointer" [XPointer]
1: "Virtual core keyboard" [XKeyboard]
2: "AT Translated Set 2 keyboard" [XExtensionKeyboard]
3: "ImPS/2 Generic Wheel Mouse" [XExtensionPointer]
4: "Power Button" [XExtensionKeyboard]
5: "Power Button" [XExtensionKeyboard]
6: "Wacom Graphire" [XExtensionKeyboard]
7: "Wacom Graphire pad" [XExtensionKeyboard]
8: "Wacom Graphire cursor" [XExtensionKeyboard]
9: "Wacom Graphire eraser" [XExtensionKeyboard]
10: "Macintosh mouse button emulation" [XExtensionPointer]
Это не смертельно, я надеюсь?  :o
Но работает и на нажатие в Gimp'e реагирует!!! Какая удача, что я его не выкинула  :D
I Ubuntu!

Спасибо огромное за how-to!!!

 

Страница сгенерирована за 0.025 секунд. Запросов: 21.