Parblo绘图板

来自 ArchWiki

Parblo 绘图板没有 Parblo 提供的 Linux 官方支持。即使没有社区支持,也有一种变通方法可以在 Arch Linux 上使其工作。

配置

识别

Arch Linux 应该能够毫无问题地识别绘图板输入,但是预设按钮的配置可能很奇怪,并且可能无法修改。其中一些甚至可能没有功能。

连接绘图板后,第一步必须使用命令 lsusb 识别您的绘图板。输出应该类似于

Bus 001 Device 009: ID 0483:a640 STMicroelectronics Parblo A640 V2(F1)

(在此示例中,我们使用的是 Parblo A640 V2 绘图板。请确保输出与您的绘图板匹配。)重要的是获取 Vendor ID(供应商 ID),它在输出的 ID vendor:product 中找到,在本例中是 0483

识别 Vendor ID 后,您必须找到与您的绘图板匹配的最通用的 modalias。要获取此信息,您应该在终端中运行以下命令

# find /sys -name *modalias | xargs grep -i vendor_id

输出应该显示如下内容

# find /sys -name *modalias | xargs grep -i 0483
/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.0/0003:0483:A640.000C/input/input40/modalias:input:b0003v0483pA640e0100-e0,1,4,14,k71,72,73,74,75,77,79,7A,7B,7C,7D,7E,7F,80,81,82,83,84,85,86,87,88,89,8A,8C,8E,96,98,9E,9F,A1,A3,A4,A5,A6,AD,B0,B1,B2,B3,B4,B7,B8,B9,BA,BB,BC,BD,BE,BF,C0,C1,C2,F0,ram4,lsfw
/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.0/0003:0483:A640.000C/input/input39/modalias:input:b0003v0483pA640e0100-e0,1,2,3,4,k110,111,112,113,114,14A,r0,1,6,8,B,C,a0,1,18,m4,lsfw
/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.0/0003:0483:A640.000C/modalias:hid:b0003g0001v00000483p0000A640
/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.0/modalias:usb:v0483pA640d0000dc00dsc00dp00ic03isc01ip03in00
/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.1/0003:0483:A640.000D/input/input41/modalias:input:b0003v0483pA640e0100-e0,1,3,4,k140,14A,14B,14C,ra0,1,18,1A,1B,m4,lsfw
/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.1/0003:0483:A640.000D/modalias:hid:b0003g0001v00000483p0000A640
/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.1/modalias:usb:v0483pA640d0000dc00dsc00dp00ic03isc01ip02in01
/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.2/0003:0483:A640.000E/modalias:hid:b0003g0001v00000483p0000A640
/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.2/modalias:usb:v0483pA640d0000dc00dsc00dp00ic03isc00ip00in02

您必须找到与您找到的所有 /input/input*/modalias:input: 对应的最通用术语。在本示例中,最通用的术语是 b0003v0483pA640e0100

创建 hwdb 规则

为了创建用于设置绘图板的 hwdb 规则,您必须识别与要重新映射的按钮关联的输入文件。您应该安装 evtest,运行命令 cat /proc/bus/input/devices

$ cat /proc/bus/input/devices
I: Bus=0003 Vendor=0483 Product=a640 Version=0100
N: Name="  Parblo A640 V2(F1) Mouse"
P: Phys=usb-0000:00:12.0-1.1.1/input0
S: Sysfs=/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.0/0003:0483:A640.000F/input/input45
U: Uniq=
H: Handlers=event5 mouse0 
B: PROP=2
B: EV=1f
B: KEY=400 1f0000 0 0 0 0
B: REL=1943
B: ABS=1000003
B: MSC=10

现在查找您的绘图板,然后运行命令 evtest /dev/input/eventX,您需要将 eventX 替换为与您的绘图板关联的相应事件,然后按下绘图板按钮,尝试找到每个按钮关联的事件。

$ evtest /dev/input/event5
Event: time 1512706221.107613, -------------- SYN_REPORT ------------
Event: time 1512708889.737079, type 4 (EV_MSC), code 331 (MSC_SCAN), value d0045

当您找到要重新映射的按钮时,请记下它们的值。在本例中,我们有一个 d0045 作为输入值。

在识别 modalias 和按键 values 后,您必须创建一个 hwdb 规则。

/etc/udev/hwdb.d 中创建一个名为 10-parblo-tablet.hwdb 的文件,内容如下,将 [modalias] 替换为您的相应 modalias,并将 [value] 替换为您的相应按键 value

evdev:input:[modalias]*
 KEYBOARD_KEY_[value]=332

如果需要,您可以在下面插入更多 KEYBOARD_KEY_X

在此示例中,我们将键码更改为任意数字 332,这可能不适用于您。但是您可以在 /usr/include/linux/input-event-codes.h 中查看完整的键码列表。

重映射按键

在将按键重映射到您的操作系统可以识别的内容后,您可以手动编辑 /etc/udev/hwdb.d/10-parblo-tablet.hwdb 文件,以将按键重映射到您需要的操作。或者,您可以下载 input-remapper-gitAUR 并使用图形界面轻松管理您的按键。

参见