I am trying to use a VEIKK graphics tablet on Kubuntu 19. So far I have a satisfactory setup, but the only thing left is to remap the pen buttons. I feel like I have all the ingredients to make it, but I can't figure out how to put it all together.
evtest Identify the entry in question:
/dev/input/event3: VEIKK S640 Pen
evtest in this post reports:
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x2feb product 0x1 version 0x100
Input device name: "VEIKK S640 Pen"
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 330 (BTN_TOUCH)
Event code 331 (BTN_STYLUS)
Event code 332 (BTN_STYLUS2)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Event code 1 (ABS_Y)
Event code 24 (ABS_PRESSURE)
And actually, when I press the pencil button, I see
Event: time 1586123903.365325, type 1 (EV_KEY), code 331 (BTN_STYLUS), value 1
followed later by
Event: time 1586123903.499328, type 1 (EV_KEY), code 331 (BTN_STYLUS), value 0
What I would like to do is simply replace these events generated with different events let's say
type 1 (EV_KEY), code 30 (KEY_A), value 1
for the first and similarly for the second, so pressing the pencil button is the same as pressing the
a Down (and up) key on the keyboard.
There are several closely related questions on this site, this being probably the closest one, but the proposed solutions and the final solution are quite confusing. I've also prototyped by writing a python-evdev script to "filter" these events into something, but that comes with its own problems.
So is there a standard way to achieve this using