Difference between revisions of "Wacom"
(10 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
|- | |- | ||
!Download Source: | !Download Source: | ||
− | | http:// | + | | http://downloads.sourceforge.net/linuxwacom/linuxwacom-{{Wacom-Version}}.tar.bz2 |
|} | |} | ||
Line 22: | Line 22: | ||
== Configuration Information == | == Configuration Information == | ||
− | Prior to building the driver, make sure the kernel is configured with support for HID and Input device support (INPUT_EVDEV). Newer kernels also contain support for the Wacom tablets; if you plan to use the kernel module available with the libwacom driver, make sure you '''have''' this option built as a module. | + | Prior to building the driver, make sure the kernel is configured with support for HID and Input device support (INPUT_EVDEV). Newer kernels also contain support for the Wacom tablets; if you plan to use the newer kernel module available with the libwacom driver, make sure you '''have''' this option built as a module. |
== Non-Multilib == | == Non-Multilib == | ||
Line 73: | Line 73: | ||
== Configuring == | == Configuring == | ||
− | ''' | + | === Udev rules === |
+ | |||
+ | If you are using udev, you may want to create a new rule to assign a static name to the device. | ||
+ | |||
+ | cat > /etc/udev/rules.d/10-wacom.rules << "EOF" | ||
+ | KERNEL=="event*", ATTRS{idVendor}=="056a", NAME="input/%k", SYMLINK="input/wacom%e" | ||
+ | EOF | ||
+ | |||
+ | Restart udev daemon: | ||
+ | |||
+ | /etc/rc.d/init.d/udev force-reload | ||
+ | |||
+ | === X configuration === | ||
+ | |||
+ | Edit the xorg.conf file and add the necessary configuration. | ||
+ | |||
+ | There's a known problem concerning mice and the Wacom driver loaded if the tablet is not plugged in. Make sure your mouse configuration does not use the device /dev/input/mice but instead /dev/input/mouse0 (or whatever you have on your system). | ||
+ | |||
+ | In the Section "ServerLayout" add: | ||
+ | |||
+ | InputDevice "Stylus0" "SendCoreEvents" | ||
+ | InputDevice "Eraser0" "SendCoreEvents" | ||
+ | InputDevice "Cursor" "SendCoreEvents" | ||
+ | |||
+ | If you have an Intuos3, Cintiq 21UX, Graphire4, or Bamboo tablet, also add this line: | ||
+ | |||
+ | InputDevice "Pad" | ||
+ | |||
+ | Create these new sections: | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "Stylus0" | ||
+ | Option "Device" "/dev/ttyS0" # SERIAL ONLY | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "stylus" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | Option "ForceDevice" "ISDV4" # Tablet PC ONLY | ||
+ | EndSection | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "Eraser0" | ||
+ | Option "Device" "/dev/ttyS0" # SERIAL ONLY | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "eraser" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | Option "ForceDevice" "ISDV4" # Tablet PC ONLY | ||
+ | EndSection | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "Cursor" | ||
+ | Option "Device" "/dev/ttyS0" # SERIAL ONLY | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "cursor" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | Option "ForceDevice" "ISDV4" # Tablet PC ONLY | ||
+ | EndSection | ||
+ | |||
+ | If you have an Intuos3, Cintiq 21UX, Graphire4, or Bamboo tablet, also add this section: | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "Pad" | ||
+ | Option "Device" "/dev/ttyS0" # SERIAL ONLY | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "pad" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | EndSection | ||
+ | |||
+ | Restart X to use the new configuration. | ||
+ | |||
+ | === GTK configuration === | ||
+ | |||
+ | If you have not already done so, re-build [[Gtk2]] with the option ''--with-xinput=yes''. Without it, you will not be able to use the extended information (i.e. pressure, tilt, rotation) from the graphical tablet in GIMP or other programs supporting it. | ||
+ | |||
+ | === GIMP configuration === | ||
+ | |||
+ | Start [[GIMP]] and click on menu '''File''', '''Preferences''', select the section '''Input Devices''' and click the '''Configure Extended Input Devices''' button. For each device (Stylus0, Eraser0, Cursor and Pad, if you have it), select '''Mode Screen'''. This will allow you to use the devices outside the image's window; if you want to restrict the cursor to the image, choose '''Mode Window''' instead. | ||
+ | |||
+ | If you receive a message that you have no extended input devices, your GTK has not been properly configured. | ||
+ | |||
+ | === Customizing the tablet and extra buttons === | ||
+ | |||
+ | You can customize the extra buttons using the '''xsetwacom''' program: | ||
+ | |||
+ | xsetwacom Stylus0 Button2 "core key ctrl shift b" | ||
+ | |||
+ | ''(This will set the second button on the stylus to the keyboard shortcut Ctrl+Shift+B, which by default is mapped to the Brushes dialog in GIMP.)'' | ||
+ | |||
+ | You can also add the customization inside xorg.conf. | ||
+ | |||
+ | '''Tip:''' By default, the tablet's whole area is mapped out to the screen. If your screen does not have the same X/Y ratio as the tablet's area, this will cause horizontal lines to be "stretched out" over a larger area than the area needed for the same vertical line (or the other way around). If you want a 1:1 mapping, you can reduce the tablet's area according to a few simple calculations: | ||
+ | |||
+ | Screen's X resolution / Tablet's X resolution = X Ratio | ||
+ | Screen's Y resolution / Tablet's Y resolution = Y Ratio | ||
+ | |||
+ | If X Ratio is bigger than Y Ratio, you want to reduce the Tablet's Y resolution: | ||
+ | |||
+ | Screen's Y resolution * Tablet's X resolution / Screen's X resolution = Tablet's Y '''new resolution''' | ||
+ | |||
+ | You can set it with | ||
+ | |||
+ | xsetwacom set Stylus0 BottomY ''<Tablet's Y new resolution>'' | ||
+ | xsetwacom set Eraser0 BottomY ''<Tablet's Y new resolution>'' | ||
+ | |||
+ | You do not need to set this for the Cursor and Pad devices, since Cursor (the mouse that came with the tablet) uses relative mode (mouse cursor moves from the last place on the screen) as opposed to the Stylus0 and Eraser0, which use absolute mode (mouse cursor "jumps" into the new position, according to where you place the pen on the tablet). | ||
+ | |||
+ | If the X Ratio is smaller, reduce the Tablet's X resolution with this formula: | ||
+ | |||
+ | Screen's X resolution * Tablet's Y resolution / Screen's Y resolution = Tablet's X '''new resolution''' | ||
+ | |||
+ | If you don't want to repeat these calculations/settings every time you start X, enter them in the xorg.conf file. | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "Stylus0" | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "stylus" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | Option "BottomY" "''<Tablet's Y new resolution>''" # If your X ratio is bigger | ||
+ | Option "BottomX" "''<Tablet's X new resolution>''" # If your X ratio is smaller | ||
+ | EndSection | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "Eraser0" | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "eraser" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | Option "BottomY" "''<Tablet's Y new resolution>''" # If your X ratio is bigger | ||
+ | Option "BottomX" "''<Tablet's X new resolution>''" # If your X ratio is smaller | ||
+ | EndSection | ||
+ | |||
+ | === Using several pen === | ||
+ | |||
+ | If you have several pen, you can define them in xorg.conf, using the "Serial" option in each Stylus/Eraser device. First, change the Wacom driver's debug verbosity: | ||
+ | |||
+ | xsetwacom set Stylus0 CommonDBG 6 | ||
+ | |||
+ | Approach the first pen to the tablet and read the end of the /var/log/Xorg.0.log, looking for the serial number of the pen. Write it down, then approach the second pen to the tablet and read the new serial number. Next, edit xorg.conf and add the configuration: | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "'''Stylus0'''" | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "stylus" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | '''Option "Serial" "''<first serial #>''"''' | ||
+ | EndSection | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "'''Eraser0'''" | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "stylus" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | '''Option "Serial" "''<first serial #>''"''' | ||
+ | EndSection | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "'''Stylus1'''" | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "stylus" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | '''Option "Serial" "''<second serial #>''"''' | ||
+ | EndSection | ||
+ | |||
+ | Section "InputDevice" | ||
+ | Driver "wacom" | ||
+ | Identifier "'''Eraser1'''" | ||
+ | Option "Device" "/dev/input/wacom" # USB ONLY | ||
+ | Option "Type" "stylus" | ||
+ | Option "USB" "on" # USB ONLY | ||
+ | '''Option "Serial" "''<second serial #>''"''' | ||
+ | EndSection | ||
+ | |||
+ | Remember to enable it in GIMP's preferences also. | ||
== Contents == | == Contents == | ||
Line 100: | Line 279: | ||
|-valign="top" | |-valign="top" | ||
!wacomcpl,wacomcpl-exec | !wacomcpl,wacomcpl-exec | ||
− | |Graphical GUI for changing the current configuration of the tablet on the fly. - ''currently not working with XCB'' | + | |Graphical GUI for changing the current configuration of the tablet on the fly. It modifies the .xinitrc file in the running user's home directory. - ''currently not working with XCB'' |
|} | |} | ||
+ | |||
+ | [[Category:Input Drivers]] |
Latest revision as of 14:50, 19 March 2009
Download Source: | http://downloads.sourceforge.net/linuxwacom/linuxwacom-0.7.8.tar.bz2 |
---|
Contents
Introduction to Wacom
The Linux Wacom Project manages the drivers, libraries, and documentation for configuring and running Wacom graphic tablets under the Linux operating system. It contains diagnostic applications as well as updated kernel drivers and XFree86/X11R6 XInput drivers.
Project Homepage: http://linuxwacom.sourceforge.net/
Dependencies
Required
Recommended
- Gtk2 using the ./configure option --with-xinput=yes
Configuration Information
Prior to building the driver, make sure the kernel is configured with support for HID and Input device support (INPUT_EVDEV). Newer kernels also contain support for the Wacom tablets; if you plan to use the newer kernel module available with the libwacom driver, make sure you have this option built as a module.
Non-Multilib
Compile the package:
./configure --prefix=/usr --enable-dlloader && make
Install the package:
make install
Multilib
32Bit
Compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \ PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" USE_ARCH=32 ./configure \ --prefix=/usr --x-libraries=/usr/lib --build=i686-pc-linux-gnu \ --host=i686-pc-linux-gnu --disable-xserver64 --enable-dlloader \ --with-arch=32 --with-xlib=/usr/lib --enable-wacom && make
Install the package:
make install
N32
To do
64Bit
Compile the package:
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \ PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" USE_ARCH=64 ./configure \ --prefix=/usr --libdir=/usr/lib64 --x-libraries=/usr/lib64 \ --enable-xserver64 --enable-dlloader --with-arch=64 --with-xlib=/usr/lib64 \ --enable-wacom && make
Install the package:
make install
Configuring
Udev rules
If you are using udev, you may want to create a new rule to assign a static name to the device.
cat > /etc/udev/rules.d/10-wacom.rules << "EOF" KERNEL=="event*", ATTRS{idVendor}=="056a", NAME="input/%k", SYMLINK="input/wacom%e" EOF
Restart udev daemon:
/etc/rc.d/init.d/udev force-reload
X configuration
Edit the xorg.conf file and add the necessary configuration.
There's a known problem concerning mice and the Wacom driver loaded if the tablet is not plugged in. Make sure your mouse configuration does not use the device /dev/input/mice but instead /dev/input/mouse0 (or whatever you have on your system).
In the Section "ServerLayout" add:
InputDevice "Stylus0" "SendCoreEvents" InputDevice "Eraser0" "SendCoreEvents" InputDevice "Cursor" "SendCoreEvents"
If you have an Intuos3, Cintiq 21UX, Graphire4, or Bamboo tablet, also add this line:
InputDevice "Pad"
Create these new sections:
Section "InputDevice" Driver "wacom" Identifier "Stylus0" Option "Device" "/dev/ttyS0" # SERIAL ONLY Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "stylus" Option "USB" "on" # USB ONLY Option "ForceDevice" "ISDV4" # Tablet PC ONLY EndSection Section "InputDevice" Driver "wacom" Identifier "Eraser0" Option "Device" "/dev/ttyS0" # SERIAL ONLY Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "eraser" Option "USB" "on" # USB ONLY Option "ForceDevice" "ISDV4" # Tablet PC ONLY EndSection Section "InputDevice" Driver "wacom" Identifier "Cursor" Option "Device" "/dev/ttyS0" # SERIAL ONLY Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "cursor" Option "USB" "on" # USB ONLY Option "ForceDevice" "ISDV4" # Tablet PC ONLY EndSection
If you have an Intuos3, Cintiq 21UX, Graphire4, or Bamboo tablet, also add this section:
Section "InputDevice" Driver "wacom" Identifier "Pad" Option "Device" "/dev/ttyS0" # SERIAL ONLY Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "pad" Option "USB" "on" # USB ONLY EndSection
Restart X to use the new configuration.
GTK configuration
If you have not already done so, re-build Gtk2 with the option --with-xinput=yes. Without it, you will not be able to use the extended information (i.e. pressure, tilt, rotation) from the graphical tablet in GIMP or other programs supporting it.
GIMP configuration
Start GIMP and click on menu File, Preferences, select the section Input Devices and click the Configure Extended Input Devices button. For each device (Stylus0, Eraser0, Cursor and Pad, if you have it), select Mode Screen. This will allow you to use the devices outside the image's window; if you want to restrict the cursor to the image, choose Mode Window instead.
If you receive a message that you have no extended input devices, your GTK has not been properly configured.
Customizing the tablet and extra buttons
You can customize the extra buttons using the xsetwacom program:
xsetwacom Stylus0 Button2 "core key ctrl shift b"
(This will set the second button on the stylus to the keyboard shortcut Ctrl+Shift+B, which by default is mapped to the Brushes dialog in GIMP.)
You can also add the customization inside xorg.conf.
Tip: By default, the tablet's whole area is mapped out to the screen. If your screen does not have the same X/Y ratio as the tablet's area, this will cause horizontal lines to be "stretched out" over a larger area than the area needed for the same vertical line (or the other way around). If you want a 1:1 mapping, you can reduce the tablet's area according to a few simple calculations:
Screen's X resolution / Tablet's X resolution = X Ratio Screen's Y resolution / Tablet's Y resolution = Y Ratio
If X Ratio is bigger than Y Ratio, you want to reduce the Tablet's Y resolution:
Screen's Y resolution * Tablet's X resolution / Screen's X resolution = Tablet's Y new resolution
You can set it with
xsetwacom set Stylus0 BottomY <Tablet's Y new resolution> xsetwacom set Eraser0 BottomY <Tablet's Y new resolution>
You do not need to set this for the Cursor and Pad devices, since Cursor (the mouse that came with the tablet) uses relative mode (mouse cursor moves from the last place on the screen) as opposed to the Stylus0 and Eraser0, which use absolute mode (mouse cursor "jumps" into the new position, according to where you place the pen on the tablet).
If the X Ratio is smaller, reduce the Tablet's X resolution with this formula:
Screen's X resolution * Tablet's Y resolution / Screen's Y resolution = Tablet's X new resolution
If you don't want to repeat these calculations/settings every time you start X, enter them in the xorg.conf file.
Section "InputDevice" Driver "wacom" Identifier "Stylus0" Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "stylus" Option "USB" "on" # USB ONLY Option "BottomY" "<Tablet's Y new resolution>" # If your X ratio is bigger Option "BottomX" "<Tablet's X new resolution>" # If your X ratio is smaller EndSection Section "InputDevice" Driver "wacom" Identifier "Eraser0" Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "eraser" Option "USB" "on" # USB ONLY Option "BottomY" "<Tablet's Y new resolution>" # If your X ratio is bigger Option "BottomX" "<Tablet's X new resolution>" # If your X ratio is smaller EndSection
Using several pen
If you have several pen, you can define them in xorg.conf, using the "Serial" option in each Stylus/Eraser device. First, change the Wacom driver's debug verbosity:
xsetwacom set Stylus0 CommonDBG 6
Approach the first pen to the tablet and read the end of the /var/log/Xorg.0.log, looking for the serial number of the pen. Write it down, then approach the second pen to the tablet and read the new serial number. Next, edit xorg.conf and add the configuration:
Section "InputDevice" Driver "wacom" Identifier "Stylus0" Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "stylus" Option "USB" "on" # USB ONLY Option "Serial" "<first serial #>" EndSection Section "InputDevice" Driver "wacom" Identifier "Eraser0" Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "stylus" Option "USB" "on" # USB ONLY Option "Serial" "<first serial #>" EndSection Section "InputDevice" Driver "wacom" Identifier "Stylus1" Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "stylus" Option "USB" "on" # USB ONLY Option "Serial" "<second serial #>" EndSection Section "InputDevice" Driver "wacom" Identifier "Eraser1" Option "Device" "/dev/input/wacom" # USB ONLY Option "Type" "stylus" Option "USB" "on" # USB ONLY Option "Serial" "<second serial #>" EndSection
Remember to enable it in GIMP's preferences also.
Contents
Installed Directories: | /usr/include/wacomcfg |
---|---|
Installed Programs: | wacdump, wacomcpl, wacomcpl-exec, xsetwacom |
Installed Libraries: | libwacomcfg.{a,so}, libwacomxi.{a,so} |
Short Descriptions
wacomdmp | is a program that dumps events from the tablet, useful for verifying your tablet works. |
---|---|
xsetwacom | is a program that allows you to set and get the current configuration of the tablet on the fly, without modifying the X configuration file and restarting. - currently not working with XCB |
wacomcpl,wacomcpl-exec | Graphical GUI for changing the current configuration of the tablet on the fly. It modifies the .xinitrc file in the running user's home directory. - currently not working with XCB |