Add Dell Pro Premium Active Pen PN7522W
-
Device name: Dell Pro Premium Active Pen - PN7522W
-
Device model identifier: AS2201W
-
libwacom version: 2.16.1
-
[x] I understand that libwacom does not affect whether the device works (see Troubleshooting)
Bug description
Dell Pro Premium Active Pen PN7522W is an AES pen with three buttons (2 mappable size and 1 top enabling Bluetooth) supporting both tilt and pressure. It is currently unlisted in the database although fully workable and paired as Dell PN7522W.
Running libwacom-show-stylus command generates the following result:
sudo libwacom-show-stylus
Using "ELAN3233:00 04F3:42AB Stylus": /dev/input/event7
Using stylus file(s): /usr/share/libwacom/lenovo.stylus, /usr/share/libwacom/wacom.stylus
Tool id 0x0 serial 0x1 in-proximity: True
^CTerminating
Unknown stylus id 0x0. New entry needed
Suggested line for .tablet file:
Styli=
udevadm info
sudo udevadm info /sys/class/input/event7
Place your finger on the fingerprint reader
P: /devices/platform/AMDI0010:00/i2c-0/i2c-ELAN3233:00/0018:04F3:42AB.0002/in>
M: event7
R: 7
J: c13:71
U: input
D: c 13:71
N: input/event7
L: 0
S: input/by-path/platform-AMDI0010:00-event-mouse
E: DEVPATH=/devices/platform/AMDI0010:00/i2c-0/i2c-ELAN3233:00/0018:04F3:42AB>
E: DEVNAME=/dev/input/event7
E: MAJOR=13
E: MINOR=71
E: SUBSYSTEM=input
E: USEC_INITIALIZED=7001246
E: ID_INPUT=1
E: ID_INPUT_TABLET=1
E: ID_INPUT_WIDTH_MM=300
E: ID_INPUT_HEIGHT_MM=188
E: ID_SERIAL=noserial
E: ID_PATH=platform-AMDI0010:00
E: ID_PATH_TAG=platform-AMDI0010_00
E: LIBINPUT_DEVICE_GROUP=18/4f3/42ab:i2c-ELAN3233:00
E: DEVLINKS=/dev/input/by-path/platform-AMDI0010:00-event-mouse
It will great to update the database but I am unsure how to get the proper ID. Tested on Dell Inspiron 14 7445 convertible
Main problem here will be that the stylus id is 0x0 and I suspect any other pen supported by this device will also advertise itself as 0x0 - which means we cannot differentiate between the buttons.
Having said that - two buttons plus the BLE one at the back[^1] is effectively the generic one. I guess we could add an entry for [0x4f3;0x0] that matches the current [0x56a:0x1] entry?
[^1]: the BLE one is usually a separate device and not really handled as part of the same kernel device anyway, it's effectively a different non-tablet device to libwacom.
I confirm the pen is detected as generic-with-eraser once I omit "Styli=" line although essentially an advanced AES pen . Is there a way to alias a generic pen as [0x4f3:0x0] seems refusing taking name and alias well?
[0x4f3:0x0]
Name=Dell Premium Active Pen - PN7522W
AliasOf=0x1
The BLE button shows battery status once paired and support more functions (currently only available on Microsoft Windows)
You'll need AliasOf=0x56a:0x1, I think that should work? (edit: :, not ;)
What is likely going to be a problem however is that a tool id of 0x0 will likely be interpreted by everything as "no tool id". I'd have to go through all the pieces in the stack to be sure though, but it's worth a try - if the alias works well enough let's go with that and hope the next tool id dell releases is ... better?
From the libwacom-list-local-devices after update:
libwacom-list-local-devices
devices:
- name: 'Dell Inc. Inspiron 14 7445 2-in-1'
bus: 'i2c'
vid: 0x04f3
pid: 0x42ab
nodes:
- /dev/input/event9: 'ELAN3233:00 04F3:42AB Stylus'
styli:
- id: 0x0
vid: 0x04f3
name: 'Dell Premium Active Pen - PN7522W'
type: 'mobile'
axes: ['x', 'y' , 'pressure']
buttons: 1
is_eraser: 'true'
eraser_type: 'button'
- id: 0x1
vid: 0x056a
name: 'AES Pen'
type: 'mobile'
axes: ['x', 'y' , 'pressure']
buttons: 1
is_eraser: 'true'
eraser_type: 'button'
...
The database reads the name of the pen but GNOME Settings still displays AES pen as below.
You'll need
AliasOf=0x56a:0x1, I think that should work? (edit::, not;)What is likely going to be a problem however is that a tool id of 0x0 will likely be interpreted by everything as "no tool id". I'd have to go through all the pieces in the stack to be sure though, but it's worth a try - if the alias works well enough let's go with that and hope the next tool id dell releases is ... better?
I confirm the pen will still get detected as unknown stylus id 0x0.
Using "ELAN3233:00 04F3:42AB Stylus": /dev/input/event9
Using stylus file(s): /usr/share/libwacom/lenovo.stylus, /usr/share/libwacom/wacom.stylus, /etc/libwacom/wacom.stylus
Tool id 0x0 serial 0x1 in-proximity: False
^CTerminating
Unknown stylus id 0x0. New entry needed
Suggested line for .tablet file:
Styli=
Unsure why the current tool fails to properly id the stylus. Maybe the Elan type differ from Wacom.
The database reads the name of the pen but GNOME Settings still displays AES pen as below.
Actually, this is probably because gnome hasn't yet updated to the newest libwacom APIs that have vendor-specific tools so it interprets it as the wacom-specific ID.
Unsure why the current tool fails to properly id the stylus. Maybe the Elan type differ from Wacom.
probably because of this comment :)
# FIXME: vendor should be used here, let's do that when we figure out
# who needs it.
which in the end is basically the same problem as with gnome - still working on the assumption that only wacom pens have tool ids.
so atm we have to wait for gnome to update the api ?