Author Topic: A Case for Gaming Keyboards? Controller Response Time  (Read 5576 times)

0 Members and 1 Guest are viewing this topic.

Offline Kavik

  • Thread Starter
  • Posts: 819
A Case for Gaming Keyboards? Controller Response Time
« on: Mon, 02 July 2018, 12:07:50 »
Is there a case to be made that "gaming" keyboards have slightly better response time?

I know the usual arguments: internet connection latency, monitor refresh rate, debounce latency, yadda yadda, BUT every little bit of latency counts.

Specifically, when I play Rainbow Six: Siege, which is *extremely* sensitive to latency (peeker's advantage, being shot after taking cover, and such), I have noticed that I consistently play worse when I use my M65-A vs my CM Quickfire TK and will immediately do better after switching keyboards. In the GB thread, I do recall some conversation about ps2avrgb not being suitable for dance/music games because of the slight latency. One has Zealios and one has MX Reds, so I suppose it's not a 1-to-1 comparison, but same actuation distance and all that.

It makes sense that companies focused on the video game market would devote more effort into custom controllers and firmware to reduce latency; whereas, custom keyboard designers use more "off the shelf" type components and firmware.

Am I experiencing a placebo effect, or is there something to this? For what it's worth, I've only ever noticed the issue with the M65-A, so maybe it's just a failing of that particular keyboard/controller/firmware and not a virtue of the Quickfire.

P.S. I know there's no way to measure this, except maybe a highspeed camera.
« Last Edit: Mon, 02 July 2018, 16:15:06 by Kavik »
Maybe they're waiting for gasmasks and latex to get sexy again.

The world has become a weird place.

Offline rxc92

  • Posts: 441
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #1 on: Tue, 03 July 2018, 04:32:38 »
Just from what you see with e-sports players, I really do doubt there's any advantage at all; modern mechanical keyboards all boast a 1ms response time using 1000 Hz feedback, and no professional player of even very lag-dependent games like Counter-Strike use PS/2 peripherals (which have instantaneous response times); you see all sorts of mechanical keyboards for games like League of Legends, which is also quite input heavy. 
 
It's either a failing of the specific keyboard or perhaps switch (for the life of me I could not play on Green switches, they're too damn slow/heavy), but there will never be a situation where a 1 Hz input will realistically affect anything in realtime. 
 
Also, as far as custom controllers? I don't think it's possible to reduce input beyond the limits of USB's 1000 Hz polling rate, so no custom controller will help. Only PS/2 is faster, because it sends interrupts. Please correct me if I'm wrong, it's a pretty interesting field! 

Offline Kavik

  • Thread Starter
  • Posts: 819
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #2 on: Tue, 03 July 2018, 09:58:12 »
Just from what you see with e-sports players, I really do doubt there's any advantage at all; modern mechanical keyboards all boast a 1ms response time using 1000 Hz feedback, and no professional player of even very lag-dependent games like Counter-Strike use PS/2 peripherals (which have instantaneous response times); you see all sorts of mechanical keyboards for games like League of Legends, which is also quite input heavy. 
 
It's either a failing of the specific keyboard or perhaps switch (for the life of me I could not play on Green switches, they're too damn slow/heavy), but there will never be a situation where a 1 Hz input will realistically affect anything in realtime. 
 
Also, as far as custom controllers? I don't think it's possible to reduce input beyond the limits of USB's 1000 Hz polling rate, so no custom controller will help. Only PS/2 is faster, because it sends interrupts. Please correct me if I'm wrong, it's a pretty interesting field!

That is a good point about the 1000 Hz polling rate. However, I know at least one Cherry brand keyboard and Logitech Romer-G switches claim they are faster because they have less debounce, either from an algorithm in the firmware or the switch hardware itself. The way I understand it is the firmware tells the controller to wait, say 5 ms, before committing the input so that it can filter out the extra inputs caused by the contact leaf "bouncing" before it settles. However, now that I think about it, this is the only thing that *could* cause a delay with the 1000 Hz polling rate, unless there's an additional delay for translating a custom layout (I'm not even sure if that makes sense).

I'm admittedly very ignorant of how these things work, so I could be misunderstanding this whole thing. I'm curious if PS/2 would feel more responsive; I remember reading (on this forum, I think) that some modern motherboards don't use real PS/2 protocols anyway but rather a USB implementation. I don't know if that's true. The only PS/2 keyboards I have are Model Ms and an eMachine rubberdome, but I could see if they feel different.
Maybe they're waiting for gasmasks and latex to get sexy again.

