When using the keyboard on my thinkpad x201, I cannot press left, up and space at the same time. That is, when I start pressing the keys one after the other, the third one will be ignored.

I verified this with pygame, xev and evtest.

How can this be fixed? I don't even know where to start debugging this.

Update: The same thing happens when with either g, h, b, or n instead of space. But it works with other combinations, e.g. left+space+g.


This is a hardware issue with Matrix keyboards. Vendors put them in notebooks and sell most of the keyboard with Matrix technology, because they are cheaper in comparison to most mechanical keyboards.

If you try to push three buttons on your keyboard, which use the same data lines, one key might be ghosted. Wikipedia explains it very well: https://en.wikipedia.org/wiki/Rollover_(key)

If you really need to push these three buttons or more, it is advisable to buy mechanic keyboard. Some of these connect to your computer as "multiple" keyboards. It is possible to push every button on the keyboard and it will be recognized.


There are two points to consider:

  • the windowing system is designed to know about certain keys which can be pressed at the same time, i.e., "modifier keys". left and space are normally not used as modifiers (although you might find it useful to reassign left using xmodmap).
  • keyboards are designed with limits on "rollover", i.e., the number of keys which you can press at the same time.

Further reading:

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.