Linux Wacom HOW TO

Write tutorials and howtos in 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

Linux Wacom HOW TO

Postby Favux on Thu Aug 16, 2012 12:13 pm

Relocation of: HOW TO: Install a LinuxWacom Kernel Driver for Tablet PC's

This HOW TO installs input-wacom's wacom.ko (the usb driver/module) & Xorg's xf86-input-wacom, the Wacom X driver, in Isadora (Lucid 10.04), Katya (Natty 11.04), Lisa (Oneiric 11.10), & Maya (Precise 12.04). In Isadora you can also install linuxwacom's wacom.ko, although it is suggested you use input-wacom. It demonstrates how to patch the kernel's wacom.ko (using Katya's 2.6.38 kernel as an example) along with dkms implementation of the patched module (see Appendices 1 & 2).

Last Updated: October 27, 2013

Linuxwacom's input-wacom - the USB kernel module/driver This is a backport version of the usb kernel driver wacom.ko and supports kernels from 2.6.26 to 3.2; the plan is to release a version paired with each xf86-input-wacom (the X driver) point release. It also contains the new serio version of the ISDV4 driver wacom_w8001.ko along with inputattach.
input-wacom-0.19.1 has been released (10-24-13). Improves usability of Intuos touch-enabled tablets in kernels 2.6.30 through 2.6.35. Adds support for the ISDv4 0x10F digitizer. Support for the Intuos Pen and Touch tablets (CTL-480, CTH-480, and CTH-680) targeted for the upcoming release of input-wacom 0.20.0.
input-wacom-0.19.0 has been released (10-04-13). Adds support for the 3.7 kernel, the Cintiq Companion Hybrid, Intuos Pro, and the 0x300/0x301 ISDv4 digitizers. Also a few bug fixes. Support for the "Intuos Pen", "Intuos Pen & Touch", and "Intuos Manga" models is expected to be available in the next input-wacom release.
input-wacom-0.18.0 has been released (6-11-13). Adds a new stylus (0x100802) for Intuos5 and Cintiqs. Updates wacom_tpc_mt to simulate two finger touch events.
input-wacom-0.17.0 has been released (5-17-13). Adds support for new input-mt changes. Addd support for DTH-2242, 0x10d, Cintiq 13HD, DTK 2241, and Cintiq 22HDT.
input-wacom-0.16.0 has been released (12-19-12). Adds new MT device (0x4001) and fixes touch support for Bamboo Fun CTH-461 in the 2.6.38 and 3.7 folders.
input-wacom-0.15.0 has been released (11-15-12). Adds Cintiq 22HD (2.6.30+, 2.6.36+, 2.6.38+, 3.7+; Touch Finger: 2.6.38+, 3.7+). Adds 3 new tablet PC's: 0x4001 (2.6.30+), 0x100 (2.6.38+, 3.7+), 0x101 (2.6.38+, 3.7+). Introduces a new tree for Linux 3.7+ and brings it and the 2.6.38 tree in sync with the driver present in Dmitry's current 'next' branch.
input-wacom-0.14.0 has been released (7-19-12). Adds Bamboo 2nd and 3rd gen support for 2.6.30+ kernels. Also adds Intous5 touch support in 2.6.30+. Fixes the E6 (Thinkpad X 220t) bug.

Xorg's xf86-input-wacom - the X driver
xf86-input-wacom 0.23.0 has been released (9-28-13). Adds support for the "Intuos Pro" tablets. New "Intuos" line not yet supported. Support expected in next release.
xf86-input-wacom 0.22.0 has been released (7-10-13). Adds support for the Cintiq 22HDT and 13HD, DTK2241 and DTH2242, 0xED, and 0xEC. Transform touch events just like all other events so for e.g. Wacom Rotation property applies to touch.
xf86-input-wacom 0.21.0 has been released (4-29-13). Adds support for the 0x10d. Fixes puck buttons. Made touchscreens direct touch devices.
xf86-input-wacom 0.20.0 has been released (3-4-13). Fixes bugs in the property setting code, and resolves a gnome-control-center issue where settings were not properly applied. Also work to fix small problems with the pen/touch arbitration code.
xf86-input-wacom 0.19.0 has been released (1-3-13). Adds support for the 0x4001, TabletPC sensor with 10-finger touch. Multiple bug fixes.
xf86-input-wacom 0.18.0 has been released (10-29-12). Adds three new multi-touch (MT) ISDv4 (tablet PC) devices (E5, 100, 101). Support for the Cintiq 24HD touch, no input device grab by default (allowing tools like evtest to work within X), and support for XI2.2 multitouch (providing applications with position data for every hardware-tracked finger). It should be noted that the internal gesture recognizer consumes all the multitouch events at the moment. If you'd like the events to be passed along to applications (e.g. if your desktop environment supports multitouch gestures or you have software like "touchegg" installed), disable gesture recognizer by running `xsetwacom set TOUCH_DEVICE gesture off`. There is a known regression affecting the puck (Wacom tablet mouse i.e. Graphire and Bamboo) from 0.17.0 which was discovered very late in the RC and which could not be resolved in time for this release, see: https://bugs.freedesktop.org/show_bug.cgi?id=56536
xf86-input-wacom 0.17.0 has been released (9-5-12). Removes of so-called "raw" buttons from the driver core (cleanup work that shouldn't impact users) as well as the usual smattering of bug
fixes. Go forth and download!
xf86-input-wacom 0.16.1 has been released (8-27-12). 0.16.x series update. Adds 22HD support, fixes a 24HD bug and a freeze seen during tap processing.

Linuxwacom - the USB kernel module/driver and X driver in one package In maintenance.
linuxwacom 1.0.9.7 has been released (6-15-13). Adds new stylus (0x100802) for Intuos5 and Cintiqs. Backports rebasePressure from xf86-input-wacom to reset the minimum pressure.
linuxwacom 1.0.9.6 has been released (5-17-13). Adds support for Cintiq 13HD and DTK2241.
linuxwacom 1.0.9.5 has been released (7-21-12). Adds Cintiq 22HD support.
linuxwacom 1.0.9.4 has been released (4-25-12). Adds Intuos5 support.


Sources
Originally adapted from gali98's tutorial at post #5 on the "Tablet PC Issues" thread.
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
Olivia (Mint 15)/Raring Ringtail (13.04):

Nadia (Mint 14)/Quantal Quetzal (12.10):

Maya (Mint 13)/Precise Pangolin (12.04): Has xf86-input-wacom-0.14.0 as the default. According to Timo Intuos5 support has been backported to 0.14.0. Serial graphics tablet support has been confirmed in Precise by testers through the new serio kernel drivers and inputattach, see Wacom serial graphics tablets HOW TO.
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 Maya/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 below build_against_frankenserver.patch to make it compatible with the hybrid X Server. See "Section 2 - Xorg's xf86-input-wacom".
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): Has xf86-input-wacom-0.11.0 as the default. There is a bug in Lisa that renders Wacom tablets and other graphic tablets unusable in Gimp. And perhaps affects more than Gimp. See this Launchpad bug report: https://bugs.launchpad.net/ubuntu/+source/gimp/+bug/863154. Use Aapo Rantalainen's PPA to get a usable Gimp. Serial graphics tablet support has been confirmed in Oneiric by testers through the new serio kernel drivers and inputattach, see Wacom serial graphics tablets HOW TO.

Katya (Mint 11)/Natty Narwhal (11.4): Has xf86-input-wacom-0.10.11 as the default. And, for those who have it, multi-touch is still in flux. X.org's xf86-input-wacom will not include additional gesture support. The current plan is to support/bug fix the already implemented 2FGT gestures but no new gestures or 3 & 4 finger touch gestures will be added. The question of whether to place 3 & 4 FGT (currently just the two new BambooPT Special Editions) on the evdev driver with Ginn or the Synaptic touchpad driver remains open. Kernel support for 3 and 4FGT MT has not yet been implemented which renders finding an X driver for them rather moot. The wacom.ko will no longer be supplied by the Linux Wacom Project as a kernel module independently of the kernel except in the input-wacom package. The serial graphics tablet support issue is now being addressed by tokenrove and roaldfre through new serio kernel drivers and inputattach, see Wacom serial graphics tablets HOW TO.

Isadora (Mint 9)/Lucid Lynx (10.4) & Julia (Mint 10)/Maverick Meerkat (10.10): For X.Org's Xserver 1.7 (X11R7.5 or later) the X driver (wacom_drv.so) part of linuxwacom has been forked to become Xorg's driver xf86-input-wacom (the wacom-specific X11 input driver). Note that while xf86-input-wacom 0.10.x started appearing in the distros with X server 1.7 (Isadora) these are still the cleanup & add functionality versions. So be prepared to clone it again from the git after waiting a while if it is not working the way you would like. The version intended for extensive user testing, 0.11, is still in the future. This change removes a lot of legacy issues LinuxWacom has to deal with, which permits the xf86-input-wacom code cleanup. The LWP (Linux Wacom Project) will still be responsible for the kernel part of the Wacom drivers and the X11 input drivers for older Xservers (pre-1.7). Isadora's default version is the xf86-input-wacom 0.10.5 Xserver 1.7 X11 linuxwacom input driver while Julia's default is xf86-input-wacom 0.10.8. The packages are "xserver-xorg-input-wacom (1:0.10.5-0ubuntu2)" or "xserver-xorg-input-wacom (1:0.10.8-0ubuntu2)". As mentioned the Xorg driver is changing rapidly and updates are frequent.


Miscellaneous Notes
Attention Serial Graphics Tablet users. Your tablets, the legacy Wacom serial graphics tablets (external serial graphics tablets connecting via a serial cable), are not supported by the Linux Wacom Project with xf86-input-wacom. The xf86-input-wacom is the Wacom X driver fork from linuxwacom for X server 1.7 (Isadora/Lucid) and up. This turns out to have been due to lack of dev. resources not policy. Patches were submitted by non-project developers to restore Serial Tablets to xf86-input-wacom/Xserver 1.7[/b]. See the second patch set submitted on this: linuxwacom-discuss thread. They still needed work before acceptance into xf86-input-wacom. But even so serial tablets have set up in Isador/Lucid & Julia/Maverick using the patches. See this thread. Because development of the serial tablet patches stopped early during the 0.10.6+ tree they only work with xf86-input-wacom 0.10.6 and not later versions. And 0.10.6 won't build on Julia/Maverick's Xserver 1.9. Fortunately thorwil discovered how to get 0.10.6 with the serial patch to build in Maverick. He applied another small patch "dixScreenOrigins has been removed from server". Two other developers then came up with serio kernel modules to add serial graphics tablet support to Katya/Natty and later releases. For instructions to get your legacy Wacom serial graphics tablets working on all releases starting with Isadora/Lucid please see Wacom serial graphics tablets HOW TO.

Attention HP TX2z and Dell Latitude XT & XT2 (N-trig digitizer) users. We've figured out how to get multi-touch working in Julia/Maverick and later releases using Rafi's ntrig.ko's, ginn, and Ubuntu's utouch stack. Please see "HOW TO: Set up the HP TX2z and Dell XT & XT2 (N-trig digitizer) in Ubuntu". As of yet multi-touch is not working for the HP Slate 500 netbook.

Attention Waltop tablet in Julia/Maverick and later releases users. Waltop tablet pens work with the wacom X driver xf86-input-wacom starting with Julia. Please see the Waltop HOW TO. The HOW TO also helps Waltop tablets in Isadora/Lucid users place the tablet's pen on the WizardPen X driver. Waltop support was added to the xf86-input-wacom driver (5-31-10) with the merge of the Waltop branch to the git master. Unfortunately the Waltop usb driver in the hid part of the kernel did not quite fully support the pen buttons using the wacom X driver. Patches submitted by Nikolai Kondrashov to the kernel have fixed that in Katya. Please also see the DIGImend project for more information on Waltop tablets.


Summary
In this HOW TO we will download the source code from the Linux Wacom Project site, compile it, and then for USB tablets copy the wacom.ko driver to the correct module section. The wacom.conf in xorg.conf.d to configure the tablet should automatically be added (although you may need to manually add it in Isadora/Lucid). Next we further configure and calibrate (if needed) the tablet inputs using a custom wacom.conf, or a .xsetwacom.sh (a script of xsetwacom commands), or the Gnome or KDE configuration gui's (if available). This will give us a working graphics tablet or tablet PC. Then for tablet PC's a link leads to the Rotation HOW TO which provides screen rotation methods.

To install xf86-input-wacom you can download (clone) it from the git repository or use a release tar. Please see Section 2) below. If you have a Serial tablet PC (called by the LWP a serial ISDv4 device) that will supply you with the X driver, which is all you need. However if you have a USB tablet you may also need to compile input-wacom or linuxwacom to get the usb kernel driver/module wacom.ko. Just be sure to not do the "sudo make install" command in step 5) with linuxwacom. The linuxwacom X driver is not compatible with the 1.7 or later X servers. Skip that and go on to copy the wacom.ko into place in your kernel's modules directory. Linuxwacom 0.8.8-7 was the first to support the 2.6.35 kernel.

