Установка и настройка планшетов Wacom неплохо освещена и подробно рассмотрена на многих блогах и форумах. В Ubuntu 9.04 базовые функции планшета поддерживаются по умолчанию, для более ранних версий рекомендую поискать варианты настроек в Google.
В этот документ вошли результаты моих попыток настроить свой планшет Wacom Bamboo не только как замену мышки, но и как нечто большее в ОС LinuxMint 7 (форк Ubuntu 9.04).
НАЧАЛО
Проверяем в менеджере пакетов на предмет наличия
Код: Выделить всё
xserver-xorg-input-wacom
wacom-tools
Если не установлены — устанавливаем. Лучше после этого перезагрузиться, чтобы поддержка планшета подхватилась ядром.
Создаем файл custom_wacom.fdi
Код: Выделить всё
sudo gedit /etc/hal/fdi/policy/custom_wacom.fdi
с таким содержанием (опции можно менять по своим потребностям)
Код:
<?xml version="1.0" encoding="UTF-8"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
<device>
<match key="input.x11_driver" contains="wacom">
<match key="input.x11_options.Type" contains="stylus">
<merge key="input.x11_options.TPCButton" type="string">on</merge>
<merge key="input.x11_options.KeepShape" type="string">on</merge>
<merge key="input.x11_options.Threshold" type="string">1</merge>
<merge key="input.x11_options.PressCurve" type="string">50,0,100,50</merge>
</match>
</match>
<match key="input.x11_driver" contains="wacom">
<match key="input.x11_options.Type" contains="eraser">
<merge key="input.x11_options.TPCButton" type="string">on</merge>
<merge key="input.x11_options.KeepShape" type="string">on</merge>
<merge key="input.x11_options.Threshold" type="string">1</merge>
<merge key="input.x11_options.PressCurve" type="string">50,0,100,50</merge>
</match>
</match>
</device>
</deviceinfo>
и сохраняем его
Для настройки Wacom имеется утилитка wacomcpl, которая по идее должна помочь сконфигурировать настройки планшета, а вот тут начинаются подводные камни. Для работы этой утилиты во-первых должны быть установлены библиотеки tcl/tk, во-вторых при ее запуске выводится унылое и девственно чистое серое окно.
Ну что же — лечим это безобразие.
Запускаем терминал и выполняем
Код: Выделить всё
sudo gedit /etc/init.d/wacomtohal
Вставляем нижеследующий код и сохраняем
Код: Выделить всё
#! /bin/sh
## find any wacom devices
for udi in `hal-find-by-property --key input.x11_driver --string wacom`
do
type=`hal-get-property --udi $udi --key input.x11_options.Type`
## rewrite the names that the Xserver will use
hal-set-property --udi $udi --key info.product --string $type
done
После этого последовательно выполняем команды
Код: Выделить всё
sudo chmod +x /etc/init.d/wacomtohal
sudo update-rc.d wacomtohal defaults 27
Ребутимся, запускаем wacomcpl и калибруем устройство.
Тут возможен еще один косяк — не сохраняются калибровки после ребута. Фиксим это дело. В терминале выполняем
Код: Выделить всё
sudo gedit ~/.xinitrc
находим строчку
Код: Выделить всё
. /etc/X11/xinit/xinitrc
и изменяем ее
Код: Выделить всё
#. /etc/X11/xinit/xinitrc
сохраняем и выходим. Идем в System>Preferences>Startup Applications (Система>Параметры>Запускаемые приложения) и создаем новый ввод с желаемым именем. Команда должна быть такой
Код: Выделить всё
sh /home/yourusername/.xinitrc
После этого все настройки будут сохраняться.
ПРОВЕРКА РАБОТЫ
Теперь последовательно проверяем планшет на правильность работы. Первым делом смотрим, видит ли его система. Для этого надо выдернуть и через несколько секунд засунуть обратно USB-разъем планшета в компьютер. После чего дать команду
Код: Выделить всё
dmesg
в последних строчках вывода этой команды должно быть написано, что планшет был определен и подключен. Строчки будут выглядеть примерно так:
Код: Выделить всё
[15222.104057] usb 8-1: new full speed USB device using uhci_hcd and address 4
[15222.318060] usb 8-1: configuration #1 chosen from 1 choice
[15222.320506] input: Wacom Bamboo as /devices/pci0000:00/0000:00:1d.2/usb8/8-1/8-1:1.0/input/input15
если такого нет, значит что-то не так с драйверами. Впрочем для Ubuntu все должно быть нормально.
Теперь нужно убедиться, что данные по USB интерфейсу поступают от планшета в компьютер. В Ubuntu уже внесена настройка, что планшет Wacom будет видиться как устройство /dev/input/wacom. Этот файл является линком на какой-либо файл /dev/input/event0 ... /dev/input/event9. При каждом подключении/отключении Wacom номер event может меняться, но /dev/input/wacom будет автоматически указывать на нужный файл устройства.
Чтобы проверить передачу данных, надо воспользоваться программой wacdump, которая является частью пакета wacom-tools. Команду даем от рута
Код: Выделить всё
wacdump /dev/input/wacom
и в консоли появятся строки, которые отображают передаваемые из планшета данные в реальном времени. Примерно так
Код: Выделить всё
wacdump v0.8.2
MODEL=Wacom Bamboo ROM=1.0-8
CLS=USB VNDR=Wacom DEV=Bamboo SUB=MTE_450
TOOLTYPE=NONE SERIAL=0x00000000
IN_PROX=out BUTTON=+00000 (+00000 .. +00000)
POS_X=+00000 (+00000 .. +14760) POS_Y=+00000 (+00000 .. +09225)
DISTANCE=+00000 (+00000 .. +00063) PRESSURE=+00000 (+00000 .. +00511)
ABSWHEEL=+00000 (+00000 .. +00071) 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-девайса, но не показывает передаваемые данные. С чем связана работа/неработа этой программы непонятно. Чаще всего программа нормально работает на свежезапущенной системе (кстати, она может работать без иксов), или после выдергивания-вставки USB-разъема планшета в компьютер. Кроме того, похоже, что wacdump блокирует и не отпускает устройство Wacom после завершения своей работы, что не позволяет ему корректно работать. Так что от греха лучше перелогиниться лишний раз.
Проверяем видимость Wacom в иксах.
Выполняем в терминале
Код: Выделить всё
xsetpointer -l
в ответ должно отобразиться
Код: Выделить всё
2: "Wacom Bamboo eraser" [XExtensionKeyboard]
3: "Wacom Bamboo cursor" [XExtensionKeyboard]
4: "Wacom Bamboo pad" [XExtensionKeyboard]
5: "Wacom Bamboo" [XextensionKeyboard]
наличие строчек "eraser", "cursor", "pad" говорит о том, что планшет Wacom виден и поддерживается.
Проверяем, что оконная система видит события от планшета. Выполняем команду
Код: Выделить всё
xidump -l
и должны наблюдать следующее
Код: Выделить всё
Wacom Bamboo eraser extension
Wacom Bamboo cursor extension
Wacom Bamboo pad extension
Wacom Bamboo extension
что говорит о понимании оконной системы событий Wacom.
Если все перечисленное выше прошло нормально, значит планшет правильно определяется и работает.
РАБОТА В GIMP
Запустим Gimp, перейдем в настройки Файл->Настройка->Устройства ввода->Конфигурировать устройства ввода. Там будет выбор устройства (eraser, cursor, stylus) и по умолчанию эти устройства запрещены (Disabled). Вместо Disabled надо выбрать значение Screen или Window.
После применения настроек, можно попробовать порисовать разными инструментами и посмотреть на изменение толщины линий в зависимости от нажатия.
ЭПИЛОГ
Работа над документом еще не закончена. Наблюдаются еще некоторые глюки, требующие решения. Но если написанное помогло решить Ваши проблемы, значит работа проделана не зря.