Page 1 of 1

Linux Wacom HOW TO

Posted: Thu Aug 16, 2012 12:13 pm
by Favux
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/+sour ... ug/1137247The problem may be due to this bug: https://bugs.launchpad.net/ubuntu/+sour ... ug/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/+sour ... 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/g ... 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/g ... nf;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= ... tcount=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.

Re: Linux Wacom HOW TO

Posted: Sun Nov 25, 2012 5:29 pm
by Favux
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

Re: Linux Wacom HOW TO

Posted: Wed Mar 06, 2013 2:43 am
by skabz
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 bullshit up into a single click, install, *boom* done?

Re: Linux Wacom HOW TO

Posted: Wed Mar 06, 2013 12:46 pm
by Favux
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: http://forums.linuxmint.com/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.

Re: Linux Wacom HOW TO

Posted: Sun Feb 09, 2014 3:25 am
by sai_akuto
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

Re: Linux Wacom HOW TO

Posted: Sat Feb 15, 2014 12:44 pm
by ghostgrrl
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?

:)

Re: Linux Wacom HOW TO

Posted: Sun Mar 22, 2015 7:09 pm
by Troken
I have a Cintiq and a Linux Mint computer, but seriously, it's easier to switch to Ubuntu, which has built in Wacom support. What happened to a user friendly OS if you need to go through all of that? Linux is supposed to be easy, even for us "simple" fellas who do not fancy the terminal.

Not that I don't appreciate the effort, but instructions seem to be for power users.

Re: Linux Wacom HOW TO

Posted: Thu Apr 02, 2015 2:49 pm
by spanner
Is there a way of installing the wacom driver for XD 405 R Intuos 2 its the serial version not usb on Mint 17 32bit mate ,I have it working on Winxp.

Manual

http://www.manualslib.com/manual/188361 ... 405-R.html

Re: Linux Wacom HOW TO

Posted: Fri Apr 03, 2015 12:53 pm
by mcganical
Since this tutorial is 1.5 years old, I'm wondering if anything has changed for Mint 17. Do wacoms work out of the box now? :)

Re: Linux Wacom HOW TO

Posted: Sun Apr 05, 2015 12:57 pm
by Troken
mcganical wrote:Since this tutorial is 1.5 years old, I'm wondering if anything has changed for Mint 17. Do wacoms work out of the box now? :)
Not when I tried.

Re: Linux Wacom HOW TO

Posted: Mon Apr 06, 2015 3:03 am
by Ranthe
mcganical wrote:Since this tutorial is 1.5 years old, I'm wondering if anything has changed for Mint 17. Do wacoms work out of the box now? :)
My Wacom Bamboo Pen (CTL-460) certainly does on Mint 17.

Re: Linux Wacom HOW TO

Posted: Mon Apr 06, 2015 4:58 pm
by mcganical
Thanks. That's promising. I'll give it a try when my new computer comes in.