Why don't gaming keyboards typically work with KVM switches?
This is a generalized question that I've run up against several times. I am at a loss in understanding what is different from a "gaming" keyboard when compared to a typical keyboard, and why this causes issues with KVM switches. To narrow the question a bit, I am looking specifically at gaming keyboards that don't require the installation of specialized software to make use of them.
My specific problem is that I own a Corsair K95 Platinum RGB keyboard and am using it through a StarTech SV231DPUA KVM switch. The KVM hotkey sequence for switching between computers is tapping the Scroll Lock button twice in rapid succession and then pressing another key to select a computer. Regular keyboards work fine. My previous gaming keyboard (Logitech) also worked fine. No issues whatsoever. But my K95 does not trigger this functionality and I can't figure out why.
I loaded up a Keyboard Event Viewer from the internet and confirmed that the key codes all appear to be identical between the three keyboards, so I would assume the KVM switch would see these characters in the very same manner regardless of the keyboard being used. Clicking the Scroll Lock key generates the same output on the K95 as it does my other keyboards.
Can anyone explain what the technical difference is with the K95 -- or gaming keyboards in general -- that contributes to this behavior? Everything else seems to work great through the KVM.
The USB keyboard protocol is limited to 6 keys pressed simultaneously + 3 modifier keys. To bypass this limitation, some keyboards report to computer as a USB hub with multiple keyboards connected to it.
If your KVM switch was just directly passing through its USB port to the active computer, it would work fine, but this approach has two disadvantages:
- You can't switch computers using keyboard shortcuts because hub doesn't interact with the keyboard, or whatever else is connected to USB.
- Switching between computers disconnects USB device from one computer and connects it to the other. This will trigger USB (dis)connection sounds and may cause a short delay until devices start working after the switch.
To solve these problems, switches take over keyboard communication and pretend to be a permanently connected keyboard for each computer. Keystrokes are passed through to active computer or intercepted if they're recognized by the KVM as a special command.
For this feature to work, the connected device must actually be a keyboard - KVM doesn't implement complete USB protocol including hub support. So if the keyboard reports as a hub, the KVM may not know what to do with it.