Instructions for Debian Squeeze (Xorg >= 1.7)
Both Xorg and
the Linux Wacom project have changed DRASTICALLY in Debian Squeeze (for example Xorg 1.7 eliminated its configuration file
"xorg.conf" file).
The instructions on this page are limited to older systems.
However, if you have Squeeze then you can easily get your Wacom working by installing the Debian packages
"xserver-xorg-input-wacom" and "xinput". After plugging in your tablet you can configure it
using the "xinput" command (note that the utility "xsetwacom" is no longer necessary).
Instructions for Debian Lenny (e.g. Xorg < 1.7 and kernel >= 2.6.15.6)
The Wacom kernel drivers were integrated upstream in the kernel around version 2.6.15.6 (I'm not precisely
sure when). Hence you will only have to install the Xorg driver and some tablet configuration tools:
apt-get install xserver-xorg-input-wacom apt-get install wacom-toolsNow skip to the section Configuring xorg.conf. If these instructions do not work, try manually installing the drivers (described below).
Manual instructions for Debian Etch or older
In older systems the kernel drivers still had not been included upstream and/or the drivers
were outdated. Hence here are manual instructions for installing both new kernel drivers and
Xorg drivers.
First, make sure that you have a custom-built kernel in "/usr/src" (and make sure that you are running it), or
that you have the kernel headers installed if you are running a pre-built kernel. In my case I have source
for a custom kernel in
/usr/src/linux-source-2.6.12
In some sense the Debian configuration should be easy because
there are ready-made kernel driver packages, but they don't quite work
correctly. Nevertheless, you can start with
apt-get wacom-tools
apt-get wacom-kernel-source
The second command builds a kernel driver for you and puts it in a .deb
package in /usr/src/modules. You should install this .deb package
(instructions are
given by the wacom-kernel-source package as it builds).
After installing the wacom*.deb package in /usr/src/modules (using dpkg) I found that the driver didn't work (it was outdated). Nevertheless the package is worth installing because it performs some "udev" configuration.
The good driver (along with an exhaustive HOWTO) is located at The Linux Wacom Project. This should be considered the primary source. My notes here only apply to my specific situation - those notes are much more general.
Since I am using kernel 2.6.12 I downloaded the latest tarball
linuxwacom-0.7.1-1.tar.bz2 and put it in /usr/src. After unzipping I get
the directory
/usr/src/linuxwacom-0.7.1-1
Go in there and run the following command:
./configure --enable-wacom --enable-hid --enable-mousedev --enable-usbmouse
--enable-evdev
The official guide indicates that all of the "enables" are not necessary,
but I found that they were (I ran into a myriad of problems without them,
ranging from the driver not taking control of the tablet to the tablet
not working properly in the Gimp). Now type "make" to make the driver.
After the driver has been created, it is located in the "src"
subdirectory. So go into
/usr/src/linuxwacom-0.7.1-1/src
In there you will find directories labelled 2.6.*. You should choose the
appropriate directory for your kernel (or whichever is the next lowest).
In my case I am running kernel 2.6.12, but there is no 2.6.12 directory,
so I chose the 2.6.11 directory (NOT the 2.6.13 directory)!!!
In those directories you will find the appropriate drivers (*.ko files).
Since my kernel is called "2.6.12-custom1" I issued the following
commands to copy the drivers to their right places
cp evdev.ko /lib/modules/2.6.12-custom1/kernel/drivers/input
cp mousedev.ko /lib/modules/2.6.12-custom1/kernel/drivers/input
cp wacom.ko /lib/modules/2.6.12-custom1/kernel/drivers/usb/input
cp usbhid.ko /lib/modules/2.6.12-custom1/kernel/drivers/usb/input
cp usbmouse.ko /lib/modules/2.6.12-custom1/kernel/drivers/usb/input
Notice that the destination directory of the last 3 is *different* then
the destination directory of the first 2!!!
That's IT!!! Rebooting the kernel finalizes the configuration (note that I am still having problems with booting my laptop with the Wacom plugged in - it freezes at hotplug detection. This problem doesn't happen on my big computer. Usually I just unplug it, boot the computer, and and plug it in BEFORE Xwindows starts).
Now you need to install an updated driver for your X server to deal
with the tablet. This driver ("wacom_drv.o") can be found in
/usr/src/linuxwacom-0.7.1-1/prebuilt
Pick the driver appropriate for your X server. In my case I am using
the Xorg server, so I chose "wacom_drv.o_xorg" and copied it to the X server
with the command
cp wacom_drv.o_xorg /usr/X11R6/lib/modules/input/wacom_drv.o
OR IN XORG YOU MIGHT TRY THIS DIRECTORY INSTEAD
cp wacom_drv.o_xorg /usr/xorg/lib/modules/input/wacom_drv.o
Notice how I changed the name of the driver to just plain "wacom_drv.o".
Update: as already mentioned above, this file has changed name to "wacom_drv.so" in later versions of Xorg.
Configuration of Xorg using "xorg.conf" file
Now it's time to modify the /etc/X11/xorg.conf (or XF86Config-4) to
let the server know about the Wacom. In my case I have the USB tablet,
so I added these lines (you should consult the Linux Wacom Project website
for more details concerning your specific configuration):
Section "InputDevice" Driver "wacom" Identifier "stylus" Option "Device" "/dev/input/wacom" Option "Type" "stylus" Option "Speed" "2.0" Option "Mode" "Relative" Option "Threshold" "20" Option "USB" "on" EndSection Section "InputDevice" Driver "wacom" Identifier "eraser" Option "Device" "/dev/input/wacom" Option "Type" "eraser" Option "Speed" "2.0" Option "Mode" "Relative" Option "Threshold" "20" Option "USB" "on" EndSection Section "InputDevice" Driver "wacom" Identifier "cursor" Option "Device" "/dev/input/wacom" Option "Type" "cursor" Option "Speed" "2.0" Option "USB" "on" EndSection
Section "ServerLayout" Identifier "Default Layout" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" InputDevice "cursor" "SendCoreEvents" InputDevice "stylus" "SendCoreEvents" InputDevice "eraser" "SendCoreEvents" EndSection
You will need to decide if you like "Relative" mode or "Absolute" mode. Also you may need to play with the "Speed" and "Threshold" numbers. Note that these settings can be configured by each user separately (on the fly) using the "xsetwacom" command.
Restarting the X server should bring these devices up!!! Now all that remains is to configure the Gimp. I am using Gimp 2.2 so I went into "File -> Preferences -> Input Devices -> Configure Extended Input Devices" and Enabled all 3 devices (I set them to "Screen" mode since "Window" mode gave me problems).
Note that I had problems with my Wacom and the APM (power management) on my laptop. I found that the APM subsystem would somehow "forget" to turn my USB devices BACK on when it wakes up. I don't know if this is a Linux bug or a bug with my Dell Inspiron 4000, but nevertheless, here is the fix: in my APM scripts I UNLOAD (modprobe -r uhci_hcd) the "uhci_hcd" module upon a Suspend call, and I RELOAD (modprobe uhci_hcd) the module when APM resumes. This works, although I DO need to restart my X server every time. I'm willing to live with this.
Update: the new 2.6.15.6 kernel fixed this APM issue, except I still am forced to restart the X server.
This page has been visited times since November 23, 2005