Jump to content

# Parblo Tablet

From ArchWiki

Parblo tablets does not have an official support for Linux by Parblo. Even with no community support as well, there is a workaround to make it works on Arch Linux.

## Configuration

### Identifying

The Arch Linux must be able to recognize the tablet inputs with no problems, but the preset buttons should be in an odd configuration and should not be able to be modified. Some of them should be even with no functionality.

With the tablet connected, the first step must be identify your tablet using the command `lsusb`. The output should be something like

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

(In this example we have a Parblo A640 V2 tablet. Make sure to match the output with your tablet.) It is important to grab the Vendor ID, which is found in the output in `ID vendor:product`, so in this example is `0483`.

After identifying the Vendor ID, you must find the most generic `modalias` that match with your tablet. To get this information, you should run in terminal the following command:

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

The output should display something like:

    # 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

You must find the most generic term that correspond to all of `/input/input*/modalias:input:` you found. In this example the most generic term is `b0003v0483pA640e0100`.

### Creating a hwdb rule

In order to create a hwdb rule to set your tablet, you must identify the input file associated to the buttons you want remap. You should install evtest, run the command `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

Now look for your tablet and then run the command `evtest /dev/input/eventX`, where you have to replace `eventX` to the corresponding events associated with your tablet, then press your tablet buttons trying to find what event is associated with each button.

    $ evtest /dev/input/event5

    Event: time 1512706221.107613, -------------- SYN_REPORT ------------
    Event: time 1512708889.737079, type 4 (EV_MSC), code 331 (MSC_SCAN), value d0045

When you found the buttons you wanna remap, take note of their values. In this case we had a `d0045` as an entry value.

After identifying the `modalias` and the key `values`, you must create a `hwdb` rule.

Create a file called `10-parblo-tablet.hwdb` in `/etc/udev/hwdb.d` with the following content, replacing `[modalias]` with your corresponding `modalias` and `[value]` with your corresponding key `value`:

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

You can insert more `KEYBOARD_KEY_X` below, if you need.

In this example we are changing the key code to an arbitrary number `332` and it may not work with you. But you can check the full key code list in `/usr/include/linux/input-event-codes.h`.

## Remapping keys

After remapping your keys to something your OS can recognize, you can edit manually the `/etc/udev/hwdb.d/10-parblo-tablet.hwdb` file to remap the keys to what you need. Else, you can download input-remapper-gitAUR and use a graphical interface to easily manage your keys.

## See also

- Arch Linux Wacom Wiki
- List of applications/Documents#Stylus note-taking
- input-wacom Wiki
- xf86-input-wacom Wiki (out of date)
- GIMP Talk - Community - Install Guide: Getting Wacom Drawing Tablets To Work In Gimp
- Ubuntu Help: Wacom
- Ubuntu Forums - Install a LinuxWacom Kernel Driver for Tablet PC's
- Wacom-GUI

Category:

- Input devices