XP-Pen touchpad emulated clicks are not registered
Summary
I have an XP-Pen Deco Pro Small drawing tablet with a small embedded touchpad. This touchpad is recognized as a mouse and tap-to-click does not work. I would like to correct this, but am stuck in my attempts. Any pointers are appreciated.
Feature details
The firmware has a configuration where the touchpad can be configured either as a 'roller', in which case clockwise and counterclockwise drag are emitted as scroll events, as a 'mouse' (the configuration this issue is about), or as 'customized', in which case custom actions can be assigned to certain gestures. I assume some interpretation is done on-board for 'roller' and 'customized', whereas 'mouse' is probably the setting that exposes the most usable data.
I have tried adding
# XP-PEN Deco Pro Small
id-input:modalias:input:b0003v28BDp0909e0100*
ID_INPUT_MOUSE=0
ID_INPUT_TOUCHPAD=1
to /etc/udev/hwdb.d/61-input-id-local.hwdb
, but with that I get:
# libinput list-devices
event8 - 9 inch PenTablet Mouse: kernel bug: device failed touchpad sanity checks
Tested on libinput 1.19.3, systemd 250, linux 5.16.8.
Affected Hardware
At least the XP-Pen Deco Pro Small, but there are a few similar devices by XP-Pen.
# udevadm info /dev/input/event8
P: /devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-2/1-2:1.0/0003:28BD:0909.0005/input/input8/event8
N: input/event8
L: 0
S: input/by-id/usb-28bd_9_inch_PenTablet_0000000000-event-mouse
S: input/by-path/pci-0000:01:00.0-usb-0:2:1.0-event-mouse
E: DEVPATH=/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-2/1-2:1.0/0003:28BD:0909.0005/input/input8/event8
E: DEVNAME=/dev/input/event8
E: MAJOR=13
E: MINOR=72
E: SUBSYSTEM=input
E: USEC_INITIALIZED=5941743
E: ID_INPUT=1
E: ID_INPUT_MOUSE=1
E: ID_VENDOR=28bd
E: ID_VENDOR_ENC=28bd
E: ID_VENDOR_ID=28bd
E: ID_MODEL=9_inch_PenTablet
E: ID_MODEL_ENC=9\x20inch\x20PenTablet
E: ID_MODEL_ID=0909
E: ID_REVISION=0000
E: ID_SERIAL=28bd_9_inch_PenTablet_0000000000
E: ID_SERIAL_SHORT=0000000000
E: ID_TYPE=hid
E: ID_BUS=usb
E: ID_USB_INTERFACES=:030102:030000:
E: ID_USB_INTERFACE_NUM=00
E: ID_USB_DRIVER=usbhid
E: ID_PATH=pci-0000:01:00.0-usb-0:2:1.0
E: ID_PATH_TAG=pci-0000_01_00_0-usb-0_2_1_0
E: LIBINPUT_DEVICE_GROUP=3/28bd/909:usb-0000:01:00.0-2
E: DEVLINKS=/dev/input/by-id/usb-28bd_9_inch_PenTablet_0000000000-event-mouse /dev/input/by-path/pci-0000:01:00.0-usb-0:2:1.0-event-mouse
Implementation in Other Systems
I believe tap-to-click works on MacOS, but I am not sure.