Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intuos pro S (PTH-460) touch ring center button does nothing #169

Closed
RandomReaper opened this issue Apr 20, 2020 · 6 comments
Closed

Intuos pro S (PTH-460) touch ring center button does nothing #169

RandomReaper opened this issue Apr 20, 2020 · 6 comments

Comments

@RandomReaper
Copy link

The center button generates no event (tested with xev).
xserver-xorg-input-wacom 1:0.39.0-0ubuntu1

@jigpu
Copy link
Member

jigpu commented Apr 20, 2020

I assume you're using the GNOME desktop, which is consuming these events before xev sees them. You should be able to see them if you use something like xinput test-xi2 <pad_id> or run xev under a non-GNOME desktop.

@jigpu jigpu closed this as completed Apr 20, 2020
@RandomReaper
Copy link
Author

Thank you for your response, I'm using xfce here. Here is some more information:

If I understand well, it maybe a problem with ds.buttons with a value of 0 for the center button.

Output of xinput test-xi2 <my-pad-id> for the first button press+release :

    device: 15 (15)
    detail: 1
    flags: 
    valuators:
          3: 0.00 (0.00)
          4: 0.00 (0.00)
          5: 0.00 (0.00)

EVENT type 17 (RawMotion)
    device: 15 (15)
    detail: 0
    flags: 
    valuators:
          3: 0.00 (0.00)
          4: 0.00 (0.00)
          5: 0.00 (0.00)

EVENT type 12 (PropertyEvent)
     property: 526 'Wacom Serial IDs'
     changed: modified
EVENT type 16 (RawButtonRelease)
    device: 15 (15)
    detail: 1
    flags: 
    valuators:
          3: 0.00 (0.00)
          4: 0.00 (0.00)
          5: 0.00 (0.00)

EVENT type 12 (PropertyEvent)
     property: 526 'Wacom Serial IDs'
     changed: modified

For the central button press+release:

EVENT type 12 (PropertyEvent)
     property: 526 'Wacom Serial IDs'
     changed: modified
EVENT type 12 (PropertyEvent)
     property: 526 'Wacom Serial IDs'
     changed: modified

Debug info from /var/log/Xorg.0.log, first button press+release:

[  3335.960] (II) /dev/input/event23 (10:wcmReadPacket): fd=85
[  3335.960] (II) /dev/input/event23 (1:wcmReadPacket): pos=0 remaining=256
[  3335.961] (II) /dev/input/event23 (10:wcmReadPacket): buffer has 72 bytes
[  3335.961] (II) /dev/input/event23 (10:usbParseEvent): 
[  3335.961] (II) /dev/input/event23 (10:usbParseEvent): 
[  3335.961] (II) /dev/input/event23 (10:usbParseEvent): 
[  3335.961] (II) /dev/input/event23 (6:usbDispatchEvents): 3 events received
[  3335.961] (II) /dev/input/event23 (10:usbDispatchEvents): Dirty flag set on channel 17; sending event.
[  3335.961] (II) /dev/input/event23 (10:wcmEvent): channel = 17
[  3335.961] (II) /dev/input/event23 (10:wcmEvent): c=17 i=15 t=16 s=4294967295 x=0 y=0 b=1 p=0 rz=0 tx=0 ty=0 aw=0 aw2=0 rw=0 t=0 px=1 st=0 cs=4 
[  3335.961] (II) /dev/input/event23 (10:commonDispatchDevice): device type = 16
[  3335.961] (II) /dev/input/event23 (10:wcmCheckSuppress): level = 2 return value = 8
[  3336.050] (II) /dev/input/event23 (10:wcmReadPacket): fd=85
[  3336.050] (II) /dev/input/event23 (1:wcmReadPacket): pos=0 remaining=256
[  3336.050] (II) /dev/input/event23 (10:wcmReadPacket): buffer has 72 bytes
[  3336.050] (II) /dev/input/event23 (10:usbParseEvent): 
[  3336.051] (II) /dev/input/event23 (10:usbParseEvent): 
[  3336.051] (II) /dev/input/event23 (10:usbParseEvent): 
[  3336.051] (II) /dev/input/event23 (6:usbDispatchEvents): 3 events received
[  3336.051] (II) /dev/input/event23 (10:usbDispatchEvents): Dirty flag set on channel 17; sending event.
[  3336.051] (II) /dev/input/event23 (10:wcmEvent): channel = 17
[  3336.051] (II) /dev/input/event23 (10:wcmEvent): c=17 i=15 t=16 s=4294967295 x=0 y=0 b=0 p=0 rz=0 tx=0 ty=0 aw=0 aw2=0 rw=0 t=0 px=0 st=0 cs=4 
[  3336.051] (II) /dev/input/event23 (10:commonDispatchDevice): device type = 16
[  3336.051] (II) /dev/input/event23 (10:wcmCheckSuppress): level = 2 return value = 8