The world has become a weird place.

Offline Tactile

  • Posts: 1439
  • Location: Portland, OR
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #3 on: Tue, 03 July 2018, 10:54:35 »
Topre switches require no de-bounce time at all. This came up in a discussion here a while back and someone had a link to a chart showing that the Topre board in the test actually had a slower response time than some MX boards.

And then there's how you measure speed. This is a blurb from the Logitech web site, a sales pitch for their Romer G switches:

Code: [Select]
Extreme Performance
The Romer-G™ key switch is purpose-built for pro-grade performance, responsiveness and durability.
The short-throw actuation at 1.5mm is 25% faster than the competition's standard mechanical switches.
A perfect blend of speed, precision and quiet performance, Romer-G is the stealth assassin of mechanical gaming keyboard switches

It's pretty obvious they're just talking about raising the actuation point - you don't measure speed in millimeters.

Anyway, there have been lots of discussions here and elsewhere on the web over many years about this.
REΛLFORCE

Offline Kevadu

  • Posts: 382
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #4 on: Tue, 03 July 2018, 13:10:15 »
The only switch type that requires de-bounce time are electro-mechanical switches, i.e. switches that mechanically close a circuit which lets current through.  Most common mechanical switches are in this category though.  The reason for it isn't that complicated.  We normally think about a switch as being simple on or off, but when the switch is off there's still a voltage gap between the two contacts.  Not a high voltage but a voltage nevertheless.  As the contacts start to close eventually they will get close enough that this voltage can cause arcing between the two contacts even though they're not physically touching yet.  The arc doesn't last long since it will immediately reduce that voltage difference but it's enough to get a brief burst of current through the switch before the switch actually closes.  Thus if it weren't for de-bounce protection a single keypress could register as multiple quick keypresses, which would be pretty annoying.  All the de-bounce really does is wait a bit to make sure that the switch is actually closed before registering the keypress as the arcing should normally be quite brief.  This does introduce some delay, but it's debatable how much that's really noticeable because it's typically only like 5ms.

However there are many switch types that do not have this issue.  Basically anything that doesn't really on completing an electric circuit.  Capacitive sensors like in Topre or even the Model F are one, but this also includes Hall effect keyboards and the various new optical switches on the market.  Optical switches are the only ones that seem to really market themselves towards gamers though.

Getting back to Kavik's original post though the two keyboards he's comparing should still both be of the electromechanical type and thus have similar de-bounce protection so that wouldn't really explain why he feels a difference between the two.  I guess there could be differences in the firmware with regards to exactly how long the two boards wait...but I wouldn't expect that to be significant.

Note that there are things besides de-bounce delay that determine what makes a good 'gaming' keyboard.  Personally I wouldn't really want to game on Topre even if it doesn't have de-bounce delays and does have n-key rollover.  It just doesn't feel right, plus it does have hysteresis.  And there are a lot of gaming-oriented switches these days being made with higher actuation points so there's less of a delay between starting to press the key and the key registering.  Honestly that difference in physical travel time is probably longer than the de-bounce time.

But if you really want to tweak this stuff the Wooting One optical keyboard let's you actually set your actuation point to be whatever you want.  Plus it's optical so it also shouldn't have de-bounce delay.  It's arguably the best gaming keyboard on the market today.  Certainly the most flexible anyway.

Offline Kavik

  • Thread Starter
  • Posts: 819
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #5 on: Tue, 03 July 2018, 18:28:53 »
The only switch type that requires de-bounce time are electro-mechanical switches, i.e. switches that mechanically close a circuit which lets current through.  Most common mechanical switches are in this category though.  The reason for it isn't that complicated.  We normally think about a switch as being simple on or off, but when the switch is off there's still a voltage gap between the two contacts.  Not a high voltage but a voltage nevertheless.  As the contacts start to close eventually they will get close enough that this voltage can cause arcing between the two contacts even though they're not physically touching yet.  The arc doesn't last long since it will immediately reduce that voltage difference but it's enough to get a brief burst of current through the switch before the switch actually closes.  Thus if it weren't for de-bounce protection a single keypress could register as multiple quick keypresses, which would be pretty annoying.  All the de-bounce really does is wait a bit to make sure that the switch is actually closed before registering the keypress as the arcing should normally be quite brief.  This does introduce some delay, but it's debatable how much that's really noticeable because it's typically only like 5ms.

