⌨️ Open-source keyboard firmware for Atmel AVR and Arm USB families
Find a file
fredizzimo 53ff8a31b6 Merge ChibiOS and LUFA descriptor support (#2362)
* Move lufa descriptor to protocol/usb_descriptor

* Try to compile usb_descriptor on ChibiOS

* Add lufa_utils for ChibiOS

Lufa USB descriptors for ChibiOS

* More lufa_util compatibility fixes

* First compiling version of shared USB descriptor

* Send the usb descriptors

* Fix the CONSOLE output on ChibiOS

* Add errors for unsupported interfaces

* Enable support for vitual serial port USB descriptors

* Implement virtual serial port for ChibiOS

* Cleanup the lufa_utils

Use the default lufa header files

* Add raw hid support for ChibiOS

This is completely untested

* Enable midi compilation on ChibiOS

* Move midi functionality out of lufa.c

* Don't register sysex callback when not needed

* ChibiOS compilation fixes

* Update ChibiOS submodule

* Fix the Midi USB descriptor

It didn't work properly when both Midi and Virtual serial port was enabled.

* Add MIDI support for ChibiOS

* Fix USB descriptor strings on ChibiOS

* Use serial usb driver for raw hid

* Generalize the ChibiOS stream like drivers

This makes the initialization much more simple and eliminates a lot of
the code duplication.

* Convert console output to chibios stream driver

* Fixes for ChibiOS update

* Update the ChibiOS contrib submodule

To include the usb data toggle synchronization fixes

* Fix duplicate reset enumeration on ChibiOS

* Add missing include

* Add number of endpoints check for ChibiOS

* Enable serial USB driver on all keyboards

* Add missing includes when API is enabled withot midi

* Add another missing inlcude
2018-02-08 15:07:46 -05:00
.vscode Add EditorConfig file (#1930) 2017-10-31 11:13:40 -04:00
docs Clarify the format for layout names 2018-01-19 11:58:19 -08:00
drivers update to driver separation 2017-09-15 21:43:58 -04:00
keyboards Merge ChibiOS and LUFA descriptor support (#2362) 2018-02-08 15:07:46 -05:00
layouts zweihander: rename, ⌃ → ⌥, README revamp (#2311) 2018-02-02 01:01:18 -05:00
lib Merge ChibiOS and LUFA descriptor support (#2362) 2018-02-08 15:07:46 -05:00
quantum Merge ChibiOS and LUFA descriptor support (#2362) 2018-02-08 15:07:46 -05:00
tests add tests for action_layer.c and reset layer state after tests 2017-12-15 13:23:30 -05:00
tmk_core Merge ChibiOS and LUFA descriptor support (#2362) 2018-02-08 15:07:46 -05:00
users Update to drashna userspace (Keymap Templating) (#2338) 2018-02-04 13:44:02 -05:00
util Re-add Flip Installer (#2355) 2018-02-06 23:21:03 -05:00
.clang_complete Vim Layout for Ergodox-EZ (mac only) (#2112) 2017-12-11 21:06:05 -05:00
.editorconfig Fix .editorconfig to not mess with line endings 2018-02-03 15:20:44 -05:00
.gitattributes Set eep files to binary mode 2016-08-27 18:37:28 +03:00
.gitignore just a planck layout (#2320) 2018-02-03 15:22:00 -05:00
.gitmodules Update .gitmodules 2017-11-16 15:09:45 -05:00
.travis.yml update avr url 2018-01-02 21:35:42 -05: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 Updates bootloader settings, adds file size check (#2029) 2017-11-27 23:08:21 -05:00
build_full_test.mk Add SRC and OPT_DEFS when building tests 2017-07-20 10:17:31 -04:00
build_keyboard.mk Merge ChibiOS and LUFA descriptor support (#2362) 2018-02-08 15:07:46 -05:00
build_layout.mk Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04: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 create initial code of conduct 2017-06-27 21:36:44 -04:00
common.mk Start mvoing hardware drivers to /drivers/ (#1433) 2017-07-10 11:18:47 -04:00
common_features.mk Backlighting for JJ40 and underglow initialisation code (#2260) 2018-01-18 16:02:32 -05:00
Dockerfile Reverting CMD Changes 2017-08-19 08:17:58 -04: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 update version silencing 2017-11-14 22:56:29 -05:00
message.mk Reset color after submodule warning message 2018-01-12 13:25:05 -05:00
readme.md Found some broken links while looking up ARM keyboard support 2017-12-15 13:23:52 -05:00
secrets.tar.enc update building for .hex, secrets moving 2017-08-21 21:57:46 -04:00
shell.nix shell.nix: add teensy loader 2017-11-26 17:55:24 -05:00
testlist.mk Add basic infrastrucure for building full tests 2017-06-18 21:08:23 +03:00
Vagrantfile Update some obsolete references 2016-07-30 08:37:30 +02:00

Quantum Mechanical Keyboard Firmware

Current Version Build Status Gitter 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.

Official website

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

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 Erez Zukerman, and the Clueboard by Zach White.

Documentation

https://docs.qmk.fm is hosted on Gitbook and GitHub (they are synced). You can request changes by making a fork and pull request, or by clicking the "suggest an edit" link on any page of the Docs.