To configure you can still use the xorg.conf although the preferred way is now through a xorg.conf.d .conf file. See "a) Configuring through xorg.conf.d with the wacom.conf" in "Section 3: Configuring the Wacom Tablet/Devices". Don't become confused by Debian, Ubuntu, and Mint's early sprint for .conf files. While Disto.s using the vanilla 1.7 X Server still use HAL and .fdi files the hybrid 1.7/1.8 X Server found in Isadora/Lucid has made the change to xorg.conf.d .conf files. HAL and xorg.conf.d are both methods to support USB hot plugging in linux but HAL was a temporary work around and the permanent solution is xorg.conf.d.


Section 1 - The LinuxWacom's input-wacom: intended for supporting new Wacom models not yet in your kernel's wacom.ko. Download source code, compile, and install the USB kernel driver/module wacom.ko.
Input-wacom backports support for new models from newer kernels into a modified wacom.ko for kernels 2.6.26 to 3.2. You should use your Distro supplied wacom.ko kernel driver if possible as the code logic will differ between the two. A wacom.ko is only needed by USB tablets.

Currently at Linux Wacom Project the latest input-wacom release tar available is: input-wacom-0.19.1
(Just substitute the driver # you want in the following commands. It is better to copy and paste the commands into a terminal rather than type them.)

Please read the Release Specific Notes for your release before proceeding.
Note: if you are using Isadora/Lucid follow the Mini-HOW TO: Updating xorg-macros to v. 1.8 for Isadora/Lucid in Section 2 - Xorg's xf86-input-wacom below before proceeding.

a) Compile the input-wacom tar:
1) First download the source code tar onto the desktop. In a terminal enter:
Code: Select all
cd Desktop

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