However there are many switch types that do not have this issue.  Basically anything that doesn't really on completing an electric circuit.  Capacitive sensors like in Topre or even the Model F are one, but this also includes Hall effect keyboards and the various new optical switches on the market.  Optical switches are the only ones that seem to really market themselves towards gamers though.

Getting back to Kavik's original post though the two keyboards he's comparing should still both be of the electromechanical type and thus have similar de-bounce protection so that wouldn't really explain why he feels a difference between the two.  I guess there could be differences in the firmware with regards to exactly how long the two boards wait...but I wouldn't expect that to be significant.

Note that there are things besides de-bounce delay that determine what makes a good 'gaming' keyboard.  Personally I wouldn't really want to game on Topre even if it doesn't have de-bounce delays and does have n-key rollover.  It just doesn't feel right, plus it does have hysteresis.  And there are a lot of gaming-oriented switches these days being made with higher actuation points so there's less of a delay between starting to press the key and the key registering.  Honestly that difference in physical travel time is probably longer than the de-bounce time.

But if you really want to tweak this stuff the Wooting One optical keyboard let's you actually set your actuation point to be whatever you want.  Plus it's optical so it also shouldn't have de-bounce delay.  It's arguably the best gaming keyboard on the market today.  Certainly the most flexible anyway.

Thank you for the explanation. I have actually been curious to try the Wooting One for this very reason, but not curious enough to buy one yet.
Maybe they're waiting for gasmasks and latex to get sexy again.

The world has become a weird place.

Offline tp4tissue

  • * Destiny Supporter
  • Posts: 13722
  • Location: Official Geekhack Public Defender..
  • OmniExpert of: Rice, Top-Ramen, Ergodox, n Females
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #6 on: Tue, 03 July 2018, 18:36:26 »
No, there is absolutely no reason to do this..

PC games will never be built to be so latency critical.  Because they must run on as many pcs as possible.

So play mechanic must be tweaked to be playable on low end pcs..   optimizing would mean excluding customers.

Offline JianYang

  • Posts: 114
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #7 on: Wed, 04 July 2018, 00:08:29 »
The only switch type that requires de-bounce time are electro-mechanical switches, i.e. switches that mechanically close a circuit which lets current through.  Most common mechanical switches are in this category though.  The reason for it isn't that complicated.  We normally think about a switch as being simple on or off, but when the switch is off there's still a voltage gap between the two contacts.  Not a high voltage but a voltage nevertheless. As the contacts start to close eventually they will get close enough that this voltage can cause arcing between the two contacts even though they're not physically touching yet.  The arc doesn't last long since it will immediately reduce that voltage difference but it's enough to get a brief burst of current through the switch before the switch actually closes.  Thus if it weren't for de-bounce protection a single keypress could register as multiple quick keypresses, which would be pretty annoying.  All the de-bounce really does is wait a bit to make sure that the switch is actually closed before registering the keypress as the arcing should normally be quite brief.  This does introduce some delay, but it's debatable how much that's really noticeable because it's typically only like 5ms.


Sorry, but that is not what happens. At least not in any keyboard. bouncing of the contacts is literally what happens. They make and break a couple off times due to mechanical bounce while they are being pushed together.

