USB Keyboard recognized as mouse in dom0

I got a new keyboard which is advertised as ‘plug and play’ with Linux. When plugged in via USB, this is what I get in dom0 /var/log/Xorg.0.log , which shows that it is being tagged as a mouse. Not sure what a next step would be… any help very appreciated!
I use a sys-usb Qube…

[   184.888] (II) config/udev: Adding input device sys-usb: Kinesis Freestyle Edge RGB Keyboard (/dev/input/mouse3)
[   184.888] (II) No input driver specified, ignoring this device.
[   184.888] (II) This device may have been added with another device file.
[   184.901] (II) config/udev: Adding input device sys-usb: Kinesis Freestyle Edge RGB Keyboard (/dev/input/event17)
[   184.901] (**) sys-usb: Kinesis Freestyle Edge RGB Keyboard: Applying InputClass "evdev pointer catchall"
[   184.901] (**) sys-usb: Kinesis Freestyle Edge RGB Keyboard: Applying InputClass "libinput pointer catchall"
[   184.901] (II) Using input driver 'libinput' for 'sys-usb: Kinesis Freestyle Edge RGB Keyboard'
[   184.901] (**) sys-usb: Kinesis Freestyle Edge RGB Keyboard: always reports core events
[   184.901] (**) Option "Device" "/dev/input/event17"
[   184.901] (**) Option "_source" "server/udev"
[   184.902] (II) input device 'sys-usb: Kinesis Freestyle Edge RGB Keyboard', /dev/input/event17 is tagged by udev as: Mouse
[   184.902] (II) input device 'sys-usb: Kinesis Freestyle Edge RGB Keyboard', /dev/input/event17 is a pointer caps
[   184.916] (**) Option "config_info" "udev:/sys/devices/virtual/input/input18/event17"
[   184.916] (II) XINPUT: Adding extended input device "sys-usb: Kinesis Freestyle Edge RGB Keyboard" (type: MOUSE, id 14)
[   184.919] (**) Option "AccelerationScheme" "none"
[   184.922] (**) sys-usb: Kinesis Freestyle Edge RGB Keyboard: (accel) selected scheme none/0
[   184.922] (**) sys-usb: Kinesis Freestyle Edge RGB Keyboard: (accel) acceleration factor: 2.000
[   184.922] (**) sys-usb: Kinesis Freestyle Edge RGB Keyboard: (accel) acceleration threshold: 4
[   184.924] (II) input device 'sys-usb: Kinesis Freestyle Edge RGB Keyboard', /dev/input/event17 is tagged by udev as: Mouse
[   184.924] (II) input device 'sys-usb: Kinesis Freestyle Edge RGB Keyboard', /dev/input/event17 is a pointer caps
[   973.898] (II) config/udev: removing device sys-usb: Kinesis Freestyle Edge RGB Keyboard
[   973.903] (II) UnloadModule: "libinput"
[   982.176] (II) config/udev: Adding input device sys-usb: Kinesis Freestyle Edge RGB Keyboard (/dev/input/mouse3)
[   982.176] (II) No input driver specified, ignoring this device.
[   982.176] (II) This device may have been added with another device file.
[   982.190] (II) config/udev: Adding input device sys-usb: Kinesis Freestyle Edge RGB Keyboard (/dev/input/event17)
[   982.190] (**) sys-usb: Kinesis Freestyle Edge RGB Keyboard: Applying InputClass "evdev pointer catchall"
[   982.190] (**) sys-usb: Kinesis Freestyle Edge RGB Keyboard: Applying InputClass "libinput pointer catchall"
[   982.190] (II) Using input driver 'libinput' for 'sys-usb: Kinesis Freestyle Edge RGB Keyboard'
[   982.190] (**) sys-usb: Kinesis Freestyle Edge RGB Keyboard: always reports core events

Give this a try:


Failing that, maybe try and connect the keyboard directly to dom0 and see what happens. At least that will rule out a few possible causes…

Let us know how you go :slight_smile:

PS: Wicked keyboard, by the way.

