The Saga of Support for Wacom ArtZII/ArtZ2 Serial Tablet using a Keyspan Serial->USB Adapter under Ubuntu 10.04 "Lucid Lynx"
In Karmic, I had the tablet/stylus/eraser working through a Keyspan serial->USB adapter (You can see details a few posts back in this thread.) When I upgraded to Lucid, it stopped working. With help from my brother the programmer, it works now. What follows is a work in progress, and very specific; but hopefully some of it can help some of you. I have omitted a lot of dead ends, wrong edits, mistakes, and kernel panics, and whatnot.
From this post talking about Lucid and wacom on sourceforge, I got patch 1 and patch 2
Then, install a huge cluster of crap
Get input driver for the tablet
sudo apt-get install debhelper xserver-xorg-dev libxi-dev quilt libtool autoconf
Apply the patches
apt-get source xserver-xorg-input-wacom
I had a problem here and had to appy some changes manually from the rejected hunk file
patch -p1 < ../0001-rename-wcmICDV4Speed-to-wcmSerialSpeed.patch
patch -p1 < ../0002-reenable-support-for-legacy-serial-tablets.patch
gedit src/xf86WacomDefs.h src/xf86WacomDefs.h.rej
Build the wacom driver package
Install the wacom driver package
Reading John Tsiombikas' post, I realize that if I have a kernel older than linux 2.6.34, I need to patch the kernel ioctl implementation. To find my kernel version:
sudo dpkg -i ../xserver-xorg-input-wacom_0.10.5-0ubuntu4_i386.deb
I have 2.6.32, so I get his PL2303patch here.
Need to patch the kernel, so I mostly follow steps from this howtogeeks post
Downloaded packages for kernel source modification
Dangerously become root because of all the commands I need to run
sudo apt-get install linux-source-2.6.32 kernel-package libncurses5-dev fakeroot
Here, my narrative gets lost because my brother the programmer mostly took over, and also the root shell doesn't seem to save history the same way.
Do a bunch of stuff like applying John's patch, recompiling the kernel (takes a long time), updating initrd, updating the GRUB bootloader, reboot, and... the moment of truth:
It doesn't work.
Turns out that John's patch works for his particular serial->USB adapter, and since I have a keyspan serial->USB adapter, it needs a different patch.
My brother the programmer goes in, and looking at the patch to the PL2303 driver, makes a patch for the Keyspan driver. The larger problem is that ioctl support in USB serial drivers is spotty, and there are only a few that have it; but Lucid, unlike Karmic, expects the serial devices to pass some kind of test. The patch is here.
Apply the Keyspan patch
Then do all the compiling and what not again, and add this to the device section of xorg.conf:
patch -p1 < /home/smws/Downloads/keyspan-ioctl_cgserial.patch.txt
At one point I also commented out the entire /usr/lib/X11/xorg.conf.d/10-wacom.conf, with # at the start of every line, but I don't know if that was necessary or not.
Option "ForceDevice" "SERIAL"
That's the story so far, I'll probably streamline the process later with some edits. Many thanks to Favux, John Tsiombikas and the other kernel hackers, person at Howtogeek, and my brother the programmer, and everyone else who helped.
Hey, linux kernel module people: please add dummy TIOCGSERIAL ioctl to all the serial->USB drivers in your copious free time! Thanks.