2) Next install the needed libraries and updates using the following apt-get commands.
Code: Select all
sudo apt-get update

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

* Ubuntu and LMDE use libx11-dev instead of libX11-dev.
* If there are missing or unneeded dependencies please let me know.

3) Now the kernel headers for your kernel are needed. To determine your kernel version:
Code: Select all
uname -r

If you have the generic kernel:
Code: Select all
sudo apt-get install linux-headers-generic

If you have the rt or pae kernel:
Code: Select all
sudo apt-get install linux-headers-rt
or
sudo apt-get install linux-headers-generic-pae

(Remember if you update to a newer kernel and have a usb tablet it will seem to "break". This is because the wacom.ko usb kernel driver/module you compiled won't be in the directory for kernel modules the new kernel creates. You will need to recompile the wacom.ko or else use a dkms.)

4) Okay now unpack the source code tar and go into the unpacked source code directory.
Code: Select all
tar xjvf input-wacom-0.19.1.tar.bz2

cd input-wacom-0.19.1

5) Then we compile the linuxwacom kernel module.
Code: Select all
./autogen.sh --prefix=/usr

[Using the --prefix=/usr flag installs to /usr instead of the default /usr/local. 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']

6) Next we copy the module to the appropriate directory:
For Isadora (Lucid) use:
Code: Select all
sudo cp ./2.6.30/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko

For Kataya (Natty), Lisa (Oneiric), Maya (Precise), & Nadia/(Quantal) use:
Code: Select all
sudo cp ./2.6.38/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko

For Olivia (Raring) use:
Code: Select all
sudo cp ./3.7/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko

The folder the compiled wacom.ko is in is mentioned in the last few lines of the compile output.

Now rebuild all of the module dependencies:
Code: Select all
sudo depmod -a

(The driver (wacom.ko) inside the kernel translates the raw data into system data and sends that to Xinput/Xserver where the xf86-input-wacom X driver (wacom_drv.so) takes control.)

7) You now need to restart.

b) Or clone and compile 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 and 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 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.


Alternate Section 1 - The LWP's linuxwacom; for Isadora (Lucid) & Julia (Maverick) only: Download source code, compile, and install linuxwacom's USB kernel driver/module wacom.ko.[/b]
Install just the wacom.ko (do not do 'make' or 'sudo make install'). Only needed by USB tablets.

Currently at Linux Wacom Project the latest linuxwacom release tar available is: Production: 0.9.5
(Just substitute the driver # you want in the following commands. It is better to copy and paste the commands into a terminal rather than type them.)

1) First download the source code tar onto the desktop. In a terminal type:
Code: Select all
cd ./Desktop

wget http://prdownloads.sourceforge.net/linuxwacom/linuxwacom-0.9.7.tar.bz2

(If the wget command doesn't download the linuxwacom source code tar check the LWP's SourceForge site: http://sourceforge.net/projects/linuxwacom/files/ If a newer version is available download that.)

2) Next install the needed libraries and updates using the following apt-get commands.
Code: Select all
sudo apt-get update

sudo apt-get install build-essential libX11-dev libxi-dev x11proto-input-dev xserver-xorg-dev libxrandr-dev tk8.4-dev tcl8.4-dev libncurses5-dev

sudo apt-get upgrade

* Ubuntu and LMDE use libx11-dev instead of libX11-dev.
*In Helena/Karmic (or above) a new dependency for xserver-xorg-input-wacom, xserver-xorg-input-all, was added. You can not have one without the other.
Note: Starting with 0.8.5-11 you need libxrandr-dev because a wacom XRandR daemon was added. It's already added to the libraries/dependency line above but not needed if compiling an earlier version.

3) Now the kernel headers for your kernel are needed. To determine your kernel version:
Code: Select all
uname -r

a) If you have the generic kernel:
Code: Select all
sudo apt-get install linux-headers-generic

If you have the rt or pae kernel:
Code: Select all
sudo apt-get install linux-headers-rt
or
sudo apt-get install linux-headers-generic-pae

(Remember if you update to a newer kernel and have a usb tablet it will seem to "break". This is because the wacom.ko usb kernel driver/module you compiled won't be in the directory for kernel modules the new kernel creates. Either copy your compiled wacom.ko into the new directory (see 6) below) or if that doesn't work recompile.)

