Графические планшеты Genius в Alt: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
Строка 7: Строка 7:


----
----
2. Проверяем что драйвер поставился командой: '''$ ls /usr/lib/X11/modules/input/wizardpen*''' (если все нормально то увидим строчку: '''/usr/lib/X11/modules/input/wizardpen_drv.so''')
2. Проверяем что драйвер поставился командой:
  '''$ ls /usr/lib/X11/modules/input/wizardpen*'''
Если все нормально то увидим строчку:  
  '''/usr/lib/X11/modules/input/wizardpen_drv.so'''


----
----
3. Присоединяем планшет. Узнаем его имя: '''$ grep -i name /proc/bus/input/devices'''
3. Присоединяем планшет. Узнаем его имя:  
  '''$ grep -i name /proc/bus/input/devices'''
 
В терминале увидим следующее:
В терминале увидим следующее:
N: Name="Macintosh mouse button emulation"
  N: Name="Macintosh mouse button emulation"
N: Name="AT Translated Set 2 keyboard"
  N: Name="AT Translated Set 2 keyboard"
N: Name="Power Button"
  N: Name="Power Button"
N: Name="Power Button"
  N: Name="Power Button"
N: Name="Sleep Button"
  N: Name="Sleep Button"
N: Name="PC Speaker"
  N: Name="PC Speaker"
N: Name="ImPS/2 Generic Wheel Mouse"
  N: Name="ImPS/2 Generic Wheel Mouse"
'''N: Name="UC-LOGIC Tablet WP5540U"      <- Планшет'''
  '''N: Name="UC-LOGIC Tablet WP5540U"      <- Планшет'''


----
----
4. Поверяем, корректно ли нашел его HAL: '''$ lshal | grep "UC-LOGIC Tablet WP5540U"'''  
4. Поверяем, корректно ли нашел его HAL:  
  '''$ lshal | grep "UC-LOGIC Tablet WP5540U"'''  
Если все хорошо то увидим что то в виде этого:
Если все хорошо то увидим что то в виде этого:
В терминале увидим следующее:
  '''input.product = 'UC-LOGIC Tablet WP5540U'  (string)'''
'''input.product = 'UC-LOGIC Tablet WP5540U'  (string)
'''
----
----
5. Создаем новый файл с именем /etc/hal/fdi/policy/'''99-x11-wizardpen.fdi''': '''# touch /etc/hal/fdi/policy/99-x11-wizardpen.fdi'''
5. Создаем новый файл с именем /etc/hal/fdi/policy/'''99-x11-wizardpen.fdi''':  
Проверяем создался ли он: '''# ls /etc/hal/fdi/policy/99*''' (если все нормально то увидим строчку: '''/etc/hal/fdi/policy/99-x11-wizardpen.fdi''')
  '''# touch /etc/hal/fdi/policy/99-x11-wizardpen.fdi'''
Проверяем создался ли он:  
  '''# ls /etc/hal/fdi/policy/99*'''
Если все нормально то увидим строчку:  
  '''/etc/hal/fdi/policy/99-x11-wizardpen.fdi'''


----
----
6. Вставляем в него эту информацию через текстовый редактов, все зависи от графической среды(конфиг рабочий на 100%)
6. Вставляем в него информацию, которая написананиже через любой текстовый редактов, все зависи от графической среды(конфиг рабочий на 100%)
'''# medit /etc/hal/fdi/policy/99-x11-wizardpen.fdi'''
  '''# medit /etc/hal/fdi/policy/99-x11-wizardpen.fdi'''


  <?xml version="1.0" encoding="ISO-8859-1" ?>
  <?xml version="1.0" encoding="ISO-8859-1" ?>
  <deviceinfo version="0.2">
  <deviceinfo version="0.2">
  <device>
  <device>
  <!-- This MUST match with the name of your tablet -->
  <!-- This MUST match with the name of your tablet -->
  <match key="info.product" contains="UC-LOGIC Tablet WP5540U">
  <match key="info.product" contains="UC-LOGIC Tablet WP5540U">
  <merge key="input.x11_driver" type="string">wizardpen</merge>
  <merge key="input.x11_driver" type="string">wizardpen</merge>
  <merge key="info.product" type="string">Genius tablet</merge>
  <merge key="info.product" type="string">Genius tablet</merge>
  <merge key="input.x11_options.SendCoreEvents" type="string">true</merge>
  <merge key="input.x11_options.SendCoreEvents" type="string">true</merge>
  <merge key="input.x11_options.TopX" type="string">1265</merge>
  <merge key="input.x11_options.TopX" type="string">1265</merge>
  <merge key="input.x11_options.TopY" type="string">1596</merge>
  <merge key="input.x11_options.TopY" type="string">1596</merge>
  <merge key="input.x11_options.BottomX" type="string">31932</merge>
  <merge key="input.x11_options.BottomX" type="string">31932</merge>
  <merge key="input.x11_options.BottomY" type="string">32745</merge>
  <merge key="input.x11_options.BottomY" type="string">32745</merge>
  <merge key="input.x11_options.MaxX" type="string">31932</merge>
  <merge key="input.x11_options.MaxX" type="string">31932</merge>
  <merge key="input.x11_options.MaxY" type="string">32745</merge>
  <merge key="input.x11_options.MaxY" type="string">32745</merge>
  </match>
  </match>
  </device>
  </device>


