Drew Mills 5ac6fe1888 Add ADC support for STM32F3 and STM32F0 devices (#7681) %!s(int64=5) %!d(string=hai) anos
..
ChangeLog 26eef35f07 2020 February 29 Breaking Changes Update (#8064) %!s(int64=5) %!d(string=hai) anos
de 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
es 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
fr-fr 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
gitbook 4580d3a730 RGB improvements (#1684) %!s(int64=7) %!d(string=hai) anos
he-il 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
ja 2a05d433c9 Rename qmk json-keymap to qmk json2c (#8372) %!s(int64=5) %!d(string=hai) anos
pt-br 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
ru-ru 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
zh-cn 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
.nojekyll 9e5676650e Use docsfy to replace gitbook %!s(int64=7) %!d(string=hai) anos
CNAME 4d26137e2a Create CNAME %!s(int64=7) %!d(string=hai) anos
README.md 961477c791 make sure all our redirects are in order %!s(int64=5) %!d(string=hai) anos
_langs.md 10e8ed7430 [Docs] add README translation in portuguese (#7016) %!s(int64=5) %!d(string=hai) anos
_summary.md 76189d9a28 link the 2020 Feb 29 Breaking Changes changelog from the summary %!s(int64=5) %!d(string=hai) anos
adc_driver.md 5ac6fe1888 Add ADC support for STM32F3 and STM32F0 devices (#7681) %!s(int64=5) %!d(string=hai) anos
api_development_environment.md 99850aabca Add API documentation %!s(int64=5) %!d(string=hai) anos
api_development_overview.md 99850aabca Add API documentation %!s(int64=5) %!d(string=hai) anos
api_docs.md 99850aabca Add API documentation %!s(int64=5) %!d(string=hai) anos
api_overview.md 99850aabca Add API documentation %!s(int64=5) %!d(string=hai) anos
arm_debugging.md 52c18ef026 [Docs] fix docs (#7642) %!s(int64=5) %!d(string=hai) anos
breaking_changes.md f513a9193c Fix the Breaking Changes doc again %!s(int64=5) %!d(string=hai) anos
breaking_changes_instructions.md 72d7661b30 suggestions by skullydazed %!s(int64=5) %!d(string=hai) anos
cli.md 2a05d433c9 Rename qmk json-keymap to qmk json2c (#8372) %!s(int64=5) %!d(string=hai) anos
cli_dev_configuration.md 86f6405574 More sidebar organization %!s(int64=5) %!d(string=hai) anos
cli_development.md f7bdc54c69 Add flake8 to our test suite and fix all errors (#7379) %!s(int64=5) %!d(string=hai) anos
coding_conventions_c.md f275ffbdfc Minor grammar and filename fixes in docs (#7559) %!s(int64=5) %!d(string=hai) anos
coding_conventions_python.md 58d27cf404 Add a note explaining how to run tests %!s(int64=5) %!d(string=hai) anos
compatible_microcontrollers.md 5414ff709f [Doc] Tidy up compatible MCUs docs (#7295) %!s(int64=5) %!d(string=hai) anos
config_options.md 2ffb08843b Feature: RGBLight layers (#7768) %!s(int64=5) %!d(string=hai) anos
configurator_step_by_step.md d5f34c4810 Polish Configurator section %!s(int64=5) %!d(string=hai) anos
configurator_troubleshooting.md d5f34c4810 Polish Configurator section %!s(int64=5) %!d(string=hai) anos
contributing.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
custom_matrix.md 6e710426a4 Add docs for 'CUSTOM_MATRIX = lite' (#7906) %!s(int64=5) %!d(string=hai) anos
custom_quantum_functions.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
documentation_best_practices.md 303f425c6b Fix up info boxes. %!s(int64=7) %!d(string=hai) anos
documentation_templates.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
driver_installation_zadig.md 80ded60cad Add a short explanation to Zadig the troubleshooting section (#7110) %!s(int64=5) %!d(string=hai) anos
eeprom_driver.md d13ada1162 Add customisable EEPROM driver selection (#7274) %!s(int64=5) %!d(string=hai) anos
faq_build.md a52e55ec09 [Docs] Update macOS related issues in docs (#7744) %!s(int64=5) %!d(string=hai) anos
faq_debug.md 770a4ee729 [Docs] Remove some outdated FAQ items (#7607) %!s(int64=5) %!d(string=hai) anos
faq_general.md a701c15d87 Rework the newbs guide around the qmk cli %!s(int64=5) %!d(string=hai) anos
faq_keymap.md 12e43230c6 make custom_keycode_names.md a faq entry instead %!s(int64=5) %!d(string=hai) anos
feature_advanced_keycodes.md 961477c791 make sure all our redirects are in order %!s(int64=5) %!d(string=hai) anos
feature_audio.md d534c72a54 Added keycodes for swapping and unswapping the Control and OS keys (#6110) %!s(int64=5) %!d(string=hai) anos
feature_auto_shift.md e9c44e396d Smallish overhaul of Auto-Shift feature (#6067) %!s(int64=5) %!d(string=hai) anos
feature_backlight.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
feature_bluetooth.md 908aede957 Update feature_bluetooth.md (#7193) %!s(int64=5) %!d(string=hai) anos
feature_bootmagic.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
feature_combo.md 57540af102 Change "yu" to "you" in combo docs (#6510) %!s(int64=5) %!d(string=hai) anos
feature_command.md a2e91ebec9 Update IS_COMMAND definitions to use MOD_MASK_SHIFT (#6348) %!s(int64=5) %!d(string=hai) anos
feature_debounce_type.md 872744f5ab Update debounce docs (#7355) %!s(int64=5) %!d(string=hai) anos
feature_dip_switch.md dab4967f1b Add Dip Switch as a core feature (#6140) %!s(int64=5) %!d(string=hai) anos
feature_dynamic_macros.md 542cb0a8ce [Core] Convert Dynamic Macro to a Core Feature (#5948) %!s(int64=5) %!d(string=hai) anos
feature_encoders.md 26eef35f07 2020 February 29 Breaking Changes Update (#8064) %!s(int64=5) %!d(string=hai) anos
feature_grave_esc.md 3510d8dc8d Document an annoyance with Grave Escape and macOS Terminal (#5483) %!s(int64=6) %!d(string=hai) anos
feature_haptic_feedback.md f275ffbdfc Minor grammar and filename fixes in docs (#7559) %!s(int64=5) %!d(string=hai) anos
feature_hd44780.md b23f6011c3 Remove build option firmware size impacts (#6947) %!s(int64=5) %!d(string=hai) anos
feature_key_lock.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
feature_layouts.md 40e67a3074 Add a mechanism for force building a particular community layout (#5027) %!s(int64=6) %!d(string=hai) anos
feature_leader_key.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
feature_led_matrix.md 24df54b807 Add documentation for led matrix %!s(int64=6) %!d(string=hai) anos
feature_macros.md 444fd3b1cc Add support for delays in send_string. (#8244) %!s(int64=5) %!d(string=hai) anos
feature_mouse_keys.md 4856552f8b Update mouse keys docs (#5653) %!s(int64=6) %!d(string=hai) anos
feature_oled_driver.md 833c5ae87a Buffer based OLED panning, write byte to buffer at arbitrary index (#8055) %!s(int64=5) %!d(string=hai) anos
feature_pointing_device.md af37bb2f78 Fix some of the more obvious typos %!s(int64=7) %!d(string=hai) anos
feature_ps2_mouse.md c73d6f6ac8 [Docs] Removed dead link (#6922) %!s(int64=5) %!d(string=hai) anos
feature_rgb_matrix.md a1452db98a Configuration values for starting HSV and speed (#7740) %!s(int64=5) %!d(string=hai) anos
feature_rgblight.md 2ffb08843b Feature: RGBLight layers (#7768) %!s(int64=5) %!d(string=hai) anos
feature_space_cadet.md d16db69367 Added mod carry over from press to release. (#5866) %!s(int64=6) %!d(string=hai) anos
feature_split_keyboard.md 307be48de9 Reduce SPLIT_USB_TIMEOUT by 500ms (#7637) %!s(int64=5) %!d(string=hai) anos
feature_stenography.md c0baf2a964 Improve state/chord handling and clean up namespace %!s(int64=7) %!d(string=hai) anos
feature_swap_hands.md fd085837e1 fix swap_hands keycodes in documentation (#3588) %!s(int64=6) %!d(string=hai) anos
feature_tap_dance.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
feature_terminal.md b23f6011c3 Remove build option firmware size impacts (#6947) %!s(int64=5) %!d(string=hai) anos
feature_thermal_printer.md 4c675a83ba Format keycode tables %!s(int64=7) %!d(string=hai) anos
feature_unicode.md bb8d4b4d23 `send_unicode_string()`: Add support for code points > 0xFFFF (#8236) %!s(int64=5) %!d(string=hai) anos
feature_userspace.md 5a6737a778 Send string keycode tweaks (#7471) %!s(int64=5) %!d(string=hai) anos
feature_velocikey.md c1c5922aae Velocikey: Match RGB animation speed to typing speed (#3754) %!s(int64=6) %!d(string=hai) anos
flashing.md 3c98854044 update flashing.md %!s(int64=5) %!d(string=hai) anos
flashing_bootloadhid.md 235da6973d Install bootloadHid as part of qmk_install (#7463) %!s(int64=5) %!d(string=hai) anos
fuse.txt ca01d94005 convert docs to lowercase and underscores %!s(int64=8) %!d(string=hai) anos
getting_started_introduction.md 09c7304bd9 [Docs] update git command and directory name of documents (#7619) %!s(int64=5) %!d(string=hai) anos
getting_started_make_guide.md 6e710426a4 Add docs for 'CUSTOM_MATRIX = lite' (#7906) %!s(int64=5) %!d(string=hai) anos
getting_started_vagrant.md dfdd9e821b [Docs] Update getting_started_vagrant.md (#7203) %!s(int64=5) %!d(string=hai) anos
hand_wire.md 961477c791 make sure all our redirects are in order %!s(int64=5) %!d(string=hai) anos
hardware_avr.md f87908228a Remove apostrophe from various abbreviations' plural forms (#7050) %!s(int64=5) %!d(string=hai) anos
hardware_drivers.md d13ada1162 Add customisable EEPROM driver selection (#7274) %!s(int64=5) %!d(string=hai) anos
hardware_keyboard_guidelines.md de386e5972 Fixed typos in documentation (#6871) %!s(int64=5) %!d(string=hai) anos
how_a_matrix_works.md a95a314f78 refactor How a Matrix Works doc %!s(int64=5) %!d(string=hai) anos
how_keyboards_work.md d5316e9714 Update URL for `60-keyboard.hwdb` (#7185) %!s(int64=5) %!d(string=hai) anos
i2c_driver.md e6a6b1f122 [Docs] Update i2c_driver.md (#6665) %!s(int64=5) %!d(string=hai) anos
index.html 961477c791 make sure all our redirects are in order %!s(int64=5) %!d(string=hai) anos
internals_defines.md ae7284edb8 rename api docs to internals %!s(int64=7) %!d(string=hai) anos
internals_gpio_control.md 403c139b34 [Docs] Add AVR and ARM examples to GPIO Commands (#6942) %!s(int64=5) %!d(string=hai) anos
internals_input_callback_reg.md ae7284edb8 rename api docs to internals %!s(int64=7) %!d(string=hai) anos
internals_midi_device.md ae7284edb8 rename api docs to internals %!s(int64=7) %!d(string=hai) anos
internals_midi_device_setup_process.md ae7284edb8 rename api docs to internals %!s(int64=7) %!d(string=hai) anos
internals_midi_util.md ae7284edb8 rename api docs to internals %!s(int64=7) %!d(string=hai) anos
internals_send_functions.md ae7284edb8 rename api docs to internals %!s(int64=7) %!d(string=hai) anos
internals_sysex_tools.md ae7284edb8 rename api docs to internals %!s(int64=7) %!d(string=hai) anos
isp_flashing_guide.md abd36de5ad [Docs] Update ISP Flashing guide (#8149) %!s(int64=5) %!d(string=hai) anos
keycodes.md 2939751eb3 keycodes.md: hard-code section link id attributes %!s(int64=5) %!d(string=hai) anos
keycodes_basic.md 606813b72d Remove obsolete note about media keys in MacOS (#6631) %!s(int64=5) %!d(string=hai) anos
keycodes_us_ansi_shifted.md 40de65eac4 Backslash-escape pipe character in keycode lists (#7157) %!s(int64=5) %!d(string=hai) anos
keymap.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
mod_tap.md 9035c3497e break feature_advanced_keycodes.md up into multiple files %!s(int64=5) %!d(string=hai) anos
newbs.md 45e218ceec overhaul the newbs guide %!s(int64=5) %!d(string=hai) anos
newbs_building_firmware.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
newbs_building_firmware_configurator.md d5f34c4810 Polish Configurator section %!s(int64=5) %!d(string=hai) anos
newbs_flashing.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
newbs_getting_started.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
newbs_git_best_practices.md 3152bf572b [Docs] Restructure of Git Best Practices doc (#7231) %!s(int64=5) %!d(string=hai) anos
newbs_git_resolving_merge_conflicts.md 3152bf572b [Docs] Restructure of Git Best Practices doc (#7231) %!s(int64=5) %!d(string=hai) anos
newbs_git_resynchronize_a_branch.md 26a823082b [Docs] Fix minor differences in docs/newbs_git_resynchronize_a_branch.md (#7728) %!s(int64=5) %!d(string=hai) anos
newbs_git_using_your_master_branch.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
newbs_learn_more_resources.md 45e218ceec overhaul the newbs guide %!s(int64=5) %!d(string=hai) anos
newbs_testing_debugging.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
one_shot_keys.md 9035c3497e break feature_advanced_keycodes.md up into multiple files %!s(int64=5) %!d(string=hai) anos
other_eclipse.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
other_vscode.md e9ace14878 [Docs] Add VSCode guide to docs (#5124) %!s(int64=6) %!d(string=hai) anos
power.txt bb53635f33 Trim trailing whitespace %!s(int64=7) %!d(string=hai) anos
proton_c_conversion.md 1af31a0523 Update feature support for Proton C (#7596) %!s(int64=5) %!d(string=hai) anos
qmk.css ccc87421e7 Some more tweaks to make everything look nice %!s(int64=7) %!d(string=hai) anos
quantum_keycodes.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
redirects.json d569f08771 Configuration system for CLI (#6708) %!s(int64=5) %!d(string=hai) anos
ref_functions.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
reference_configurator_support.md d5f34c4810 Polish Configurator section %!s(int64=5) %!d(string=hai) anos
reference_glossary.md f87908228a Remove apostrophe from various abbreviations' plural forms (#7050) %!s(int64=5) %!d(string=hai) anos
reference_info_json.md bcb1815420 Add label to the info.json reference %!s(int64=6) %!d(string=hai) anos
sidebar.css 3bd65d2173 CSS updates: ul and pre elements %!s(int64=5) %!d(string=hai) anos
support.md 961477c791 make sure all our redirects are in order %!s(int64=5) %!d(string=hai) anos
sw.js 303f425c6b Fix up info boxes. %!s(int64=7) %!d(string=hai) anos
tap_hold.md 4e826ba61f Correct typo in tap_hold.md (#8326) %!s(int64=5) %!d(string=hai) anos
translating.md 7164e8eeb5 Add yet another dictionary for the QMK Firmware docs sidebar heading (#7504) %!s(int64=5) %!d(string=hai) anos
understanding_qmk.md f87908228a Remove apostrophe from various abbreviations' plural forms (#7050) %!s(int64=5) %!d(string=hai) anos
unit_testing.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=5) %!d(string=hai) anos
usb_nkro.txt 995c3141a6 convert docs to lowercase and underscores %!s(int64=8) %!d(string=hai) anos
ws2812_driver.md f74c769a19 PWM DMA based RGB Underglow for STM32 (#7928) %!s(int64=5) %!d(string=hai) anos

README.md

Quantum Mechanical Keyboard Firmware

Current Version Build Status Discord Docs Status GitHub contributors GitHub forks

What is QMK Firmware?

QMK (Quantum Mechanical Keyboard) is an open source community centered around developing computer input devices. The community encompasses all sorts of input devices, such as keyboards, mice, and MIDI devices. A core group of collaborators maintains QMK Firmware, QMK Configurator, QMK Toolbox, qmk.fm, and this documentation with the help of community members like you.

Get Started

Totally new to QMK? There are two ways to get started:

Make It Yours

QMK has lots of features to explore, and a good deal of reference documentation to dig through. Most features are taken advantage of by modifying your keymap, and changing the keycodes.

Need help?

Check out the support page to see how you can get help using QMK.

Give Back

There are a lot of ways you can contribute to the QMK Community. The easiest way to get started is to use it and spread the word to your friends.