Wacom Bamboo Pen and Touch tablet HOW TO

Write tutorials here
There are more tutorials here http://community.linuxmint.com/tutorial/welcome
Forum rules
Do not start a support topic here please. Before you post please read this

Wacom Bamboo Pen and Touch tablet HOW TO

Postby Favux on Fri Aug 17, 2012 7:47 pm

& Wacom Intuos Pen and Touch tablet HOW TO

Relocation of: Wacom Bamboo Pen and Touch tablet HOW TO

Also can be used to set up other Wacom Tablets.

Last Updated: November 7, 2013

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.


Mint/Ubuntu Release Specific Notes
Petra (Mint 16)/Saucy Salamander (13.10): Stop gap support for the new Intuos Pen and Touch tablets in post #3 below.

Olivia (Mint 15)/Raring Ringtail (13.04): Stop gap support for the new Intuos Pen and Touch tablets in post #3 below.

Nadia (Mint 14)/Quantal Quetzal (12.10): The 3.5 kernel's wacom.ko supports all current BambooPT's out of the box. Compiling input-wacom (part I.) is not necessary.

Maya (Mint 13)/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.
Warning 1 - There is an issue with compiling xf86-input-wacom. Debian/Ubuntu/Mint has customized their input ABI (X Server 1.11 and 1.12 hybrid) and it is no longer compatible with some upstream packages including xf86-input-wacom. Consequently if you compile xf86-input-wacom in Precise it will cause your system to not start if you have your Wacom tablet plugged in, or to crash/freeze if you plug it in after it has started. Subsequently you need to patch xf86-input-wacom with the attached build_against_frankenserver.patch to make it compatible with the hybrid X Server. See "II. Install Xorg's xf86-input-wacom tar or clone the git repository".
Warning 2 - Ubuntu Precise 12.04.2 was updated to include the Quantal kernel and X Server (which means you no longer need to run the frankenserver patch). Precise 12.04.3 has the Raring kernel and X Server (kernel 3.8 & X Server 1.13). If while compiling input-wacom when you run sudo apt-get install build-essential etc. the output asks if you want to remove a list of drivers and libraries ending with the suffixes -lts-quantal or -lts-raring, STOP! That will disable your system. The output would look similar to this bug report: https://bugs.launchpad.net/ubuntu/+source/fglrx-installer/+bug/1137247The problem may be due to this bug: https://bugs.launchpad.net/ubuntu/+source/linux-meta-lts-raring/+bug/1190148 Still not clear if this is a basic issue of these point release updates or perhaps due to similar instances of package cache corruption.

Lisa (Mint 12)/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.

Katya (Mint 11)/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.

Isadora (Mint 9)/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 and Intuos Pen & Touch models
Fourth Generation models (released October 2013):
Code: Select all
Intuos Pen                            stylus          
   (CTL480; Product ID = 0x30E)
Intuos Pen and Touch small            stylus, eraser; touch, pad      
   (CTH480; Product ID = 0x302)
Intuos Pen and Touch medium           stylus, eraser; touch, pad
   (CTH680; Product ID = 0x303)

* These new Intuos models won't be supported in a release until Mint 17/Trusty (14.04). The usb kernel driver wacom.ko needs to be from at least the 3.13 kernel probably. Jason has kindly supplied some patches with fourth generation IntuosPT support for a stop gap update to input-wacom-0.19.1, see post #3 below. This is a backport of Ping's submission to the 3.13 kernel's linux-input mailing list. The official input-wacom support is scheduled for the next input-wacom tar release.
* See "X. Multitouch for Wacom Tablets with More than Two Finger Touch" below for 3 & 4 finger gesture support.
*All IntuosPT styli have two buttons (rocker switch).

Third Generation models (released October 2011):
Code: Select all
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 first supported in the Nadia/Quantal usb kernel driver wacom.ko (the 3.5 kernel). 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 was initially only available for Kaya/Natty & Lisa/Oneiric (11.10) as mt.h is required. Chris Bagwell came up with another patch set to support non-mt.h kernels (Isador/Lucid) which is available in input-wacom-0.14.0
* See "X. Multitouch for Wacom Tablets with More than Two Finger Touch" below for 3 & 4 finger gesture support.
*All BambooPT styli have two buttons (rocker switch).