Center button press+release:

[  3456.432] (II) /dev/input/event23 (1:wcmReadPacket): pos=0 remaining=256
[  3456.432] (II) /dev/input/event23 (10:wcmReadPacket): buffer has 48 bytes
[  3456.432] (II) /dev/input/event23 (10:usbParseEvent): 
[  3456.432] (II) /dev/input/event23 (10:usbParseEvent): 
[  3456.433] (II) /dev/input/event23 (6:usbDispatchEvents): 2 events received
[  3456.433] (II) /dev/input/event23 (10:usbDispatchEvents): Dirty flag set on channel 17; sending event.
[  3456.433] (II) /dev/input/event23 (10:wcmEvent): channel = 17
[  3456.433] (II) /dev/input/event23 (10:wcmEvent): c=17 i=15 t=16 s=4294967295 x=0 y=0 b=0 p=0 rz=0 tx=0 ty=0 aw=0 aw2=0 rw=0 t=0 px=1 st=0 cs=4 
[  3456.433] (II) /dev/input/event23 (10:commonDispatchDevice): device type = 16
[  3456.433] (II) /dev/input/event23 (10:wcmCheckSuppress): level = 2 return value = 8
[  3456.482] (II) /dev/input/event23 (10:wcmReadPacket): fd=85
[  3456.482] (II) /dev/input/event23 (1:wcmReadPacket): pos=0 remaining=256
[  3456.482] (II) /dev/input/event23 (10:wcmReadPacket): buffer has 48 bytes
[  3456.482] (II) /dev/input/event23 (10:usbParseEvent): 
[  3456.482] (II) /dev/input/event23 (10:usbParseEvent): 
[  3456.482] (II) /dev/input/event23 (6:usbDispatchEvents): 2 events received
[  3456.482] (II) /dev/input/event23 (10:usbDispatchEvents): Dirty flag set on channel 17; sending event.
[  3456.482] (II) /dev/input/event23 (10:wcmEvent): channel = 17
[  3456.482] (II) /dev/input/event23 (10:wcmEvent): c=17 i=15 t=16 s=4294967295 x=0 y=0 b=0 p=0 rz=0 tx=0 ty=0 aw=0 aw2=0 rw=0 t=0 px=0 st=0 cs=4 
[  3456.482] (II) /dev/input/event23 (10:commonDispatchDevice): device type = 16
[  3456.482] (II) /dev/input/event23 (10:wcmCheckSuppress): level = 2 return value = 8

@jigpu jigpu reopened this Apr 21, 2020
jigpu referenced this issue in jigpu/input-wacom Apr 21, 2020
The state of the center button was not reported to userspace for the
2nd-gen Intuos Pro S when used over Bluetooth due to the pad handling
code not being updated to support its reduced number of buttons. This
patch uses the actual number of buttons present on the tablet to
assemble a button state bitmap.

Link: https://github.com/linuxwacom/xf86-input-wacom/issues/112
Fixes: cd47de4 ("HID: wacom: Add 2nd gen Intuos Pro Small support")
Signed-off-by: Jason Gerecke <jason.gerecke@wacom.com>
Cc: stable@vger.kernel.org # v5.3+
@jigpu jigpu transferred this issue from linuxwacom/xf86-input-wacom Apr 21, 2020
@jigpu
Copy link
Member

jigpu commented Apr 21, 2020

Looks like this is an issue specific to the Bluetooth connection. I believe I've pinned down the problem and pushed a fix to my repository in the "fix-112" branch.

Please install git (sudo apt install git or sudo yum install git) and clone the development code by running the following command:

git clone https://github.com/jigpu/input-wacom.git -b fix-112

Next, follow the input-wacom build instructions, skipping the "Download" section and instead using the code cloned from git. Once the driver has been built and installed, please either reboot or follow the "Module Loading" instructions to ensure the driver is loaded. Connect your tablet as normal and test to see if you see button events from the center button now.

@RandomReaper
Copy link
Author

You where right, the problem was bluetooth specific. The problem is fixed by this patch.

Nice job, thank you!

@jigpu
Copy link
Member

jigpu commented Apr 22, 2020

Thanks -- I'll go ahead and forward the fix off to the Linux kernel for integration.

@jigpu
Copy link
Member

jigpu commented Jan 13, 2021

Fixed with commit dcce8ef8f70a8e38e6c47c1bae8b312376c04420 in both stable (v5.3+) and upstream kernel (v5.7+) trees.

@jigpu jigpu closed this as completed Jan 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants