WDAEMON(1) [FIXME: manual] WDAEMON(1)NAME
wdaemon - Wacom tablet hotplugging emulator
SYNOPSIS
wdaemon [options]
DESCRIPTION
wdaemon is an application to abstract Wacom tablet hotplugging. wdaemon
creates virtual input devices using the uinput kernel module and makes
them available while at run time keeps looking for specified devices to
be plugged in.
Instead of looking for the actual device, the X server is configured to
look for the emulated device. wdaemon will provide the an identical
device description, allowing the server to initialize properly. Once
the physical device is plugged in, wdaemon will forward all events
through the emulated device and thus to the X server.
For easier recognition, the device name is prefixed with the string
"wdaemon". This can be disabled at configure time.
OPTIONS-h
Print a help message
-p
Path to the device file to monitor, load to or extract
-t
Device type, use -w to get a list
-c file
Use <file> as configuration file.
-d N
Enable debug messages up to level N
-o file
Redirect debug messages to file
-f
Fork on start and enter in daemon mode
-w
Get a list of supported devices and their numbers
-a
Autoconfigure, generate a configuration file based on currently
plugged in tablets
-l file
Load a device description from file
-x file
Extract a device description into file
-s
Use syslog for debug messages (conflicts with -o)
-v
Print version number
CONFIGURATION
wdaemon requires configuration in the udev(7) system setup, the
xorg.conf(5) configuration files and finally wdaemon itself.
UDEV CONFIGURATION
wdaemon requires a tablet to have a predictable unique device file.
This is usually accomplished through udev rules. For example, on modern
systems, a tablet may appear as
/dev/input/by-id/usb-Tablet_PTZ-630-event-mouse
which will point to the event device of a Intuos3 6x8. The wdaemon
package provides udev rules to create symlinks to known tablet models
in the form of
/dev/input/wacomX,
/dev/input/wacom-tablets/wacom-<model>-tabletX and
/dev/input/wacom-tablets/wacom-<model>-tablet-<phys path>
The last link provides unique type per USB port. Once a tablet reliably
appears at a given device path, wdaemon may be configured to use it.
The second step consists in creating a persistent name for uinput
devices created by wdaemon, so you can configure your xorg.conf right.
An example udev rule to do this:
KERNEL="event*", PROGRAM="/lib/udev/wdaemon_is_uinput.sh", \
RESULT="056a-0000", \
SYMLINK="input/uinput-devices/uinput-wacom-penpartner-tablet%e"
This will create a symbolic link for penpartner tablets. Notice it
needs wdaemon_is_uinput.sh script (included in this package). Also
included in this package, 11-uinput-wacom.rules has these rules done
for most tablets. With the rule in place, a wdaemon-created device will
have predictable device files. This makes xorg.conf configuration
simpler.
XORG.CONF CONFIGURATION
The X server should be configured to use the devices by wdaemon instead
of the actual physical devices. An xorg.conf(5) section may look like
this:
Section "InputDevice"
Identifier "cursor"
Driver "wacom"
Option "Type" "cursor"
Option "Device" "/dev/input/uinput-devices/uinput-wacom-intuos3-6x8-tablet"
Option "Mode" "relative"
Option "Tilt" "on"
Option "Threshold" "20"
Option "Suppress" "6"
Option "USB" "On"
EndSection
Note that if the X server is configured to hotplug devices, it must
ignore physical devices in use by wdaemon. Example xorg.conf.d(5) and
fdi files are provided with this package.
WDAEMON CONFIGURATION
Now wdaemon must be configured to monitor the physical tablet and
create matching uinput device. A /etc/wdaemon.conf for two devices may
look like this:
device = 36,/dev/input/wacom-tablets/intuos3-6x8-tablet
device = 6,/dev/input/wacom-tablets/graphire4-4x5-tablet
Notice the spaces. The wdaemon parser is very rudimentary at this point
and can get easily confused. The device types 36 and 6 can be
determined by running
wdaemon -w
When wdaemon is started, it will create devices of the types specified
in the wdaemon.conf configuration file and monitor the device path.
Whenever the physical tablet appears, wdaemon will forward events from
the device to the uinput device.
If the device type is unknown to wdaemon, see SAVING AND LOADING
DEVICES below.
AUTO-CONFIGURATION
The -a option was added in 0.14 to generate a wdaemon.conf based on the
currently plugged-in tablets. First, plug in all tablets that should be
emulated by wdaemon in the future. Then run
wdaemon -a
This command prints a configuration file that can then be used for
wdaemon.
Auto-configuration only works with device types known to wdaemon.
SAVING AND LOADING DEVICES
wdaemon has the device descriptions for a number of devices built-in.
For devices that are unknown to wdaemon the device description must be
gathered from the physical device and loaded on startup.
A device description may be extracted with the -x option:
wdaemon -p /dev/input/by-id/usb-Tablet_PTZ-630-event-mouse -x Intuos3_6x8.desc
The resulting device file is a description of the device currently
available as /dev/input/event12. The description may be loaded again
with the -l option:
wdaemon -p /dev/input/by-id/usb-Tablet_PTZ-630-event-mouse -l Intuos3_6x8.desc
wdaemon will initialize a device based on the description file and
forward events from the specified device path.
CONFIGURATION FILE FORMAT
The configuration format supports the following keywords:
debug = <debuglevel>
Where debuglevel is an integer equal or larger than 0.
device = <type>,<path>
Where type is an integer representing the device type and path the path
to the device to monitor.
description = <desc>,<path>
Where desc is the path to a device file description and path the path
to the device to monitor.
wdaemon’s parser is simple and the spaces in the configuration file
must be exactly as above. That is, no space at the beginning of the
line, a space before and after the = sign and no spaces elsewhere.
ENVIRONMENT VARIABLES
UINPUT_DEVICE
Specifies the path to the uinput kernel device.
VERSION
0.17
AUTHORS
This man page was written by Peter Hutterer
<peter.hutterer@redhat.com[1]> based on the README provided by wdaemon.
SEE ALSOxorg.conf(5), wacom(4)NOTES
1. peter.hutterer@redhat.com
mailto:peter.hutterer@redhat.com
[FIXME: source] 02/21/2013 WDAEMON(1)