6

On my laptop, turning on autorepeat (xset r on) does not work. When checking the output of xev, it seems that the reason why autorepeat fails is because another key is being pressed intermittently (although I am not pressing anything), which cancels autorepeating the currently held down key. When no keys are being pressed, the following events are recorded repeating consistently:

KeyPress event, serial 33, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1652400, (-509,794), root:(455,814), state 0x0, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 33, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1652400, (-509,794), root:(455,814), state 0x0, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False 

It seems that a key with keycode 221 is being pressed, even when it is not.

Thus, is it possible to completely disable a keycode such that xorg does not recieve the keypress signal from that keycode at all? Or, is it possible to make keys autorepeat when held down, regardless of whether another key is pressed?


Update:

After running sudo evtest, it appears that when the hidden output is coming from

/dev/input/event11 PEAQ WMI hotkeys 

No other input device seems to send events when nothing is pressed. Autorepeat works when checking keyboard events in evtest.


The full output of xev running for a couple seconds when nothing is pressed:

Outer window is 0x1200001, inner window is 0x1200002 PropertyNotify event, serial 8, synthetic NO, window 0x1200001, atom 0x27 (WM_NAME), time 1651733, state PropertyNewValue PropertyNotify event, serial 9, synthetic NO, window 0x1200001, atom 0x22 (WM_COMMAND), time 1651733, state PropertyNewValue PropertyNotify event, serial 10, synthetic NO, window 0x1200001, atom 0x28 (WM_NORMAL_HINTS), time 1651733, state PropertyNewValue CreateNotify event, serial 11, synthetic NO, window 0x1200001, parent 0x1200001, window 0x1200002, (10,10), width 50, height 50 border_width 4, override NO PropertyNotify event, serial 14, synthetic NO, window 0x1200001, atom 0x15c (WM_PROTOCOLS), time 1651734, state PropertyNewValue MapNotify event, serial 15, synthetic NO, window 0x1200001, event 0x1200001, window 0x1200002, override NO ReparentNotify event, serial 28, synthetic NO, window 0x1200001, event 0x1200001, window 0x1200001, parent 0x4000d5, (0,0), override NO ConfigureNotify event, serial 28, synthetic NO, window 0x1200001, event 0x1200001, window 0x1200001, (2,0), width 952, height 1033, border_width 2, above 0x0, override NO PropertyNotify event, serial 28, synthetic NO, window 0x1200001, atom 0x15e (WM_STATE), time 1651735, state PropertyNewValue MapNotify event, serial 28, synthetic NO, window 0x1200001, event 0x1200001, window 0x1200001, override NO VisibilityNotify event, serial 28, synthetic NO, window 0x1200001, state VisibilityUnobscured Expose event, serial 28, synthetic NO, window 0x1200001, (0,0), width 952, height 10, count 3 Expose event, serial 28, synthetic NO, window 0x1200001, (0,10), width 10, height 58, count 2 Expose event, serial 28, synthetic NO, window 0x1200001, (68,10), width 884, height 58, count 1 Expose event, serial 28, synthetic NO, window 0x1200001, (0,68), width 952, height 965, count 0 ConfigureNotify event, serial 28, synthetic YES, window 0x1200001, event 0x1200001, window 0x1200001, (962,18), width 952, height 1033, border_width 2, above 0x0, override NO FocusIn event, serial 28, synthetic NO, window 0x1200001, mode NotifyNormal, detail NotifyNonlinear KeymapNotify event, serial 28, synthetic NO, window 0x0, keys: 4294967236 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 PropertyNotify event, serial 28, synthetic NO, window 0x1200001, atom 0x14f (_NET_WM_DESKTOP), time 1651736, state PropertyNewValue KeyRelease event, serial 30, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1651775, (-509,794), root:(455,814), state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES, XLookupString gives 1 bytes: (0d) " " XFilterEvent returns: False MappingNotify event, serial 33, synthetic NO, window 0x0, request MappingKeyboard, first_keycode 8, count 248 KeyPress event, serial 33, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1652400, (-509,794), root:(455,814), state 0x0, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 33, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1652400, (-509,794), root:(455,814), state 0x0, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 34, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1653200, (-509,794), root:(455,814), state 0x0, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 34, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1653200, (-509,794), root:(455,814), state 0x0, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 34, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1654000, (-509,794), root:(455,814), state 0x0, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 34, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1654000, (-509,794), root:(455,814), state 0x0, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False MappingNotify event, serial 34, synthetic NO, window 0x0, request MappingKeyboard, first_keycode 8, count 248 KeyPress event, serial 34, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1654760, (-509,794), root:(455,814), state 0x0, keycode 133 (keysym 0xffeb, Super_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False MappingNotify event, serial 35, synthetic NO, window 0x0, request MappingKeyboard, first_keycode 8, count 248 KeyPress event, serial 35, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1654800, (-509,794), root:(455,814), state 0x40, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 35, synthetic NO, window 0x1200001, root 0x123, subw 0x0, time 1654800, (-509,794), root:(455,814), state 0x40, keycode 221 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False MappingNotify event, serial 36, synthetic NO, window 0x0, request MappingKeyboard, first_keycode 8, count 248 FocusOut event, serial 36, synthetic NO, window 0x1200001, mode NotifyGrab, detail NotifyAncestor ClientMessage event, serial 37, synthetic YES, window 0x1200001, message_type 0x15c (WM_PROTOCOLS), format 32, message 0x15d (WM_DELETE_WINDOW) 
2
  • can you provide specifics about the keyboard? Commented Oct 2, 2017 at 0:06
  • Interesting. Is the key also present in the kernel input layer? Run evtest as root, select your keyboard, try autorepeating keys and pressing no keys at all. Commented Oct 2, 2017 at 4:38

3 Answers 3

5

It seems this is a bug introduced with kernel 4.13, as per Redhat bugzilla bug #1497861.

I found out that unloading the peaq_wmi module also serves as a workaround; it seems that someone already submitted a patch to fix the issue though.

(To unload the peaq_wmi module one can issue the command sudo modprobe -r peaq_wmi.)

5

It turns out that disabling PEAQ WMI hotkeys fixes it. I disabled PEAQ WMI hotkeys through first checking xinput list, to find the id:

[email protected]:~$ xinput list ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ Dell Dell KM632 Wireless Keyboard and Mouse id=11 [slave pointer (2)] ⎜ ↳ Dell Dell KM632 Wireless Keyboard and Mouse id=12 [slave pointer (2)] ⎜ ↳ SynPS/2 Synaptics TouchPad id=16 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] ↳ Power Button id=6 [slave keyboard (3)] ↳ Video Bus id=7 [slave keyboard (3)] ↳ Video Bus id=8 [slave keyboard (3)] ↳ Sleep Button id=9 [slave keyboard (3)] ↳ Dell Dell KM632 Wireless Keyboard and Mouse id=10 [slave keyboard (3)] ↳ Lenovo EasyCamera: Lenovo EasyC id=13 [slave keyboard (3)] ↳ Ideapad extra buttons id=14 [slave keyboard (3)] ↳ AT Translated Set 2 keyboard id=15 [slave keyboard (3)] ↳ Dell Dell KM632 Wireless Keyboard and Mouse id=18 [slave keyboard (3)] ↳ PEAQ WMI hotkeys id=17 [slave keyboard (3)] 

In this case, the id is 17. Then, in the .xinitrc, I added xinput --disable 17, or the id that is causing trouble, which fixes the problem.

2
  • which kernel are you running? I believe this came from a recent update in my end, I'm running 4.13.3-1-ARCH on a x86_64 Lenovo 80K9 Commented Oct 8, 2017 at 15:30
  • 2
    Same issue on Lenovo Yoga 500-14IBD, kernel 4.13.0-16-lowlatency #19-Ubuntu Commented Nov 11, 2017 at 20:16
1

I have the same issue on elementaryOS after latest kernel update. I posted about it here. Using one of the answers, sudo modprobe -r peaq_wmi, solved the problem for me.

EDIT: Adding xinput --disable 17 into .xinitr did not solve the issue permanently for me, so I run the command above after every boot. I have Lenovo Yoga 500-14IHW on elementaryOS.

Also, this bug is not Arch linux related, so please mark it as such, so more people would find the solution for this issue.

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.