ВНИМАНИЕ: В строке <match key="info.product" contains="'''UC-LOGIC Tablet WP5540U'''">, где в ковычках указан '''UC-LOGIC Tablet WP5540U''', меняем его на свой, посмотреть название своего планшета можно командой: '''$ grep -i name /proc/bus/input/devices''' Прошу отметить, что значения в этом файле не обязательно корректны для вашего устройства. Потом мы его откалибруем.
ВНИМАНИЕ: В строке <match key="info.product" contains="'''UC-LOGIC Tablet WP5540U'''">, где в ковычках указан '''UC-LOGIC Tablet WP5540U''', меняем его на свой, посмотреть название своего планшета можно командой: '''$ grep -i name /proc/bus/input/devices''' Прошу отметить, что значения в этом файле не обязательно корректны для вашего устройства. Потом мы его откалибруем.
Строка 60: Строка 68:
----
----
8. Калибруем
8. Калибруем
Выполняем: '''$ lshal | less''' ищем в довольно таки обширном выводе команды имя найденного ранее нами устройства.
Выполняем:
    '''$ lshal | less'''  
Ищем в довольно таки обширном выводе команды имя найденного ранее нами устройства.
Ищем строку, ну или колонку с таким выводом:
Ищем строку, ну или колонку с таким выводом:


  udi = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0_logicaldev_input'
  udi = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0_logicaldev_input'
  info.capabilities = {'input', 'input.mouse', 'input.tablet'} (string list)
  info.capabilities = {'input', 'input.mouse', 'input.tablet'} (string list)
  info.category = 'input'  (string)
  info.category = 'input'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0'  (string)
  info.product = 'UC-LOGIC Tablet WP5540U'  (string)
  info.product = 'UC-LOGIC Tablet WP5540U'  (string)
  info.subsystem = 'input'  (string)
  info.subsystem = 'input'  (string)
  info.udi = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0_logicaldev_input'  (string)
  info.udi = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0_logicaldev_input'  (string)
  input.device = '/dev/input/event7'  (string)
  input.device = '/dev/input/event7'  (string)
  input.originating_device = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0'  (string)
  input.originating_device = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0'  (string)
  '''input.product = 'UC-LOGIC Tablet WP5540U'  (string)'''
  '''input.product = 'UC-LOGIC Tablet WP5540U'  (string)'''
  input.x11_driver = 'evdev'  (string)
  input.x11_driver = 'evdev'  (string)
  input.x11_options.AccelerationScheme = 'lightweight'  (string)
  input.x11_options.AccelerationScheme = 'lightweight'  (string)
  '''linux.device_file = '/dev/input/event7'  (string)'''
  '''linux.device_file = '/dev/input/event7'  (string)'''
  linux.hotplug_type = 2  (0x2)  (int)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'input'  (string)
  linux.subsystem = 'input'  (string)
  linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:10.1/usb2/2-2/2-2:1.0/input/input8/event7'  (string)
  linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:10.1/usb2/2-2/2-2:1.0/input/input8/event7'  (string)


Нас интересует строка '''linux.device_file = '/dev/input/event7'  (string)''', она нужна нам для калибровки устройства.
Нас интересует строка '''linux.device_file = '/dev/input/event7'  (string)''', она нужна нам для калибровки устройства.
Строка 88: Строка 98:
----
----
10. Переходим в директорию cd ~xxx/Загрузки/'''wizardpen-0.7.0-alpha2/calibrate/'''
10. Переходим в директорию cd ~xxx/Загрузки/'''wizardpen-0.7.0-alpha2/calibrate/'''
Вводим команду '''#./wizardpen-calibrate /dev/input/event7'''
Вводим команду:
  '''# ./wizardpen-calibrate /dev/input/event7'''
   
   
./wizardpen-calibrate /dev/input/event7
Если все правильно то получим вывод на экране
Если все правильно то получим вывод на экране
Please, press the stilus at ANY (Пожалуйста, нажмите стилусом на любой угол)
  Please, press the stilus at ANY (Пожалуйста, нажмите стилусом на любой угол)
corner of your desired working area: ok, got 1473,2759
  corner of your desired working area: ok, got 1473,2759


Please, press the stilus at OPPOSITE (Пожалуйста, нажмите стилусом на противоположный угол)
  Please, press the stilus at OPPOSITE (Пожалуйста, нажмите стилусом на противоположный угол)
corner of your desired working area: ok, got 31102,31747
  corner of your desired working area: ok, got 31102,31747


According to your input you may put following
  According to your input you may put following
lines into your XF86Config file:
  lines into your XF86Config file:


Driver "wizardpen"
Driver "wizardpen"

Версия от 09:34, 6 августа 2010

Рассмотрим настройку графических планшетов Genius в Alt Linux на примере планшета UC-Logic Technology Corp. Genius MousePen 5x4 Tablet (планшет начального уровня). Настройка проводилась в дистрибутивах «5 платформы» (например Simply Linux, Альт Линукс 5.0 Ковчег) Вот шаги, которые необходимо предпринять для этого:


1. Ставим иксовый драйвер для Genius’овских планшетов. Пакет называется xorg-drv-wizardpen (ставим через synaptic)


2. Проверяем что драйвер поставился командой:

  $ ls /usr/lib/X11/modules/input/wizardpen*

Если все нормально то увидим строчку:

  /usr/lib/X11/modules/input/wizardpen_drv.so

3. Присоединяем планшет. Узнаем его имя:

  $ grep -i name /proc/bus/input/devices

В терминале увидим следующее:

  N: Name="Macintosh mouse button emulation"
  N: Name="AT Translated Set 2 keyboard"
  N: Name="Power Button"
  N: Name="Power Button"
  N: Name="Sleep Button"
  N: Name="PC Speaker"
  N: Name="ImPS/2 Generic Wheel Mouse"
  N: Name="UC-LOGIC Tablet WP5540U"       <- Планшет

4. Поверяем, корректно ли нашел его HAL:

  $ lshal | grep "UC-LOGIC Tablet WP5540U" 

Если все хорошо то увидим что то в виде этого:

  input.product = 'UC-LOGIC Tablet WP5540U'  (string)

5. Создаем новый файл с именем /etc/hal/fdi/policy/99-x11-wizardpen.fdi:

  # touch /etc/hal/fdi/policy/99-x11-wizardpen.fdi

Проверяем создался ли он:

  # ls /etc/hal/fdi/policy/99*

Если все нормально то увидим строчку:

  /etc/hal/fdi/policy/99-x11-wizardpen.fdi

6. Вставляем в него информацию, которая написананиже через любой текстовый редактов, все зависи от графической среды(конфиг рабочий на 100%)

  # medit /etc/hal/fdi/policy/99-x11-wizardpen.fdi
  <?xml version="1.0" encoding="ISO-8859-1" ?>
  <deviceinfo version="0.2">
  <device>
  <match key="info.product" contains="UC-LOGIC Tablet WP5540U">
  <merge key="input.x11_driver" type="string">wizardpen</merge>
  <merge key="info.product" type="string">Genius tablet</merge>
  <merge key="input.x11_options.SendCoreEvents" type="string">true</merge>
  <merge key="input.x11_options.TopX" type="string">1265</merge>
  <merge key="input.x11_options.TopY" type="string">1596</merge>
  <merge key="input.x11_options.BottomX" type="string">31932</merge>
  <merge key="input.x11_options.BottomY" type="string">32745</merge>
  <merge key="input.x11_options.MaxX" type="string">31932</merge>
  <merge key="input.x11_options.MaxY" type="string">32745</merge>
  </match>
  </device>

