Go to file
Casey Webster 5e2b53541b
Add modifier state to the split keyboard transport (#10400)
* Add modifier state to the split transport

This adds modifier state to the i2c and serial transport for split
keyboards.  The purpose of this is to allow e.g. displaying modifier
state on the slave side of a split keyboard on an oled.  This adds one
byte to the data transferred between halves.

This also fixes a missing ifdef guard for BLACKLIGHT_ENABLE.

Break modifiers into real/weak/oneshot

Fix incorrect slave serial mod setting

Fix typo in serial weal mod setter

Fix build errors for the I2C code that I introduced

Code cleanup and formatting per project preferences

Correctly get oneshot mods

Fix missing braces

Remove unneeded ifdef guard

Make the added state transport optional

Add documentation for the new define to enable this feature

Fix stray grave mark

* Fix error introduced in conflict resolution
2020-12-17 16:21:26 +11:00
.github Yet another stab at trying to get github actions to push (#11230) 2020-12-16 23:00:02 +00:00
.vscode [Keyboard] add rhymestone by marksard (#9708) 2020-09-04 04:14:34 -07:00
api_data Generate api data on each push (#10609) 2020-10-25 14:48:44 -07:00
bin Move everything to Python 3.6 (#8835) 2020-04-18 22:00:56 +02:00
docs Add modifier state to the split keyboard transport (#10400) 2020-12-17 16:21:26 +11:00
drivers Merge remote-tracking branch 'origin/master' into develop 2020-12-16 03:27:52 +00:00
keyboards Merge remote-tracking branch 'origin/master' into develop 2020-12-16 21:03:23 +00:00
layouts Bocaj - Third Annual Refactor (Redux) (#10295) 2020-12-06 17:30:27 +11:00
lib CLI-ify rgblight_breathing_table_calc.c (#11174) 2020-12-16 14:24:42 +11:00
platforms/chibios Merge remote-tracking branch 'origin/master' into develop 2020-12-11 02:46:19 +00:00
quantum Add modifier state to the split keyboard transport (#10400) 2020-12-17 16:21:26 +11:00
tests
tmk_core Merge remote-tracking branch 'origin/master' into develop 2020-12-16 03:27:52 +00:00
users Selectively enable command and console for yanfali userspace (#11212) 2020-12-14 11:13:00 -08:00
util Merge remote-tracking branch 'origin/master' into develop 2020-12-16 03:25:18 +00:00
.clang-format
.editorconfig
.gitattributes
.gitignore Generate api data on each push (#10609) 2020-10-25 14:48:44 -07:00
.gitmodules 2020 May 30 Breaking Changes Update (#9215) 2020-05-30 13:14:59 -07:00
.travis.yml CI: Add workflow for codebase formatting (#7382) 2020-12-10 17:01:51 +00:00
CODE_OF_CONDUCT.md
Dockerfile
Doxyfile
LICENSE
Makefile 2020 November 28 Breaking Changes Update (#11053) 2020-11-28 12:02:18 -08:00
Vagrantfile Remove broken example from Makefile (#9159) 2020-05-21 20:33:20 +01:00
book.json
bootloader.mk Fix STM32duino bootloader (#10648) 2020-10-15 02:55:31 +01:00
build_full_test.mk
build_json.mk Load keymap-level rules.mk when compiling keymap.json (#8841) 2020-04-18 14:29:48 +01:00
build_keyboard.mk Add board specific to Proton-C, with usual defaults turned on. (#10976) 2020-12-03 13:04:28 +11:00
build_layout.mk Allow for building layouts from keymap.json files. 2020-07-07 07:27:39 -07:00
build_test.mk 2020 November 28 Breaking Changes Update (#11053) 2020-11-28 12:02:18 -08:00
common.mk 2020 November 28 Breaking Changes Update (#11053) 2020-11-28 12:02:18 -08:00
common_features.mk 2020 November 28 Breaking Changes Update (#11053) 2020-11-28 12:02:18 -08:00
doxygen-todo Remove iWRAP protocol (#9284) 2020-08-29 14:30:02 -07:00
license_GPLv2.md
license_GPLv3.md
license_Modified_BSD.md
message.mk 2020 November 28 Breaking Changes Update (#11053) 2020-11-28 12:02:18 -08:00
nose2.cfg
readme.md Branch point for 2021 Feb 27 Breaking Change 2020-11-30 03:29:39 -08:00
requirements-dev.txt
requirements.txt 2020 November 28 Breaking Changes Update (#11053) 2020-11-28 12:02:18 -08:00
secrets.tar.enc
setup.cfg
shell.nix nix-shell: add milc dependency (#11086) 2020-11-30 21:03:03 +00:00
show_options.mk 2020 November 28 Breaking Changes Update (#11053) 2020-11-28 12:02:18 -08:00
testlist.mk 2020 November 28 Breaking Changes Update (#11053) 2020-11-28 12:02:18 -08:00

readme.md

Quantum Mechanical Keyboard Firmware

Current Version Build Status Discord Docs Status GitHub contributors GitHub forks

THIS IS THE DEVELOP BRANCH

Warning- This is the develop branch of QMK Firmware. You may encounter broken code here. Please see Breaking Changes for more information.

Original readme continues

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.