The Linux Wacom Project
SourceForge.net Logo

Linux Wacom Project HOWTO

5.1 - Adding the InputDevices






The X Window system identifies the stylus (tip and side switches of your pen), eraser (the other end of your pen if it is clickable), cursor (your Wacom mouse), and pad (buttons, strips and rings on your tablet if your tablet has any) as XInput devices. Most settings, such as stylus pressure level and system cursor movement mode can be done in /etc/X11/XF86Config or /etc/X11/xorg.conf configuration file before X server starts or live through command-line xsetwacom or the simple GUI control panel wacomcpl while Wacom driver is running.

However, adding the InputDevice sections to your XF86Config/ xorg.conf file for Wacom devices is required. You should add these devices to the ServerLayout section of your XF86Config/xorg.conf file too.

We assume you are running Either XFree86 4.2 or later Or Xorg. On some distributions, this file is called XF86Config-4. Notice that the serial and USB configurations are different, so only include the appropriate lines. The default serial devices are given. For serial Tablet PCs, options "ForceDevice" should be included. You should also change the device (e.g. ttyS0 or /dev/input/wacom) to the correct one for your tablet. Tablet PC and Cintiq/PL/DTF models don't support cursor type. All the new driver options are listed in the manual page below.

Section "InputDevice"
  Driver        "wacom"
  Identifier    "stylus"
  Option        "Device"        "/dev/ttyS0"          # SERIAL ONLY
  Option        "Device"        "/dev/input/wacom"    # USB ONLY
  Option        "Type"          "stylus"
  Option        "USB"           "on"                  # USB ONLY
  Option        "ForceDevice"   "ISDV4"               # Serial Tablet PC ONLY
EndSection

Section "InputDevice"
  Driver        "wacom"
  Identifier    "eraser"
  Option        "Device"        "/dev/ttyS0"          # SERIAL ONLY
  Option        "Device"        "/dev/input/wacom"    # USB ONLY
  Option        "Type"          "eraser"
  Option        "USB"           "on"                  # USB ONLY
  Option        "ForceDevice"   "ISDV4"               # Serial Tablet PC ONLY
EndSection

Section "InputDevice"
  Driver        "wacom"
  Identifier    "cursor"
  Option        "Device"        "/dev/ttyS0"          # SERIAL ONLY
  Option        "Device"        "/dev/input/wacom"    # USB ONLY
  Option        "Type"          "cursor"
  Option        "USB"           "on"                  # USB ONLY
  Option        "ForceDevice"   "ISDV4"               # Serial Tablet PC ONLY
EndSection

# This section is for Intuos3, CintiqV5, Graphire4, or Bamboo without touch
Section "InputDevice"
  Driver        "wacom"
  Identifier    "pad"
  Option        "Device"        "/dev/ttyS0"          # SERIAL ONLY
  Option        "Device"        "/dev/input/wacom"    # USB ONLY
  Option        "Type"          "pad"
  Option        "USB"           "on"                  # USB ONLY
EndSection

# This section is for USB Bamboo with touch
Section "InputDevice"
  Driver        "wacom"
  Identifier    "pad"
  Option        "Device"        "/dev/input/wacom-touch"    # USB ONLY
  Option        "Type"          "pad"
  Option        "USB"           "on"                  # USB ONLY
EndSection

# This section is for the TabletPC that supports touch
Section "InputDevice"
  Driver        "wacom"
  Identifier    "touch"
  Option        "Device"        "/dev/ttyS0"          # SERIAL ONLY
  Option        "Device"        "/dev/input/wacom-touch"    # USB ONLY
  Option        "Type"          "touch"
  Option        "ForceDevice"   "ISDV4"               # Serial Tablet PC ONLY
  Option        "USB"           "on"                  # USB ONLY
EndSection

The above four sections identify the stylus, eraser, cursor, touch, and pad devices to XInput. Notice that all four reference the same device /dev/ttyS0 or /dev/input/wacom depending on whether its a serial or USB tablet. Please refer to Testing Tablet Detection and Updated wacom.c pages to see which port your tablet is actually mapped to.