4) Okay now unpack the source code tar and go into the unpacked source code directory.
Code: Select all
tar xjvf linuxwacom-0.9.7.tar.bz2

cd linuxwacom-0.9.7


5) Then we compile and install the linuxwacom kernel module.
(To see the options the linuxwacom configure script offers you type "./configure --help | less".)
Code: Select all
./configure --enable-wacom --prefix=/usr

(Using --prefix=/usr installs to /usr instead of the default /usr/local. 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'):
Code: Select all
./configure --enable-wacom --prefix=/usr --libdir=/usr/lib64

If you had a Xserver less than 1.7 (pre-Lucid), to install the linuxwacom X driver you would continue with:
Code: Select all
make

sudo make install

(Don't worry if this returns an error saying "wacom" is not loaded. It just means you've never installed wacom before.)

6) Next we copy the module to the appropriate directory (this is needed for USB tablets):
At one point there was a folder in /src for every kernel, but starting with linuxwacom 0.8.5 the /src kernel folders have been consolidated over multiple releases. At this point with the more recent linuxwacoms there only remain the 2.6.16, 2.6.18, 2.6.24, and 2.6.30 folders. So for a recent kernel and linuxwacom the copy command is:
Code: Select all
sudo cp ./src/2.6.30/wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko

The bottom line is if the copy command doesn't work you need to locate the folder the compiled wacom.ko has appeared in and modify the copy (cp) command accordingly.

Now rebuild all of the module dependencies:
Code: Select all
sudo depmod -a

(The driver (wacom.ko) inside the kernel translates the raw data into system data and sends that to Xinput/Xserver where XFree86's Wacom X driver (wacom_drv.o) takes control.)

7) You now need to restart. The kernel module should then be installed. You may need to restart several times. If after more than a few restarts it still isn't working try repeating step 6) again. In other words go back into the unpacked source code directory and repeat the "sudo cp etc." command and then restart.

To verify the linuxwacom kernel module is present in the correct location:
Code: Select all
modinfo -n wacom

(The module is called “wacom”, not “linuxwacom”.)

8] On some systems the wacom.ko doesn't auto-load. To check if it's loaded see if 'wacom' appears in the output of:
Code: Select all
lsmod | grep wacom

If it's not present (auto-loading) try martinjochimsen's "fix" (in post #3 below). Add "wacom" (without the quotes) to the end of the file 'modules' in "/etc/":
Code: Select all
gksudo gedit /etc/modules

Save, Close, and reboot.


Section 2 - Xorg's xf86-input-wacom: Clone (download source code)and compile the git repository or compile the point release tar.
Currently at Linux Wacom Project the latest xf86-input-wacom release tar available is: xf86-input-wacom-0.23.0
(It is better to copy and paste the commands into a terminal rather than type them.)

Preliminaries: you only need to do these once.
1) If cloning the git repository: To install git. Open a terminal and enter (copy & paste):
Code: Select all
sudo apt-get install git-core

2) Mini-HOW TO: updating xorg-macros to v. 1.8 for Isadora/Lucid.
You can skip this step if you're on Julia/Maverick or later. On (6-2-10) the xf86-input-wacom branch of the LWP updated xorg-macros to v. 1-8. Since Isadora uses v. 1-5 this prevents the xf86-input-wacom git clone from compiling. The xorg-macros.m4 is in the xutils-dev package and is located at /usr/share/aclocal/xorg-macros.m4. To update the macros version first download it onto your desktop from the Xorg site. Then backup the default 1.5 version:
Code: Select all
sudo cp /usr/share/aclocal/xorg-macros.m4 /usr/share/aclocal/xorg-macros.m4.bak

*there may be no xorg-macros.m4 to back up if you haven't previously installed xutils-dev.

Then enter:
Code: Select all
cd ./Desktop

tar xjvf util-macros-1.8.0.tar.bz2

cd util-macros-1.8.0

./configure --prefix=/usr

make

sudo make install

If you downloaded the 0.10.6 tar or earlier you don't need to do this.

Warning for Maya/Precise: follow the instructions for cloning the git repository below until you get to the ./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 #2 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 ./autogen.sh --prefix=/usr and the rest of the commands.

a) Clone and compile the xf86-input-wacom git repository:
1) Open a terminal and then change directory to your Desktop and clone the xf86-input-wacom git repository (download xf86-input-wacom):
Code: Select all
cd ./Desktop

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

2) Next install the needed libraries and updates using the following apt-get commands:
Code: Select all
sudo apt-get update

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

* Ubuntu and LMDE uses libx11-dev instead of libX11-dev.
Note: There is a large overlap with the dependency line for linuxwacom. If you have a USB tablet and are going to compile it for wacom.ko, or already have, you can edit one or the other dependency line. It won't hurt to run both in full, just waste a little time.

I think all the dependencies are now identified but if you find one missing, or if you find ones not needed, please notify me.

*thanks to Ubuntiac for reminding me about git-core, and determining the missing dependencies autoconf & pkg-config.
*thanks to Zib.c & torturedutopian for pointing out libxrandr-dev.
*thanks to sanette for pointing out the lack of xorg-macros.m4 in a default install.

3) Now change directory into xf86-input-wacom and then compile and install xf86-input-wacom:
Code: Select all
cd xf86-input-wacom

./autogen.sh --prefix=/usr

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.
Code: Select all
make

sudo make install

Wacom.fdi files are no longer used in Isadora/Lucid as HAL is not installed by default. You can still use a xorg.conf however the "preferred" method is a wacom.conf in xorg.conf.d. Please see "Section 3: Configuring the Wacom Tablet/Devices". Also see the mediawiki for xf86-input-wacom. One thing to note is in X server 1.7 and up "SendCoreEvents" is deprecated.

Xorg's xf86-input-wacom doesn't have a configuration gui like linuxwacom's wacomcpl (Wacom Control Panel). You can set up a script of xsetwacom commands to run when the system starts, if you need to configure things, similar to wacomcpl's .xinitrc (see Section 4 below). The xsetwacom commands were rebuilt for xf86-input-wacom, so they are a little different from the linuxwacom ones. See "man wacom" and "man xsetwacom" in a terminal. The Gnome or KDE configuration gui's, if available for your release, can be used.

For more information please see the Linux Wacom Tablet Project; choose the Support tab and then the mediawiki link. The Xorg xf86-input-wacom driver tars are available at the usual sourceforge linuxwacom driver site.

