Stack-based keyboard delay using Logitech MX3100 keyboard

Posted by Mark S. Rasmussen on Super User See other posts from Super User or by Mark S. Rasmussen
Published on 2012-03-14T15:46:28Z Indexed on 2012/06/24 9:18 UTC
Read the original article Hit count: 478

I've been using a Logitech Cordless Desktop MX3100 keyboard for quite a while. I've never really had any problems, except for the occasional typo.

I noticed however that I tended make the typo "Laod" instead of "Load", quite a bit more often than any other typos. As it started to get on my nerves, I decided to do some testing.

What I found out was than when I write lowercase "load", I'd never make the typo. All uppercase, or just uppercase L, I'd make the typo quite often. My actual (very scientific) testing is probably best described by showing the output:

moatmoatmoat
MoatMoatMoat

loatloatloat
LaotLaotLaot

loafloafloaf
LaofLaofLaof

hoathoathoat
HoatHoatHoat

hoadhoadhoad
HoadHoadHoad

lortlortlort
LrotLrotLrot

What i found out was that whenever shift was depressed, typing an uppercase "L" would induce a significant lag if the next character was an "o", compared to the lag of the any other key:

High "o" lag:
LoLoLoLoLoLo

No "a" lag:
LaLaLaLaLaLa

No lag for neither "o" nor "a":
lolololololo
lalalalalala

By realizing this I regained a slight bit of sanity as I knew I wasn't coming down with a case of Parkinsons. I was actually typing correctly, the lag just interpreted it wrongly.

Now, what really bugs me is that I can't fathom how this is occurring. What I'm actually typing, in physical order, is this: L - o - a - d, and yet, the "a" is output before the "o", even though "o" was pressed before "a".

So while the keyboard is processing the "Lo" combo, the "a" gets prioritized and is inserted before the "o" is done processing, resulting in Laod instead of Load. And this only happens when typing "Lo", not when typing lowercase "lo".

This problem could stem from the keyboard hardware, the receiver hardware or the keyboard software driver. No matter the fault location however, I can't imagine how this could be implemented as anything but a FIFO queue. A general delay, sure, I could live with that, albeit I'd be irritated. But a lag affecting different keys differently, and even resulting in unpredictable outcome - that just doesn't make any sense.

I've solved the problem by just switching to a wired keyboard. I just can't shake it off me though; what kind of bug/error/scenario would result in a case like this?

Edit: It's been suggested that I stop drinking Red Bull and stick to water instead. While that may actually help solve the issue, I'm really not looking for a solution as such. I'm more interested in an explanation of how this could happen, as I can't imagine any viable technical solution that could result in this behavior.

© Super User or respective owner

Related posts about keyboard

Related posts about logitech