1564 lines
44 KiB
Plaintext
1564 lines
44 KiB
Plaintext
Wacom Tablet HOWTO
|
||
Stefan Runkel <runkel@runkel-it.de>
|
||
v1.0.8, 2001-08-11
|
||
|
||
Installation of Wacom graphic tablets under linux and / or xfree86
|
||
______________________________________________________________________
|
||
|
||
Table of Contents
|
||
|
||
|
||
|
||
1. Copyright
|
||
|
||
2. Introduction
|
||
|
||
2.1 New Versions of this Document
|
||
2.2 Feedback and Corrections
|
||
2.3 Acknowledgements
|
||
|
||
3. Requirements
|
||
|
||
3.1 Which Hardware is supported
|
||
3.2 Which Software is needed
|
||
3.3 Which Software is supported
|
||
3.4 What has to be prepared if the Tablet connects to the USB-Port
|
||
|
||
4. Tablets as Mouse-Replacement for the Linux-Console
|
||
|
||
4.1 Tablets and gpm
|
||
|
||
5. Tablets with XFree 3 and XFree 4
|
||
|
||
5.1 Required XFree Version
|
||
5.2 Sample XF86Config snippet for XFree 3
|
||
5.3 Sample XF86Config snippet for XFree 4
|
||
5.4 Syntax Difference between XFree 3 and XFree 4
|
||
5.5 Section Module
|
||
5.6 Device Type (XF3) and Type (XF4)
|
||
5.7 DeviceName (XF3) and Identifier (XF4)
|
||
5.8 Port (XF3) and Device (XF4)
|
||
5.8.1 USB Tablets
|
||
5.8.2 Switching The Mouse Off
|
||
5.9 DebugLevel
|
||
5.10 Serial Num (intuos series only)
|
||
5.10.1 How to find out the serial number of a device
|
||
5.10.2 Serial Num - Example of what has been logged (XFree 3)
|
||
5.11 Mode absolute, Mode relative
|
||
5.12 Device Modes Extension, Core, AlwaysCore
|
||
5.13 HistorySize
|
||
5.14 Suppress
|
||
5.15 TiltMode (XF3) and Tilt (XF4)
|
||
5.16 MaxX, MaxY, MaxZ (since alpha 20)
|
||
5.17 ResolutionX, ResolutionY, ResolutionZ (since alpha 20)
|
||
5.18 TopX, TopY, BottomX, BottomY Statements
|
||
5.18.1 Getting the maximal X, Y Values, current configuration, and the resolution
|
||
5.18.2 Getting Resolution - Example of what has been logged
|
||
5.19 KeepShape
|
||
5.20 Threshold
|
||
5.21 USB (since alpha 20)
|
||
|
||
6. Changing configuration from within a running X-Server
|
||
|
||
6.1 Setting up the Gimp to use XInput devices
|
||
6.2 The Switch Device
|
||
6.3 Buttons
|
||
6.4 Button Mapping with xmodmap for Devices in Core Mode
|
||
6.5 Button Mapping with xinput for Devices in Extension Mode
|
||
6.6 xsetmode - changing absolute / relative mode
|
||
6.7 xsetpointer - setting the default core device
|
||
6.8 Keys
|
||
6.9 Utilities to use more than one tablet and for toggle support on / off
|
||
|
||
7. XFree FAQ - Problems And Questions
|
||
|
||
7.1 Gnome and Gimp only work like a usual mouse, without pressure and tilt. Gimp Input Devices Dialog shows "No Input Devices"
|
||
7.2 Is the wheel of the mouse (cursor) supported ?
|
||
7.3 How can I find out the intuos Serial Num of my tool ?
|
||
7.4 How do I change the action of each button of my tool?
|
||
7.5 How can I use the intuos/artpad/ultrapad macro area ?
|
||
7.6 Is it possible to define multiple active areas on the same tablet ?
|
||
7.7 Can I use more than one tablet at the same time ?
|
||
7.8 The Wacom Driver eats my CPU Time. Any Hint ?
|
||
7.9 The Cursor 'dances' around
|
||
|
||
8. Gpm FAQ - Problems And Questions
|
||
|
||
8.1 NCurses programs only support cut and paste with my new gpm
|
||
|
||
9. Further Information / Used Documents
|
||
|
||
|
||
|
||
______________________________________________________________________
|
||
|
||
1. Copyright
|
||
|
||
Copyright (c) 1999,2000 by Stefan Runkel Runkel@runkel-it.de
|
||
|
||
This document describes the installation of Wacom tablets under linux.
|
||
It may be distributed, at your choice, under either the terms of the
|
||
GNU Public License version 2 or later or the standard Linux
|
||
Documentation Project terms. These licenses should be available from
|
||
where you got this document. Please note that since the LDP terms
|
||
don't allow modification (other than translation), modified versions
|
||
can be assumed to be distributed under the GPL.
|
||
|
||
|
||
2. Introduction
|
||
|
||
|
||
|
||
Graphic tablets are now quite inexpensive and can help allot with the
|
||
work of image manipulation. In addition to that what a mouse can do
|
||
for you they have the following features:
|
||
|
||
|
||
<20> pressure and tilt sensitivity
|
||
|
||
<20> high resolution motion control
|
||
|
||
<20> sub-pixel positioning
|
||
|
||
<20> an input device that looks like and is handled like a normal Pen.
|
||
|
||
This document addresses mainly the products from Wacom, because I own
|
||
3 different products of them and because their products are highly
|
||
available in the region of Europe.
|
||
|
||
Nevertheless I think it should be easy to adapt the shown concepts to
|
||
other products.
|
||
|
||
|
||
I have written this document because I have not found a document about
|
||
this subject which contained completely what I wanted to know. So I
|
||
got small parts of information from various people in the net and
|
||
assembled them to this HOWTO. Regarding the questions of my readers, I
|
||
must realize that this document also is not complete and never will
|
||
be. But from the same questions I can tell that it helped many people
|
||
on the way, and each new question lets this HOWTO grow.
|
||
|
||
|
||
|
||
2.1. New Versions of this Document
|
||
|
||
|
||
|
||
The latest version of this document will be available at
|
||
http://www.runkel-it.de/linux.htm.
|
||
|
||
|
||
2.2. Feedback and Corrections
|
||
|
||
|
||
|
||
Comments, corrections, and additions are greatly be appreciated. I can
|
||
be contacted at:
|
||
|
||
Runkel@runkel-it.de or at RunkelEDV@t-online.de
|
||
|
||
2.3. Acknowledgements
|
||
|
||
|
||
|
||
I would like to thank all authors listed in the ``Further Information
|
||
/ used documents'' Section as well as everyone who answered my
|
||
questions by email. This HOWTO reflects much of their work.
|
||
|
||
|
||
3. Requirements
|
||
|
||
|
||
|
||
This chapter is about what is needed to get your tablet working.
|
||
|
||
3.1. Which Hardware is supported
|
||
|
||
|
||
|
||
First of all, you should have a tablet, of course. The following
|
||
Wacom tablets are supported:
|
||
|
||
|
||
|
||
<20> ArtZ II series (known in Europe as the UltraPad series - the same
|
||
UltraPad name also was used for earlier tablets that only work
|
||
partially.)
|
||
|
||
<20> ArtPad II
|
||
|
||
<20> PL300 (combined LCD screen and tablet)
|
||
|
||
<20> Pen Partner
|
||
|
||
<20> Graphire alias FAVO (mouse and pen, get at least the alpha 16
|
||
driver for full support from
|
||
http://people.mandrakesoft.com/~flepied/projects/wacom/).
|
||
|
||
<20> Intuos series (support may be only partial with the driver of your
|
||
distribution, get updated alpha versions from Frederic Lepied's
|
||
page: http://people.mandrakesoft.com/~flepied/projects/wacom/)
|
||
|
||
|
||
The older SD and HD series are not supported by the standard XFree86
|
||
driver, however, a modified driver that supports these devices as well
|
||
some OEM products with embedded screens including the IBM Thinkpad 360
|
||
PE and Toshiba T200 is available from: http://hwr.nici.kun.nl/pen-
|
||
computing/pen-computing-formats.html
|
||
|
||
USB-Devices
|
||
If ordering the wacom products intuos and graphire, you can choose
|
||
between two different interfaces:
|
||
Serial and USB.
|
||
|
||
The Serial Interface
|
||
|
||
<20> is available for a long time, so the drivers are more stable for it
|
||
|
||
<20> can not supply power to the tablet. For graphire and small intuos,
|
||
wacom made an interface wire that plugs between the ps/2 keyboard
|
||
and the computer to grap that power. Bigger intuos tablets may use
|
||
an AC-adapter.
|
||
|
||
<20> does not require you to recompile the kernel or to load kernel
|
||
modules.
|
||
|
||
The USB Interface
|
||
|
||
<20> is newer, so the drivers may be still in development.
|
||
|
||
<20> can supply power to the tablet, bigger intuos tablets nevertheless
|
||
may use an AC-adapter.
|
||
|
||
<20> may require you to recompile the kernel and / or to load kernel
|
||
modules The section ``extra configuration steps'' later in this
|
||
document tries to guide you through this process.
|
||
|
||
3.2. Which Software is needed
|
||
|
||
|
||
|
||
<20> If you want support for the linux console, get the latest version
|
||
of gpm from ftp://ftp.prosa.it/pub/gpm or from
|
||
ftp://animal.unipv.it/pub/gpm (mirror)
|
||
|
||
|
||
|
||
<20> If you want support for XFree86, use at least version 3.3.3.1 or
|
||
get the latest from http://www.xfree.org
|
||
|
||
|
||
3.3. Which Software is supported
|
||
|
||
|
||
|
||
<20> For the linux console, the only program I know is gpm.
|
||
|
||
|
||
<20> For XFree, the keyword is XInput. This specification has to be
|
||
supported by device drivers which provide extra information. In
|
||
turn, XInput has to be understood by programs which want to use
|
||
alternative pointer devices.
|
||
|
||
There is a big number of programs based on the gtk library. The gtk
|
||
has XInput support and makes it very easy to use.
|
||
At least the following applications support XInput:
|
||
|
||
|
||
|
||
<20> The Gimp - a powerful image manipulation program in the style of
|
||
Photoshop. The 1.1.x instable development version includes XInput
|
||
support as a standard feature. We are awaiting the next stable
|
||
release, Version 1.2.x.
|
||
Obtain Gimp from http://www.gimp.org , it really deserves it ! I
|
||
am sure most of you know this and it was the reason to buy a
|
||
tablet.
|
||
|
||
|
||
|
||
<20> gsumi - a simple B/W drawing program that supports drawing /
|
||
erasing with pressure and tilt sensitivity. Get it from the gsumi
|
||
web page: http://www.gtk.org/~otaylor/gsumi/
|
||
|
||
|
||
|
||
<20> xink (By Ralph Levien) - another rudimentary drawing program for X.
|
||
|
||
xink is available from:
|
||
ftp://kiwi.cs.berkeley.edu/pub/raph/xink.tar.gz
|
||
|
||
|
||
<20> RasMol - a molecular visualization program that supports a hardware
|
||
dial box using XInput. look at
|
||
http://www.umass.edu/microbio/rasmol/distrib/rasman.htm .
|
||
|
||
|
||
|
||
<20> xinput (by Frederic Lepied) - a very useful utility for configuring
|
||
and testing XInput devices.
|
||
|
||
xinput is available from:
|
||
ftp://ftp.x.org/contrib/utilities/xinput-1.2.tar.gz
|
||
|
||
|
||
|
||
3.4. What has to be prepared if the Tablet connects to the USB-Port
|
||
|
||
|
||
USB-Support is done in the kernel. This means that you should be able
|
||
to configure and recompile the kernel. If you do not know how,
|
||
consult your local guru.
|
||
|
||
|
||
The Kernel
|
||
|
||
Make sure in the USB Support section of the kernel configuration you
|
||
have the following set:
|
||
|
||
|
||
--- USB Human Interface Devices (HID)
|
||
<M> USB Human Interface Device (full HID) support
|
||
...
|
||
<M> Wacom Intuos/Graphire tablet support
|
||
|
||
|
||
|
||
Now recompile the kernel, either load the wacom module (which would be
|
||
in /lib/modules/<linux version>/kernel/drivers/usb/wacom.o), or
|
||
reboot, and verify that the module was loaded:
|
||
|
||
|
||
# grep -i wacom /var/log/boot.msg
|
||
input0: Wacom Intuos 9x12 on usb1:2.0
|
||
|
||
|
||
|
||
On some system you may want to grep in /var/log/messages instead.
|
||
|
||
Note:
|
||
At least for the intuos series even the latest kernel (2.4.7 as of
|
||
moment of writing) doesn't have the right Wacom USB driver, so you
|
||
have to get the right one and recompile the stuff. See Semyon Sosin 's
|
||
document for this.
|
||
|
||
I can not tell if wacom graphire works fine with the original driver.
|
||
But take for sure that the shown __concepts__ will work for both wacom
|
||
product lines.
|
||
|
||
|
||
|
||
4. Tablets as Mouse-Replacement for the Linux-Console
|
||
|
||
|
||
|
||
4.1. Tablets and gpm
|
||
|
||
|
||
|
||
The ``gpm'' daemon supports allot of input devices, including tablets.
|
||
If you want a list of the supported devices of your gpm, do a
|
||
|
||
gpm -t help
|
||
|
||
|
||
and you get it.
|
||
|
||
The Wacom driver of gpm 1.18.0 and below seems to be for the very old
|
||
artpad models, the documentation does not say anything about this. I
|
||
tested it with ultrapad, penpartner, graphire and intuos models but it
|
||
did not work. I have rewritten the wacom driver for gpm, to use it
|
||
you need at least gpm version 1.18.2 . Since 1.18.2, the old wacom
|
||
driver has been replaced with my driver for wacom graphire, penpartner
|
||
and ultrapad products.
|
||
|
||
However, if you own an old artpad, use gpm < 1.18.1 and try:
|
||
|
||
killall gpm ; gpm -t wacom -m /dev/ttyS0
|
||
|
||
|
||
and it should work.
|
||
|
||
|
||
If you own a graphire, use gpm > 1.18.1 instead and use
|
||
|
||
for the relative (mouse-like) mode:
|
||
|
||
killall gpm ; gpm -t wacom -o relative -m /dev/ttyS0
|
||
|
||
|
||
for the absolute (tablet-like) mode:
|
||
|
||
killall gpm ; gpm -t wacom -o absolute -m /dev/ttyS0
|
||
|
||
|
||
Of course, you get only the buttons and the movement function,
|
||
pressure and tilt are not supported because they are not too useful in
|
||
text-based applications.
|
||
There is no support for ultrapad macro buttons or graphire mouse
|
||
wheel.
|
||
|
||
|
||
If you use gpm and XFree86, you may or may not run in problems,
|
||
because normally a device can be opened only by one program at a time.
|
||
There are two solutions for that:
|
||
|
||
|
||
|
||
<20> The gpm repeater mode. If you start gpm with the "-R protocol"
|
||
option, it will repeat all data it gets to the device /dev/gpmdata.
|
||
Let us say, you have a ps2 type mouse and your gpm call looks like:
|
||
gpm -t ps2 -Rmman then gpm gets your ps2 mouse data and tries to
|
||
translate this into a mman packet, which it will emit to
|
||
/dev/gpmdata. Unfortunately, gpm can translate to only a few
|
||
protocols at the time of writing. Since gpm 1.18.1, these protocols
|
||
to which can be translated are marked with an asterix at the first
|
||
column. Again, do a gpm -t help to get the list.
|
||
|
||
|
||
If you want to omit the translation and only get the data byte for
|
||
byte, just call gpm -t ps2 -R raw . You can then make XFree use
|
||
that second device by putting the line Device "/dev/gpmdata"
|
||
in your XF86Config in the pointer section or the XInput section.
|
||
|
||
|
||
<20> If you use startx, you can modify it that it does a gpm -k before
|
||
the X-Server is started. This option kills a running gpm.
|
||
|
||
|
||
5. Tablets with XFree 3 and XFree 4
|
||
|
||
|
||
|
||
5.1. Required XFree Version
|
||
|
||
|
||
|
||
Minimum ``XFree'' version should be 3.3.3.1 because this version has
|
||
extended XInput support, the second side switch works now and the
|
||
blocking mouse effect has been fixed.
|
||
|
||
If you must use any prior version, XInput support should be available
|
||
since 3.1.2.d.
|
||
|
||
XInput support in XFree is configured basically in a file called
|
||
XF86Config. In most cases the XF86Config file is located in /etc or
|
||
in /etc/x11. I will show now two very short configuration sections,
|
||
the first works with XFree 3, the other is for XFree 4. I will
|
||
explain then what can be changed and why this is needed.
|
||
|
||
5.2. Sample XF86Config snippet for XFree 3
|
||
|
||
|
||
|
||
Section "Module"
|
||
# Wacom Device Driver
|
||
Load "xf86Wacom.so"
|
||
EndSection
|
||
|
||
Section "XInput"
|
||
# Settings for Wacom pen
|
||
SubSection "WacomStylus" # type of input device
|
||
Port "/dev/ttyS0" # Serial Port
|
||
DeviceName "Pen1" # Name, choose it free
|
||
Baudrate 9600 # Usable only for intuos
|
||
Mode Absolute # Map Tablet Area to Screen
|
||
AlwaysCore # See text
|
||
HistorySize 200 # Buffer size for motion events
|
||
EndSubSection
|
||
|
||
# Settings for Wacom eraser
|
||
SubSection "WacomEraser" # type of input device
|
||
Port "/dev/ttyS0" # Serial Port
|
||
DeviceName "Eraser1" # Name, choose it free
|
||
Baudrate 9600 # Usable only for intuos
|
||
Mode Absolute # Map Tablet Area to Screen
|
||
AlwaysCore # See text
|
||
HistorySize 200 # Buffer size for motion events
|
||
EndSubSection
|
||
|
||
# Settings for Wacom cursor (mouse)
|
||
SubSection "WacomCursor" # type of input device
|
||
Port "/dev/ttyS0" # Serial Port
|
||
DeviceName "Cursor" # Name, choose it free
|
||
Baudrate 9600 # Usable only for intuos
|
||
Mode Absolute # Map Tablet Area to Screen
|
||
AlwaysCore # See text
|
||
HistorySize 200 # Buffer size for motion events
|
||
EndSubSection
|
||
|
||
EndSection
|
||
|
||
|
||
|
||
5.3. Sample XF86Config snippet for XFree 4
|
||
|
||
|
||
|
||
# declare input devices, later defined
|
||
Section "ServerLayout"
|
||
Identifier "XFree86 Configured"
|
||
Screen 0 "Screen0" 0 0
|
||
InputDevice "Mouse0" "CorePointer"
|
||
InputDevice "Keyboard0" "CoreKeyboard"
|
||
InputDevice "pen1" "AlwaysCore"
|
||
InputDevice "eraser1" "AlwaysCore"
|
||
InputDevice "cursor1" "AlwaysCore"
|
||
EndSection
|
||
|
||
Section "Module"
|
||
Load "extmod"
|
||
Load "xie"
|
||
Load "pex5"
|
||
Load "glx"
|
||
Load "dri"
|
||
Load "GLcore"
|
||
Load "dbe"
|
||
Load "record"
|
||
Load "wacom" # Wacom Device Driver
|
||
EndSection
|
||
|
||
# Settings for wacom pen
|
||
Section "InputDevice"
|
||
Identifier "pen1"
|
||
Driver "wacom"
|
||
Option "Type" "stylus"
|
||
Option "Device" "/dev/ttyS0"
|
||
Endsection
|
||
# Settings for wacom eraser
|
||
Section "InputDevice"
|
||
Identifier "eraser1"
|
||
Driver "wacom"
|
||
Option "Type" "eraser"
|
||
Option "Device" "/dev/ttyS0"
|
||
Endsection
|
||
# Settings for wacom cursor (mouse)
|
||
Section "InputDevice"
|
||
Identifier "cursor1"
|
||
Driver "wacom"
|
||
Option "Type" "cursor"
|
||
Option "Device" "/dev/ttyS0"
|
||
Endsection
|
||
|
||
|
||
|
||
5.4. Syntax Difference between XFree 3 and XFree 4
|
||
|
||
|
||
|
||
Please notice the different syntax between XFree 3 and XFree 4:
|
||
In XFree 3 configuration is done in the section "XInput" with one
|
||
subsection for each device. XFree 3 has keywords.
|
||
In XFree 4 configuration is done with one section "InputDevice" for
|
||
each device. All Settings are "options", with one exception: the
|
||
identifier statement. The Alwayscore option goes to the Serverlayout
|
||
section.
|
||
|
||
Because the usage can be seen from the above examples, this difference
|
||
will be considered as clear for the rest of the document.
|
||
|
||
|
||
|
||
5.5. Section Module
|
||
|
||
|
||
|
||
XInput support in XFree is reached due to the use of modules. The
|
||
wacom device driver module file for XFree 3 is called
|
||
``xf86Wacom.so'', for XFree 4 the filename changed to wacom_drv.o.
|
||
The files are located usually in /usr/X11R6/lib/modules/ or in
|
||
/usr/X11R6/lib/modules/input. We have to specify in the "Module"
|
||
section that we want to load this driver (look at above snippets):
|
||
|
||
XFree 3: Load "xf86Wacom.so"
|
||
XFree 4: Load "wacom"
|
||
|
||
|
||
This has to appear only once per XF86Config file.
|
||
|
||
|
||
5.6. Device Type (XF3) and Type (XF4)
|
||
|
||
|
||
|
||
A physical device can be:
|
||
|
||
<20> The tip of your pen
|
||
|
||
<20> The eraser of your pen
|
||
|
||
<20> A mouse like the Wacom products lens cursor, 4d-mouse, graphire-
|
||
mouse
|
||
|
||
<20> The airbrush
|
||
|
||
The penpartner and graphire products simply recognize the type of a
|
||
device, but they can not distinguish them. For example, you can not
|
||
use two different pens, say, one configured red and one configured
|
||
blue - all what these products say is: "I found a pen tip on my
|
||
surface", or "I found an Eraser on my surface", or "I found a mouse on
|
||
my surface".
|
||
|
||
|
||
XInput maps the device types to devices, these device types are later
|
||
specified in XF86Config. For XFree 3 this is a subsection in the
|
||
section XInput, for XFree 4 this goes to individuell InputDevice
|
||
sections.
|
||
The devicetypes are:
|
||
|
||
<20> WacomStylus Tip of a pen or airbrush
|
||
|
||
<20> WacomEraser Eraser of a pen or airbrush
|
||
|
||
<20> WacomCursor Mice, like graphire mouse, lens cursor, 4d-mouse
|
||
|
||
As you can see from above examples, device types are specified with
|
||
the keyword "Devicetype" in XFree 3 and with Option "Type" in XFree 4.
|
||
|
||
|
||
5.7. DeviceName (XF3) and Identifier (XF4)
|
||
|
||
|
||
|
||
You must give every configured device a unique name. This name will be
|
||
used later in your program to talk to that device. You can choose this
|
||
name free. This statement is mandantory. In XFree 3 you will use the
|
||
"Devicename" keyword, in XFree 4 you will use the Identifier "name"
|
||
keyword. Please notice that Identifier is not an Option !
|
||
5.8. Port (XF3) and Device (XF4)
|
||
|
||
|
||
|
||
XInput wants to know at which serial port this device can be found.
|
||
This allows me to use two different tablets at the same time, for
|
||
example a graphire connected to /dev/ttyS0 and a penpartner connected
|
||
to /dev/ttyS1.
|
||
|
||
|
||
|
||
5.8.1. USB Tablets
|
||
|
||
USB is treated as a serial line too, so this statement is mandantory.
|
||
If you connect your product to the USB, you have to specify this with
|
||
``Option USB''.
|
||
|
||
Example how to use the USB-Port (XF4):
|
||
|
||
|
||
|
||
Section "InputDevice"
|
||
Driver "wacom"
|
||
Identifier "stylus"
|
||
Option "Device" "/dev/input/event0"
|
||
Option "Type" "stylus"
|
||
Option "Mode" "absolute"
|
||
Option "USB" "on"
|
||
Option "Tilt" "on"
|
||
EndSection
|
||
|
||
|
||
|
||
5.8.2. Switching The Mouse Off
|
||
|
||
Most people use both, the mouse and the tablet for core pointer
|
||
functions. However, if you want to switch your mouse off and only
|
||
will use your tablet, here comes the trick for that:
|
||
First, specify AllowMouseOpenFail in section ServerFlags. Then set
|
||
the device to a file which must not exist (fake or dummy). Do not set
|
||
it to /dev/null as this will eat up your CPU-time.
|
||
|
||
Example how to switch off the mouse (XF3):
|
||
|
||
|
||
|
||
Section "Pointer"
|
||
Device "/dev/fake" #Phony device file
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
Example how to switch off the mouse (XF4):
|
||
|
||
|
||
|
||
Section "ServerLayout"
|
||
...
|
||
InputDevice "Mouse0" "CorePointer"
|
||
...
|
||
EndSection
|
||
Section "InputDevice"
|
||
Identifier "Mouse0"
|
||
...
|
||
Option "Device" "/dev/fake" #Phony
|
||
#device file
|
||
Endsection
|
||
|
||
|
||
|
||
5.9. DebugLevel
|
||
|
||
|
||
|
||
This statement controls how verbose the Wacom driver is. The Level
|
||
goes from 0 to 10. If this statement is not given, DebugLevel 0 is
|
||
used, which logs the very less.
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
SubSection "WacomStyLus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
DebugLevel 10 # be very verbose
|
||
...
|
||
EndSubSection
|
||
|
||
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
Section "InputDevice"
|
||
Identifier "PenRed" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "DebugLevel" "10" # be very verbose
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
5.10. Serial Num (intuos series only)
|
||
|
||
|
||
|
||
The intuos product is more efficient than penpartner and graphire
|
||
because it can distinguish many devices of the same type. This means
|
||
that it is now possible to use two pens, one configured red and one
|
||
configured blue. As you see, the use of device types is not enough
|
||
information to handle different pens. Therefore, each intuos device,
|
||
be it a pen, ink pen, mouse, or whatever has a serial number, which
|
||
you can specify to aid XInput in resolving the right device. This
|
||
would look like:
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
Section "XInput"
|
||
SubSection "WacomStylus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
Serial 2609917443 # Serial Number of that device
|
||
...
|
||
EndSubSection
|
||
SubSection "WacomStylus" # another Pen
|
||
DeviceName "PenBlue" # Name, choose it free
|
||
...
|
||
Serial 2609918664 # Serial Number of that device
|
||
...
|
||
EndSubSection
|
||
EndSection
|
||
|
||
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
Section "InputDevice"
|
||
Identifier "PenRed" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "Serial" "2609917443"
|
||
...
|
||
EndSection
|
||
Section "InputDevice"
|
||
Identifier "PenBlue" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "Serial" "2609918664"
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
It should be said that combined input devices like pens have only one
|
||
serial number. The driver uses the serial number it gets to recognize
|
||
one specific pen and the device type to distinguish the tip of that
|
||
specific pen from its eraser.
|
||
|
||
|
||
|
||
5.10.1. How to find out the serial number of a device
|
||
|
||
|
||
1. Set DebugLevel to 6
|
||
|
||
2. Start the X-Server by typing X 2>t
|
||
|
||
3. Tip all devices down on the tablet and make a notice of the order
|
||
you tipped them.
|
||
|
||
4. Kill the X-Server (usually Ctrl+Alt+Backspace)
|
||
|
||
5. Do a grep serial_num t
|
||
|
||
You should get a list of your different numbers.
|
||
|
||
|
||
5.10.2. Serial Num - Example of what has been logged (XFree 3)
|
||
|
||
|
||
|
||
BEGIN xf86WcmProc dev=0x8354d60 priv=0x833e3f0 type=stylus flags=9 what=1
|
||
xf86WcmProc pWcm=0x8354d60 what=ON
|
||
END xf86WcmProc Success what=1 dev=0x8354d60 priv=0x833e3f0
|
||
device_id=0x96 serial_num=2595227137 type=cursor
|
||
[cursor] abs prox=false x=0 y=0 z=0 button=false buttons=0
|
||
|
||
|
||
|
||
(serial_num is in Line 4 Word 2).
|
||
|
||
|
||
|
||
5.11. Mode absolute, Mode relative
|
||
|
||
|
||
|
||
If you set a device in mode absolute, this means, that the active area
|
||
of the tablet will be mapped to the screen. Every time you go down to
|
||
the tablet at the same point with an absolute device the pointer will
|
||
appear at the same point of the screen.
|
||
|
||
|
||
If you set a device in mode relative, you will get the well known
|
||
behavior of a mouse. This means, that if you take the mouse off from
|
||
the surface, move it and go down again, the pointer does (ideally) not
|
||
move.
|
||
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
Section "XInput"
|
||
SubSection "WacomStylus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
Mode absolute
|
||
...
|
||
EndSubSection
|
||
EndSection
|
||
|
||
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
Section "InputDevice"
|
||
Identifier "PenRed" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "Mode" "absolute"
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
5.12. Device Modes Extension, Core, AlwaysCore
|
||
|
||
|
||
|
||
XFree knows two pointers: one with only the standard features
|
||
(buttons, moving-capabilities), which is used for selecting menus,
|
||
text, clicking buttons and doing other controlling stuff. This is the
|
||
Core Device.
|
||
|
||
The other pointer is used by applications which want more information,
|
||
like pressure and tilt.
|
||
This is the extension device.
|
||
|
||
|
||
Starting with version 3.3.3.1, the Statement AlwaysCore tells the
|
||
driver that it should send both types of events.
|
||
|
||
|
||
If you do not specify Alwayscore in your XF86Config, then this device
|
||
is initially used as extension device, this means it is usable only in
|
||
applications but you can not control the menus of your window manager
|
||
with it.
|
||
|
||
|
||
If Alwayscore is given, then your device acts as core pointer (in
|
||
addition to the mouse) as well as it sends tilt and pressure
|
||
information to applications which opened the device in extension mode.
|
||
|
||
You can configure two different logical devices, one in Core-Mode and
|
||
one in Extension-Mode, to the same physical device.
|
||
To do so, simply type two identical sections, only the DeviceName
|
||
statement must differ. Then specify AlwaysCore only for the last
|
||
section.
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
Section "XInput"
|
||
SubSection "WacomStylus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
AlwaysCore
|
||
...
|
||
EndSubSection
|
||
EndSection
|
||
|
||
|
||
|
||
For XFree 4, this is not an option in the InputDevice section, it goes
|
||
to the Serverlayout section and can be one of: AlwaysCore /
|
||
SendCoreEvents or CorePointer:
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
Section "ServerLayout"
|
||
Identifier "XFree86 Configured"
|
||
Screen 0 "Screen0" 0 0
|
||
...
|
||
InputDevice "icursor" "AlwaysCore"
|
||
EndSection
|
||
|
||
|
||
|
||
5.13. HistorySize
|
||
|
||
|
||
|
||
This statement sets the buffer size that is used to cache motion
|
||
events.
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
Section "XInput"
|
||
SubSection "WacomStylus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
HistorySize 200
|
||
...
|
||
EndSubSection
|
||
EndSection
|
||
|
||
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
Section "InputDevice"
|
||
Identifier "PenRed" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "HistorySize" "200"
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
5.14. Suppress
|
||
|
||
|
||
|
||
This statement specifies how many units the device must move before
|
||
the driver moves the pointer. This can be necessary if very large
|
||
resolutions are used.
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
Section "XInput"
|
||
SubSection "WacomStylus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
Suppress 10
|
||
...
|
||
EndSubSection
|
||
EndSection
|
||
|
||
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
Section "InputDevice"
|
||
Identifier "PenRed" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "Suppress" "10"
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
5.15. TiltMode (XF3) and Tilt (XF4)
|
||
|
||
|
||
|
||
This works only with intuos series tablets.
|
||
TiltMode enables sending of tilt information for intuos devices. If
|
||
this statement is missing, only pressure information is transferred.
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
Section "XInput"
|
||
SubSection "WacomStylus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
TiltMode
|
||
...
|
||
EndSubSection
|
||
EndSection
|
||
|
||
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
Section "InputDevice"
|
||
Identifier "PenRed" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "Tilt" "on"
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
5.16. MaxX, MaxY, MaxZ (since alpha 20)
|
||
|
||
|
||
|
||
Max[axis] limits / owerwrites the max[axis] values normaly retrieved
|
||
from the tablet. More or less developer stuff.
|
||
|
||
|
||
|
||
5.17. ResolutionX, ResolutionY, ResolutionZ (since alpha 20)
|
||
|
||
|
||
|
||
Resolution[axis] presets the resolution[axis] values normaly retrieved
|
||
from the tablet. More or less developer stuff.
|
||
|
||
|
||
|
||
5.18. TopX, TopY, BottomX, BottomY Statements
|
||
|
||
|
||
|
||
These four statements allow to reduce the active area of the tablet.
|
||
My intuos A4 oversize, for example, is so big that you can not do
|
||
painting work with it because the ways of the pen are too long. I use
|
||
these four Statements to tell the driver that it should map only the
|
||
lower left quarter of the tablet to the screen.
|
||
It is possible to define more than one active area on the same tablet:
|
||
Define as many subsections as you need with the same Port Statement
|
||
but with different Top... statements and Devicenames. This results in
|
||
multiple logical devices all of them restricted to their individual
|
||
bounds. You may use one device in absolute mode and one in relative
|
||
mode as well.
|
||
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
Section "XInput"
|
||
SubSection "WacomStylus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
TopX 0
|
||
TopY 5000
|
||
BottomX 5000
|
||
BottomY 10000
|
||
...
|
||
EndSubSection
|
||
EndSection
|
||
|
||
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
Section "InputDevice"
|
||
Identifier "PenRed" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "TopX" "0"
|
||
Option "TopY" "5000"
|
||
Option "BottomX" "5000"
|
||
Option "BottomY" "10000"
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
5.18.1. Getting the maximal X, Y Values, current configuration, and
|
||
the resolution
|
||
|
||
If you use the above four statements, you sometimes want to make some
|
||
calculations on the size and position of the rectangle to be defined.
|
||
Often the maximal tablet coordinates and the resolution are needed for
|
||
this. To get these values, start your server: X 2>t. Kill the X-
|
||
Server (usually Ctrl+Alt+Backspace) and do a grep "X=" t .You should
|
||
get back the values in question.
|
||
|
||
|
||
|
||
5.18.2. Getting Resolution - Example of what has been logged
|
||
|
||
|
||
|
||
(--) Wacom IV tablet maximum X=5103 maximum Y=3711 X
|
||
resolution=1000 Y resolution=1000 suppress=6
|
||
(--) Wacom tablet top X=0 top Y=0 bottom X=5103 bottom Y=3711
|
||
(--) Wacom tablet top X=0 top Y=0 bottom X=5103 bottom Y=3711
|
||
(--) Wacom tablet top X=0 top Y=0 bottom X=5103 bottom Y=3711
|
||
|
||
|
||
|
||
5.19. KeepShape
|
||
|
||
|
||
|
||
This option uses the TopX, TopY statements (or their built in
|
||
defaults, if omitted) and adjusts the BottomX, BottomY statements so
|
||
that
|
||
|
||
|
||
<20> The ratio height / width of the screen is the same ratio on the
|
||
tablet
|
||
|
||
<20> The active area starting at TopX, TopY of the tablet is as big as
|
||
it can be with the above condition.
|
||
|
||
Any given BottomX, BottomY statement is ignored, because these values
|
||
will be calculated.
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
Section "XInput"
|
||
SubSection "WacomStylus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
KeepShape
|
||
...
|
||
EndSubSection
|
||
EndSection
|
||
|
||
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
|
||
Section "InputDevice"
|
||
Identifier "PenRed" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "KeepShape" "1"
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
5.20. Threshold
|
||
|
||
This is available since alpha 16 and is used to control the minimum
|
||
pressure that is needed to detect that a tool is pressed on the
|
||
surface. It works with intuos and graphire. Please note that the
|
||
integer value has to be coded as String, unlike all other integer
|
||
values.
|
||
|
||
|
||
Example (XFree 3):
|
||
|
||
|
||
Section "XInput"
|
||
SubSection "WacomStylus" # Pen
|
||
DeviceName "PenRed" # Name, choose it free
|
||
...
|
||
Threshold "5"
|
||
...
|
||
EndSubSection
|
||
EndSection
|
||
|
||
|
||
|
||
Example (XFree 4):
|
||
|
||
|
||
Section "InputDevice"
|
||
Identifier "PenRed" # Name, choose it free
|
||
Option "Type" "stylus"
|
||
...
|
||
Option "Treshold" "5"
|
||
...
|
||
EndSection
|
||
|
||
|
||
|
||
5.21. USB (since alpha 20)
|
||
|
||
|
||
|
||
USB tells the driver that the serial line is the usb port. This needs
|
||
a Kernel 2.4 with usb enabled. Alpha 20 driver only supports absolute
|
||
devices. ``Here'' is an example for use with XFree 4.
|
||
Please read the Wacom-USB-mini-HOWTO by Arnauld Claden and the
|
||
USB-'Micro-HOWTO' by Semyon Sosin for more information on USB setup.
|
||
|
||
|
||
|
||
6. Changing configuration from within a running X-Server
|
||
|
||
|
||
|
||
6.1. Setting up the Gimp to use XInput devices
|
||
|
||
|
||
|
||
``Gimp'' has built-in XInput support since Version 1.1.x.
|
||
|
||
Gimp must know which devices it should use and in what mode. You have
|
||
to open the File/Dialogs/Input Devices - dialog for setting this up.
|
||
You will find two listbox-controls at the top of that window labeled
|
||
Device and Mode . Choose the device to set up from the Device control
|
||
and choose a mode from the Mode -control.
|
||
|
||
The modes are:
|
||
|
||
|
||
<20> disabled: Gimp does not use this device.
|
||
|
||
<20> window:
|
||
Gimp uses this device, the cursor is drawn by the application. The
|
||
cursor can not leave the active window. The active area of the
|
||
tablet is mapped to this window.
|
||
|
||
<20> screen:
|
||
Gimp uses this device. The cursor is drawn by the X-Server. The
|
||
cursor can move over the whole screen. The active area of the
|
||
tablet is mapped to the screen.
|
||
|
||
|
||
If you see two cursors linked to your device, you have two solutions:
|
||
|
||
<20> Use mode screen but you may or may not loose the special gimp-tool
|
||
cursors; If so, all cursors will be replaced by the pen cursor.
|
||
|
||
<20> Configure two different devices in the XF86Config file, one
|
||
AlwaysCore and one not. Tell gimp to use the later one in mode
|
||
window. If you do so and have one of the statements TopX, TopY,
|
||
BottomX, BottomY in your XF86Config, take care to use the same
|
||
adjustments for that statements in both logical devices. If you do
|
||
not, then you get confused because X draws a cursor of the one
|
||
device while the other is active. the effect of this is a cursor,
|
||
very far away from the point of action (hotspot).
|
||
|
||
|
||
Below the two listbox-controls there is a tab-control with the two
|
||
register tabs Axes and Keys . Axes assigns an axis a function, it is
|
||
mostly not necessary to change this. But think about a touch-screen
|
||
device which is built in a table rotated by 90 degrees, then you might
|
||
want to swap the x and y axis.
|
||
|
||
|
||
Some tablets have so called macro keys at the top which may hold some
|
||
often used functions. The Keys tab lets you assign a character to a
|
||
macro key. For example, you can put Ctrl+Shift+R, to a macro key. If
|
||
you activate this key, then the rulers are toggled.
|
||
The current Wacom driver supports only the macro keys of the ultrapad
|
||
series, the macro area of the intuos products is not yet usable for
|
||
that.
|
||
|
||
|
||
Now we should talk about how the devices can be used. Open the
|
||
File/Dialogs/Device Status -dialog. Open an image.
|
||
|
||
You set up each device independently from each other in gimp.
|
||
|
||
If you move the cursor with different devices in the image window you
|
||
can see the devices change in the Device Status dialog. If you pick a
|
||
tool, brush, pattern or color with a device, again the changes are
|
||
reflected in the dialog. You can save the settings in the Status
|
||
Dialog, so that they will be restored before your next session.
|
||
|
||
|
||
|
||
6.2. The Switch Device
|
||
|
||
|
||
|
||
This is a special device that is always present. It generates an event
|
||
every time a new device becomes the core pointer. It has a pseudo
|
||
"axis". The "value" of this axis is the id of the core pointer
|
||
device. I do not know what a user can do with it - this is mainly
|
||
helpful for internal use.
|
||
|
||
|
||
6.3. Buttons
|
||
|
||
|
||
|
||
The buttons of the devices are as different as the devices are:
|
||
A pen has at least a tip, but it may have one or two side switches and
|
||
an eraser. A mouse may have up to 32 buttons (but usually 3). Buttons
|
||
are numbered from 1 to the number of buttons. With the next two
|
||
utilities you can change, to what number a button is mapped.
|
||
|
||
|
||
6.4. Button Mapping with xmodmap for Devices in Core Mode
|
||
|
||
|
||
|
||
xmodmap will only modify the Core Pointer. As there is only one Core
|
||
pointer at a time, it makes no difference between the physical devices
|
||
which may become the Core Pointer. You may set this device manually
|
||
with xsetpointer device.
|
||
|
||
For the moment, let us forget the whole XInput stuff and think of a
|
||
left-hander who just wants to swap the left and right mouse buttons.
|
||
You would execute xmodmap -pp to look what the current assignment is.
|
||
You should get the following table back:
|
||
|
||
|
||
Physical Button
|
||
Button Code
|
||
1 1 # ( Left Button )
|
||
2 2 # ( Right Button )
|
||
3 3 # ( Middle Button )
|
||
|
||
|
||
|
||
To swap the buttons, you do a xmodmap -e "pointer = 2 1 3" , and to
|
||
get back, xmodmap -e "pointer = default" . This should work with every
|
||
device with at least two buttons. Note that the term "pointer = x x
|
||
x" has to be quoted to prevent it from being changed by the shell.
|
||
|
||
|
||
|
||
6.5. Button Mapping with xinput for Devices in Extension Mode
|
||
|
||
|
||
|
||
Back to XInput now. If you use the gimp, you may want to change the
|
||
button mapping for each device separately (may be you are happy with
|
||
the mouse but want to swap the two side-switches of the pen). Frederic
|
||
Lepied has written a utility called ``xinput'' for that.
|
||
|
||
To swap the side-switches, you would do a xinput list to get a list of
|
||
the devices and their current settings. Swapping is done with xinput
|
||
set-button-map Pen1 1 3 2 where Pen1 is the Device to change.
|
||
|
||
Starting with XFree 3.3.2 this works also with devices that are
|
||
configured AlwaysCore in XF86Config.
|
||
|
||
|
||
|
||
6.6. xsetmode - changing absolute / relative mode
|
||
|
||
|
||
|
||
With xsetmode you can change the mode of a device between absolute and
|
||
relative.
|
||
|
||
Example:
|
||
xsetmode GraphireMouse ABSOLUTE .
|
||
|
||
|
||
|
||
6.7. xsetpointer - setting the default core device
|
||
|
||
|
||
|
||
If you have none of your devices configured AlwaysCore and you want a
|
||
device to become the core-pointer, then xsetpointer must be used.
|
||
|
||
Do a xsetpointer Devicename . The old core-device (usually the mouse)
|
||
is not usable anymore and the one you specified should be active. For
|
||
example I can make the graphire mouse the standard core device from
|
||
within a running XFree.
|
||
|
||
xsetpointer -l lists all devices and the modes they are in.
|
||
|
||
|
||
6.8. Keys
|
||
|
||
|
||
Some devices have macro keys or pads on them, to which a scancode or
|
||
string may be assigned. This works only for devices in extension mode
|
||
and is therefore done in the application you want use the keys with.
|
||
|
||
xinput -l gives information about the number of keys and things like
|
||
the first scancode.
|
||
|
||
|
||
|
||
6.9. Utilities to use more than one tablet and for toggle support on
|
||
/ off
|
||
|
||
|
||
|
||
I own myself 3 tablets of Wacom and use them on my notebook. Whenever
|
||
no tablets are connected and I start X, I have to wait very long until
|
||
the driver gives up. If xdm is used, this increases to multiple of
|
||
that timeouts.
|
||
|
||
I have written two utilities which should make live easier with that:
|
||
|
||
|
||
<20> The shell script sx for those who use startx. sx uses the dialog
|
||
tool to present a nice menu where the user can choose:
|
||
|
||
<20> one of up to 10 devices (tablet, joystick, ...)
|
||
|
||
<20> for notebooks, which display to use (internal or external display)
|
||
|
||
<20> which window-manager to use
|
||
|
||
|
||
|
||
<20> The small gtk-application xinput-chooser for those who use xdm.
|
||
xinput-chooser presents the user a menu whenever the xdm login
|
||
screen is shown, from which one of up to ten different
|
||
configurations can be chosen.
|
||
|
||
|
||
The concept behind this is that a XF86Config file is split in at least
|
||
a XF86Config.bare file, which holds the information common to all
|
||
configurations, and various snippets, each of them holding the special
|
||
information for a particular configuration.
|
||
|
||
The two utilities will then concat the parts back to a working
|
||
configuration.
|
||
|
||
|
||
You can get this packet from http://www.runkel-it.de/download , it is
|
||
named xinput_chooser_sr.
|
||
|
||
|
||
|
||
7. XFree FAQ - Problems And Questions
|
||
|
||
|
||
|
||
7.1. Gimp Input Devices Dialog shows "No Input Devices" Gnome and
|
||
Gimp only work like a usual mouse, without pressure and tilt.
|
||
|
||
It seems that you have not compiled your gtk with XInput-support.
|
||
Please rebuild gtk and use ./configure --with-xinput=xfree for
|
||
building the Makefile. Then do a make && make install. Then rebuild
|
||
your gimp so that it uses this extendet gtk.
|
||
|
||
|
||
7.2. Is the wheel of the mouse (cursor) supported ?
|
||
|
||
Yes, it generates button 4 and button 5 events.
|
||
|
||
|
||
7.3. How can I find out the intuos Serial Num of my tool ?
|
||
|
||
read the section about ``Serial_Num''
|
||
|
||
|
||
7.4. How do I change the action of each button of my tool?
|
||
|
||
Read the section about ``buttons''.
|
||
|
||
|
||
7.5. How can I use the intuos/artpad/ultrapad macro area ?
|
||
|
||
You can not use the intuos macro area, sorry.
|
||
Only Artpad / Ultrapad Macro stripes work. Read the section about
|
||
``Gimp Keys''.
|
||
|
||
|
||
7.6. Is it possible to define multiple active areas on the same
|
||
tablet ?
|
||
|
||
Yes, read the section about the ``Top... Statements''
|
||
|
||
|
||
7.7. Can I use more than one tablet at the same time ?
|
||
|
||
Yes, read the ``'Port and Device' section''
|
||
|
||
|
||
7.8. The Wacom Driver eats my CPU Time. Any Hint ?
|
||
|
||
This mostly happes under the following condition:
|
||
AllowMouseOpenFail was specified and the device is set to /dev/null.
|
||
Set the device to a nonexisting file instead, for example /dev/fake,
|
||
and you will get back your CPU time. See the examples for this under
|
||
the ``'Port and Device' section''.
|
||
|
||
|
||
Another reason may be that there were too many interrupts produced.
|
||
I was told, that hdparm -u1 /dev/hdx (replace x with your drive
|
||
letter) may help.
|
||
|
||
|
||
7.9. The Cursor 'dances' around
|
||
|
||
Most Graphire's are known to be weak for that, intuos seems to be
|
||
better but still not perfect. This seems to be a hardware problem.
|
||
Possible Solutions:
|
||
|
||
|
||
<20> Put your tablet as far as possible away from all emitting devices
|
||
like monitors, printers, computers, AC-adapters.
|
||
|
||
<20> Use a modified driver with a filter algorythm. Many of them are in
|
||
development right now but none of them seem to be the cruncher.
|
||
|
||
<20> If using an IDE drive, try hdparm -u1 /dev/hdx (replace x with your
|
||
drive letter)
|
||
|
||
|
||
8. Gpm FAQ - Problems And Questions
|
||
|
||
|
||
|
||
8.1. NCurses programs only support cut and paste with my new gpm
|
||
|
||
You probably mixed a new gpm with an old gpm library. Or You use an
|
||
old client which searches the socket gpmctl in /var/run instead in
|
||
/dev. In the later case you have two options: get new clients and
|
||
recompile them or change gpm.h so that it uses /var/run instead of
|
||
/dev and recompile gpm and libgpm.
|
||
|
||
|
||
|
||
9. Further Information / Used Documents
|
||
|
||
|
||
|
||
gpm:
|
||
gpm man page, gpm FAQ, source code file mice.c
|
||
|
||
XInput:
|
||
XInput HOWTO by Owen Taylor
|
||
|
||
XFree and Wacom:
|
||
XF86Config man page
|
||
|
||
Frederic Lepied's site
|
||
|
||
Wacom-USB-mini-HOWTO by Arnauld Claden
|
||
|
||
USB-'Micro-HOWTO' by Semyon Sosin (intuos related)
|
||
|
||
much, much, e-mails...
|
||
|
||
|
||
|