Keyboard Upgrade is firmware that was designed for use on homebrew USB keyboard controllers based on Atmel AVR microcontrollers, particularly the ATMEGA series. The firmware allows multiple user-defined key maps to be uploaded to your controller and switched at any time, turning your keyboard into a Dvorak or Colemak or any other layout keyboard in hardware. It currently supports the following keyboards: IBM Model M, IBM Model M Mini, and IBM M4-1. Schematics for the controller hardware are included. Support for new controller designs can be added to the firmware fairly easily by reusing a common set of source code files.
| Tags | Hardware Embedded Systems |
|---|---|
| Licenses | GPL |
| Operating Systems | Unix |
| Implementation | C Python |
Recent releases


Release Notes: This release adds support for IBM Model M 122-key keyboards. There are minor improvements to the command line tool that is used to communicate with the keyboard controllers.


Release Notes: Support was added for multiple key maps, switched using the keyboard's command mode.


Release Notes: This is the initial public release.
A simple wrapper for cross-browser usage of the JavaScript Fullscreen API.