Second Generation models (released October 2010):
Code: Select all
Bamboo Pen Medium                     stylus
   (CTL660/K; Product ID = 0xd5)   
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 pseudo 4 FGT protocol (bounding box for the Two Special Editions 0xdA & 0xdB) 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 was initially only available for Katya/Natty & Lisa/Oneiric (11.10) as mt.h is required. Chris Bagwell then developed a patch set to support non-mt.h kernels (Isador/Lucid) available in input-wacom-0.14.0.

First Generation models (released October 2009):
Code: Select all
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.

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's Wacom Tablet Drivers PPA has input-wacom-0.12.1 (the wacom.ko) for Lisa/Oneiric & Katya/Natty, which is useful for second and third generation tablets. And input-wacom-0.13.0 is available for Maya/Precise. Irie Shinsuke's PPA for latest Wacom driver was updated 9-7-12 to xf86-input-wacom-0.17.0. Martin Owen's Upgraded Wacom PPA covers Isadora/Lucid through Katya/Natty but hasn't been updated since 3-10-11. 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's wacom.ko (the USB kernel driver); with a first generation BambooPT (October 2009) you can skip this step if you have Katya/Natty or later, it's not needed unless your model or a feature is not supported by the default wacom.ko
Currently input-wacom-0.19.1 is the most recently released tar. Check: http://sourceforge.net/projects/linuxwa ... put-wacom/

Please read the Release Specific Notes for your release before proceeding.
Copy and paste each line into a terminal you've opened. Careful, some lines wrap. Be sure you copy the entire line. Now download, compile, and install the wacom.ko.:
Code: Select all
cd Desktop

wget http://prdownloads.sourceforge.net/linuxwacom/input-wacom-0.19.1.tar.bz2

sudo apt-get update

(For Ubuntu 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.19.1.tar.bz2

cd input-wacom-0.19.1

./configure --prefix=/usr

(If you are in Isadora/Lucid or Julia/Maverick.)
sudo cp ./2.6.30/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko
or
(If you are in Katya/Natty or Lisa/Oneiric or Maya/Precise or Nadia/Quantal.)
sudo cp ./2.6.38/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko
or
(If you are in Olivia/Raring.)
sudo cp ./3.7/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.
Code: Select all
lsmod | grep wacom

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. Problems? See Troubleshooting below.


II. Install Xorg's xf86-input-wacom tar or clone the git repository (the X driver)
Currently xf86-input-wacom-0.23.0 is the most recently released tar. Check: http://sourceforge.net/projects/linuxwa ... put-wacom/ 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.

Warning for Maya/Precise: follow the instructions for a) the tar or c) cloning below until you get to the ./configure --prefix=/usr or ./autogen.sh --prefix=/usr command. Stop there and don't enter it. Instead download the attached build_against_frankenserver.patch tar (for xf86-input-wacom-0.17.0 or earlier) onto your Desktop. For xf86-input-wacom-0.18.0 or later use the build_against_frankenserver_for0.18.patch tar attached to post #3 below. Extract (uncompress) it and apply the patch with a -p1 strip:
Code: Select all
patch -p1 < ~/Desktop/build_against_frankenserver.patch

(or for xf86-input-wacom-0.18.0 and later)
patch -p1 < ~/Desktop/build_against_frankenserver_for0.18.patch

You should see this output:
patching file src/wcmValidateDevice.c
patching file test/fake-symbols.c
patching file test/fake-symbols.h

After you see it you can proceed with ./configure --prefix=/usr or ./autogen.sh --prefix=/usr and the rest of the commands.

a) Now compile the xf86-input-wacom tar (download, compile, and install xf86-input-wacom):
Copy and paste each line into a terminal you've opened and hit enter after each line (except the ones in parenthesis). Careful, some lines wrap. Be sure you copy the entire line.
Code: Select all
cd ./Desktop