Offline Leslieann

  • * Elevated Elder
  • Posts: 4567
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #8 on: Wed, 04 July 2018, 01:38:11 »
You could run your port at 5000, that does not mean the internal controller is running any faster than it does.
I'm not saying it's faster or slower than that speed (we'll get to that), just that the two are not entwined to the same frequency, I.E. you could have a 5ghz controller and a 1khz port, or a 100mhz processor and khz port.

As for using different controllers and such, keyboard makers, especially mass market ones are all about the money and marketing. If any one of them spent extra money making a faster controller, the marketing team would have been all over that in a heart beat, provided it wasn't so expensive that the bean counters squashed it. That said, a keyboard controller is not really taxed. It may or may not have enough IO ports, but in terms of actual computational power it's not really stressed by any means, so as long as it can do it at a rate above 1khz, there would be no benefit of using a faster processor.
Novelkeys NK65AE w/62g Zilents/39g springs
More
62g Zilents/lubed/Novelkeys 39g springs, HK Gaming Thick PBT caps, Netdot Gen10 magnetic cable, pic
| Filco MJ2 L.E. Vortex Case, Jailhouse Blues, heavily customized
More
Vortex case squared up/blasted finish removed/custom feet/paint/winkey blockoff plate, HID Liberator, stainless steel universal plate, 3d printed adapters, Type C, Netdot Gen10 magnetic cable, foam sound dampened, HK Gaming Thick PBT caps (o-ringed), Cherry Jailhouse Blues w/lubed/clipped Cherry light springs, 40g actuation
| GMMK TKL
More
w/ Kailh Purple Pros/lubed/Novelkeys 39g springs, HK Gaming Thick PBT caps, Netdot Gen10 Magnetic cable
| PF65 3d printed 65% w/LCD and hot swap
More
Box Jades, Interchangeable trim, mini lcd, QMK, underglow, HK Gaming Thick PBT caps, O-rings, Netdot Gen10 magnetic cable, in progress link
| Magicforce 68
More
MF68 pcb, Outemu Blues, in progress
| YMDK75 Jail Housed Gateron Blues
More
J-spacers, YMDK Thick PBT, O-rings, SIP sockets
| KBT Race S L.E.
More
Ergo Clears, custom WASD caps
| Das Pro
More
Costar model with browns
| GH60
More
Cherry Blacks, custom 3d printed case
| Logitech Illumininated | IBM Model M (x2)
Definitive Omron Guide. | 3d printed Keyboard FAQ/Discussion

Offline algernon

  • Posts: 311
  • A tiny mouse, a hacker.
    • Diaries of a Madman
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #9 on: Wed, 04 July 2018, 01:41:54 »
modern mechanical keyboards all boast a 1ms response time using 1000 Hz feedback

While most modern mechanical keyboards report they can send a report every millisecond, very few actually do. For one, typical debounce time is around 5ms, so if you send faster than that, you risk chatter down the road. Second, unless your firmware is super simple, or you have a powerful MCU in the board, you'll be looking at scan cycles longer than a millisecond, which also prevents the board from sending a report every millisec. You could send the report in an interrupt, but that's of little use when scanning and/or processing keys take longer than that.

For reference, the Kaleidoscope firmware on the Model01 has a 0.5msec main loop with no plugins, and about 3.5ms with the factory firmware. As far as keyboards go, this is pretty fast for AVR MCUs. Most "gaming" keyboards I saw were considerably slower. Add key travel, USB latency and a bunch of other things on top of this, and you're looking at latencies over 20ms easily.

See here for a keyboard latency research. While I don't fully agree with the way he measured, the numbers are still interesting.

Offline rxc92

  • Posts: 441
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #10 on: Wed, 04 July 2018, 04:00:34 »
Add key travel, USB latency and a bunch of other things on top of this, and you're looking at latencies over 20ms easily.
 
 
Forgive me if I seem doubtful, but that seems far too high. A 20ms signal time is huge in terms of any professional player, and it would be a large advantage to eliminate that; however, almost every single player just uses a standard mechanical keyboard plugged in with USB like anyone else. Maybe something on the order of 5 ms I could see, but I'd need a source on a 20ms estimate.

Offline algernon

  • Posts: 311
  • A tiny mouse, a hacker.
    • Diaries of a Madman
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #11 on: Wed, 04 July 2018, 04:36:14 »
Add key travel, USB latency and a bunch of other things on top of this, and you're looking at latencies over 20ms easily.
 
 
Forgive me if I seem doubtful, but that seems far too high. A 20ms signal time is huge in terms of any professional player, and it would be a large advantage to eliminate that; however, almost every single player just uses a standard mechanical keyboard plugged in with USB like anyone else. Maybe something on the order of 5 ms I could see, but I'd need a source on a 20ms estimate.

See the research I linked, the appendix in particular. The best keyboard there sits at 15ms, the first gaming keyboard at 35ms.

Again, the way he measured things isn't the most precise, but it does give a reasonable estimate.

As another data point: the fastest firmware I worked with has a 0.5ms main loop, which includes scanning. It becomes a tiny bit slower if there are keys pressed, because processing that takes a few instructions, so we'll be at slightly below 1ms. That's only the main loop. It takes time to press a key down enough to activate, that's easily a few milliseconds. It also takes time for the data to travel from the device to the host, though this is much less, but still a measurable unit. Then it takes time for the OS to process the data. Even if we discard anything past sending the USB report, we're still looking at 1ms + keypress time. Key travel is probably the biggest contributor (the research arrived to the same conclusion).

Offline rxc92

  • Posts: 441
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #12 on: Wed, 04 July 2018, 04:57:21 »
Add key travel, USB latency and a bunch of other things on top of this, and you're looking at latencies over 20ms easily.
 
 
Forgive me if I seem doubtful, but that seems far too high. A 20ms signal time is huge in terms of any professional player, and it would be a large advantage to eliminate that; however, almost every single player just uses a standard mechanical keyboard plugged in with USB like anyone else. Maybe something on the order of 5 ms I could see, but I'd need a source on a 20ms estimate.

See the research I linked, the appendix in particular. The best keyboard there sits at 15ms, the first gaming keyboard at 35ms.

Again, the way he measured things isn't the most precise, but it does give a reasonable estimate.

As another data point: the fastest firmware I worked with has a 0.5ms main loop, which includes scanning. It becomes a tiny bit slower if there are keys pressed, because processing that takes a few instructions, so we'll be at slightly below 1ms. That's only the main loop. It takes time to press a key down enough to activate, that's easily a few milliseconds. It also takes time for the data to travel from the device to the host, though this is much less, but still a measurable unit. Then it takes time for the OS to process the data. Even if we discard anything past sending the USB report, we're still looking at 1ms + keypress time. Key travel is probably the biggest contributor (the research arrived to the same conclusion).
 
 
Are there corroborating studies? I'm hesitant to trust a single indirect study when real-world evidence shows that nobody dependent on input timing uses anything other than long-travelling mechanical boards.

Offline algernon

  • Posts: 311
  • A tiny mouse, a hacker.
    • Diaries of a Madman
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #13 on: Wed, 04 July 2018, 10:52:09 »
Are there corroborating studies? I'm hesitant to trust a single indirect study when real-world evidence shows that nobody dependent on input timing uses anything other than long-travelling mechanical boards.

This research arrives to something similar too, placing USB keyboard latency at the 20ms ballpark at best. Another article arrives to 18+ms latencies without factoring keytravel in. Other than these, I do not know of any research into the topic.

As for why people use mechs for timing sensitive stuff? Because mechs usually have better firmware, more expensive, more performant hardware. The speed you loose with the added key travel, you win by having a higher poll rate, faster firmware, and possibly better electronics too.

Offline rich1051414

  • Posts: 353
  • Location: Decaturville, TN
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #14 on: Wed, 04 July 2018, 13:53:28 »
It's complicated. Gaming keyboards will sometimes claim 'higher response time', but they are actually referring to 'polling rate', not actual response time.

Actual response time is negatively effected by cost cutting measures applied to 'gaming' market everything. Additionally, all of that software to make the keyboards do things over USB is additional overhead those anemic controllers have to spend time on(or computer if signals are intercepted for remapping).

For the quickfire rapid however, that is not your typical 'gaming' keyboard. It is a regular mechanical keyboard not unlike a filco, only with cooler master's branding. The only thing that really makes it 'gamer' is the ability to disable the windows key.
« Last Edit: Wed, 04 July 2018, 13:59:34 by rich1051414 »
Siig Minitouch with Orange Alps, Whitefox 60% Zealios 67g, Realforce 87U 55g Topre, LFK SMK/Alps TKL With SMK 2nd Gen Cherry MX mount switches, NEC APC-H412 NEC Blue Ovals, Unicomp Model-M Spacesaver, XMIT Hall Effect, WASD Code Cherry MX Clear, KBDFans75 Lubed Gateron Greens, Azio MGK L80 Kailh Brown, XD84 Pale Blue Box Kailh, NIB Pingmaster TMK Converted, KPrepublic XD96 Blue aluminum case with Jade Box Kailh

Online Findecanor

  • Posts: 5082
  • Location: Koriko
Re: A Case for Gaming Keyboards? Controller Response Time
« Reply #15 on: Wed, 04 July 2018, 15:32:05 »
Most mass-produced keyboards, even "gaming" keyboards use debounce-times around 20 ms or so. That is purely for economical reasons: as a precaution because not all key switches are perfect. They want to avoid keyboards with chattering keys being returned.
If you build a mechanical keyboard on your own with custom firmware, you could have zero debounce on press and 5 ms on release. Then if you find that you have a chattering switch, you would be ready, willing and able to replace it yourself (... or just redo your bad soldering job).
Electrical engineering literature talks also about electromagnetic interference, which would necessitate debouncing on key presses but I don't know how important that is on a desktop.

That PS/2 would be faster than USB is practically a myth. Theoretically, the bus could be clocked a little bit faster so that a single key-press event — for some keys — would be passed a little bit faster, but that is not guaranteed by the protocol. Many keys introduced on the Model M, key-release events and multiple key presses are theoretically slower over PS/2 than USB.
As with USB, there are lots of other factors that also influence response time. I don't think that older PS/2 keyboards even scan the keyboard as fast and often as modern gaming keyboards do.
🍉