GIMP Pressure sensitivity

I just bought a Samsung Notebook 9 Pro expecting to use its built-in S-pen as a stylus with GIMP. Though the laptop advertises having 4096 levels of pressure as well as tilt control, I cannot use the pen as anything more than a mouse replacement in GIMP. When I go to add external input devices, the pen doesn't show up. I assume this is because it is passive, having no battery or mind of its own.

Are there any workarounds to get GIMP to see the pressure levels, or is GIMP not the right program for my needs?


If the hardware is properly installed next step is to tell GIMP about this input device. I have Lenovo ThinkPad X230 Tablet with Ubuntu 16.04 and I have not installed any other additional drivers. I've just tested the instructions from this video on my tablet and now the pen works with presure. The steps are:

1. Open GIMP and go to EditPreferencesInput DevicesConfigure Extended Input Devices...

2. On the left side into the opened window will be displayed a list with the alternative input devices. Find and select your device.

3. Then on the right side click on the drop-down mode menu and select screen or window. Then click on save and close the preferences window.

4. Now you can use this device. You can setup its behaviour by the GIMP's feature Paint dynamics.

enter image description here


I've looked at several photos of Samsung Notebook 9 Pro and I think this pen device isn't passive.

In my opinion it is active and it uses so called wacom technology or something similar from other manufacturer. In short: In the pen have small magnets and coils, that create electromagnetic field with various characteristics, etc...


When the pen works like a mouse, in most cases, it is properly installed. But if it is not, you may follow the article Wacom/Latest Driver from the Ubuntu Community Help Wiki.


You can find which is your device by the commands lsusb and xinput. The output of these commands within my system is:

$ lsusb | grep Wacom
Bus 002 Device 003: ID 056a:00e6 Wacom Co., Ltd 

$ xinput | grep Wacom
   ↳ Wacom ISDv4 E6 Pen stylus                  id=10   [slave  pointer  (2)]
   ↳ Wacom ISDv4 E6 Finger touch                id=11   [slave  pointer  (2)]
   ↳ Wacom ISDv4 E6 Pen eraser                  id=16   [slave  pointer  (2)]

Optionally you can use the command lsinput from the package input-utils.

Additionally you can investigate how the device works and which are its characteristics by the command evtest. For example my stylus provides only 255 levels of pressure:The full output is here

$ sudo evtest

Available devices:
...
/dev/input/event5:  Wacom ISDv4 E6 Pen
/dev/input/event6:  Wacom ISDv4 E6 Finger
...
Select the device event number [0-16]: 5 

 Input driver version is 1.0.1
 Input device ID: bus 0x3 vendor 0x56a product 0xe6 version 0x111
 Input device name: "Wacom ISDv4 E6 Pen"
 Supported events:
    Event type 0 (EV_SYN)
      ...
    Event code 24 (ABS_PRESSURE)
      Value      0
      Min        0
      Max      255
  • Don't close the program, just pressing the stylus to the screen and read the result. You shall see lines as these:

    Event: time 15.., type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 108
    Event: time 15.., type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 58
    Event: time 15.., type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 234