Support for the XpPen Artist Pro 19 (Gen2) styluses
A visual overview of the product.
Hi, this is a request to support the XpPen Artist Pro 19 (Gen2) styluses, in the same fashion than the already made support for the XpPen Artist Pro 16 (Gen2) stylus. It's a display tablet with two stylus and a remote pad for the buttons. This thread will not be about the pad, as a thread already exists for the ACK05 Remote : #32 .
What works/doesn't work
The tablet works almost fully out of the box on Debian KDE 12 X11, after setting a X11 rule and a xsetwacom script as I describe on my blog-post for the 16. I'll perform in a later post a set of tests on Wayland Plasma and Wayland Gnome, Fedora 40, because now setup a laptop dedicated to that on my test station.
- Mapping
- Stylus tip and Pressure sensitivity
- "button 2" on both styluses can be customised
- Tilt
- Thick stylus:
- Scroll wheel: can't configure shortcuts associated with it.
- Button 3 is an eraser mode by default (should be a right-click).
- Thin stylus:
- Button 3 is an eraser mode by default (should be a right-click).
Styluses: what works (green) and what doesn't (red).
Observations
Compatibility with the 16:
I can use the two styluses of the Artist Pro 19 (gen2) on my Artist Pro 16 (gen2) connected to my main workstation, and the udev-hid-bpf https://gitlab.freedesktop.org/libevdev/udev-hid-bpf/-/blob/main/src/bpf/stable/0010-XPPen__ArtistPro16Gen2.bpf.c?ref_type=heads fixes the problem "Button 3 is an eraser mode" (but has no effect on the scroll-wheel). If I install udev-hid-bpf (last release) and run the Artist Pro 19 (gen2), it doesn't fix the styluses.
Eraser mode:
Another observation, the two styluses for this model don't have any eraser tips. In this context, it might sounds like keeping the "eraser mode" for Button 3 a good idea; but I would be opposed to that: to operate the system and digital painting software, a "right-click" is more important. Also, digital painting software like Krita can have a shortcut key to switch to eraser mode, and getting the button 3 customisable allows the end user to decide what to put on it.
Scroll-wheel:
I have no idea how this feature can be useful while painting. My first experience was to feel this gadget a bit on my way while holding the stylus. Maybe users will use it to map i
and o
to manage opacity like a airbrush in Krita? or [
and ]
to manage the brush size? or numpad4
and numpad6
to manage canvas rotation? or k
and l
to change the foreground color value from dark to bright? For sure, it triggers new ideas, and I have to test what could be useful. A good default would probably be a simple mouse-scrolling, imo.
Hid-recorder
The Xppen appears three times in the list, here is a report of all item on the list:
xppen_artist_pro_19__gen2___hidrecord_all_devices_headers.txt
The second item on this list reported activities when I used the styluses. So I recorded it, but because it is a lot of data, I recorded a video as well:
xppen_artist_pro_19__gen2__video_hidrecord
Video while performing the hid-record.
And here is the hid-recorder output recorded during this video:
xppen_artist_pro_19__gen2___hidrecord_video_stylus_replay.txt
Other specifications
$ lsusb
Bus 001 Device 006: ID 28bd:096a XP-Pen Artist Pro 19(Gen2)
$ xrandr
HDMI-2 connected 3840x2160+1920+0 (normal left inverted right x axis y axis) 408mm x 229mm
3840x2160 30.00* 24.00 29.97 23.98
2560x1440 59.95
1920x1080 60.00 59.94
1920x1080i 60.00 50.00 59.94
1680x1050 59.88
1600x900 60.00
1280x1024 75.02 60.02
1280x800 59.91
1152x864 75.00
1280x720 60.00 50.00 59.94
1024x768 75.03 60.00
832x624 74.55
800x600 75.00 60.32
720x576 50.00
720x480 60.00 59.94
640x480 75.00 60.00 59.94
720x400 70.08
I'm around and available for any test, and I hope all the heavy work is already done in https://gitlab.freedesktop.org/libevdev/udev-hid-bpf/-/blob/main/src/bpf/stable/0010-XPPen__ArtistPro16Gen2.bpf.c?ref_type=heads