wget http://sourceforge.net/projects/linuxwacom/files/xf86-input-wacom/xf86-input-wacom-0.23.0.tar.bz2

sudo apt-get update

(For Ubuntu or LMDE 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.23.0.tar.bz2

cd xf86-input-wacom-0.23.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: Select all
sudo apt-get install git-core

For Isadora/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: Select all
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: Select all
cd ./Desktop

git clone git://git.code.sf.net/p/linuxwacom/xf86-input-wacom

sudo apt-get update

(For Ubuntu or LMDE 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: Select all
cd Desktop

cd xf86-input-wacom

git pull


Because xf86-input-wacom doesn't have the old wacomcpl (Wacom Control Panel) gui you may 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. In more recent releases the KDE or Gnome Wacom configuration gui's are available to you and may provide all you need for tablet configuration, although button support continues to be lacking in Gnome. 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 (Isadora/Lucid) or 50-wacom.conf (Julia/Maverick and later): You can use the default 10-wacom.conf located at /usr/lib/X11/xorg.conf.d in Isadora or the 50-wacom.conf at /usr/share/X11/xorg.conf.d for Julia. 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 Isadora/Lucid has its 10-wacom.conf in a non-standard location (due to hybrid 1.7/1.8 X Server) compiling and installing xf86-input-wacom will not install a wacom.conf there as it will with Julia/Maverick and later. So if your 10-wacom.conf is removed or damaged for any reason in Isadora you will need to re-add it manually. You can use the example wacom.conf USB snippet below along with the gedit command for Isadora. To see the entire wacom.conf look in your xf86-input-wacom source code folder for /conf/50-wacom.conf.

The BambooPT's are USB tablets so only the USB snippet in the wacom.conf concerns us and you can ignore the other snippets. The current USB snippet is:
Code: Select all
Section "InputClass"
   Identifier "Wacom class"
   MatchProduct "Wacom|WACOM|Hanwang|PTK-540WL"
   MatchDevicePath "/dev/input/event*"
   Driver "wacom"
EndSection

To edit in Isadora/Lucid use:
Code: Select all
gksudo gedit /usr/lib/X11/xorg.conf.d/10-wacom.conf

In Kaya/Natty or later use:
Code: Select all
gksudo gedit /usr/share/X11/xorg.conf.d/50-wacom.conf

It is recommended you create a new file 52-wacom.conf in /etc/X11/xorg.conf.d to use options in. However you can not do this if you are using Isadora/Lucid. You may need to create the xorg.conf.d directory in /etc/X11. 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 (Katya/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 at least Katya/Natty then to configure the dependent device eraser you would add a new snippet, like so:
Code: Select all
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.
*Current 50-wacom.conf: http://linuxwacom.git.sourceforge.net/git/gitweb.cgi?p=linuxwacom/xf86-input-wacom;a=blob;f=conf/50-wacom.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: Select all
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak

To restore it from the command line just reverse it:
Code: Select all
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: Select all
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 Mint/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 the Linux Wacom HOW TO.

Due to the 3 attachment limit on Mint forums I've elected to refer you to post #384, also linked above. It is attached there along with some .fdi files for HAL and udev rules.


IV. Use of a xsetwacom script file instead of wacomcpl and wacomcpl's .xinitrc for further tablet configuration (attached below)
This is less important now that recent releases have the Gnome or KDE Wacom tablet configuration gui. But since the Gnome gui (at least) doesn't support the BambooPT buttons if you want to assign keys to the tablet buttons you still need an xsetwacom script as the static configuration methods in III. above only allow you to set the buttons to integer values. 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: Select all
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 driver 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:
Code: Select all
(lists available commands and switches)
xsetwacom

(Lists available parameters)
xsetwacom list param

(Lists modifiers and special keys available)
xsetwacom list mod



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 Isadora/Lucid's 2.6.32 & Julia/Maverick's 2.6.35 kernels you only need to account for the reserved scroll buttons offset:
Code: Select all
                     WinXP           Isadora & Julia
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 Katya/Natty's 2.6.38 kernel so the X buttons become:
Code: Select all
                     Katya, Lisa & Maya
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: Select all
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/driver/xf86-input-evdev/commit/?id=0367e3871f02993b4ce04873d6e40df16fb0a202

The X Server reserves buttons 4 through 7 for scroll. I think the following is correct:
Code: Select all
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 and other Wacom Multitouch Tablets
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.

In addition to the xsetwacom touch parameters (see 'man wacom' or attached script) you can also change the "feel" of your tablet's touch by adjusting the more generalized xinput Acceleration Profile and its Device Acceleration parameters. While you tend to think of those applying to the mouse pointer they are just as valid for the touch pointer. Chris Bagwell provided a good link to a X.org wiki article, PointerAcceleration, on this.

The most important parameter is the Device Acceleration Profile since that selects the algorithm that is applied to the pointer. The other three parameters (Constant Deceleration, Adaptive Deceleration, and Velocity Scaling) then modify the algorithm. See the "AccelerationProfile [integer]" section in the wiki article linked above. The default Device Accel Profile is 0. But if you want to get out in the weeds you can try different values. Temar09 in post #1053 for instance feels Profile 2 is much better.

a) Pointer arrow over acceleration: If you find the pointer arrow over accelerated with the default Device Accel Profile of 0, Peter Hutterer suggested using xinput's "Device Accel Constant Deceleration" to compensate.
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: Select all
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.

For other takes on touch settings see Temar09's post #1053 and 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.


c) More than 2FGT Gestures: See X. Multitouch for Wacom Tablets with More than Two Finger Touch below.


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: Select all
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: Select all
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
To confine your tablet's stylus and eraser to a specific monitor see Graphics tablet on multi-monitors HOW TO or Dual and Multi-Monitor Set UP.


X. Multitouch for Wacom Tablets with More than Two Finger Touch - Katya/Natty Narwhal or later
This information applies to the third generation BambooPT and Intuous5 touch tablets, both of which have 16FGT. There is a new Cintiq touch also. These are dependent-touch devices v.s. direct-touch devices as described by Peter Hutterer. Essentially dependent-touch devices are multitouch touchpads as opposed to direct-touch tablet PCs. Each type is handled differently. Multitouch is still in a state of flux and with Maya/Precise and the advent of the multitouch code added to the 1.12 X Server the touch stack was changed again. So this information has to be viewed as tentative and subject to change. Feedback appreciated. A good reference and overview source is the ubuntu.com wiki Multitouch page.

Note only kernel 2.6.38 and up and associated releases are dealt with because they have the MT kernel code (mt.h or multi-touch header).

a) Unity multitouch gestures with the Wacom driver. The Wacom X driver xf86-input-wacom driver includes 2FGT gesture support in driver. However the driver does not pass through 3 and 4 finger touches which means that 3 and 4 finger gestures are not available to Unity. Starting with xf86-input-wacom-0.18.0 you are now able to disable xf86-input-wacom's default in-driver 2FGT support to pass all the hardware-tracked fingers up to the X server. That allows all of the hardware reported touch contacts to be handled by the new Multitouch through X Server features (XI2.2; ABI >= 16) and supporting drivers. Simply disable the Gesture parameter in a custom .conf file as in part III.:
Code: Select all
    Option "Gesture" "off"

