Home > Computers > Wacom Graphire USB

Wacom Graphire USB

Last updated: 6-5-02

I bought a refurbished ruby Wacom Graphire tablet and set about getting it to work with Linux. I was initially running Red Hat 7.2 with the 2.4.7 default kernel. After getting my USB working, I found two HOWTOs (the Wacom Tablet HOWTO and the Wacom Graphire USB Mini-HOWTO) and began reading through them. Then I found Frederic Lepied's page which had updated drivers for the kernel and for XFree86. I recompiled my kernel with the updates, copied the XFree86 driver into the appropriate directory, and plugged in my tablet. It didn't work. The messages in /var/log/messages looked somewhat reassuring, and my XFree86 log told me it was picking up events, but I couldn't get the pen to work in the GIMP or Gsumi. I eventually realized that perhaps the kernel was at fault, so I upgraded to 2.4.17, messed around with it some more, and voila! It now works almost perfectly.

Here's how I got it to work with the 2.4.17 kernel. First of all I downloaded the kernel source and unpacked it in /usr/src. Then I copied Lepied's updates (wacom.c 1.21.3/1.23, usbmouse.c 1.6, hid-core.c 1.8.1) into the appropriate directory:

cp -f wacom.c usbmouse.c hid-core.c /usr/src/linux/drivers/usb

Next I configured my kernel. You can find my kernel configuration file here. Here are the relevant settings I used:

Input Core Support: <M> Input core support
<M> Keyboard support
<M> Mouse support
<1024> Horizontal screen resolution
<768> Vertical screen resolution
<M> Joystick support
<M> Event interface support
USB Support: <Y> Support for USB
<Y> USB verbose debug messages
<Y> Preliminary USB device filesystem
<M> UHCI (Intel PIIX4, VIA, ...) support
<N> UHCI Alternate Driver (JE) support
<N> OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support
<M> USB Human Interface Device (full HID) support
<N> USB HIDBP Keyboard (basic) support
<N> USB HIDBP Mouse (basic) support
<M> Wacom Intuos/Graphire tablet support

USB Serial Converter support
<M> USB Serial Converter support
<Y> USB Generic Serial Driver

After saving my new configuration, I edited the Makefile in /usr/src/linux:

EXTRAVERSION = test

This way it wouldn't overwrite my old kernel. I recompiled:

cd /usr/src/linux
make install
make modules
make modules_install

And then I rebooted into the new kernel. Note: I think my system (Red Hat 7.2) already had the /dev/input devices set up. If yours doesn't (if there isn't a /dev/input), you'll need to set them up as described in section 4.3 of the USB mini-HOWTO before you reboot. Lepied's alpha 26 driver was compiled for XFree86 4.2, but I'm running 4.1 and didn't want to download all of 4.2, so I downloaded the alpha 25 driver and copied it to the right directory:

gzip -d wacom_drv.o.gz
cp -f wacom_drv.o /usr/X11R6/lib/modules/input

Next I had to edit my /etc/X11/XF86Config-4 file:

Section "ServerLayout"
Identifier "Anaconda Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "cursor" "SendCoreEvents"
InputDevice "stylus" "SendCoreEvents"
InputDevice "eraser" "SendCoreEvents"
EndSection

Section "InputDevice"
Identifier "stylus"
Driver "wacom"
Option "Type" "stylus"
Option "Device" "/dev/input/event0"
Option "Mode" "absolute"
Option "USB" "on"
Option "DebugLevel" "10"
EndSection

Section "InputDevice"
Identifier "eraser"
Driver "wacom"
Option "Type" "eraser"
Option "Device" "/dev/input/event0"
Option "Mode" "absolute"
Option "USB" "on"
Option "DebugLevel" "10"
EndSection

Section "InputDevice"
Identifier "cursor"
Driver "wacom"
Option "Type" "cursor"
Option "Device" "/dev/input/event0"
Option "Mode" "relative"
Option "USB" "on"
Option "Speed" "3.0"
Option "DebugLevel" "10"
EndSection

If that doesn't work for you, try changing the three "SendCoreEvents" to "AlwaysCore". To get the tablet to work, I have to follow this process:

1. Plug tablet into USB port
2. modprobe usb-uhci
3. modprobe wacom
4. modprobe mousedev
5. modprobe evdev
6. Restart X

If I unplug the tablet, I have to remove the modules (with rmmod) and repeat the above process to get it to work again. I'm still not sure why I have to reload the usb-uhci module; perhaps my USB isn't working as well as I think it is. I get the following message in my system logs, repeated several times as I draw:

kernel: wacom_graphire_irq: received unknown report #1

If you know what's causing that, please let me know. (I think it's my VAIO's messed-up USB.) I tried taking out the Option "DebugLevel" "10" lines from my XF86Config-4, but then the tablet didn't work. That may be connected to this IRQ problem and could just be a quirk with my USB. If you get it to work without those DebugLevel lines, please let me know.

The tablet works quite well, at least as far as I can tell. It differentiates between the stylus, the eraser, and the cursor (the wireless mouse). In the GIMP, I set the three devices to "screen" mode, which I prefer to "window". (Window mode means that the pen will only work within the image window. I like to use the pen as a mouse, however, using it to select tools and so on, so I set it to screen mode instead. If I need more drawing area, I just zoom in on the image.) The pressure sensitivity works almost flawlessly. It's very nice. I didn't realize how cool the GIMP pen tool is until now. :)

Links

Wacom XInput driver for XFree86 -- Frederic Lepied's updated driver
Wacom mailing list archives -- quite useful
Wacom Tablet HOWTO -- a good resource
Wacom Graphire USB Mini-HOWTO -- this is rather outdated and probably won't help much
Wacom Technology -- the maker
Ayoros' Wacom Intuos/Graphire USB tablets on Linux HOWTO
Ayoros' Wacom Intuos/Graphire USB tablets on Linux HOWTO -- alternate URL
Brion Vibber's Wacom Graphire USB Stuff -- outdated
Alternative drivers at ftp.aros.org
Linux Tablet Homepage
XInput support for the GTK and the GIMP
Wacom Graphire USB -- in French, but seems to be accurate
Tablette Graphire USB et Xfree4 -- in French
Grafiktablett-Support für X11 und Gimp -- outdated, in German
Matsumura Namihiko's Wacom USB Tablet with Linux page -- in Japanese

Creative Commons
Website and contents under a
Creative Commons License
Web: http://www.blankslate.net/home.php
E-mail: ben.crowder at gmail dot com
Last modified: 2.20.08
Part of Blank Slate Network