Open-source keyboard firmware for Atmel AVR and Arm USB families
Go to file
Drashna Jaelre 1751c3cc25
uart.c fix from TMK (#7628)
* uart.c fix from TMK

Backport from tmk/tmk_keyboard@c41e48a0ab

* Avoid deadlock when uart.c is usind in ISR

Backport from tmk/tmk_keyboard@55443fabb7
2020-02-21 21:32:30 +11:00
.github CI: Add workflow for CLI testing (#7357) 2020-02-08 13:43:55 +01:00
.vscode Generalize Tap Dance Layer functions (#6629) 2019-09-21 11:22:27 -07:00
bin Add pep8-naming to our python linting 2019-12-01 13:40:14 -08:00
docs Allow 30us matrix delay to be keyboard/user overridable (#8216) 2020-02-21 14:49:33 +11:00
drivers format code according to conventions [skip ci] 2020-02-13 20:09:39 +00:00
keyboards S75 Encoder Fixes (#7758) 2020-02-21 21:25:17 +11:00
layouts Code cleanup, use pathlib, use pytest keyboard 2020-02-15 15:19:03 -08:00
lib Use pathlib everywhere we can (#7872) 2020-02-17 11:42:11 -08:00
quantum Add Turkish keymap aliases and sendstring LUT (#7676) 2020-02-21 18:21:38 +11:00
tests clang-format changes 2019-08-30 15:01:52 -07:00
tmk_core uart.c fix from TMK (#7628) 2020-02-21 21:32:30 +11:00
users [Keymap] ninjonas keymap updates (#8170) 2020-02-17 01:30:03 -08:00
util Made windows driver installation accept y as All to allow CI (#8189) 2020-02-18 12:05:20 -08:00
.clang_complete Vim Layout for Ergodox-EZ (mac only) (#2112) 2017-12-11 21:06:05 -05:00
.clang-format fix indent size 2019-06-11 01:51:40 -07:00
.editorconfig QMK CLI and JSON keymap support (#6176) 2019-07-15 12:14:27 -07:00
.gitattributes Set eep files to binary mode 2016-08-27 18:37:28 +03:00
.gitignore Remove entries for Minidox eep files from gitignore (#8077) 2020-02-04 18:30:57 -08:00
.gitmodules add lufa as a submodule 2019-08-30 15:01:52 -07:00
.travis.yml Fix unknown key 'IndentPPDirectives' on CI (#7933) 2020-01-19 13:59:57 -08:00
autocomplete.sh Make arguments redo, subproject elimination (#1784) 2017-10-14 11:32:19 -10:00
book.json adds redirects for docs 2017-08-19 08:31:54 -04:00
bootloader.mk Add LUFA mass storage BOOTLOADER "support" (#7729) 2019-12-29 20:53:23 +00:00
build_full_test.mk Add SRC and OPT_DEFS when building tests 2017-07-20 10:17:31 -04:00
build_json.mk Add JSON keymap to prereq list of C keymap 2019-12-08 15:13:47 -08:00
build_keyboard.mk add 'objs-size' target into tmk_core/avr.mk (#5490) 2019-07-15 22:45:31 -07:00
build_layout.mk Add a mechanism for force building a particular community layout (#5027) 2019-02-14 20:14:26 -08:00
build_test.mk Split common.mk into common.mk and common_features.mk 2017-06-18 21:22:22 +03:00
CODE_OF_CONDUCT.md updates the coc 2019-08-24 12:43:39 -04:00
common_features.mk Relocate grave keycode processing (#8082) 2020-02-04 18:49:10 -08:00
common.mk Move Split Common VPATH addition (#4716) 2018-12-31 08:45:44 -08:00
Dockerfile Update docker util script and travis to use new base container 2019-07-14 21:01:38 -07:00
Doxyfile Generate API docs from source code comments (#2491) 2018-03-22 02:50:38 -04:00
doxygen-todo Remove PJRC USB stack 2020-02-08 11:07:43 -08:00
LICENSE add an explicit lisence file for github to pickup 2017-11-13 20:50:54 -05:00
license_GPLv2.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
license_GPLv3.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
license_Modified_BSD.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
Makefile Allow 'make all:<user>' to not build EVERYTHING (#7402) 2019-11-20 22:32:16 +00:00
message.mk Use FIRMWARE_FORMAT for "Checking file size" message (#8121) 2020-02-10 04:19:08 +11:00
nose2.cfg Setup a python test framework 2019-09-07 07:58:41 -07:00
readme.md Improve docs "Edit Document" footer 2019-12-18 14:01:13 +11:00
requirements.txt Drop bs4 dependency, update docs, minor improvements 2020-02-15 15:19:03 -08:00
secrets.tar.enc update building for .hex, secrets moving 2017-08-21 21:57:46 -04:00
setup.cfg Add flake8 to our test suite and fix all errors (#7379) 2019-11-20 14:54:18 -08:00
shell.nix Fix shell.nix by pinning nixpkgs (#6213) 2019-11-14 12:00:36 -08:00
show_options.mk Fix AVR boards which were overriding backlight without setting… (#8044) 2020-01-31 10:44:40 +11:00
testlist.mk Add basic infrastrucure for building full tests 2017-06-18 21:08:23 +03:00
Vagrantfile Configure Vagrant to use qmk_base_container (#6194) 2019-07-16 01:20:34 -07:00

Quantum Mechanical Keyboard Firmware

Current Version Build Status Discord Docs Status GitHub contributors GitHub forks

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

Documentation

The docs are powered by Docsify and hosted on GitHub. They are also viewable offline; see Previewing the Documentation for more details.

You can request changes by making a fork and opening a pull request, or by clicking the "Edit this page" link at the bottom of any page.

Supported 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. The OLKB product firmwares are maintained by Jack Humbert, the Ergodox EZ by ZSA Technology Labs, the Clueboard by Zach White, and the Atreus by Phil Hagelberg.

Official Website

qmk.fm is the official website of QMK, where you can find links to this page, the documentation, and the keyboards supported by QMK.