or use xsetwacom.
Code: Select all
xsetwacom set "Wacom Bamboo 16FG 4x5 Finger touch" Gesture off

Of course you would use your touch <device name> from xinput list. This has the advantage of keeping the Buttons/ExpressKeys configurable by xsetwacom. Unfortunately the tradeoff is you lose 2FGT gestures such as right click, scroll, pinch zoom although you keep the xf86-input-wacom support for 1FGT left click. The following is a list of touch Gestures with xf86-input-wacom in Unity.
1 finger tap > left click (by xf86-input-wacom)
1 finger tap to select & drag > left click drag
2 fingers disabled
3 finger press and drag > move window
(3 finger tap shows grab handles)
4 finger swipe left/right > reveal/hide launcher (if the dock autohide is enabled)
4 finger tap > open or close dash

A list of the currently active Unity system gestures, which are 3 and 4 finger touch, is under Supported Gestures on the Multitouch wiki page.

It does not appear Touchégg can be used to add back the 2FGT gestures. When running in a terminal Touchégg does not detect 2FG touches and so gestures such as two finger scroll do not work. Although Unity does not have 2FG system gestures it may be it consumes 2FG touches anyway. This line of thought is bolstered by the Unity Gesture UI Guidelines Initial Gestures section discussion of (unimplemented) 1 and 2 finger touch gestures. Because ginn is seemingly not compatible with the Unity Desktop in Precise or later it isn't available to investigate 2FGT further. See the launchpad bug report linked in c) below. Given the lack of two finger touch availability the only practical option for 1 through 4 finger touch is to place touch on the Synaptic driver as below.

