1
0
Fork 0
keyboard controller firmware for Atmel AVR and ARM USB families https://github.com/qmk/qmk_firmware http://qmk.fm/
Find a file
SjB 2b3859937b speeding up (un)register_code16
In register_code16 and unregister_code16 we call register_code and
unregister_code twice, once for the mods and once for the keycode.
The (un)register_code have many check to see that keycode we have sent
however because we know that we are sending it a mods key, why not
just skip all of it and call (un)register_mods instead. This will skip
alot of checks and should speedup the loop a little.
2017-01-23 23:16:57 -05:00
doc Add proper shortcode for KC_DELETE to keycode.txt 2016-11-08 22:05:24 -05:00
keyboards turn off rgb_midi in ez 2017-01-23 13:55:24 -05:00
lib Add Google Test submodule 2016-08-27 21:57:49 +03:00
quantum speeding up (un)register_code16 2017-01-23 23:16:57 -05:00
tmk_core Simplified and polished a bit the code changes on tmk_core 2017-01-21 17:18:05 -05:00
util Removed build.bat 2017-01-07 14:05:04 -06:00
.gitattributes Set eep files to binary mode 2016-08-27 18:37:28 +03:00
.gitignore added dvorak programmer layout 2016-10-22 22:22:34 +08:00
.gitmodules Add Google Test submodule 2016-08-27 21:57:49 +03:00
.travis.yml Upgrade AVR 8-bit Toolchain to 3.5.4 on Travis 2017-01-22 12:38:42 -05:00
build_keyboard.mk Got ps2avrGB to work with the V-USB protocol 2017-01-21 12:55:19 -05:00
build_test.mk Disable map file creation when building tests 2016-08-27 21:57:49 +03:00
common.mk separated into api files/folder 2016-11-26 15:38:44 -05:00
Dockerfile converted to 8bit messages 2016-11-23 00:30:06 -05:00
Makefile Clean up the SKIP_GIT code 2016-12-29 15:20:43 +02:00
message.mk Detect failures when running multiple tests 2016-08-27 21:57:49 +03:00
readme.md Typo fix 2017-01-15 14:08:17 +08:00
testlist.mk Basic framework for parsing test targets 2016-08-27 21:57:49 +03:00
Vagrantfile Update some obsolete references 2016-07-30 08:37:30 +02:00

Quantum Mechanical Keyboard Firmware

Build Status

This is a keyboard firmware based on the tmk_keyboard firmware with some useful features for Atmel AVR controllers, and more specifically, the OLKB product line, the ErgoDox EZ keyboard, and the Clueboard product line.

Official website (currently under construction with the move to the wiki)

For an easy-to-read version of this document and the repository, check out http://qmk.fm. Nicely formatted keyboard and keymap listings are also available there, along with the ability to download .hex files instead of having to setup a build environment and compile them.

Included Keyboards

The project also includes community support for lots of other keyboards.

Maintainers

QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, Hasu. This repo used to be a fork of TMK, and we are incredibly grateful for his founding contributions to the firmware. We've had to break the fork due to purely technical reasons - it simply became too different over time, and we've had to start refactoring some of the basic bits and pieces. We are huge fans of TMK and Hasu :)

This documentation is edited and maintained by Erez Zukerman of ErgoDox EZ. If you spot any typos or inaccuracies, please open an issue.

The OLKB product firmwares are maintained by Jack Humbert, the Ergodox EZ by Erez Zukerman, and the Clueboard by Zach White.

Documentation roadmap

This is not a tiny project. While this is the main readme, there are many other files you might want to consult. Here are some points of interest:

  • The Wiki - the entirety of the readme has been moved here
  • The readme for your own keyboard: This is found under keyboards/<your keyboards's name>/. So for the ErgoDox EZ, it's here; for the Planck, it's here and so on.
  • The list of possible keycodes you can use in your keymap is actually spread out in a few different places:
    • doc/keycode.txt - an explanation of those same keycodes.
    • quantum/keymap.h - this is where the QMK-specific aliases are all set up. Things like the Hyper and Meh key, the Leader key, and all of the other QMK innovations. These are also explained and documented below, but keymap.h is where they're actually defined.
  • The TMK documentation. QMK is based on TMK, and this explains how it works internally.