Menu

#294 Wacom Bluetooth Keyboard mistakenly bound to xf86-input-wacom driver

closed-fixed
None
xf86-input-wacom
2016-05-16
2015-12-04
No

As discussed on the linuxwacom-devel mailinglist, the Wacom Bluetooth Keyboard does not work under X after pairing. This is because our 50-wacom.conf file ends up matching the device (by name through the "Wacom class") and causes it to try and use our driver:

bluetoothd[1585]: Can't get HIDP connection info
kernel: Bluetooth: HIDP (Human Interface Emulation) ver 1.2
kernel: Bluetooth: HIDP socket layer initialized
kernel: hid-generic 0005:04F2:1263.0005: unknown main item tag 0x0
kernel: input: Wacom Bluetooth Keyboard as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1/1-1.1:1.0/bluetooth/hci0/hci0:71/0005:04F2:1263.0005/input/input31
kernel: hid-generic 0005:04F2:1263.0005: input,hidraw4: BLUETOOTH HID v1.00 Keyboard [Wacom Bluetooth Keyboard] on 00:1b:dc:06:6a:57
/usr/lib/gdm/gdm-x-session[2062]: (II) config/udev: Adding input device Wacom Bluetooth Keyboard (/dev/input/event24)
/usr/lib/gdm/gdm-x-session[2062]: (**) Wacom Bluetooth Keyboard: Applying InputClass "evdev keyboard catchall"
/usr/lib/gdm/gdm-x-session[2062]: (**) Wacom Bluetooth Keyboard: Applying InputClass "Wacom class"
/usr/lib/gdm/gdm-x-session[2062]: (**) Wacom Bluetooth Keyboard: Applying InputClass "system-keyboard"
/usr/lib/gdm/gdm-x-session[1829]: (II) config/udev: Adding input device Wacom Bluetooth Keyboard (/dev/input/event24)
/usr/lib/gdm/gdm-x-session[1829]: (**) Wacom Bluetooth Keyboard: Applying InputClass "evdev keyboard catchall"
/usr/lib/gdm/gdm-x-session[1829]: (**) Wacom Bluetooth Keyboard: Applying InputClass "Wacom class"
/usr/lib/gdm/gdm-x-session[1829]: (**) Wacom Bluetooth Keyboard: Applying InputClass "system-keyboard"
/usr/lib/gdm/gdm-x-session[2062]: (II) systemd-logind: got fd for
/dev/input/event24 13:88 fd 61 paused 0
/usr/lib/gdm/gdm-x-session[2062]: (II) Using input driver 'wacom' for 'Wacom Bluetooth Keyboard'
/usr/lib/gdm/gdm-x-session[2062]: (**) Wacom Bluetooth Keyboard: always reports core events
/usr/lib/gdm/gdm-x-session[2062]: (**) Option "Device" "/dev/input/event24"
/usr/lib/gdm/gdm-x-session[2062]: (EE) Wacom Bluetooth Keyboard: Invalid type 'stylus' for this device.
/usr/lib/gdm/gdm-x-session[2062]: (EE) Wacom Bluetooth Keyboard: Invalid type 'eraser' for this device.
/usr/lib/gdm/gdm-x-session[2062]: (EE) Wacom Bluetooth Keyboard: Invalid type 'cursor' for this device.
/usr/lib/gdm/gdm-x-session[2062]: (EE) Wacom Bluetooth Keyboard: Invalid type 'touch' for this device.
/usr/lib/gdm/gdm-x-session[2062]: (II) Wacom Bluetooth Keyboard: type not specified, assuming 'pad'.
/usr/lib/gdm/gdm-x-session[2062]: (II) Wacom Bluetooth Keyboard: other types will be automatically added.
/usr/lib/gdm/gdm-x-session[2062]: (EE) Wacom Bluetooth Keyboard pad: xmax value is 0, expected > 0.
/usr/lib/gdm/gdm-x-session[2062]: (EE) PreInit returned 8 for "Wacom Bluetooth Keyboard pad"
/usr/lib/gdm/gdm-x-session[2062]: (II) UnloadModule: "wacom"
/usr/lib/gdm/gdm-x-session[2062]: (II) systemd-logind: releasing fd for 13:88
/usr/lib/gdm/gdm-x-session[1829]: (II) systemd-logind: got fd for
/dev/input/event24 13:88 fd 27 paused 1
/usr/lib/gdm/gdm-x-session[1829]: (II) systemd-logind: releasing fd for 13:88

We should modify 50-wacom.conf so that it is more strict about the devices that it binds to. The obvious solution would be to add MatchIsTablet "on" (or similar rules exclusing keyboard, pointer, and joystick devices) but it isn't entirely clear if a pad-only device without its current ABS_X and ABS_Y compatibility axes would be correctly recgonized.

For the moment, this issue can be worked around by creating an /etc/X11/xorg.conf.d/90-wacom-HACK.conf file with the following contents:

Section "InputClass"
    Identifier "Wacom bluetooth hack class"
    MatchDriver "wacom"
    MatchIsKeyboard "on"
    Driver "evdev"
EndSection

Discussion

  • Jason Gerecke

    Jason Gerecke - 2015-12-04
    • Project: --> xf86-input-wacom
     
  • Jason Gerecke

    Jason Gerecke - 2016-04-27

    Fixed upstream by commit 7a2c643 (due for xf86-input-wacom 0.33.0).

     
  • Jason Gerecke

    Jason Gerecke - 2016-04-27
    • status: new --> pending-fixed
     
  • Camille Bissuel

    Camille Bissuel - 2016-04-27

    Great ! thanks ;)

     
  • Jason Gerecke

    Jason Gerecke - 2016-05-16
    • status: pending-fixed --> closed-fixed
     
  • Jason Gerecke

    Jason Gerecke - 2016-05-16

    Fix available in xf86-input-wacom 0.33.0

     
MongoDB Logo MongoDB