b) Or compile the xf86-input-wacom tar:
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 and 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.


Section 3: Configuring the Wacom Tablet/Devices.

a) Configuring through xorg.conf.d with the wacom.conf: the current wacom.conf looks like (but the default should be fine for most).
Code: Select all
Section "InputClass"
   Identifier "Wacom class"
   MatchProduct "Wacom|WACOM|Hanwang|PTK-540WL"
   MatchDevicePath "/dev/input/event*"
   Driver "wacom"
EndSection

Section "InputClass"
   Identifier "Wacom serial class"
   MatchProduct "Serial Wacom Tablet"
   Driver "wacom"
EndSection

Section "InputClass"
        Identifier "Wacom serial class identifiers"
        MatchProduct "WACf|FUJ02e5|FUJ02e7|FUJ02e9"
        Driver "wacom"
EndSection

# Waltop tablets
Section "InputClass"
   Identifier "Waltop class"
   MatchProduct "WALTOP"
   MatchIsTablet "on"
   MatchDevicePath "/dev/input/event*"
   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 Isadora/Lucid use:
Code: Select all
gksudo gedit /usr/lib/X11/xorg.conf.d/10-wacom.conf

Actually you should not be modifying .conf files in the Distro supplied xorg.conf.d directory. But with Isadora there is no choice because you can not use the directory for user made custom .conf files, which is /etc/X11/xorg.conf.d. So for Julia/Maverick and later you would use, but shouldn't:
Code: Select all
gksudo gedit /usr/share/X11/xorg.conf.d/50-wacom.conf

Because that location is reserved for the Distro and your changes can be overwritten by an update.

To create a custom wacom.conf where you can add options you may need to create the /etc/X11/xorg.conf.d directory if it is not already there. If after checking it isn't there:
Code: Select all
sudo mkdir /etc/X11/xorg.conf.d

Let's name your custom .conf file 52-wacom.conf. To add or edit the file use (only with Julia/Maverick or later):
Code: Select all
sudo gedit /etc/X11/xorg.conf.d/52-wacom.conf

And then for content add a snippet something like:
Code: Select all
Section "InputClass"
      Identifier "Wacom eraser class"
      MatchDriver "wacom"
      MatchProduct "eraser"
      Option "Foo" "bar"
EndSection

Entering 'man wacom' in a terminal will provide you with the options you can use. It's important to note that you can not configure dependent devices in the wacom.conf snippets unless you have Xserver 1.10 (Katya/Natty) or later. Before X Server 1.10 you can only add tablet wide (i.e. stylus) options. Not options for dependent devices like the eraser or cursor. If other input tool devices have "eraser" in their name, say a second Wacom tablet, you will need a more specific match than "eraser". For more information and examples see xorg.conf.d and USB Tablets with Touch.
*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
*Serial Wacom snippet from Peter Hutterer.
*N-trig snippet from Rafi Rubin.
*Waltop snippet from Nikolai Kondrashov.

b) Configuring through xorg.conf: In order to tell Xserver you have a tablet or tablet PC you need to add input sections to your xorg.conf, which is located in /etc/X11/ if present. Wacom entries used to be included in the xorg.conf in versions of Ubuntu before Intrepid. The LWP mediawiki has a generic example xorg.conf. Add the relevant sections for your tablet or tablet PC to your xorg.conf, if present. Please study the sample xorg.conf's and compare them carefully to your xorg.conf before making any changes. You should study 'man xorg.con' also. And be sure to back up your working xorg.conf first! You need to be able to restore it from the comand line if you break the X Server.

To edit (or create) xorg.conf you have to be administrator so in a terminal:
Code: Select all
gksudo gedit /etc/X11/xorg.conf

Let's look at an example (one that uses all of linuxwacom's Tablet PC features). For a HP TX2000 you need to add the following InputDevice Sections.
Code: Select all
Section "InputDevice"
      Identifier        "stylus"
      Driver            "wacom"
      Option "Device" "/dev/input/by-path/pci-0000:00:0b.1-usb-0:2.3:1.0-event-mouse"
      Option            "Type"           "stylus"
      Option            "USB"            "on"
      Option            "Button2"        "3"  # make side-switch a right button
      Option            "TopX"           "225"
      Option            "TopY"           "225"
      Option            "BottomX"        "26300"
      Option            "BottomY"        "16375"
EndSection

Section "InputDevice"
      Identifier        "eraser"
      Driver            "wacom"
      Option "Device" "/dev/input/by-path/pci-0000:00:0b.1-usb-0:2.3:1.0-event-mouse"
      Option            "Type"           "eraser"
      Option            "USB"            "on"
EndSection

Section "InputDevice"
      Identifier        "touch"
      Driver            "wacom"
      Option "Device" "/dev/input/by-path/pci-0000:00:0b.1-usb-0:2.3:1.1-event-"
      Option            "Type"           "touch"
      Option            "USB"            "on"
      Option            "TopX"           "200"
      Option            "TopY"           "225"
      Option            "BottomX"        "4000"
      Option            "BottomY"        "3875"
EndSection

Note it is set up for a USB digitizer and you would not need to use Option "USB" "on" with a Serial (ISDv4) digitizer. The symlinks wacom and wacom-touch could be used instead of the by-path's to uniquely identify the device nodes. The four options ( TopX to BottomY) in the stylus and touch sections are there to provide calibration if needed. These calibrations would apply to all users. You can determine your calibration using one of the methods discussed in Calibration at the LWP's mediawiki. Or you could use a xsetwacom set command with the Area parameter. That would allow each user their own calibration. See also Appendix 3.

You also need to add the following three lines to the "ServerLayout" Section of the xorg.conf. In Isadora/Lucid and later (Xserver 1.7 or higher) "SendCoreEvents" is deprecated so the "ServerLayout" lines become:
Code: Select all
      Inputdevice       "stylus"
      Inputdevice       "eraser"
      Inputdevice       "touch"

Options are available in man wacom and in the Linuxwacom HOWTO at the mediawiki. If you want to learn how the “Device” input paths were determined please look at Appendix 4 below.

If you are trying to use "/dev/input/wacom" in your xorg.conf and it is not working then there may be a problem with your Wacom symlinks. Please check to see if you have a file called “69-xserver-xorg-input-wacom.rules” (or something similar) located in "/lib/udev/rules.d/". If not see Appendix 5.