b) Unity multitouch gestures with the Synaptics driver. The xf86-input-synaptics driver also includes 2FGT gesture support. The difference is 3 and 4 finger gestures are available to Unity automatically without the need for disabling anything with a command. The following assumes you have your Wacom tablet attached to a Desktop computer that does not have a Synaptic touchpad.

To use the Synaptics driver first confirm you have the xorg.conf.d directory in /etc/X11. If not create it:
Code: Select all
sudo mkdir /etc/X11/xorg.conf.d

Then create the custom file 54-WacomMT-synaptics.conf:
Code: Select all
gksudo gedit /etc/X11/xorg.conf.d/54-WacomMT-synaptics.conf

and paste the following snippet into it.
Code: Select all
Section "InputClass"
        Identifier "Wacom MT on synaptics"
        MatchIsTouchpad "on"
        MatchProduct "Finger"
        MatchDevicePath "/dev/input/event*"
        Driver "synaptics"
EndSection

This has the severe disadvantage of breaking Buttons/ExpressKeys configuration by xsetwacom because the Buttons are now handled by xf86-input-synaptics. Notice in xinput list, while everything is on the xf86-input-wacom driver, that the match keyword Finger is the parent device for both daughter devices touch and pad. Fortunately you still have 1FGT left click and 2FGT gestures such as right click and scroll through xf86-input-synaptics.

For one and two finger touch open System Settings and open Mouse and Touchpad. Go to the Touchpad tab, which now should be present. Under General uncheck "Disable touchpad while typing" and make sure "Enable mouse clicks with touchpad" is checked. Under Scrolling select "Two-finger scrolling" and "Enable horizontal scrolling". Under Pointer Speed set Acceleration and Sensitivity to your preferences.

The following is a list of touch Gestures with xf86-input-synaptics in Unity.
1 finger tap > left click
2 finger dbl. tap > right click
2 fingers horizontal up or down > vertical scroll
2 fingers vertical left or right > horizontal scroll
3 finger press and drag > move window
(3 finger tap shows grab handles)
4 finger swipe left/right > reveal/hide launcher (if the dock autohide is enabled)
4 finger tap > open or close dash

Button functions in xf86-input-synaptics as set by the kernel driver wacom.ko.
Button 1 left click
Button 2 up
Button 3 down
Button 4 right click

Note that one and two finger touch is being processed in the synaptics driver and so a X Server multitouch aware application would not see the one and two finger touches. In that case you have to disable "Enable mouse clicks with touchpad" and either disable scrolling or select Edge scrolling in Mouse and Touchpad for the application to see the X Server one and two finger touches. This is explained on the wiki page Touchpad Support.

The Synaptics driver has a zillion configuration options, some of which look promising, that I haven't explored. See man synaptics and man synclient in a terminal.

c) Multitouch Gesture Engines for MATE, Cinnamon, KDE, and GNOME Shell.
Obviously if you don't use Unity you'll need something else for 2, 3, and 4 finger gestures. Ginn is installed by default through Maya/Precise. Note however ginn appears incompatible with the version of the Unity Desktop in Precise and later. See launchpad bug report #985121. Because ginn is no longer installed by default after Precise and has been moved to the Universe repository touchegg is probably the way to go for Quantal and later. Especially since there is now a gesture configuration gui for it. The touchegg in Precise's repository is broken and a newer version needs to be compiled to get it working in Precise, another reason to stick with ginn for Precise (without the Unity Desktop) and earlier.

