You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Go to file
James Laird-Wah f70f45ee67 RGB Matrix refactoring to open up for new drivers (#3913)
* rgb_matrix: use a driver ops struct

This is intended to avoid #ifdef proliferation on adding more drivers,
eg. model01, which use different architectures.

* rgb_matrix: document driver struct members

* rgb_matrix: remove unused LED testing code

* rgb_matrix: don't build into IS31x drivers unless being used

* rgb_matrix: refactor make config options

This ensures that the necessary files are included for any custom
RGB_MATRIX_ENABLE value, without having to add entries here for specific
boards. This particularly affects model01 because its controller is
integrated and won't be used anywhere else, so it's preferable not to
put it in common_features.mk.

This now validates the value of RGB_MATRIX_ENABLE.

It was necessary to fix an error in ergodox_ez rules.mk using the wrong
comment separator, yielding an invalid value.

* IS31x drivers: don't write the control registers all the time

This is only needed when they are changed. This is done in init() and
board- or keymap-specific code is free to make further changes.

* rgb_matrix: move structs from chip drivers to rgb_matrix_drivers.c

This approach is specific to the rgb_matrix functionality, so keep it
neatly separated from the raw chip drivers.
7 years ago
.vscode
docs Add On/Off keycodes 7 years ago
drivers RGB Matrix refactoring to open up for new drivers (#3913) 7 years ago
keyboards RGB Matrix refactoring to open up for new drivers (#3913) 7 years ago
layouts Bugfix for 60_ansi_tsangan and 60_iso_tsangan layouts (#3987) 7 years ago
lib Fix mismatched aliased event and event stub function prototypes. 7 years ago
quantum RGB Matrix refactoring to open up for new drivers (#3913) 7 years ago
tests
tmk_core Make `PREVENT_STUCK_MODIFIERS` the default (#3107) 7 years ago
users Keymap: mtdjr userspace changes and Nyquist keymap addition (#3940) 7 years ago
util Pin avr-gcc in shell.nix pending release of 8.3.0 (#3922) 7 years ago
.clang_complete
.editorconfig
.gitattributes
.gitignore
.gitmodules
.travis.yml
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md 7 years ago
Dockerfile
Doxyfile
LICENSE
Makefile improve looks like hang up when first time execute make git-submodule (#3846) 7 years ago
Vagrantfile removed unused boxes (qmk won't compile with them anyway), updated welcome message 7 years ago
autocomplete.sh
book.json
bootloader.mk
build_full_test.mk
build_keyboard.mk Massdrop keyboard support (#3780) 7 years ago
build_layout.mk
build_test.mk
common.mk Lets split eh (#3120) 7 years ago
common_features.mk RGB Matrix refactoring to open up for new drivers (#3913) 7 years ago
doxygen-todo
license_GPLv2.md
license_GPLv3.md
license_Modified_BSD.md
message.mk change messege at 'check-size' target 7 years ago
readme.md Add Atreus as an official board. 7 years ago
secrets.tar.enc
shell.nix Pin avr-gcc in shell.nix pending release of 8.3.0 (#3922) 7 years ago
testlist.mk

readme.md

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 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.

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, the Clueboard by Zach White, and the Atreus by Phil Hagelberg.

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.