The configuration options listed by your system's man page may be way out of date. Below is an updated wacom man page which will be installed by default when you issue make install.

WACOM(4)                                                              WACOM(4)

NAME
       wacom - Wacom input driver

SYNOPSIS
       Section "InputDevice"
         Identifier "idevname"
         Driver "wacom"
         Option "Device"   "devpath"
         ...
       EndSection

DESCRIPTION
       wacom is an X input driver for Wacom devices.

       The  wacom  driver functions as a pointer input device, and may be used
       as the X server's core pointer.

SUPPORTED HARDWARE
       This driver supports the Wacom IV and Wacom V protocols. Serial tablets
       only  need  this driver.  USB tablet support is available on some Linux
       platforms.  USB tablets needs  wacom Linux  kernel driver  being loaded 
       before this  driver starts.  Please check linuxwacom.sf.net  for latest 
       updates of Wacom X and kernel drivers.

CONFIGURATION DETAILS
       Please refer to xorg.conf(5x) for general configuration details and for
       options  that can be used  with all input  drivers.  This  section only
       covers configuration details specific to this driver.

       Multiple  instances  of the Wacom devices can cohabit. It can be useful
       to define multiple devices with different  active  zones.  Each  device
       supports the following entries:

               Option "Type" "stylus"|"eraser"|"cursor"|"touch"|"pad"
                   sets the type of tool the device represents. This option is
                   mandatory.  The core options,  such as  "SendCoreEvents" or
                   "AlwaysCore",  are unnecessary in Gimp if you don't need to
                   move system cursor outside of Gimp  drawing area.  "pad" is 
                   for Intuos 3 and  CintiqV5  ExpressKeys and menu strips, or 
                   Graphire 4 and Bamboo  tablet buttons and wheel/ring. It is
                   required for Intuos3,  CintiqV5,  Graphire 4,  or Bamboo if 
                   you want to use keystroke features. "pad" is  reported as a  
                   second tool in the  driver.  "touch" is for the tablet with 
                   touch support.  Right now only a few  Tablet PCs  have this
                   feature.

               Option "Device" "path"
                   sets the path to the special file which  represents  serial
                   line  where  the tablet is plugged.  You have to specify it
                   for each subsection with the same value if you want to have
                   multiple  devices  with  the  same  tablet.  This option is
                   mandatory.

               Option "USB" "on"
                   tells the driver to dialog with the  tablet  the  USB  way.
                   This option is mandatory for USB tablets.

               Option "ForceDevice" "ISDV4"
                   tells the  driver to  dialog  with the  tablet  the  serial
                   Tablet PC way.  It is a special  Wacom IV protocol,  called
                   ISDV4  protocol. This option is mandatory for serial Tablet 
                   PCs only.

               Option "DeviceName" "name"
                   sets the name of the X device.

               Option "Suppress" "number"
                   sets  the  position  increment  under which not to transmit
                   coordinates.  This entry must  be  specified  only  in  the
                   first Wacom subsection if you have multiple devices for one
                   tablet.  The default value is 2.  If you don't specify this
                   entry or your  value is  less  than  the  default  vaule or 
                   greater  than 100,  the  default  value  will be  used.  To 
                   disable suppression, the entry should be specified as 0.
                   When  suppress is defined,  an event will be sent only when
                   at least one of the following conditions is met:

                   the  change  between  the  current  X  coordinate  and  the
                   previous one is greater than suppress;

                   the  change  between  the  current  Y  coordinate  and  the
                   previous one is greater than suppress;

                   the change between the  current pressure  and the  previous
                   one is greater than suppress;

                   the  change  between the  current  degree  of  rotation and
                   the previous one of the transducer is greater than suppress;

                   the change between the current absolute wheel value and the
                   previous one is equal to or greater than suppress;

                   the change  between the current tilt value and the previous 
                   one  is  equal to or  greater  than  suppress  (if  tilt is
                   supported);

                   relative wheel value has changed;

                   button value has changed;

                   proximity has changed.		   

               Option "Mode" "Relative"|"Absolute"
                   sets the  mode of the device.  The default value for stylus
                   and  eraser is Absolute;  cursor is  Relative;  pad mode is
                   decided  according to its core  option due to its nature of
                   not moving system cursor:  Relative if it is a core device;
                   Absolute, otherwise.

               Option "TopX" "number"
                   X  coordinate  of  the  top  corner  of  the  active  zone.
                   Default to 0. 

               Option "TopY" "number"
                   Y  coordinate  of  the  top  corner  of  the  active  zone. 
                   Default to 0.

               Option "BottomX" "number"
                   X  coordinate of  the bottom  corner  of the  active  zone.
                   Default to width of the tablet.

               Option "BottomY" "number"
                   Y  coordinate  of the  bottom  corner of  the active  zone.
                   Default to height of the tablet.

               Option "ButtonsOnly" "on"|"off"
                   disables the device's motion events.  Default to off.

               Option "ButtonM" "AC"
                   reports an action AC  when button M is pressed,  where M is
                   one of the device supported button numbers,  it can be 1 to
                   32. The default action reported to Xinput is mouse button M   
                   click.  To ignore the button click, i.e., to not report any
                   button click event to Xinput,  use "0" or "button 0".  

               Option "TPCButton" "on"|"off"
                   enables the  stylus  buttons as  Tablet PC  buttons,  i.e.,
                   reports  stylus button event only  when its tip is pressed. 
                   Default to "on" for Tablet PCs; "off" for all other models.

               Option "Touch" "on"|"off"
                   enables  the touch  device  for  models that  support touch
                   feature. Default to "on" for tablets with touch; "off"  for
                   all other models.

               Option "Gesture" "on"|"off"
                   enables the  touch  gestures for  tablets that  support two
                   finger   touch.   Three   gesture   modes  are   supported:
                   Add-a-Finger,  Scroll,  and  Zoom.  Once  the  driver is in
                   gesture  mode, it stays in the same mode until both fingers
                   leave the tablet.  When second  finger taps on the  tablet,
                   Add-a-Finger  mode is in  and a  right-click  event will be
                   issued  upon the  leaving of the  second  finger;  When two
                   fingers moving in the same direction and parallel vertically
                   or  horizontally,  Scroll  mode  is  in  and a  vertical or
                   horizontal scroll event will be  issued;  When both fingers
                   stay on the tablet and at least one finger  moves away from
                   its  initial  position  or both  fingers move in  different
                   directions, Zoom mode is in. Default to "on" for Tablet PCs
                   that support two finger touch;  "off" for all other models.
                   However, this option can be turned on for those tablets that
                   support two finger touch.

               Option "ZoomDistance" "integer"
                   minimum  distance  required before starting a zoom  gesture
                   (default is 50).

               Option "ScrollDistance" "integer"
                   minimum  finger  motion  distance  required for  starting a
                   scroll gesture (default is 20).

               Option "TapTime" "integer"
                   maximum time between taps required for a right  mouse click
                   (default is 250 ms).

               Option "Speed" "Rspeed"
                   sets the cursor's  relative  movement speed to Rspeed.  The
                   default value is 1.0.  A Rspeed greater than 1.0 will speed
                   up the cursor's  relative movement.  A Rspeed less than 1.0 
                   but greater  than 0 will slow  down the  cursor's  relative 
                   movement. A Rspeed too close to 0 is not recommanded.

               Option "Twinview" "horizontal"|"vertical"|"leftof"|"aboveof"
                   |"xinerama"|"none"
                   sets the  orientation of  TwinView to map the tablet to one
                   screen  and to be able to  move the screen  cursor from one
                   screen  to the  other  when tool  reaches  the  edge of the
                   tablet.  The cursor can be constrained in a specific screen 
                   if  "ScreenNo"  option is  added.   If you  want to map the
                   tablet  to the  whole  desktop,   you  should  NOT add this
                   option. The default is "none". Note: due to historic reason,
                   "horizontal"   represents  the   "RightOf"  and  "vertical" 
                   represents the "BelowOf" in acutal TwinView setup.

               Option "TVResolution" "res0,res1"
                   specifies  different  resolutions  for the  two  screens in
                   TwinView setup.  For example, if the resolution of screen 0
                   (res0) is 1024x768 and screen 1 (res1) is 1280x1024, the 
                   option will be set to:
                            Option "TVResolution" "1024x768,1280x1024"

                   This option is used  only when TwinView option is not none.
		   It is  unnecessary to add this  option if  your screens are
                   displaying in the same resolutions.

               Option "ScreenNo" "n"
                   In a multi-monitor environment, specifies the screen number
                   in  which  the  cursor can  move.  Here  n  starts from  0, 
                   which indicates the first screen.

               Option "MMonitor" "on"|"off"
                   turns  on/off  across  monitor  movement on a  non-TwinView
                   multi-monitor desktop. A system mouse or utility program is
                   needed to change  screens when  MMonitor is set to off. The 
                   default is "on".

               Option "Rotate" "CW"|"CCW"|"HALF"|"NONE"
                   rotates  the tablet  orientation  counterclockwise (CCW) or 
                   clockwise (CW) or 180 degrees (HALF).  If you have specific 
                   tablet mappings, i.e.  TopX/Y or  BottomX/Y  were set,  the  
                   mapping  will be  applied before rotation.  The  default is 
                   "NONE".

               Option "PressCurve" "x1,y1,x2,y2"
                   sets pressure curve by control  points  x1, y1, x2, and y2.
                   Their values are in range from 0..100. The input for 

                         linear curve (default) is "0,0,100,100";
                         slightly depressed curve (firmer) might be "5,0,100,95";
                         slightly raised curve (softer) might be "0,5,95,100".

               Option "KeepShape" "on"
                   When  this  option  is  enabled,  the  active  zone  begins
                   according to TopX and TopY.  The bottom corner is  adjusted 
                   to  keep the ratio width/height of the active zone the same 
                   as the screen while maximizing the area  described by TopX, 
                   TopY, BottomX, BottomY.

               Option "DebugLevel" "number"
                   sets the level of debugging info  reported for the  defined
                   device.  There  are  12  levels  in use,  specified  by the
                   integers  between 1 and 12.  Once it is  defined,  all  the
                   debug  messages  with a  level  less  than or  equal to the
                   "number"  will  be  logged  into  /etc/X11/XFree86.0.log or
                   /etc/X11/Xorg.0.log.

               Option "CommonDBG" "number"
                   sets the level of  debugging info for all  devices  defined
                   for the same tablet.  There are 12 levels in use, specified
                   by the integers between 1 and 12.  Once it is defined,  all 
                   the debug  messages with a  level less than or equal to the
                   "number"  will  be  logged  into  /etc/X11/XFree86.0.log or 
                   /etc/X11/Xorg.0.log.

               Option "CursorProx" "number"
                   sets  the  max  distance  from  tablet  to  stop  reporting
                   movement  for  cursor in relative mode.  Default for Intuos  
                   series is 10, Graphire series (including Volitos) is 42.

               Option "Serial" "number"
                   sets the serial number associated with the physical device.
                   This allows to have multiple devices of the same type (i.e.
                   multiple pens). This option is only available  on  wacom  V
                   devices (Intuos series and Cintiq 21UX). To see the serial 
                   number associated with a device, run xsetwacom.

               Option "Threshold" "number"
                   sets  the  pressure  threshold  used to generate a button 1
                   events of stylus. The default is MaxPressure*3/50.

SEE ALSO
       Xorg(1x), xorg.conf(5x), xorgconfig(1x), Xserver(1x), X(7).

AUTHORS
       Frederic Lepied <lepied@xfree86.org>, Ping  Cheng <pingc@wacom.com>,
       John E. Joganic <jej@j‐arkadia.com>, Magnus Vigerlöf <Magnus.Vigerlof@ipbo.se>,
       Peter Hutterer <peter.hutterer@redhat.com >

X Version 11                      linuxwacom 0.8.4                     WACOM(4)







Copyright (C) 2002-2011 - LinuxWacom -Last updated July 23, 2012
This website and its contents are licensed under the GNU GENERAL PUBLIC LICENSE.