Snazzy, just what all the cool kids are asking their parents for, this week. I notice a few things on the manufacturer’s webpage which could possibly explain a great deal though.

Convenient Onboard Programming

100% plug-and-play, 4MB onboard memory, and 9 Profiles
On-the-fly macros with playback up to 250 actions per second!
Remap any key in either layer with the touch of a button
One-touch Game Mode, NKRO, Profile Switching, and more

Smartset App (Windows & Mac)

No special drivers required, just download to your desktop
Customize RGB Lighting Effects (Color, Speed, Direction, Zone)
Macro Delays, Tap-and-Hold Actions, Mouse Clicks, and more
Everything you need, without the bloatware!

Is that a verbatim quote? My god…

Well, did you try “downloading” the keyboard to your desktop? :woozy_face:

If you did, please post how you did it, because I’ve been trying for decades to download my keyboard to my desktop, and have had no success… :wink:


On a serious note, there will be a way to override the driver. You just have to find one that plays nice with the keyboard.

hi! So i noticed that the keyboard works fine in sys-usb, just no other qube. @alzer89 mentioned connecting directly to dom0 for troubleshooting - how would I go about doing that?

Following that stackexchange link, in sys-usb I made /etc/X11/xorg.conf.d/00-keyboard.conf with the contents:

Section "InputClass"
        Identifier "Kinesis Freestyle Edge RGB Keyboard"
        MatchUSBID "29ea:0102"
        MatchIsPointer "on"
        Driver "evdev"
        Option "SendCoreEvents" "true"
        Option "Device" "/dev/input/by-id/usb-Kinesis_Freestyle_Edge_RGB_Keyboard_264575131106-event-if02"
EndSection

However it doesn’t seem to have made a difference… so any further help is very much appreciated!

@behemothwerecat, forgive me for asking basic questions … just to make sure:

  1. did other USB keyboards work with this setup?

  2. sys-usb is based on which template? … is qubes-input-proxy-sender installed?

  3. what’s the contents of your /etc/qubes-rpc/policy/qubes.InputKeyboard in dom0?

1 Like

hi! thanks so much for the help

  1. Unfortunately this is my first USB keyboard so I can’t say
  2. sys-usb is based on fedora-33 - it was based on Fedora when created during the original install, and I haven’t managed to go through the process of eliminating Fedora yet :slight_smile: qubes-input-proxy-sender is installed in the Fedora-33 template (1.0.25-1).
#!/bin/sh
/usr/bin/input-proxy-receiver --keyboard --mouse

I should add that the keyboard works in sys-usb even without the /etc/X11/xorg.conf.d/00-keyboard.conf file I had added as described above, so I removed it. In the equivalent file in dom0 I appended (to no effect as of yet):

Section "InputClass"
        Identifier "Kinesis Freestyle Edge RGB Keyboard"
        MatchUSBID "29ea:0102"
        MatchIsKeyboard "on"
        Driver "evdev"
        Option "SendCoreEvents" "true"
EndSection

In sys-usb, I have the following:
/dev/input/by-id/usb-Kinesis_Freestyle_Edge_RGB_Keyboard_264575131106-event-if02
/dev/input/by-id/usb-Kinesis_Freestyle_Edge_RGB_Keyboard_264575131106-event-mouse
/dev/input/by-id/usb-Kinesis_Freestyle_Edge_RGB_Keyboard_264575131106-if01-event-kbd
/dev/input/by-id/usb-Kinesis_Freestyle_Edge_RGB_Keyboard_264575131106-mouse

It is the last entry that symlinks to …/mouse3, which shows up in the logs from dom0 in the original post.

My theory is that since the keyboard works in sys-usb, we should look at the input sender (which makes the keyboard available to dom0 and hence the entire system)

Your answer to 3 is not the file I’ve asked for. You forgot the /policy/ part of the path. Please re-check if you are on R4.0

If you are on R4.1 please locate the policy file (all in one) and check for the InputKeyboard policy.

1 Like

It seems like you’ve found it! The contents of that file:
$anyvm $anyvm deny

I’m on R4.0. How should I change the file?

2 Likes

Glad to help. See here:

2 Likes