Mir

[regression] wacom stylus input not detected at all any more

Bug #1564830 reported by Daniel van Vugt on 2016-04-01
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mir
Triaged
Medium
Unassigned
mir (Ubuntu)
Medium
Unassigned

Bug Description

My wacom tablet stylus input is not detected at all any more.

Back when we were using Android Input, it did work in Mir, but not as well as it does in Xorg/Unity7:
   https://bugs.launchpad.net/mir/+bugs?field.tag=wacom

Now since we've moved to libinput however, the stylus is not detected at all. Even the server input report shows no events at all. Switching VTs back to Xorg it still works well there.

summary: - [regression] wacom tablet not detected at all any more
+ [regression] wacom stylus input not detected at all any more
description: updated
Revision history for this message
Andreas Pokorny (andreas-pokorny) wrote :

I suspect udevd detects the device properly so any libinput version before 1.2 will ignore the device.
To get tablet support we have to:
* update to 1.2
* support LIBINPUT_DEVICE _CAP_TABLET_TOOL and handle LBINPUT_EVENT_TABLET_TOOL_{PROXIMITY,TIP,BUTTON} in libinput_device.cpp
* add proper event types to MirInputEvent and add respective client apis for that.

Changed in mir:
status: New → Triaged
Revision history for this message
Andreas Pokorny (andreas-pokorny) wrote :

oh xenial is on 1.2.. so no problem there..

tags: added: libinput
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

When Mir starts I see:

[2016-05-09 12:00:27.813907] evdev-input: Added /dev/input/event2
[2016-05-09 12:00:27.814084] evdev-input: Added /dev/input/event4
[2016-05-09 12:00:27.814159] evdev-input: Added /dev/input/event0
[2016-05-09 12:00:27.814282] evdev-input: Added /dev/input/event8: Touchscreen
[2016-05-09 12:00:27.814368] evdev-input: Added /dev/input/event11: Integrated Camera
[2016-05-09 12:00:27.814448] evdev-input: Added /dev/input/event5: ISD-V4
[2016-05-09 12:00:27.814516] evdev-input: Added /dev/input/event3
[2016-05-09 12:00:27.814590] evdev-input: Added /dev/input/event6
[2016-05-09 12:00:27.814680] evdev-input: Added /dev/input/event15
[2016-05-09 12:00:27.814754] evdev-input: Added /dev/input/event7

which shows both the capacitive finger touchscreen (event8) and the wacom pen sensor (event5).

Running 'evtest' shows these both work separately but Mir only responds to finger touch (event8).

Here's some evtest output from the wacom (Wacom ISDv4 EC Pen) sensor on event5:

Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x56a product 0xec version 0x110
Input device name: "Wacom ISDv4 EC Pen"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 320 (BTN_TOOL_PEN)
    Event code 321 (BTN_TOOL_RUBBER)
    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)
      Value 12652
      Min 0
      Max 27748
      Fuzz 4
      Resolution 108
    Event code 1 (ABS_Y)
      Value 10657
      Min 0
      Max 15652
      Fuzz 4
      Resolution 108
    Event code 24 (ABS_PRESSURE)
      Value 0
      Min 0
      Max 1023
Properties:
  Property type 1 (INPUT_PROP_DIRECT)
Testing ... (interrupt to exit)
Event: time 1462766639.792421, type 3 (EV_ABS), code 0 (ABS_X), value 5116
Event: time 1462766639.792421, type 3 (EV_ABS), code 1 (ABS_Y), value 6667
Event: time 1462766639.792421, type 1 (EV_KEY), code 320 (BTN_TOOL_PEN), value 1
Event: time 1462766639.792421, -------------- SYN_REPORT ------------
Event: time 1462766639.800413, type 3 (EV_ABS), code 1 (ABS_Y), value 6695
Event: time 1462766639.800413, -------------- SYN_REPORT ------------
Event: time 1462766639.804409, type 3 (EV_ABS), code 0 (ABS_X), value 5126
Event: time 1462766639.804409, type 3 (EV_ABS), code 1 (ABS_Y), value 6729
Event: time 1462766639.804409, -------------- SYN_REPORT ------------
Event: time 1462766639.812417, type 3 (EV_ABS), code 0 (ABS_X), value 5136
Event: time 1462766639.812417, type 3 (EV_ABS), code 1 (ABS_Y), value 6764
Event: time 1462766639.812417, -------------- SYN_REPORT ------------
Event: time 1462766639.820419, type 3 (EV_ABS), code 0 (ABS_X), value 5151
Event: time 1462766639.820419, type 3 (EV_ABS), code 1 (ABS_Y), value 6806

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

BTW, absolute pointer events keep coming even when not touching the screen. Because the stylus is detected even when it's nearby.

This means you can visually move the cursor without touching the screen. When you touch the screen ABS_PRESSURE increases. When the pen leaves the screen, ABS_PRESSURE drops to zero but ABS_X and ABS_Y still gets reported while it's hovering nearby.

Revision history for this message
Michał Sawicz (saviq) wrote :

Syncing task from Mir.

Changed in mir (Ubuntu):
importance: Undecided → Medium
status: New → Triaged
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers