I bought a cheap wireless keyboard a few months ago. While the keyboard was mostly fine, it sometimes repeated the same letter twice or thrice. For example, every few minutes, when I type a word like “India”, I see “Indiia” on the screen with an extra i. It was a mild annoyance for a while, so I was living with it. When I started making typos in design documents that I was creating at work, it started to be severe enough to require a solution.
The issue went away when I connected the keyboard using a cable, so this was clearly a bluetooth issue. I asked Gemini what the problem could be, and it said that the following could be happening:
- The keyboard sends a keystroke to the computer over bluetooth.
- The bluetooth transmission is slow, probably due to interference. The computer doesn’t receive it within the expected time.
- The keyboard thinks the transmission was lost; it sends the same keystroke once again.
- But the initial keystroke eventually arrives. Quickly after, the retransmission also arrives.
- The keyboard thinks it sent only one keystroke (because the first transmission was lost), but the computer sees two keystrokes. Oops!
A solution
I feared I may have to buy a new keyboard. While a more expensive keyboard may be able to work more reliably despite interference, there is no guarantee that it will. Gemini suggested a different solution. Apparently there are software tools that can run in the background and drop duplicate keystrokes that arrive in quick succession. The KDE Plasma UI that I use has this feature built-in, but as an accessibility feature. It’s called Bounce Key. I enabled it with a timeout of 50ms. This configures the operating system UI to discard any duplicate keystrokes that are received within 50 milliseconds.
A nifty software solution for a hardware problem.

