Go to file
Michael Stapelberg 82aa9ad4a5
matrix: wait for row signal to go HIGH for every row (#12945)
I noticed this discrepancy (last row of the matrix treated differently than the
others) when optimizing the input latency of my keyboard controller, see also
https://michael.stapelberg.ch/posts/2021-05-08-keyboard-input-latency-qmk-kinesis/

Before this commit, when tuning the delays I noticed ghost key presses when
pressing the F2 key, which is on the last row of the keyboard matrix: the
dead_grave key, which is on the first row of the keyboard matrix, would be
incorrectly detected as pressed.

After this commit, all keyboard matrix rows are interpreted correctly.

I suspect that my setup is more susceptible to this nuance than others because I
use GPIO_INPUT_PIN_DELAY=0 and hence don’t have another delay that might mask
the problem.
2021-05-20 06:43:36 +10:00
.github Merge remote-tracking branch 'origin/master' into develop 2021-05-18 19:26:46 +00:00
.vscode
api_data
bin Merge remote-tracking branch 'origin/master' into develop 2021-05-10 12:16:04 -07:00
data
docs Add function to allow repeated blinking of one layer (#12237) 2021-05-16 20:59:02 -04:00
drivers Merge remote-tracking branch 'origin/master' into develop 2021-05-09 17:15:32 +00:00
keyboards Merge remote-tracking branch 'origin/master' into develop 2021-05-19 19:01:52 +00:00
layouts Merge remote-tracking branch 'origin/master' into develop 2021-05-13 00:18:40 +00:00
lib Merge remote-tracking branch 'origin/master' into develop 2021-05-18 19:26:46 +00:00
nix
platforms/chibios Merge remote-tracking branch 'origin/master' into develop 2021-05-13 02:30:14 +00:00
quantum matrix: wait for row signal to go HIGH for every row (#12945) 2021-05-20 06:43:36 +10:00
tests
tmk_core Fixup housekeeping from being invoked twice per loop. (#12933) 2021-05-18 17:02:28 +10:00
users Merge remote-tracking branch 'origin/master' into develop 2021-05-14 03:54:43 +00:00
util New command: qmk console (#12828) 2021-05-08 20:56:07 -07:00
.clang-format
.editorconfig
.gitattributes
.gitignore
.gitmodules
.travis.yml
CODE_OF_CONDUCT.md
Dockerfile
Doxyfile
LICENSE
Makefile
Vagrantfile
book.json
bootloader.mk
build_full_test.mk
build_json.mk
build_keyboard.mk
build_layout.mk
build_test.mk
common.mk
common_features.mk
disable_features.mk
doxygen-todo
license_GPLv2.md
license_GPLv3.md
license_Modified_BSD.md
message.mk
nose2.cfg
readme.md
requirements-dev.txt New command: qmk console (#12828) 2021-05-08 20:56:07 -07:00
requirements.txt
secrets.tar.enc
setup.cfg
shell.nix
show_options.mk
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.

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

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.