ВНИМАНИЕ: В строке <match key="info.product" contains="UC-LOGIC Tablet WP5540U">, где в ковычках указан UC-LOGIC Tablet WP5540U, меняем его на свой, посмотреть название своего планшета можно командой: $ grep -i name /proc/bus/input/devices Прошу отметить, что значения в этом файле не обязательно корректны для вашего устройства. Потом мы его откалибруем.


7. Вынимаем планшет из usb или перезагружаемся, если все правильно сделано то планшет будет работать, если нет то после перезагрузки курсор сходит с ума или не стартуют иксы, вы наверное где-то накосячили…



8. Калибруем Выполняем:

   $ lshal | less 

Ищем в довольно таки обширном выводе команды имя найденного ранее нами устройства. Ищем строку, ну или колонку с таким выводом:

  udi = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0_logicaldev_input'
  info.capabilities = {'input', 'input.mouse', 'input.tablet'} (string list)
  info.category = 'input'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0'  (string)
  info.product = 'UC-LOGIC Tablet WP5540U'  (string)
  info.subsystem = 'input'  (string)
  info.udi = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0_logicaldev_input'  (string)
  input.device = '/dev/input/event7'  (string)
  input.originating_device = '/org/freedesktop/Hal/devices/usb_device_5543_4_noserial_if0'  (string)
  input.product = 'UC-LOGIC Tablet WP5540U'  (string)
  input.x11_driver = 'evdev'  (string)
  input.x11_options.AccelerationScheme = 'lightweight'  (string)
  linux.device_file = '/dev/input/event7'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'input'  (string)
  linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:10.1/usb2/2-2/2-2:1.0/input/input8/event7'  (string)

Нас интересует строка linux.device_file = '/dev/input/event7' (string), она нужна нам для калибровки устройства.



9. Скачиваем пакет Драйвер wizardpen-0.7.0-alpha2, разархивируем.


10. Переходим в директорию cd ~xxx/Загрузки/wizardpen-0.7.0-alpha2/calibrate/ Вводим команду:

  # ./wizardpen-calibrate /dev/input/event7

Если все правильно то получим вывод на экране

  Please, press the stilus at ANY (Пожалуйста, нажмите стилусом на любой угол)
  corner of your desired working area: ok, got 1473,2759
  Please, press the stilus at OPPOSITE (Пожалуйста, нажмите стилусом на противоположный угол)
  corner of your desired working area: ok, got 31102,31747
  According to your input you may put following
  lines into your XF86Config file:

Driver "wizardpen" Option "Device" "/dev/input/event7" Option "TopX" "1473" Option "TopY" "2759" Option "BottomX" "31102" Option "BottomY" "31747"


Полученные данные не закрываем, их надо ввести в файл /etc/hal/fdi/policy/99-x11-wizardpen.fdi строке <merge key="input.x11_options.TopX" type="string">1265</merge> соответствует строка Option "TopX" "1473" В таком порядке редактируем все остальные строки, сохраняем файл, вынимаем планшет, снова его включаем и смотрим, TopX" "1473" это координаты той облачти в которой будет работать планшет

Всем Удачи



Ps/

11. Нужно удалить из системы драйвер для Wacom’овских планшетов. Пакет называется xorg-drv-wacom. Я не уверен, что это необходимо, но, кажется, если оставить wacom’овский драйвер в системе, то он перехватывает на себя все подключенные планшеты. Так что на всякий случай удаляем. 12. Возможно, понадобится ещё поставить пакет xinput.

Мне они не понадобились

Проверяем, что это правило записалось в соответствующий файл (cat /etc/hal/fdi/policy/99-x11-wizardpen.fdi).

  • Рестартуем иксы (service dm restart) и HAL (service haldaemon restart), ну или просто перезагружаемся.
  • Настраиваем наше устройство. Например в Gimp заходим в Правка-Параметры-Устройства ввода-Настроить дополнительные устройства ввода. Там в списке устройств должен появиться наш планшет — Genius tablet. Ставим ему вместо «выключен» режим «экран» или «окно» (как вам удобнее). После этого Gimp начнёт реагировать на силу нажатия пером на планшет. То есть, станет возможно рисовать. Рисование мышкой при этом становится невозможным, она остаётся только для работы с панелями инструментов.

Работа планшета в Inkscape настраивается аналогично.