1) ginn (Gesture Injector: No-GEIS, No-Toolkits). Available at this launchpad site. Instructions for editing the ginn configuration file wishes.xml (located at /etc/ginn/wishes.xml) to add custom gestures is available in man ginn entered in a terminal. Also see the ginn wiki page.

Ginn, once installed from the repsoitory, works in Kubuntu Precise (12.04) with xf86-input-wacom-0.18.0 or higher as soon as the xsetwacom command Gesture off is run. Presumably it will also work in Gnome Shell and Mint 13 Maya with Cinnamon and MATE. Remember to use the frankenserver patch when compiling xf86-input-wacom in Maya/Precise.

Not able to get ginn working in Lisa/Oneiric even with xf86-input-wacom-0.18.0 yet. May be a Wacom specific issue, perhaps with how input-wacom is sending touch events from the kernel with wacom.ko? With touch on the Synaptics driver I am able to see touch events on ginn in the terminal.

2) Touchégg. Downloads available at the touchegg site along with a wiki with instructions. "OS X-like multitouch gestures for Macbook Pro running Ubuntu 12.10" appears to be a good tutorial.

The default touchégg in the Precise repositories does not work, it seg faults. The touchegg-1.1 CHANGELOG says:
[+] Touchégg v1.1 (2012/07/22)
- Added Ubuntu Precise compatibility

So you need to download v. 1.1. from the site and compile it. As far as I know the Quantal touchégg is fine.

In Oneiric 11.10 and later to get the needed dependencies to compile run the following command.
Code: Select all
sudo apt-get build-dep touchegg

For versions earlier than Oneiric:
Code: Select all
sudo apt-get install build-essential libqt4-dev utouch libx11-6 libxtst-dev

The utouch library is deprecated starting with Precise.
Note: touchegg site's instructions on compiling did not work for me in Precise. I used sudo apt-get build-dep touchegg which installed libgeis-dev libqt4-dev libqt4-qt3support qt4-linguist-tools qt4-qmake. Got an error on make which required installing libutouch-geis-dev.

To compile touchegg in Maya/Precise the following should work. Download Touchégg v1.1 onto your Desktop and extract it. Then:
Code: Select all
sudo apt-get install build-essential libgeis-dev libutouch-geis-dev libqt4-dev libqt4-qt3support qt4-linguist-tools qt4-qmake
cd Desktop/touchegg-1.1
qmake
make
sudo make install

The touchegg.conf file appears at ~/.config/touchegg after a reboot. Like ginn there is a duplicate example .conf file at /usr/share/touchegg. The Touchegg-gce gui edits the .conf file at ~/.config/touchegg/touchegg.conf and presumably that is the active one. To install the gui on Maya/Precise I did the following.
Code: Select all
cd Desktop
git clone https://github.com/Raffarti/Touchegg-gce.git
cd Touchegg-gce
qmake
make

Didn't need any new dependencies beyond what were already installed for Touchégg. Let me know if it is different for you, because I probably had other possibly relevant libraries installed too. There is no install so run the touchegg-gce binary in the Touchegg-gce folder. Can use a launcher if you want to use the gui.

Touchégg, once compiled and installed, works in Kubuntu Precise (12.04), Gnome Shell Quantal (12.10), and Mint 14 Cinnamon with xf86-input-wacom-0.18.0 or higher, as soon as the xsetwacom command Gesture off is run. Presumably it will also work in Mint 13 Maya with Cinnamon and MATE. Remember to use the frankenserver patch when compiling xf86-input-wacom in Maya/Precise.

d) Turning Unity Gestures off so other Gesture Engines can be Used.
For UI consistency reasons Unity makes no provision for modifying its stock gestures or adding gestures. Also by design Unity does not allow disabling its system gestures which is necessary to use another gesture engine to customize gestures. See "Unity Gesture UI Guidelines". On askubuntu "How can I disable arbitrary default multitouch gestures in Unity?" is a good discussion of what's needed. The gesture code has to be disabled and then Unity re-compiled.

