WDAEMON
Section: [FIXME: manual] (1)Updated: 12/07/2011
Index Return to Main Contents
NAME
wdaemon - Wacom tablet hotplugging emulatorSYNOPSIS
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.
wdaemoncqs 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
AUTHORS
This man page was written by Peter Hutterer <m[blue]peter.hutterer@redhat.comm[][1]> based on the README provided by wdaemon.
SEE ALSO
NOTES
Index
- NAME
- SYNOPSIS
- DESCRIPTION
- OPTIONS
- CONFIGURATION
- CONFIGURATION FILE FORMAT
- ENVIRONMENT VARIABLES
- VERSION
- AUTHORS
- SEE ALSO
- NOTES
This document was created by man2html, using the manual pages.
Time: 05:29:12 GMT, December 24, 2015