wacom bamboo on lucid, with dual monitor


I want to get a bamboo pen and touch (3rd edition) working.

I still run ubuntu 10.04 (lucid), and have a dual monitor setup. On the left the 24" main monitor, on the right my laptop 14" laptop screen.

The source of my information is http://ubuntuforums.org/showthread.php?t=1515562


Because I am on lucid, I need to upgrade xorg-macros


cd ~/software
wget http://xorg.freedesktop.org/releases/individual/util/util-macros-1.17.tar.bz2
sudo cp /usr/share/aclocal/xorg-macros.m4 /usr/share/aclocal/xorg-macros.m4.bak
tar xjvf util-macros-1.17.tar.bz2
cd util-macros-1.17
./configure --prefix=/usr
sudo make install

Then I need the kernel module, from git. It needs to be patched before being installed

cd ~/software
git clone git://linuxwacom.git.sourceforge.net/gitroot/linuxwacom/input-wacom
wget http://baach.de/Members/jhb/input-wacom-Backport-2nd-and-3rd-gen-Bamboo-support-to-2.6.30.patch.zip
unzip input-wacom-Backport-2nd-and-3rd-gen-Bamboo-support-to-2.6.30.patch.zip
cd input-wacom
patch -p1 < ../input-wacom-Backport-2nd-and-3rd-gen-Bamboo-support-to-2.6.30.patch
./autogen.sh --prefix=/usr
sudo cp /lib/modules/2.6.32-40-generic-pae/kernel/drivers/input/tablet/wacom.ko /lib/modules/2.6.32-40-generic-pae/kernel/drivers/input/tablet/wacom.ko.orig
sudo cp 2.6.30/wacom.ko /lib/modules/2.6.32-40-generic-pae/kernel/drivers/input/tablet

Now its time for the X driver:

cd ~/software
git clone git://linuxwacom.git.sourceforge.net/gitroot/linuxwacom/xf86-input-wacom
./autogen --prefix=/usr
sudo make install

All setup. Now time to reboot, and then the tablet should be usable.


Runtime configuration

Configure it so that the tablet only is active on one of the screen. On lucid we don't have the newer X Server which would be required to use the transformation matrix, but its possible to do it with standard utils:

#only on large screen A
stylusid=$(xinput list | grep 'stylus' | sed 's/.*id=\([0-9]*\).*/\1/')
width=$(python -c "import math; print int(math.ceil(14720*((1920+1280)/1920.0)))")
xsetwacom --set $stylusid Area 0 0 $width 9200

#only on screen B
stylusid=$(xinput list | grep 'stylus' | sed 's/.*id=\([0-9]*\).*/\1/')
hoffset=$(python -c "import math; print -1 * int(math.floor(14720/1280.0*1920))")
voffset=$(python -c "import math; print -1 * int(math.floor(9200 * (400/800.0)))")
xsetwacom --set $stylusid Area $hoffset $voffset 14720 9200#reset to default
xsetwacom --set $stylusid Area 0 0 14720 9200