TODO: Move part X. to a seperate multitouch HOW TO?


Troubleshooting
In I. note not every kernel is -generic so you may need a different kernel header. To check:
Code: Select all
uname -r

As an example it may return:
Code: Select all
2.6.32-22-rt
or
2.6.35-25-generic-pae

in which case you would use:
Code: Select all
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: Select all
./configure --enable-wacom --prefix=/usr --libdir=/usr/lib64

or II.:
Code: Select all
./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.net/git/gitweb.cgi?p=linuxwacom/input-wacom;a=shortlog
Code: Select all
cd Desktop

git clone git://git.code.sf.net/p/linuxwacom/input-wacom input-wacom

sudo apt-get update

(For Ubuntu 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 Isador/Lucid or Julia/Maverick.)
sudo cp ./2.6.30/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko
or
(If you are in Katya/Natty or Lisa/Oneiric or Maya/Precise or Nadia/Quantal.)
sudo cp ./2.6.38/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko
or
(If you are in Olivia/Raring.)
sudo cp ./3.7/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko

sudo depmod -a

Now reboot.


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: Select all
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: Select all
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.
Attachments
Favux_Sample_Bamboo-P&T_.xsetwacom.sh.tar.bz2
(1.14 KiB) Downloaded 134 times
Favux_toggle-touch_scripts.tar.gz
(595 Bytes) Downloaded 129 times
build_against_frankenserver.patch.tar.bz2
(1.18 KiB) Downloaded 210 times
Last edited by Favux on Sat Nov 09, 2013 7:33 pm, edited 79 times in total.
Favux
Level 3
Level 3
 
Posts: 199
Joined: Fri Jul 01, 2011 1:20 am

Linux Mint is funded by ads and donations.
 

Re: Wacom Bamboo Pen and Touch tablet HOW TO

Postby Favux on Sun Aug 19, 2012 1:36 pm

KDE

Temar09 has a PPA to setup a Wacom BambooPT in Kubuntu 12.04. Apparently the default KDE Wacom configuration utility (kde-config-tablet or wacomtablet) does not work in Kubuntu 12.04. The PPA includes a working version and an updated libwacom. It also includes a hacked xsetwacom.c as part of a xf86-input-wacom-0.16.0 update which which "changes the way X11 key symbols are converted to keyboard scan codes". The reasons for that are discussed in a few posts before the post containing the PPA link. See post #1057 and Wacom Drivers & Tools PPA

lim1t describes his setup of a Wacom Bamboo (MTE-450A) using the KDE configuration utility (kde-config-tablet) in Kubuntu 11.10. See post #922.


Sample Wacom Tablet and Tablet PC .xsetwacom.sh scripts

1) The Sample_usb&serial_tablet-PCs_.xsetwacom.sh has samples for serial and usb tablet pc's. The models include HP TX2000 & TX2500, N-trigs (HP TX2z & Dell XT & XT2), Fujitsu T4210, Toshiba Portege M700 & M750, Lenovo Thinkpad X61t, and the Lenovo Thinkpads X200t & X201t.


2) The Sample_Intuos3&Intuos4_.xsetwacom.sh.tar.bz2 attached below has a sample Intuos3 and Intuos4 .xsetwacom.sh. Still need help from someone with a Wacom mouse (cursor) to finalize the cursor sections.


3) The Sample_bamboo&Cintiq_.xsetwacom.sh.tar.bz2 attached below has a sample Bamboo and Cintiq21UX2 .xsetwacom.sh.
Attachments
Sample_usb&serial_tablet-PCs_.xsetwacom.sh.tar.bz2
(2.95 KiB) Downloaded 285 times
Sample_Intuos3&Intuos4_.xsetwacom.sh.tar.bz2
(2.14 KiB) Downloaded 105 times
Sample_Bamboo&Cintiq_.xsetwacom.sh.tar.bz2
(1.95 KiB) Downloaded 114 times
Favux
Level 3
Level 3
 
