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.
 
 
 
 
Simon Arlott 0a1bf7f6aa
Support using a timer for wait_us() on ChibiOS-based boards (#12211)
* Support using a timer for wait_us() on ChibiOS-based boards (#12198)

There are spare GPT timers that can be used to get a more accurate
wait_ms() time. This is required for the matrix scan unselect delay (30µs)
to be shorter than the system tick rate of 100µs.

This is limited to the maximum GPT duration of 65535 so values above that
will automatically use the previous implementation based on the system
tick.

Using a specific timer means it can't be shared by another thread at the
same time so when wait_us() is called from anything other than the main
thread it will use the system tick implementation too.

* Update tmk_core/common/chibios/wait.c

* Update tmk_core/common/chibios/wait.c

Co-authored-by: Joel Challis <git@zvecr.com>
4 years ago
.github CLI/Docs: Fix the format commands' name (#13668) 4 years ago
.vscode do not automatically format json (#13320) 5 years ago
api_data
bin Ensure that safe_commands always run (#13199) 5 years ago
data Add config.h and rules.mk support for data driven keymaps (#12859) 4 years ago
docs Added right vs left specific pin assignments for dip switch (#13074) 4 years ago
drivers [Core] Speed up pimoroni trackball driver (#13823) 4 years ago
keyboards move volcano660 to ilumkb folder (#13550) 4 years ago
layouts Merge remote-tracking branch 'upstream/master' into develop 4 years ago
lib Add config.h and rules.mk support for data driven keymaps (#12859) 4 years ago
nix Update Python dependencies for Nix (#12855) 5 years ago
platforms Move chibios board files to allow tmk_core platform migration (#13777) 4 years ago
quantum Added right vs left specific pin assignments for dip switch (#13074) 4 years ago
tests Allow output of logging when running unit tests (#13556) 4 years ago
tmk_core Support using a timer for wait_us() on ChibiOS-based boards (#12211) 4 years ago
users Merge remote-tracking branch 'upstream/master' into develop 4 years ago
util Merge remote-tracking branch 'origin/master' into develop 4 years ago
.clang-format
.editorconfig
.gitattributes [nix] Use niv and poetry2nix to more easily manage dependencies (#11181) 5 years ago
.gitignore Cleanup gitignore (#13390) 4 years ago
.gitmodules
.travis.yml
CODE_OF_CONDUCT.md
Dockerfile
Doxyfile
LICENSE
Makefile Merge remote-tracking branch 'origin/master' into develop 4 years ago
Vagrantfile Upgrades Vagrant box to Debian 10 to fix Docker build error on Debian 9. (#13236) 5 years ago
book.json
bootloader.mk Update LUFA (18-07-2021) and add QMK-HID Bootloader support (#13588) 4 years ago
build_full_test.mk
build_json.mk Add config.h and rules.mk support for data driven keymaps (#12859) 4 years ago
build_keyboard.mk Add config.h and rules.mk support for data driven keymaps (#12859) 4 years ago
build_layout.mk Add config.h and rules.mk support for data driven keymaps (#12859) 4 years ago
build_test.mk Move print/debug files to quantum (#12069) 4 years ago
common.mk Relocate platform specific drivers (#13894) 4 years ago
common_features.mk Various fixes from reorg of files (#14051) 4 years ago
disable_features.mk
doxygen-todo Various fixes from reorg of files (#14051) 4 years ago
license_GPLv2.md
license_GPLv3.md
license_Modified_BSD.md
message.mk `--parallel` improvements (#13800) 4 years ago
nose2.cfg
readme.md
requirements-dev.txt Move hid and pyusb to requirements.txt (#13134) 5 years ago
requirements.txt switch to qmk-dotty-dict (#13460) 4 years ago
secrets.tar.enc
setup.cfg
shell.nix Update Python dependencies for Nix (#12855) 5 years ago
show_options.mk Remove ONEHAND_ENABLE (#13920) 4 years ago
testlist.mk Avoid 8-bit timer overflows in debounce algorithms (#12240) 5 years ago

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