Allin Cottrell, January 2002
How I got my Wacom Intuos 9x12 graphics tablet (USB version) working, with Linux kernel 2.4.17 on ix86, XFree86 version 4.1.0, GTK+ 1.2.10 and gimp 1.2.2.
This is basically a distillation of more extensive
information found at
http://www.runkel-it.de/wacom_tablet_howto.html and a few other sites. [Note added Jan 8, 2003: the most up-to-date site for this sort of thing now seems to be the Linux Wacom Project, linuxwacom.sourceforge.net.]
As of 2.4.17 the stock Linux kernel has a functional wacom driver (for the Intuos at any rate).
Configure the kernel source for input support:
(This will result in the creation of the modules input.o and evdev.o.)
Also configure kernel USB support. Here is a relevant extract from my grep USB /usr/src/linux/.config:
# USB support CONFIG_USB=m # CONFIG_USB_DEBUG is not set # Miscellaneous USB options CONFIG_USB_DEVICEFS=y # CONFIG_USB_BANDWIDTH is not set # USB Controllers CONFIG_USB_UHCI=m # CONFIG_USB_UHCI_ALT is not set # CONFIG_USB_OHCI is not set # USB Device Class drivers # CONFIG_USB_AUDIO is not set # CONFIG_USB_BLUETOOTH is not set # CONFIG_USB_STORAGE is not set # CONFIG_USB_ACM is not set # CONFIG_USB_PRINTER is not set # USB Human Interface Devices (HID) CONFIG_USB_HID=m # CONFIG_USB_KBD is not set # CONFIG_USB_MOUSE is not set CONFIG_USB_WACOM=m
This will result in the creation of the usb modules hid.o, usb-uhci.o, usbcore.o and wacom.o. Actually I believe that hid.o may be redundant for this purpose, but having it around does no harm.
You must then rebuild the kernel and modules; install them; run /sbin/lilo; and reboot.
I created a little script which I called /etc/rc.d/rc.wacom to load the relevant kernel modules:
modprobe usb-uhci modprobe wacom modprobe evdev
These lines automatically bring in usbcore.o and input.o, if your module dependencies are in order.
You should replace the /usr/X11R6/lib/modules/input/wacom_drv.o module which is supplied with the XFree86 4.1.0 binary package for Linux with the updated version available from Frederic Lepied's site (version alpha 25 as of this writing). Without this update I was unable to get any action at all from the tablet. [Update, Jan 2003: Try linuxwacom.sourceforge.net for the current driver.]
Then get your /etc/X11/XF86Config right.
Add three "InputDevice" sections, one each for the Wacom stylus (or pen), the Wacom eraser (the other end of the pen) and the Wacom 4D mouse. These sections should look something like the following:
Section "InputDevice" Driver "wacom" Identifier "cursor" Option "Device" "/dev/input/event0" Option "Type" "cursor" Option "Mode" "relative" Option "USB" "on" Option "Speed" "3.0" EndSection Section "InputDevice" Driver "wacom" Identifier "stylus" Option "Device" "/dev/input/event0" Option "Type" "stylus" Option "Mode" "absolute" Option "USB" "on" Option "Tilt" "on" # Option "TiltInvert" "on" Option "Threshold" "5" EndSection Section "InputDevice" Driver "wacom" Identifier "eraser" Option "Device" "/dev/input/event0" Option "Type" "eraser" Option "Mode" "absolute" Option "USB" "on" Option "Tilt" "on" # Option "TiltInvert" "on" Option "Threshold" "5" EndSection
I found that it's important to include the "Threshold" setting for the stylus and eraser: without it, moving the pen produced cursor motion but I couldn't actually draw in the gimp (no marks appeared). You may want to experiment with the "TiltInvert" setting.
You also need to add references to the new Input Devices into the "ServerLayout" section of XF86Config (the ellipsis below indicates the standard material that was there before, for keyboard and regular mouse):
Section "ServerLayout" ... InputDevice "cursor" "SendCoreEvents" InputDevice "stylus" "SendCoreEvents" InputDevice "eraser" "SendCoreEvents" EndSection
Note you don't need a "Load" line for the wacom driver in the "Module" section. The wacom_drv.o module is auto-loaded by XFree.
If you built GTK+ from source, the default configuration for version 1.2.10 (and earlier), does not include support for Xinput, which is required if you're going to use the Wacom tablet with the gimp. Thus you must rebuild and reinstall GTK. At the ./configure stage be sure to add the flag
If you installed GTK+ as part of a Linux distribution, Xinput support may well be present already.
Under gimp's File/Dialogs... menu, open the Input Devices dialog. You should see a drop down list at the top left of the window showing the input devices that you configured for XFree86 (in my case, "stylus", "eraser" and "cursor"). Each has a mode associated with it, which can be set from the drop down list on the right. I set "Screen" mode for all 3 devices. (I had some weird stuff go on when I tried "Window" mode.)
To see what's going on while you're using gimp, open the Device Status box (under File/Dialogs). You should see icons showing the status of each input device (e.g. which gimp tool is in use with each).