Posts: 199
Joined: Fri Jul 01, 2011 1:20 am

Re: Wacom Bamboo Pen and Touch tablet HOW TO

Postby Favux on Sun Nov 25, 2012 5:25 pm

Updated frankenserver patch for xf86-input-wacom-0.18.0 and up in Maya/Precise

After the xf86-input-wacom-0.17.0 tar the patch fails with one hunk not being applied to fake-symbols.c because new code was added to the end of the file:
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 16
etc.

So 0.18.0 and up require a new patch. The commands are the same as above except the patch command changes to:
Code: Select all
patch -p1 < ~/Desktop/build_against_frankenserver_for0.18.patch



Patches and instructions for the new Intuos Pen and Touch series tablets
11//7/13

Intuos Pen CTL480
Intuos Pen and Touch small CTH480
Intuos Pen and Touch medium CTH680

Only for Olivia/Raring and Petra/Saucy (kernel 3.7 and later)

The support patches for the Intuos P&Ts have been submitted to the the kernel's linux-input mailing list but apparently not yet accepted: http://sourceforge.net/p/linuxwacom/mai ... /31596047/ Unfortunately they need to be applied to the kernel since there is a change made the the kernel's input.h file. Jason while testing Ping's patches did a quick work around to get them to apply to input-wacom and moved the input.h change locally to input-wacom. He was nice enough to make these available: http://sourceforge.net/p/linuxwacom/mai ... /31599376/ Remember this is meant to be a temporary stop gap until official input-wacom support is available. Not just because of the work around but because Jason's patches are based off the first version of Ping's patches, not the officially submitted second version.

Download Jason_IntuosPT-patches.tar.bz2 and extract the two patches. Follow the instructions in "I. Install input-wacom's wacom.ko" above until you extract the 0.19.1 tar and enter the 0.19.1 folder with:
Code: Select all
cd input-wacom-0.19.1

Stop. Copy or move the two patches into the uncompressed input-wacom-0.19.1 folder. Now apply the patches with:
Code: Select all
patch -p1 < 0001-Input-wacom-Not-all-multi-interface-devices-support-.patch
patch -p1 < 0002-Input-wacom-add-support-for-three-new-Intuos-devices.patch

Proceed with the rest of the part I. instructions to compile the wacom.ko. You'll probably want to update your xf86-input-wacom as in part II. Good luck.
Attachments
Jason_IntuosPT-patches.tar.bz2
(4.01 KiB) Downloaded 285 times
build_against_frankenserver_for0.18.patch.tar.bz2
(1.24 KiB) Downloaded 323 times
Favux
Level 3
Level 3
 
Posts: 199
Joined: Fri Jul 01, 2011 1:20 am

Re: Wacom Bamboo Pen and Touch tablet HOW TO

Postby calhaus on Fri Jan 10, 2014 2:14 pm

Hi, thanks for your tutorial! :D

It helped me alot with the buttons in particular.

So i got a new Intuos Pen and touch/Manga Small (CTH480) and the new wacom input drivers 0.20 work like a charm.

I want to add that the buttons are the same like the older pen and touch. From top to bottom, left to right, the number of the buttons to configuration are 3, 1, 9 and 8.

The 4 to 7 buttons on the pad are probably to the scroll things also, and 2 i don't have a clue.
Question: Do you know how to change that buttons to make the scroll work like normal scroll? (I've tried some stuff but i havent figured it out).

I've made some bash files, one too configure the buttons and other based on yours to turn on and off the Touch. (I've attached them, maybe they can be helpful to others).
I've added the touch bash file to a Keyboard shortcut, this is very easy in cinnamon. Go to Cinnamon settings->Keyboard->Keyboard shortcuts->Add custom shortcut->add the sh file and assign a keyboard binding.
Attachments
xsetwacom calhaus.zip
CTH480 Touch toggle and shortcuts example
(620 Bytes) Downloaded 51 times
calhaus
Level 1
Level 1
 
Posts: 10
Joined: Sat Dec 17, 2011 12:11 pm


Return to Tutorials

Who is online

Users browsing this forum: No registered users and 6 guests