Hopefully this example is illustrative of what is necessary to configure a xorg.conf. Once you have the proper or properly configured xorg.conf restart the Xserver with <ctrl><alt><backspace> (if you have re-enabled the key combination), otherwise log out and log back in. After you do the stylus and touch should work. If it does not consider restarting. Make sure you cover the entire screen to check if the pointer follows the stylus.

c) Configuring through HAL/.fdi files: If you are still using HAL wacom.fdi's are available at: http://ubuntuforums.org/showpost.php?p=7234134&postcount=176


Section 4: Configuring and Calibrating your Tablet or Tablet PC.
The linuxwacom configuration and calibration gui wacomcpl (Wacom Control Panel) was dropped by xf86-input-wacom. New Wacom tablet configuration gui's are available for recent releases of Gnome and KDE. Information on calibration is on the Calibration HOWTO.

The wacomcpl settings generated a set of xsetwacom commands stored in a file called .xinitrc. We can duplicate the .xinitrc file with a xsetwacom command script file, called say .xsetwacom.sh (if we want it hidden) or xsetwacom.sh. Open your favorite test editor and create the file and enter the xsetwacom commands you would like to use. Information on writing a script is available at the LWP's mediawiki: Tablet Configuration HOWTO There are some sample .xsetwacom.sh scripts, attached to posts #1 and #2, at the Bamboo P&T HOW TO.

Since xsetwacom commands are runtime commands they only apply during the current session. You can also change your settings on the fly using the xsetwacom set commands with the appropriate parameters in a terminal. To enable the .xsetwacom.sh file to apply to the X Server through a reboot you need to make it executable:
Code: Select all
chmod +x ~/.xsetwacom.sh

Or use the path to the directory you have placed .xsetwacom.sh in. You could also right click on the file and in Properties, in the Permission tab, check Execute as program. Go to System->Preferences->Startup Applications and click on add and for the command write "sh /home/yourusername/.xsetwacom.sh" (without the quotes and using the appropriate directory). And title it “Wacom Tablet Calibration Settings” or whatever you like. By the way the period in front of xsetwacom.sh makes it a hidden file. You do not need to do that, it just prevents directory clutter. If you create a folder/directory named bin (/home/yourusername/bin), as some recommend for placing user scripts and binaries, there is no need to make xsetwacom.sh hidden.

Your script will now be applied at each start up. You should now have the Wacom drivers installed and a functioning tablet or tablet pc. Congratulations!


Next to get a completely functioning tablet PC (the ability to rotate your screen from laptop to tablet mode) please proceed to the Tablet PC rotation HOW TO.


Appendix 1: How to Patch and Compile the Ubuntu kernel's source code i.e the kernel's wacom.ko
As an alternative to using input-wacom you may prefer to use the Ubuntu kernel source code to test and compile a new patch. This appendix explains how to work with the Ubuntu release specific kernel.

Be aware that since the separation of linuxwacom into the Xorg X driver and the kernel driver the kernel code is submitted upstream to the kernel through linux-input. And linux-input is where any wacom.ko bug fixes or proposed changes should be submitted. Bug fixes or proposed changes to input-wacom, which consists of backports, will not necessarily be submitted upstream to the kernel.

First download your current Natty kernel's Ubuntu source code onto your Desktop.
Code: Select all
cd Desktop

apt-get source linux-image-`uname -r`

The kernel is about 94 MB and takes a few minutes to download depending on your connection. You'll see linux_2.6.38.orig.tar.gz, linux_2.6.38-8.42.dsc, linux_2.6.38-8.42.diff.gz, and linux-2.6.38 if your release is Natty. And of course the 3.0 kernel if your release is Oneiric.

Then go into the kernel's folder (linux-2.6.38 ) now on your Desktop and navigate to drivers/input/tablet/wacom_wac.c using Places/Nautilus. Right click on wacom_wac.c and open in gedit to make any manual changes in the wacom_wac.c file you would like. Or if applying a patch or patchset do so in the terminal. After any changes are made, in the terminal navigate to the downloaded kernel source code's /tablet directory using:
Code: Select all
cd linux-2.6.38/drivers/input/tablet

Now you are ready to compile the wacom.ko. Use the following command:
Code: Select all
make -C/lib/modules/`uname -r`/build M=`pwd` modules

You may have to install the gcc compiler if you haven't already. This will also compile several other modules in the /tablet directory, but the compile goes fast even so. If despite that you only want to compile the wacom.ko you could alter the Makefile in /tablet.

Copy the newly compiled wacom.ko from the current tablet directory into your system kernel's modules /tablet directory with:
Code: Select all
sudo cp wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/

Rebuild all of the module dependencies:
Code: Select all
sudo depmod -a

Then reboot.

If your change is successful, and new, you now have something you could submit to the kernel's linux-input mailing list. Of course they'll want a git patch against the current master in the git repository.
*thanks to Ayuthia for his assistance

Appendix 2: Using DKMS for the wacom.ko
If you want your newly compiled wacom.ko to apply even after a kernel update, without having to recompile it, you can use DKMS.

Attached to the bottom of this post is wacom-2011, a wacom dkms (dynamic kernel module support) framework. The folder just needs to be placed in the /usr/src directory. You might want to change the version number, 2011 in the folder name, to something more specific. If you do modify the version number you also need to modify it in the dkms.conf file. Of course, you will need to replace the source code files with your versions.

In the folder are 6 files:
Code: Select all
dkms.conf   Makefile   wacom.h
wacom_sys.c   wacom_wac.c   wacom_wac.h

Replace the included wacom.h, wacom_sys.c, wacom_wac.c, and wacom_wac.h files with the the source code files you compiled your wacom.ko from if they were different or you modified them.

Then enter in a terminal the following commands:
Code: Select all
sudo dkms add -m wacom -v 2011
sudo dkms build -m wacom -v 2011
sudo dkms install -m wacom -v 2011

You would use your version number in the commands, if you changed it, of course.

Now your new wacom.ko will be applied to any new kernel. The wacom.ko file should end up in /lib/modules/`uname -r`/updates/dkms/. You can verify that everything worked by entering:
Code: Select all
modprobe --show-depends wacom

That will show you the path where all the dependent kernel modules are stored including the wacom.ko module.

To remove the wacom.ko dkms:
Code: Select all
sudo dkms remove -m wacom -v 2011 --all

* thanks to Ayuthia for supplying the framework package.

