Keyboard Firmware
Things you need to know when shopping for a gaming keyboard or programable keyboard.
Firmware is software that's in the keyboard's memory. It controls the device.
All keyboards have firmware. The basic ones just send standard signals of the key when it is pressed.
Examples of Firmware Capabilities
Programable keyboards have firmware that can be configured or updated.
Here's list of what firmware can do:
- Remap keys for letter layout. Set any key to send other key. For example, create different layouts, such as Dvorak. [see Alternative Keyboard Layouts]
- Remap modifier keys. For example, make Caps Lock send Ctrl, or swap Alt and Ctrl.
- Create new modifier key. For example, when Fn is held down, right hand home row keys become arrow keys.
- Create leader key. For example, press 【leader ' e】 to insert é. [see Alt Graph Key, Compose Key, Dead Key]
- Create lock key. For example, after Caps Lock is pressed, right hand's keys become number pad keys. When Caps Lock is pressed again, the lock is released.
- Create key macro. That is, send a key sequence. For example, make F2 send Ctrl+c (that's “copy” for most apps.) Useful for video games or professional tasks (in image editor, word processor, video editor, etc.).
- Create hold key. For example, when Space is held and other keys are pressed, it becomes Ctrl combination.
Note: not all programable keyboard has all these capabilities.
Advantage of Firmware over Operating System Keymapping
You can remap keys or create key macros via tools for the operating system (MacOS, linux, Microsoft Windows).
But reprogramable keyboard has the following advantages:
- Plug the keyboard in any computer or operating system and it'll work 100% as you configured it. No need to install extra “driver” software.
- Key mapping via firmware is reliable. Because the keyboard sends the desired keycode directly to operating system.
For example, say you want Caps Lock to send Ctrl. With firmware, the Caps Lock sends Ctrl directly to operating system.
With key remapping software in OS, the keyboard still sends Caps Lock signal, the OS receives it, and changes it to Ctrl.
Problems with Key Remap by Operating System
- When you use the keyboard on another machine, you need to configure that machine first.
- In some app, it may not recognize the key remap by OS. For example, in some PC games, it ignores OS's key-remaps to prevent cheating, or in apps that require privilege such as Microsoft's regedit app. [see Microsoft Windows Registry Tutorial]
- When system boots, it doesn't recognize the remap. For example, in Linux bootstrap console or single-user mode. In Microsoft Windows laptop bootscreen, you may need to press a key to go into bios.
OS Level Key Remap Software
- Microsoft Windows AutoHotkey Tutorial
- Linux Linux: xmodmap Tutorial
- macOS Mac: Keyboard/Automation Tools
Different Firmware Capabilities
Firmware have different levels of power. Here's some differences.
• Most gaming keyboards have pre-set actions and key-remap features. You cannot remap arbitrary keys. For example, you cannot make Space key to do Ctrl.
Driverless Programable Keyboard
Some keyboards have driverless programing (aka on-board programing). That is, to program the key, you just press special keys or buttons on the keyboard. No need to launch a “driver” software to program the keys.
This is the best.
Example of such keyboard are:
On-Board Memory vs Cloud
Some keyboard makers force you to have internet connection or install their driver software, in order to use the keyboard as you configured it.
For example,
Razer Orbweaver Keypad forces you to install their “Razer Synapse”. You need to install it, and also register online, and also have internet connection, to use its key-programing features fully. [see Razer Orbweaver Keypad]
Many models of Corsair's Keyboard require you to have their driver software in order to use the keyboard. In particular, Corsair Gaming STRAFE RGB Keyboard. [see Corsair Keyboards]
Usually that means the keyboard is not usable in Linux. In some cases, the keyboard does not work at all in linux, or send weird handshake characters when plugged in.
Avoid any Razer or Corsair keyboards.
Logitech gaming keyboards are good. You still need to install the Windows software to program the keys. (Mac version is available too) But after that, you can use the keyboard on any machine without their “driver” software.
For great programable gaming keyboard with full linux compatibility, buy Roccat. Roccat keyboard
List of Programable Keyboards with Onboard Memory
Programable Keyboards with Onboard Memory
Programable Keyboard User Interface
Great programable firmware need a way to program it.
Here are different methods.
- Graphical Software. Most gaming keyboards come with a easy-to-use graphical software to program the keys.
- Driverless Programing. By pressing keys on the keyboard to remap keys or create key macros. (e.g. Mistel Barocco Keyboard• Kinesis Keyboard)
- Updating Firmware. By using a key config website that generates a new version of firmware, then use a firmware updater to update your keyboard. (e.g. • Truly Ergonomic Keyboard • Ergodox Keyboard)
List of Keyboard with Great Firmware
Many expensive keyboards have powerful firmware.
Gaming keyboards usually focus on key macros, and profiles (which is a set of configurations, that you can switch to on-the-fly.). Gaming keyboard usually does not allow arbitrary key remap, nor creating dead keys, nor modifier key layers.
Gaming keyboard examples:
Programable keyboards usually focus on arbitrary remap of keys and key layers with modifier keys. But it usually does not have profiles feature.
- Mistel Barocco Split Keyboard
- KBC Poker 3 Keyboard
- Keyboardio Review
- Kinesis Advantage2 Keyboard Review
- Ergodox Keyboard Review
Key Switch Topic
- Computer Keyboard Design Flaws
- Guide to Keyboard Key Switch Mechanisms
- Mechanical Keyboard Noise Comparison
- What's NKRO, N-key Rollover?
- Blank Keycaps vs Labeled Keys
- Keyboard Keycaps: ABS, PBT
- Keyboard Key Label Tech
- List of Keyboards with Topre Switch
- XMIT Hall Effect Switch Keyboard
- Kailh Switch Keyboards
- Mechanical Keyboard and Repetitive Strain Injury
- List of Hardware Dvorak Layout Keyboards
- Programable Keyboards with Onboard Memory
If you have a question, put $5 at patreon and message me.