Maverick, Natty, Oneiric, & Precise. Also can be used to set up other Wacom Tablets.
A Call for Testers: Attention third generation BambooPT users with the Wireless Option (the Capture and the Create). Chris Bagwell has a preliminary Wireless driver available for testing with instructions on linuxwacom-devel here. Please post your results on linuxwacom-discuss. Good luck and have fun!
Last updated: May 2, 2012
Sources
Developers responsible for the Bamboo P&T drivers:
From Ubuntu forums: Ayuthia, obe1kenobi, and multiple testers
From the LWP: Chris Bagwell, Ping Cheng, Peter Hutterer
New Wacom Bamboo not working
New Wacom Bamboo not working post #384
Wacom Bamboo Pen and Touch Series Development
LinuxWacom HOW TO.
Loic2's Wacom wiki.
The Linux Wacom Tablet Project sourceforge site.
The Linux Wacom Project's mediawiki main page
The Linux Wacom Project's mediawiki xf86-input-wacom HOWTO's.
The Linux Wacom Project's mediawiki linuxwacom HOWTO's by Ping Cheng.
Ubuntu Release Specific Notes
Precise Pangolin (12.04): The original Bamboo Pen and Touches (introduced Oct. 2009) work out of the box with the 3.2 kernel's wacom.ko and the current default xf86-input-wacom-0.14.0 X driver. The second and third generation models require an updated wacom.ko from input-wacom.
Oneiric Ocelot (11.10): The original Bamboo Pen and Touches (introduced Oct. 2009) work out of the box with the 3.0 kernel's wacom.ko and the current default xf86-input-wacom-0.11.0 X driver. The third generation models require at least input-wacom-0.12.0 and touch for the second generation models requires input-wacom-0.12.1. Gimp is currently broken for all tablets, see this Launchpad bug report. Use Aapo Rantalainen's PPA to get a usable Gimp.
Natty Narwhal (11.04): The original Bamboo Pen and Touches work out of the box with the 2.6.38 kernel's wacom.ko and the current default xf86-input-wacom-0.10.11 X driver. I would suggest upgrading xf86-input-wacom. The second and third generation models require input-wacom-0.12.1.
Maverick Meerkat (10.10): Because the default wacom.ko does not work for the Bamboo Pen and Touches you need to compile a newer wacom.ko. We're currently getting that from input-wacom. Additionally a current xf86-input-wacom has better gesture support and more capabilities and bug fixes so we compile and install that also.
Lucid Lynx (10.04): Because the default wacom.ko does not work for the Bamboo Pen and Touches you need to compile a newer wacom.ko. We're currently getting that from input-wacom. Additionally a current xf86-input-wacom has better gesture support and more capabilities and bug fixes so we compile and install that also. You do need to update Lucid's xorg-macros 1.5 version to v. 1.8 before compiling either input-wacom or xf86-input-wacom.
Miscellaneous Notes
Sample xsetwacom scripts for other tablets and tablet pc's attached to post #2 below.
The X.org xf86-input-wacom and LinuxWacom input-wacom driver tars are available at the usual sourceforge linuxwacom driver site.
Wacom Bamboo Pen & Touch models
Code:
First Generation models (released October 2009):
Bamboo Touch touch, pad
(CTT460; Product ID = 0xd0)
* Touch only model should also be able to use the Synaptic driver, see X. below.
Bamboo Pen & Touch stylus, eraser; touch, pad
(CTH460; Product ID = 0xd1)
Bamboo Craft stylus, eraser; touch, pad
(CTH461; Product ID = 0xd2)
Bamboo Fun stylus, eraser; touch, pad
(CTH661; Product ID = 0xd3)
Bamboo Pen stylus
(CTL460; Product ID = 0xd4)
* Bamboo Pen pressure levels (0xd4): still broken in Oneiric. Use input-wacom.
Second Generation models (released October 2010):
Bamboo Pen Medium stylus
(CTL660/K; Product ID = 0xd5) see appendix 2 below to clone input-wacom
Bamboo Pen & Touch stylus, eraser; touch, pad
(CTH460/K; Product ID = 0xd6)
Bamboo Fun Small stylus, eraser; touch, pad
(CTH461/S; Product ID = 0xd7)
Bamboo Comic Medium stylus, eraser; touch, pad
(CTH661/S1; Product ID = 0xd8)
Bamboo P & T Special Edition Small stylus, eraser; touch, pad
(CTH461/L; Product ID = 0xdA)
Bamboo P & T Special Edition Medium stylus, eraser; touch, pad
(CTH661/L; Product ID = 0xdB)
* These models are using a new 4 FGT protocol and that is causing the pointer jumps
with Natty's 2.6.38 kernel and xf86-input-wacom. Fixed in input-wacom-0.12.1, see
part I. Full support is only available for Natty (11.04) & Oneiric (11.10) as mt.h
is required. For Lucid and Maverick see appendix 2.
* Two Special Editions (0xdA & 0xdB): see the note in X. below for 3 & 4 finger
gesture support.
Code:
Third Generation models (released October 2011):
Bamboo Connect (Pen) stylus
(CTL470/K; Product ID = 0xdd)
Bamboo Capture (Pen & Touch) stylus; touch, pad
(CTH470; Product ID = 0xde)
Bamboo Create stylus, eraser; touch, pad
(CTH670; Product ID = 0xdf)
* These new models are not yet in the usb kernel driver wacom.ko. Chris Bagwell has
kindly updated input-wacom to 0.12.0 with third generation Bamboo support. This is a
backport of his 3.3 kernel code for the 2.6.38 and 3.0 kernels. See part I.
Support is only available for Natty (11.04) & Oneiric (11.10) as mt.h is required.
* For support in Lucid and Maverick see appendix 2
*All styli have two buttons (rocker switch).
Note: If you do not want to compile the drivers in part I. and II. below you could try one of the available PPAs. Lekensteyn has posted one for input-wacom-0.12.1 (the wacom.ko) in Oneiric & Natty, which is useful for second and third generation tablets: https://launchpad.net/~lekensteyn/+archive/wacom-tablet Irie Shinsuke's PPA covers Maverick and Natty but hasn't been updated since 5-27-11: https://launchpad.net/~irie/+archive/wacom Martin Owen's covers Lucid through Natty but hasn't been updated since 3-10-11: https://launchpad.net/~doctormo/+archive/wacom-plus The upshot is you have to pay attention to what versions of wacom.ko and linuxwacom or xf86-input-wacom they install and whether that's what your tablet needs. Also a DKMS implementation of the wacom.ko will overwrite any new wacom.ko you compile unless you remove the PPA/DKMS. I haven't tested any of them, direct questions to the authors.
I. Install input-wacom-0.13.0's wacom.ko (the USB kernel driver); with a first generation BambooPT (October 2009) you can skip this step if you have Natty or Oneiric, it's not needed unless your model or a feature is not supported by the default wacom.ko
Copy and paste each line into a terminal (Applications > Accessories > Terminal) and hit enter after each line (except the ones in parenthesis). Careful, some lines extend past the right side of the "box". Get all of them. Now download, compile, and install the wacom.ko.:
Code:
cd Desktop
wget http://prdownloads.sourceforge.net/linuxwacom/input-wacom-0.13.0.tar.bz2
sudo apt-get update
(For Mint use libX11-dev instead of libx11-dev in the following command)
sudo apt-get install build-essential libx11-dev libxi-dev x11proto-input-dev xserver-xorg-dev libxrandr-dev libncurses5-dev autoconf libtool
sudo apt-get upgrade
uname -r
(If you have the generic kernel which most do.)
sudo apt-get install linux-headers-generic
(If you have the rt or pae kernel.)
sudo apt-get install linux-headers-rt
or
sudo apt-get install linux-headers-generic-pae
tar xjvf input-wacom-0.13.0.tar.bz2
cd input-wacom-0.13.0
./configure --prefix=/usr
(If you are in Lucid or Maverick.)
sudo cp ./2.6.30/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko
or
(If you are in Natty or Oneiric or Precise.)
sudo cp ./2.6.38/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko
sudo depmod -a
You now need to restart.
After rebooting if not working check if the wacom.ko is auto-loading with lsmod.
You should see 'wacom' along with it's size.
If you want to see a little more on what you're doing and why look at Section 1 in the linuxwacom HOW TO. If you prefer to use linuxwacom-0.8.8-11's wacom.ko (works for the 5 original Bamboo P&T models) see Alternate Section 1 at the same HOW TO. Problems? See Troubleshooting below.
II. Install Xorg's xf86-input-wacom tar or clone the git repository for Lucid, Maverick, Natty, & Oneiric (the X driver)
The instructions for cloning the git are at steps b) and c) for those who would rather do that.
Warning: xf86-input-wacom-0.10.11+ breaks the Sample xsetwacom scripts. The parameter names have changed. Use the 'xsetwacom get "device name" command and xsetwacom will point out where name has changed and what the new name is. Also there is a table of the new parameter names v.s. the old ones on the LWP's mediawiki xsetwacom page. This has happen before but is more extensive this time. And it's likely to happen again.
a) Now compile the xf86-input-wacom tar (download, compile, and install xf86-input-wacom):
Code:
cd ./Desktop
wget http://sourceforge.net/projects/linuxwacom/files/xf86-input-wacom/xf86-input-wacom-0.15.0.tar.bz2
sudo apt-get update
(For Mint use libX11-dev instead of libx11-dev in the following command)
sudo apt-get install build-essential libx11-dev libxi-dev x11proto-input-dev xserver-xorg-dev libxrandr-dev libxinerama-dev libncurses5-dev xutils-dev autoconf libtool pkg-config libudev-dev
sudo apt-get upgrade
tar xjvf xf86-input-wacom-0.15.0.tar.bz2
cd xf86-input-wacom-0.15.0
./configure --prefix=/usr
make
sudo make install
Now reboot.
b) Install git (you only need to do this once) if you intend to clone the xf86-input-wacom git repository. Otherwise you can skip this step. Open a terminal and enter (copy & paste):
Code:
sudo apt-get install git-core
Copy and paste each line into a terminal (Applications > Accesories > Terminal) and hit enter after each line (except the ones in parenthesis). Careful, some lines extend past the right side of the "box". Get all of them.
For Lucid only update to xorg-macros v. 1.8 (you only need to do this once). You do not need to update xorg-macros in Maverick, it already has v. 1.8.
Code:
wget http://xorg.freedesktop.org/releases/individual/util/util-macros-1.8.0.tar.bz2
sudo cp /usr/share/aclocal/xorg-macros.m4 /usr/share/aclocal/xorg-macros.m4.bak
tar xjvf util-macros-1.8.0.tar.bz2
cd util-macros-1.8.0
./configure --prefix=/usr
make
sudo make install
cd ..
c) To clone the xf86-input-wacom git repository (download, compile, and install xf86-input-wacom):
Code:
cd ./Desktop
git clone git://linuxwacom.git.sourceforge.net/gitroot/linuxwacom/xf86-input-wacom
sudo apt-get update
(For Mint use libX11-dev instead of libx11-dev in the following command)
sudo apt-get install build-essential libx11-dev libxi-dev x11proto-input-dev xserver-xorg-dev libxrandr-dev libxinerama-dev libncurses5-dev xutils-dev autoconf libtool pkg-config libudev-dev
sudo apt-get upgrade
cd xf86-input-wacom
./autogen.sh --prefix=/usr
make
sudo make install
Now reboot.
You do not need to download the git repository again to update xf86-input-wacom. Instead change directory into the xf86-input-wacom folder and run a git pull:
Code:
cd Desktop
cd xf86-input-wacom
git pull
Because xf86-input-wacom doesn't have wacomcpl (Wacom Control Panel) you'll have to set up a script of xsetwacom commands to run when the system starts, like wacomcpl's .xinitrc (see IV. below). The xsetwacom commands were rebuilt for xf86-input-wacom, so while similar they are different from the linuxwacom ones, and they continue to undergo changes. See man wacom & man xsetwacom entered in a terminal for the respective manuals in addition to the mediawiki link above. Problems? See Troubleshooting below.
III. Configure the Wacom Bamboo P&T tablet
You should usually be able to skip this step as the default wacom.conf should work for most. It's included mainly so you can see the two static configuration methods available.
a) Configuring through 10-wacom.conf (Lucid) or 50-wacom.conf (Maverick & Natty): You can use the default 10-wacom.conf located at /usr/lib/X11/xorg.conf.d in Lucid or the 50-wacom.conf at /usr/share/X11/xorg.conf.d for Maverick & Natty. No modifications are necessary to get your tablet working and the default wacom.conf allows hot plugging your tablet. Because HAL has been removed you can't use a .fdi. Then use the appropriate xsetwacom script attached below if you want to configure your tablet further (see IV.).
Note: Because Lucid has its 10-wacom.conf in a non-standard location compiling and installing xf86-input-wacom will not install a wacom.conf there as it will with Maverick and Natty. So if your 10-wacom.conf is removed or damaged for any reason in Lucid you will need to re-add it manually. You can use the example wacom.conf below and the gedit command for Lucid.
The wacom.conf will look something like:
Code:
Section "InputClass"
Identifier "Wacom class"
# WALTOP needs a patched kernel driver, that isn't in mainline lk yet,
# so for now just let it fall through and be picked up by evdev instead.
# MatchProduct "Wacom|WACOM|WALTOP|Hanwang"
MatchProduct "Wacom|WACOM|Hanwang"
MatchDevicePath "/dev/input/event*"
Driver "wacom"
EndSection
Section "InputClass"
Identifier "Wacom serial class"
MatchProduct "Serial Wacom Tablet"
Driver "wacom"
# Option "ForceDevice" "ISDV4" # deprecated starting with
# xf86-input-wacom-0.10.8
EndSection
Section "InputClass"
Identifier "Wacom serial class identifiers"
MatchProduct "WACf|FUJ02e5|FUJ02e7|FUJ02e9"
Driver "wacom"
EndSection
# N-Trig Duosense Electromagnetic Digitizer
Section "InputClass"
Identifier "Wacom N-Trig class"
MatchProduct "HID 1b96:0001|N-Trig Pen"
MatchDevicePath "/dev/input/event*"
Driver "wacom"
Option "Button2" "3"
EndSection
To edit in Lucid use:
Code:
gksudo gedit /usr/lib/X11/xorg.conf.d/10-wacom.conf
In Maverick & Natty use:
Code:
gksudo gedit /usr/share/X11/xorg.conf.d/50-wacom.conf
It's important to note that you can not configure dependent devices in the wacom.conf snippets unless you have at least Xserver 1.10 (Natty). See USB Tablets with Touch on the mediawiki. Which is one reason to use an xsetwacom script. For example you can add options for stylus but not the eraser with a pre-1.10 Xserver. If you have Natty then to configure the dependent device eraser you would add a new snippet, like so:
Code:
Section "InputClass"
Identifier "Wacom eraser class"
MatchDriver "wacom"
MatchProduct "eraser"
# Apply custom Options to this device below.
Option "Foo" "bar"
EndSection
as discussed at the mediawiki link. It is recommended you create a new file 52-wacom-options.conf in /etc/X11/xorg.conf.d to add options in. You may need to create the xorg.conf.d directory in /etc/X11.
*Current 10-wacom.conf (actually now 50-wacom.conf): http://linuxwacom.git.sourceforge.ne...m.conf;hb=HEAD
b) Configuring through xorg.conf: You could also use the xorg.conf, but at the cost of losing hot plugging.
i) Another way to tell the Xserver you have a Wacom tablet, rather than a wacom.conf in xorg.conf.d, is to use the xorg.conf and add Wacom input sections. Normally xorg.conf.d is preferred. The xorg.conf, if you have one, is located in /etc/X11. If it is not there you would have to create one and then add the relevant Wacom sections. Please study the sample test3 xorg.conf and compare it carefully to your xorg.conf before making any changes. Do not change any video sections already present in your xorg.conf! And be sure to back up your xorg.conf first!:
Code:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
To restore it from the command line just reverse it:
Code:
sudo cp /etc/X11/xorg.conf.bak /etc/X11/xorg.conf
To edit xorg.conf you have to be administrator so in a terminal:
Code:
gksudo gedit /etc/X11/xorg.conf
Options are available in man wacom in a terminal and at the LWP's HOWTO and mediawiki. One thing to note is in X server 1.7 "SendCoreEvents" is deprecated. You can remove them from the Wacom lines in "ServerLayout" although I don't think it hurts to leave them in. The test3 xorg.conf reflects the fact that pad is on the touch pci usb by-path (and hence the wacom-touch symlink).
After you restart the stylus and touch should work. If it does not, restart again. Make sure you cover the entire tablet to see if the pointer moves to the stylus and your finger. Now xinput list and xsetwacom list entered in a terminal should agree with each other and return the linuxwacom device names stylus, eraser, touch, and pad (tablet buttons).
ii) To use the test3 xorg.conf you will need to have a symlink rule for your Pen & Touch in the table contained in 69-xserver-xorg-input-wacom.rules at /lib/udev/rules.d. This avoids having to use the usb pci by-path. If the Ubuntu default 69-xserver-xorg-input-wacom.rules does not have your model tablet in it there is an updated wacom.rules with all 10 Bamboo Pen & Touch models at the mediawiki's Fixed device files with udev page. Just put your rule in or replace your default contents with the mediawiki's 60-wacom.rules. How to add a new symlink rule is also discussed. If the "69-xserver-xorg-input-wacom.rules" is not there you can install it by using Appendix 5 in this HOW TO.
IV. Use of a xsetwacom script file instead of wacomcpl and wacomcpl's .xinitrc for further tablet configuration (attached below)
This is especially important if you want to assign keys to the tablet buttons as the static configuration methods in III. above only allow you to set the buttons to integer values. You need xsetwacom to set keys to buttons. Please also see the mediawiki's xsetwacom and Tablet Configuration pages.
Warning: Many parameter names changed with xf86-input-wacom-0.10.11. Use xsetwacom get "device name" Parameter to find the new name. Additionally the the defaults for RawSample and Suppress swapped in 0.10.11+ with commits on 3-9-11. Suppress is now 2 and RawSample 4. Also the range for RawSample is now 1 to 100. Correct your scripts if using these versions of xf86-input-wacom.
To set it up to auto-start, download the attached file, and rename it .xsetwacom.sh (or whatever you want) and place it in your home directory. Remember it will be a hidden file. You can remove the . in front so the file isn't hidden if placing it in a bin directory. Making it hidden is just to prevent directory clutter. To enable the xsetwacom commands in the .xsetwacom.sh file to apply to Xserver through a reboot you enter in a terminal:
Code:
chmod +x ~/.xsetwacom.sh
or you could right click on the file and in Properties, in the Permission tab, check Execute as program. Then go to System->Preferences->Startup Applications and click on add and for the command write "sh /home/yourusername/.xsetwacom.sh" (without the quotes). You can also change your settings on the fly using the xsetwacom set commands in a terminal as they are runtime commands. They only apply during the current session. Once the script is executable you can double click on it to apply it's settings or reboot to check the auto-start set up.
If you are happy with a current default comment it out (a # in front of the line) in your script. No need to run the default again in the script. But comment it out rather than remove it so you have a list of valid xsetwacom parameters for a given input tool in your script in case you want to modify that parameter at a later date.
Note: In the example script below both "device name" and ID # are used. Be sure to check for yours using xinput list in a terminal and use them. When you use a xorg.conf the "device names" will be stylus, eraser, touch, and pad. If you are hot plugging your tablet or other devices be sure to use "device name" as the ID # can change.
With xf86-input-wacom 0.10.8 or better you should be able to enter 'man xsetwacom' in a terminal for useful information. To find out what commands and keys are available try these commands in a terminal:
lists available commands and switches.
Code:
xsetwacom list param
Lists available parameters.
Lists modifiers and special keys available.
V. Tablet (Pad) buttons
The Pad's physical buttons are numbered (with the pad set up right handed) 1 to 4 from top to bottom. With the xsetwacom set commands the physical button number does not necessarily coincide with the button number the Xserver is assigning to the button. This is because for some versions of the Xserver xinput reserves buttons 4 through 7 for scroll. It also depends on what button number the kernel is assigning as the default to the button. So the xsetwacom set command needs the X button number not the physical button number.
With Lucid's 2.6.32 & Maverick's 2.6.35 kernels you only need to account for the reserved scroll buttons offset:
Code:
WinXP Lucid & Maverick
physical Button 1 Touch toggle Middle click
physical Button 2 BackSpace Right click
physical Button 3 Right click Pg Up
physical Button 4 Left click Pg Dn X Button 8
The kernel button defaults changed with Natty's 2.6.38 kernel so the X buttons become:
Code:
Natty & Oneiric
physical Button 1 BTN_RIGHT/Right click X Button 3
physical Button 2 BTN_BACK X Button 8
physical Button 3 BTN_FORWARD X Button 9
physical Button 4 BTN_LEFT/Left click X Button 1
I've been asked multiple times to explain what's going on with the button assignments. This is my current understanding. BTN_MOUSE, BTN_MISC, and BTN_DIGI button ranges are all mapped to the same lower button numbers, corresponding to the LMR mouse buttons. The generic situation is as follows:
Code:
Button C code used in kernel
number mouse pad stylus
1 BTN_LEFT BTN_0 BTN_TOUCH
2 BTN_MIDDLE BTN_1 BTN_STYLUS
3 BTN_RIGHT BTN_2 BTN_STYLUS2
8 BTN_SIDE BTN_3
9 BTN_EXTRA BTN_4
10 BTN_FORWARD BTN_5
11 BTN_BACK BTN_6
12 BTN_TASK BTN_7
13 BTN_8 14 BTN_9
The assumption is that these ranges don't generally appear in a single device simultaneously.
* from an evdev driver commit: http://cgit.freedesktop.org/xorg/dri...e40df16fb0a202
The X Server reserves buttons 4 through 7 for scroll. I think the following is correct:
Code:
X Button X scroll
number direction
4 up
5 down
6 left
7 right
Now what happened with the BambooPTs is they changed from using the generic BTN_X to using say BTN_BACK in the kernel code for the BambooPT's pad. I hope this clears things up a little.
VI. Touch & Gesture Tips for the BambooPT
Gestures are two finger of course. You have to be patient because there is somewhat of a learning curve. It does not have the same "feel" as a laptop touchpad. Once you develop a feel for the Bamboo you can slowly try varying some of the xsetwacom parameters in the script. I am able to do anything I can on my laptop's Synaptic touchpad or single (1FG) touchscreen on my tablet PC plus I have scroll (vertical and horizontal), pinch zoom (can be a little slow to respond), and 2FG double tap for right click.
a) Pointer arrow overacceleration: If you find the pointer arrow overaccelerated Peter Hutterer suggested using xinput's "Device Accel Constant Deceleration" to compenstate.
the overacceleration issue in the bamboo is caused by a few other things. when the bamboo is initialised as relative device, the X server doesn't have an axis range to help scaling the movement. the bamboo, as you're probably aware, has a higher resolution than the average mouse, so it sends more events with higher data. so the default settings dont' work too well, it's too fast. increasing ConstantDeceleration for the device should slow it down to your preference.
The defaults are 1, 1, and 10 for Constant Deceleration, Adaptive Deceleration, and Velocity Scaling. But you can check your defaults by entering in a terminal xinput list-props "Wacom BambooFun 2FG 4x5 Finger touch". Using your "device name" for touch of course. Try adjusting the settings to get the feel you are looking for. For example:
Code:
xinput set-prop "Wacom BambooFun 2FG 4x5 Finger touch" --type=float "Device Accel Constant Deceleration" 1.250000
xinput set-prop "Wacom BambooFun 2FG 4x5 Finger touch" --type=float "Device Accel Adaptive Deceleration" 1.150000
xinput set-prop "Wacom BambooFun 2FG 4x5 Finger touch" --type=float "Device Accel Velocity Scaling" 10.000000
Just add these to the touch section of your xsetwacom script. Chris Bagwell provided a good link to a X.org wiki article PointerAcceleration.
For another take on touch settings see civetta's post #932.
b) Gestures: Are the best they've ever been with xf86-input-wacom-0.13.0 released 1-16-12. Thanks to Chris Bagwell's efforts and some new contributions from Alexey Osipov. Feel free to post suggestions for changing the gesture default settings or whatever.
Single finger (1FG)
Left click - tap, actual click happens after TapTime period elapses.
Left click drag - tap to select, quickly (within TapTime period) touch selection again. Then drag.
Two finger (2FG)
Right click - one finger down + tap second finger
Vertical scroll - two fingers side by side (e.g. index + second), move up or down holding constant distance between fingers.
Horizontal scroll - two fingers side by side (e.g. index + second), move left or right holding constant distance between fingers.
Zoom in - two separated fingers side by side (e.g. thumb + index), bring together i.e. pinch.
Zoom out - two fingers side by side (e.g. thumb + index), spread.
Note: Wacom scrolling direction is reversed from Synaptic touchpad scrolling. Visualize it as grabbing the page with two fingers then sliding it up or down or left and right.
VII. Touch toggle script with notification (attached below)
Rename it .toggle-touch.sh (or whatever you want) and place it in your home directory. Remember it will be a hidden file. Also please remember you have to chmod it to make it executable, or right click on it, like you did for .xsetwacom.sh above. Then you have to make a key binding for it in order to use it through a tablet button. If you haven't already, install the CompizConfig Settings Manager through Synaptic Package Manager.
-click on the General option
-click on Commands
-in Command line 0 (or whatever line you want) add the path to .toggle-touch.sh, e.g.: /home/yourusername/.toggle-touch.sh
-click on Key Bindings and then to edit the corresponding Run command 0 click on the Disabled button.
-next use a key combination not already in use, e.g. <Control>t, by pressing the Grab key combination button and pressing the key combination. The ctrl-t combination is the one in the sample xsetwacom script bound to Button1. You can also just press ctrl-t.
Note: If you use 'ctrl t' to add a new Tab to Firefox change the touch toggle key combination to say "key ctrl shift t".
-you're done
For notification install libnotify-bin by entering in a terminal:
Code:
sudo apt-get install libnotify-bin
Otherwise comment out the two notify lines in the script.
VIII. Flip the tablet for the left-handed
You use these commands in the appropriate parts of the .xsetwacom.sh (remember to determine your "device names"):
Code:
xsetwacom set stylus Rotate half
xsetwacom set eraser Rotate half
xsetwacom set touch Rotate half
Rotation orientations: normal(landscape)=none; left=ccw; right=cw; inverted=half.
Note: Starting with xf86-input-wacom-0.11.0 the Rotate parameter has been made tablet wide. Rotating a parent device or one of its dependent devices will rotate all input tool devices. What that means in practice is you could eliminate the eraser line.
IX. Dual and Multi-Monitor Set Up
See HOW TO Setup a Wacom Tablet with Multi-Monitors or Dual and Multi-Monitor Set UP.
X. Bamboo Touch on the Synaptic Driver - Natty Narwhal (11.04) and Oneiric Ocelot (11.10)
This requires the MT kernel code (mt.h or multi-touch header) in the 2.6.38 and up kernels.
If it is not present you may need to make the directory:
Code:
sudo mkdir /etc/X11/xorg.conf.d
Warning: Do not do in Lucid. Use the /usr/lib/X11/xorg.conf.d directory instead.
Then create the 54-bambooPT-on-synaptics.conf file in the /etc/X11/xorg.conf.d directory using:
Code:
gksudo gedit /etc/X11/xorg.conf.d/54-bambooPT-on-synaptics.conf
And place the following contents in it:
Code:
Section "InputClass"
Identifier "Wacom touch&pad on Synaptics class"
MatchIsTouchpad "on" # needed?
MatchProduct "Finger"
MatchDevicePath "/dev/input/event*"
Driver "synaptics"
# Driver "evdev"
EndSection
Note you can also place touch on the evdev driver. Either also requires a fairly recent MT compliant Synaptics or evdev driver. This might be useful for the new Special Editions with 4FGT, once 4FGT is implemented in the kernel. With the use of evdev and ginn (installed by default in Natty) you would have up to 4 finger gestures available, provided they're defined in the default wishes.xml. Or you add them. Remember with Synaptics the gestures you will have are only two-finger scrolling, tap-and-drag, and tapping. Zooming and others aren't implemented.
* many thanks to Chris Bagwell for helping me with this
I'll leave Gianpaolo Cugola's 60-bamboo.conf.txt, which should be placed in /etc/X11/xorg.conf.d/, attached but it is probably no longer needed with the Synaptic driver in Natty. Also his discussion of its use (on this linuxwacom-discuss thread). This may have necessitated some parameter changes the gui configuration editor for Synaptic doesn't support. It's also important to note he claims "Using the attached 60-bamboo.conf, I do not have any problem when using the synaptics driver with the stock kernel provided by debian sid (2.6.32) or with that provided by ubuntu 10.10 (2.6.35). I also tried (and I am currently using) the final 2.6.37 kernel, and it also works fine. As you noticed, 'overall this setup works much better than xf86-input-wacom, right now'." So maybe you don't need Natty to get the Touch working on Synaptics?
Note: for the two Special Editions (0xdA & 0xdB). At this point the plans for xf86-input-wacom are to only improve/bug fix what's available. This means 3 and 4 finger gesture support will never be available to you through the xf86-input-wacom driver. 3 & 4 finger gesture support are in Natty through the evdev + ginn combination as mentioned above. I'm not aware of the Synaptic driver offering 3 and 4 finger support. So once the kernel's wacom.ko offers 3 & 4FGT and so supports 3&4FG gestures you will probably want to place your touch on the evdev driver.
Troubleshooting
In I. note not every kernel is -generic so you may need a different kernel header. To check:
As an example it may return:
Code:
2.6.32-22-rt
or
2.6.35-25-generic-pae
in which case you would use:
Code:
sudo apt-get install linux-headers-rt
or
sudo apt-get install linux-headers-generic-pae
On a 64-bit install you may need to add another flag. To check see where evdev_drv.so is located. If it is in /usr/lib/xorg/modules/input, then '--prefix=/usr' is correct. If in /usr/lib64/xorg/modules/input, then you need to add '--libdir=/usr/lib64'. So for I.:
Code:
./configure --enable-wacom --prefix=/usr --libdir=/usr/lib64
or II.:
Code:
./autogen.sh --prefix=/usr --libdir=/usr/lib64
If xsetwacom commands aren't working or are working erratically check in /usr/local/bin for xsetwacom (it should be in /usr/bin). This may mean you forgot the '--prefix=/usr' flag on the xf86-input-wacom configure line. In which case you may have a xsetwacom executable in both locations and are experiencing version conflict. Delete the one in the wrong location, i.e. /usr/local/bin. If this isn't the case then just re-clone the xf86-input-wacom git repository.
*thanks to dr4ziw
Appendix 1: HOW TO Clone the input-wacom git repository
Useful if support for a model or feature has been added since the last point release. To determine that see: http://linuxwacom.git.sourceforge.ne...com;a=shortlog
For Lucid, Maverick, Natty, and Oneiric
Code:
cd Desktop
git clone git://linuxwacom.git.sourceforge.net/gitroot/linuxwacom/input-wacom
sudo apt-get update
(For Mint use libX11-dev instead of libx11-dev in the following command)
sudo apt-get install build-essential libx11-dev libxi-dev x11proto-input-dev xserver-xorg-dev libxrandr-dev libncurses5-dev autoconf libtool
sudo apt-get upgrade
uname -r
(If you have the generic kernel which most do.)
sudo apt-get install linux-headers-generic
(If you have the rt or pae kernel.)
sudo apt-get install linux-headers-rt
or
sudo apt-get install linux-headers-generic-pae
cd input-wacom
./autogen.sh --prefix=/usr
(If you are in Lucid or Maverick.)
sudo cp ./2.6.30/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko
or
(If you are in Natty or Oneiric or Precise.)
sudo cp ./2.6.38/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko
sudo depmod -a
Now reboot.
Appendix 2: BambooPT second and third generation support for Lucid and Maverick
Chris Bagwell has submitted a patch to input-wacom for getting the second and third generation BambooPTs working in Lucid and Maverick. While single finger touch is supported gestures (multi-touch) are not, at least on xf86-input-wacom. You should be able to set touch up on the Synaptics touchpad driver to get scroll gestures. For the patch to work xf86-input-wacom-0.11.0 or better is required.
Follow the instructions in part I. or Appendix 1 for compiling input-wacom. After you've downloaded the source code folder (and uncompressed it if using the tar) stop. Download and extract the input-wacom-Backport-2nd-and-3rd-gen-Bamboo-support-to-2.6.30.patch (attached below) on your Desktop. In the terminal change directory into input-wacom and run:
Code:
patch -p1 < ~/Desktop/input-wacom-Backport-2nd-and-3rd-gen-Bamboo-support-to-2.6.30.patch
to apply the patch. Then go on and finish compiling input-wacom as normal. Feel free to post feed back on the patch.
tags: Lucid, Wacom, Bamboo Pen, Bamboo Pen & Touch, Bamboo Craft, Bamboo Fun, Bamboo
Edit (11-18-10): With xf86-input-wacom the default ClickForce for the stylus, eraser and touch is 27 (FILTER_PRESSURE_MAX/75, usually around 27). And the range is 0-2047 because pressure levels are normalized to 2048 levels for all devices since commit "Normalize-pressure-sensitivity.patch". So for e.g. for the stylus it should look something like:
Code:
xsetwacom set "Wacom BambooFun 2FG 4x5 Pen stylus" ClickForce "27" # default is 27, 0-2047
They renamed ClickForce to Threshold starting with xf86-input-wacom 0.10.9+. It should look like:
Code:
xsetwacom set "Wacom BambooFun 2FG 4x5 Pen stylus" Threshold "27" # default is 27, 0-2047
See the commit "xsetwacom: rename ClickForce to Threshold". And if the tablet has 1024 pressure levels then the default Threshold would still be about 27 and the range 0-2047. Remember what the hardware is reporting has been normalized to 2048 levels.
Edit (12-7-10): Replaced Sample_Bamboo-P&T_xsetwacom-scripts.tar with the updated Sample_Bamboo-P&T_.xsetwacom.sh. The tar had 581 downloads.
Bookmarks