Appendix 3: Make Calibration Available to All Users
To make calibrations or configurations you may have set in .xsetwacom.sh system wide they can be installed in one of the static configuration files. Either the appropriate snippet in the wacom.conf file in xorg.conf.d or the xorg.conf. To transfer the .xsetwacom.sh settings over to xorg.conf.d you can use the -x or --xconf switch with get. It will translate the xsetwacom command into a static configuration Option (you can see these static Options in man wacom). We'll use an example where the translation doesn't work because the xsetwacom Area parameter doesn't yet exist in the static configuration Options. Instead they still use Top and Bottom X & Y. But you can get those coordinates if in a terminal you enter:
Code: Select all
xsetwacom -x get "device name or ID #" Area

Using the "device name" or ID # xinput list returns for the device. For example for a BambooPT:
Code: Select all
xsetwacom -x get 9 Area

Giving an output of:
Code: Select all
Option "Area" "0 0 480 320"

You now need to take the 4 coordinates and break them into TopX, TopY, BottomX, and BottomY and then they can be put into, as 4 Option lines, the .conf file in xorg.conf.d under the appropriate snippet or in the xorg.conf in the "touch" section. Just repeat the "translations" as needed.

Appendix 4: How to Determine Device Input for xorg.conf
The following steps will determine USB input for xorg.conf. First we need to query the kernel buffer for tablet input. In a terminal type:
Code: Select all
dmesg | grep Wacom

There should be two lines similar to this.
Code: Select all
[ 45.460644] input: Wacom ISDv4 93 as /devices/pci0000:00/0000:00:0b.1/usb2/2-2/2-2.3/2-2.3:1.0/input/input9
[ 45.478030] input: Wacom ISDv4 93 as /devices/pci0000:00/0000:00:0b.1/usb2/2-2/2-2.3/2-2.3:1.1/input/input10

Next we list the USB input files in “/dev/input/by-path” using the long listing format. Type:
Code: Select all
ls -l /dev/input/by-path

Which should give you something similar to.
Code: Select all
lrwxrwxrwx 1 root root 9 2008-07-27 12:07 pci-0000:00:0b.1-usb-0:2.3:1.0-event-mouse -> ../event9
lrwxrwxrwx 1 root root 9 2008-07-27 12:07 pci-0000:00:0b.1-usb-0:2.3:1.0-mouse -> ../mouse1
lrwxrwxrwx 1 root root 9 2008-07-27 12:07 pci-0000:00:0b.1-usb-0:2.3:1.1- -> ../mouse2
lrwxrwxrwx 1 root root 10 2008-07-27 12:07 pci-0000:00:0b.1-usb-0:2.3:1.1-event- -> ../event10
lrwxrwxrwx 1 root root 9 2008-07-27 12:07 platform-i8042-serio-0-event-kbd -> ../event1
lrwxrwxrwx 1 root root 10 2008-07-27 12:07 platform-i8042-serio-1-event-mouse -> ../event11
lrwxrwxrwx 1 root root 9 2008-07-27 12:07 platform-i8042-serio-1-mouse -> ../mouse3
lrwxrwxrwx 1 root root 9 2008-07-27 12:07 platform-pcspkr-event-spkr -> ../event2

Now we need to find the device input file that matches the output of dmesg. Notice that input9 (from dmesg) matches with event9 (in the ls command). So the USB input file [pci-0000:00:0b.1-usb-0:2.3:1.0-event-mouse] is the one needed for the stylus. And input10 (from dmesg) matches with event10 (in the ls command). So the USB input file [pci-0000:00:0b.1-usb-0:2.3:1.1-event-] is touch.

Now you can just amend your xorg.conf with the two input files that you just determined. The one ending with "mouse" should be in the stylus and eraser sections and the one ending in "event-" should be in the touch section.

Appendix 5: Add Wacom Symlinks to “/lib/udev/rules.d”.
It is expected you will use a .conf file in xorg.conf.d rather than an xorg.conf so Ron at Debian has stopped updating his wacom.rules git repository. Although to be frank there is no advantage to using xorg.conf.d over the xorg.conf with a tablet PC. With a tablet PC the digitizer is always connected and you do not ever hot plug it. Unless of course you wish to hot plug a tablet into your tablet PC, which can get tricky.

If for whatever reason you are using an xorg.conf and want to use symlinks for it, rather than using pci by-paths, you need to rely on the wacom.rules symlinks installed in Ubuntu by default. If your model tablet isn't included in the default wacom.rules you can find updated 60-wacom.rules at Fixed device files with udev on the LWP's mediawiki. If you want to look at the now outdated “50-xserver-xorg-input-wacom.rules” (dated 3-29-09) from Ron's Debian git repository open a terminal and enter:
Code: Select all
cd ./Desktop

wget -O 50-xserver-xorg-input-wacom.rules "http://git.debian.org/?p=users/ron/wacom-tools.git;a=blob_plain;f=debian/xserver-xorg-input-wacom.udev;hb=e110b046292d6aff63b489c9b1aecec25d470cdb"

The 60-wacom.rule file at the mediawiki contains Wacom symlink rules. If needed you can copy a rule from there, or create your own (see below or the mediawiki page), for a new model not yet in the default Ubuntu “69-xserver-xorg-input-wacom.rules”. Open the “69-xserver-xorg-input-wacom.rules” file in "/lib/udev/rules.d/":
Code: Select all
gksudo gedit /lib/udev/rules.d/69-xserver-xorg-input-wacom.rules

and add your new rule. Then restart X.

In your xorg.conf for “stylus”, “eraser”, "cursor", and "pad" "InputDevice" sections you would use:
Code: Select all
   Option      "Device"   "/dev/input/wacom"

In your “touch” section (if you have it) you'd use:
Code: Select all
   Option      "Device"   "/dev/input/wacom-touch"

And you would also use wacom-touch for a BambooPT pad.

If your device is new and there is not yet a rule for it in a terminal enter:
Code: Select all
more /proc/bus/input/devices

In the output should be at least one section labeled Wacom. Your vendor and product ID should be in it. The vendor ID for Wacom is Vendor=056a. If your device is not in the table you should be able to construct a symlink. Using the symlinks in the large “table” as templates construct a rule using your vendor and product ID. Add it to the end of the table, before “# Convenience links for the common case etc.”.

