-
Notifications
You must be signed in to change notification settings - Fork 194
Troubleshooting
This is not a libwacom issue. libwacom is a database of static information -- it has no effect on whether your tablet works. It can only inform other components about the device's properties (like whether it's built into a screen or how many buttons it has).
If pen input, buttons, or touch don't work at all, the problem is elsewhere in the stack:
For kernel-level issues (the device doesn't show up in
/proc/bus/input/devices or libinput record shows no events), the issue is
in the kernel driver. Wacom devices use the
input-wacom driver. Huion,
XP-Pen, Gaomon, and other UCLogic-based devices use the kernel's
hid-uclogic driver or
udev-hid-bpf.
If the device works at the kernel level (libinput record shows events) but
not in your desktop session, the problem is in the userspace stack. Under
Wayland this is typically
libinput or your
compositor (e.g. GNOME's
mutter, KDE's KWin). Under X11,
it is usually the
xf86-input-wacom driver.
A good starting point for debugging is libinput debug-events. If that tool
shows pen and button events correctly, the kernel driver is fine and the
issue is in the compositor or desktop environment.
This usually means libwacom doesn't have a .tablet file for your device.
Run libwacom-list-local-devices to check -- if your device is missing from
the output, you need to
add a tablet definition file.
If the right .tablet file already exists in libwacom but
libwacom-list-local-devices doesn't show your device, the most likely
cause is that the file is missing a DeviceMatch entry for your specific
hardware revision. Different production runs of the same tablet model
sometimes use different USB product IDs.
Find your device's bus type, vendor ID, and product ID (using lsusb or
/proc/bus/input/devices) and compare against the DeviceMatch line in the
.tablet file. If your IDs aren't listed, add them as a new
semicolon-separated entry.
If libwacom-list-local-devices complains about duplicate matches, two
different .tablet files contain the same DeviceMatch entry. This
typically happens when you install libwacom from source on top of a
distribution-provided version with different filenames.
To fix it, search for the duplicated match string in /usr/share/libwacom/:
$ grep -r "056a|00d0" /usr/share/libwacom/
Identify which file is outdated and remove it. If both files are shipped by libwacom itself (rather than one being a leftover from an old distro package), please file an issue.
If you're testing custom tablet files in /etc/libwacom/, make sure the
filename matches the one in /usr/share/libwacom/ -- files in
/etc/libwacom/ override files in /usr/share/libwacom/ by filename. If
you use a different filename, both files will be loaded and you'll get
duplicate matches.
Some third-generation Wacom Intuos tablets received a firmware update for
Android compatibility. The tablet tries to detect whether it's connected to
an Android system, and if it thinks it is, it presents itself with vendor ID
2d1f instead of the normal 056a. This misdetection can be triggered by
the fwupd service on Linux.
The affected models are:
| Name | Model | Normal VID:PID |
|---|---|---|
| Wacom Intuos M | CTL-6100 | 056a:0375 |
| Wacom Intuos BT M | CTL-6100WL | 056a:0378 |
| Wacom Intuos S | CTL-4100 | 056a:0374 |
| Wacom Intuos BT S | CTL-4100WL | 056a:0376 |
To switch the tablet back to its normal mode, hold down buttons 1 and 4 simultaneously for several seconds.
If the problem keeps recurring, it's being triggered by fwupd. You can disable it if nothing else on your system depends on it:
$ sudo systemctl stop fwupd.service
$ sudo systemctl disable fwupd.service
$ sudo systemctl mask fwupd.service