Appendix 6: Recovering the default wacom.ko
If you have trouble with your compiled wacom.ko you can recover the default wacom.ko easily even if you don't have a backup. The wacom.ko that comes default for your current installation it is in your kernel's "linux-image". You can find the "linux-image" and install it with Synaptic Package Manager or Software Center. The usb kernel module wacom.ko is at "/lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko" where "uname -r" is your current kernel.
Attachments
wacom-2011.tar.bz2
(14.12 KiB) Downloaded 120 times
build_against_frankenserver.patch.tar.bz2
(1.18 KiB) Downloaded 151 times
Last edited by Favux on Sun Oct 27, 2013 10:11 pm, edited 20 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: Linux Wacom HOW TO

Postby Favux on Sun Nov 25, 2012 5:29 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
Attachments
build_against_frankenserver_for0.18.patch.tar.bz2
(1.24 KiB) Downloaded 153 times
Favux
Level 3
Level 3
 
Posts: 199
Joined: Fri Jul 01, 2011 1:20 am

Re: Linux Wacom HOW TO

Postby skabz on Wed Mar 06, 2013 2:43 am

W.T.F IS THIS PAGE ?
How does AN ACTUAL HUMAN install a wacom 24HD driver in linux mint?

Is there a 'computer-man' in this forum that can just package all this stuff up into a single click, install, *boom* done?
skabz
Level 1
Level 1
 
Posts: 1
Joined: Wed Mar 06, 2013 2:36 am

Re: Linux Wacom HOW TO

Postby Favux on Wed Mar 06, 2013 12:46 pm

lol Your eyes glazed over did they? :)

Hi skabz,

Welcome to Mint forums!

It is simpler than it might appear. You are basically following a recipe. You copy and paste each command in order into a terminal, hitting enter after each command, and boom the driver is magically installed. As long as you copied the entire command, did them in order, and did not skip one.

Some people complain if there isn't explanation, some people complain the explanation confuses them. This is the original HOW TO with explanations. You might like part I. and II. of the "Wacom Bamboo Pen and Touch tablet HOW TO" better: viewtopic.php?f=42&t=110408 It basically has the recipes without all the explanations cluttering up things.

What you need to tell us is what version/release of Mint you are using, and/or enter in a terminal the following command:
Code: Select all
Xorg -version

And post the output.

Then we need to know what model Cintiq you have. Yes 24HD, but I am talking the product ID so we are sure. For that you enter into a terminal:
Code: Select all
lsusb

In the output will be a line with Wacom in it. Post either that line or the entire output. The Wacom line will have the Vendor and Product IDs.

Since there has been 24HD support for a while I need to know that info. to figure out where you are and why it isn't working out of the box. At worst you have an older release/kernel, and that kernel does not yet have a kernel driver (wacom.ko) that supports your Cintiq. In which case you just need to compile input-wacom to get a wacom.ko that works for your Cintiq.

Oh and by the way xf86-input-wacom-0.20.0 came out yesterday. So I have to get around to updating the HOW TOs.
Favux
Level 3
Level 3
 
Posts: 199
Joined: Fri Jul 01, 2011 1:20 am

Re: Linux Wacom HOW TO

Postby sai_akuto on Sun Feb 09, 2014 3:25 am

Just wanted to say - thanks for effort!

Edit: It worked for me, but I am a bit confused about how to make it left handed
sai_akuto
Level 1
Level 1
 
Posts: 1
Joined: Thu Oct 25, 2012 1:56 pm

Re: Linux Wacom HOW TO

Postby ghostgrrl on Sat Feb 15, 2014 12:44 pm

skabz wrote:W.T.F IS THIS PAGE ?
How does AN ACTUAL HUMAN install a wacom 24HD driver in linux mint?

Is there a 'computer-man' in this forum that can just package all this stuff up into a single click, install, *boom* done?


I have to agree with skabz. This HOW TO is written in gobbledygook, even for a 5-year user of Linux Mint.

Speaking as a former technical writer, the instructions are presented in a very difficult and cumbersome manner that is not easy to follow.

How much better if we had the following:

    - Steps presented in order.

    - Separate sections for Nadia, Katya, Maya, etc. (i.e. Mint-build specifics grouped together, rather than scattered throughout the post)

    - Informational sections separate and clearly explained ("here's what this bit is," or "this is based on whose'its .ko," and "here's the list of release notes, fixes" etc.)

    - Links to separate posts for serial graphics tablets, Intuos, Cintiq, Bamboo, etc., rather than lumping them together

    - Instructions laid out in list format, rather than run-on paragraphs. (I literally got a headache trying to sift through for how to install for my build.)

So basically, the text starts off with a bunch of info on releases, fixes, changes, etc. that's pretty much FYI. Yawn. I want to install drivers, not study a history lesson.

Then we get some release-specific notes. Okay, good -- need to know. But even though there are headings (do appreciate those! :) ), the text goes off rambling:
According to Timo Intuos5 support has been backported ...


Who's Timo? And why do we need to know? Is all this stuff critical to install the drivers?

Next come a couple Warnings -- critical for Mint 13 (my build). Definitely appreciate the "if you do this your system will crash/freeze" - wouldn't want that to happen.

But then we get:
You need to patch xf86-input-wacom with the attached below...


Am I going to remember to do that when I get to that point in the install? And if I don't, I'll likely have to scroll back up to try to find it amongst all the gobbledygook, then scroll back down to try to find where I left off. This info should be included WHERE IT APPLIES, in bullet points at the point of the installation where it becomes critical.

A few paragraphs on, we finally get to the Summary (a misleading title -- looks more like an Introduction). Once more, critical info is buried within the paragraph:
"Just be sure to not do the 'sudo make install' command..."
Again, place this where it applies.

Oh, and then come more yawny bits like, "Linuxwacom 0.8.8-7 was the first to support the 2.6.35 kernel." Woo.

Still more useful info is buried in the Section 1 first paragraph:
You should use your Distro supplied wacom.ko kernel driver if possible as the code logic will differ between the two. A wacom.ko is only needed by USB tablets.


This should be placed near the top, or called out with bullets to draw attention to it. (White space!)

So what we end up with is a long, rambling post with some really important information mixed in with a lot of FYI and history stuff that may or may not be important, and somewhere in there are also a series of super-important commands we actually came here to look for and a few patches that are critically important for some users but not others....

What we want to know is: How do I install the drivers to get my Wacom tablet working in Linux?

:)
ghostgrrl
Level 2
Level 2
 
Posts: 71
Joined: Tue Aug 25, 2009 12:08 am


Return to Tutorials / Howtos

Who is online

Users browsing this forum: No registered users and 16 guests