QMK Bot aa979132f9 Merge remote-tracking branch 'origin/develop' into xap 3 lat temu
..
ChangeLog b865b9e170 Add changelog for Leader Key refactor (#19953) 3 lat temu
gitbook 4580d3a730 RGB improvements (#1684) 9 lat temu
internals 75544d9127 Move Doxygen docs to subdirectory (#16561) 4 lat temu
ja fcf8b804ed [Core] Refactor `keyevent_t` for 1ms timing resolution (#15847) 3 lat temu
zh-cn 73b376a881 [Chore] Remove stray mod tap interrupt defines and per key functions (#20347) 3 lat temu
.nojekyll 9e5676650e Use docsfy to replace gitbook 8 lat temu
CNAME 4d26137e2a Create CNAME 8 lat temu
README.md 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 5 lat temu
_langs.md 1c1e6fa47d Remove stale docs translations (#15737) 4 lat temu
_summary.md aa6881b8c6 Merge remote-tracking branch 'origin/develop' into xap 3 lat temu
adc_driver.md 272281f1a0 Add analog support for RP2040 (#19453) 3 lat temu
api_development_environment.md 99850aabca Add API documentation 6 lat temu
api_development_overview.md 99850aabca Add API documentation 6 lat temu
api_docs.md 9e78e65a56 2022 Nov 26 changelog. (#19164) 3 lat temu
api_overview.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 5 lat temu
arm_debugging.md 52c18ef026 [Docs] fix docs (#7642) 6 lat temu
audio_driver.md 19145704e4 [Core] Adjust PWM hardware audio driver for RP2040 (#17723) 3 lat temu
breaking_changes.md 7ebb8c2dec Update branch names to reflect configurator's new deployment. (#19999) 3 lat temu
breaking_changes_history.md f5ccd04a5f Stub changelog 3 lat temu
breaking_changes_instructions.md fced377ac0 2020 May 30 Breaking Changes Update (#9215) 6 lat temu
chibios_upgrade_instructions.md 7ebb8c2dec Update branch names to reflect configurator's new deployment. (#19999) 3 lat temu
cli.md fcf150bd82 Streamline the macos install process 6 lat temu
cli_commands.md 1b3f7fcf7d Add `qmk find` command, reuse logic for `qmk mass-compile`. (#20139) 3 lat temu
cli_configuration.md e4823aadec Fix capitalisation of "GitHub" (#9184) 6 lat temu
cli_development.md 959f4cbb62 docs: some typos (#18582) 3 lat temu
cli_tab_complete.md ee26d3e77f Add Zsh note for tab complete (#17226) 4 lat temu
coding_conventions_c.md 959f4cbb62 docs: some typos (#18582) 3 lat temu
coding_conventions_python.md 959f4cbb62 docs: some typos (#18582) 3 lat temu
compatible_microcontrollers.md ac5e6b6a3b Tentative Teensy 3.5 support (#14420) 4 lat temu
config_options.md 47966dc2a6 Migrate `rgblight.pin` and `RGB_DI_PIN` to `ws2812.pin` (#20303) 3 lat temu
configurator_architecture.md 9a0118c603 Architecture documentation for Configurator and API (#13935) 5 lat temu
configurator_default_keymaps.md 961f0b7b2d Reallocate SAFE_RANGE (#19909) 3 lat temu
configurator_diagram.drawio 9a0118c603 Architecture documentation for Configurator and API (#13935) 5 lat temu
configurator_diagram.svg 9a0118c603 Architecture documentation for Configurator and API (#13935) 5 lat temu
configurator_step_by_step.md f6a7f4d4ac update the Chinese translation based on the latest English version (#14924) 4 lat temu
configurator_troubleshooting.md d5f34c4810 Polish Configurator section 6 lat temu
contributing.md 22be5190ab Minor cleanup to breaking/checklist docs. (#19596) 3 lat temu
custom_matrix.md 11d49d00e7 Remove matrix_init_quantum/matrix_scan_quantum (#19806) 3 lat temu
custom_quantum_functions.md 012fa6dd45 [Doc] Add example to keyboard housekeeping and some minor fixes (#19968) 3 lat temu
data_driven_config.md 479d8de622 Format DD mappings and schemas (#18924) 3 lat temu
documentation_best_practices.md 995464cb9c [Docs] fix file path (#9540) 6 lat temu
documentation_templates.md b756c53c7b [Docs] Touch up documentation templates & porting keyboard docs (#19573) 3 lat temu
driver_installation_zadig.md 01f31bf28e [Docs] RESET -> QK_BOOT (#18365) 3 lat temu
easy_maker.md f6a7f4d4ac update the Chinese translation based on the latest English version (#14924) 4 lat temu
eeprom_driver.md 5846b40f74 RP2040 emulated EEPROM. (#17519) 4 lat temu
faq_build.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 5 lat temu
faq_debug.md 18dc851e37 Remove legacy Debug keycode (#18769) 3 lat temu
faq_general.md d6701b3ac7 Fix typos and reword some sentences in FAQs (#11546) 5 lat temu
faq_keymap.md d241e80533 Keymap FAQ updates (#17130) 4 lat temu
faq_misc.md 01f31bf28e [Docs] RESET -> QK_BOOT (#18365) 3 lat temu
feature_advanced_keycodes.md e1afcda1c0 Update code example to match description (#20528) 3 lat temu
feature_audio.md 69fa02c37d Align audio keycode names (#18962) 3 lat temu
feature_auto_shift.md 515dd18c28 Remove IGNORE_MOD_TAP_INTERRUPT_PER_KEY in favour of HOLD_ON_OTHER_KEY_PRESS_PER_KEY (#15741) 3 lat temu
feature_autocorrect.md a71e58270c Document Autocorrect callback functions (#20115) 3 lat temu
feature_backlight.md 219afaba42 Reworked backlight keycodes. (#18961) 3 lat temu
feature_bluetooth.md d810878d5e Normalise output selection (Bluetooth) keycodes (#19004) 3 lat temu
feature_bootmagic.md 9aaf4a5a9b Add split keyboard example for Bootmagic Lite (#16349) 4 lat temu
feature_caps_word.md ae63c0f509 [Core] Caps Word "Invert on shift" option: pressing Shift inverts the shift state. (#20092) 3 lat temu
feature_combo.md 387b64a79b [Docs] Remove combo count from array (#20511) 3 lat temu
feature_command.md a03aa301de Remove Full Bootmagic (#13846) 5 lat temu
feature_converters.md dbfbf6c2c4 Merge remote-tracking branch 'origin/master' into develop 3 lat temu
feature_debounce_type.md f56cf93fa1 Add debounce time description (#20333) 3 lat temu
feature_digitizer.md 6cc9513ab0 Digitizer feature improvements (#19034) 3 lat temu
feature_dip_switch.md 9d1c98c891 Added right vs left specific pin assignments for dip switch (#13074) 5 lat temu
feature_dynamic_macros.md 68efea70b2 Add direction to dynamic_macro_record_start_user (#19689) 3 lat temu
feature_eeprom.md 7407347be1 Remove rgblight_list.h (#18878) 3 lat temu
feature_encoders.md c9f619124d Encodermap direction define. (#20454) 3 lat temu
feature_grave_esc.md b45a037c7e Rename some Quantum keycodes (#15968) 4 lat temu
feature_haptic_feedback.md e4d2ba9a4d Align haptic feedback keycode names (#18964) 3 lat temu
feature_hd44780.md 9ee2effe8e HD44780 driver rework (#16370) 4 lat temu
feature_joystick.md 917d93e968 [Docs] Fix `JOYSTICK_AXIS_COUNT` name in docs (#19605) 3 lat temu
feature_key_lock.md eeb3f9c043 Merge remote-tracking branch 'origin/master' into develop 3 lat temu
feature_key_overrides.md 012fa6dd45 [Doc] Add example to keyboard housekeeping and some minor fixes (#19968) 3 lat temu
feature_layers.md 369c5a213d Add layer-cycle example (#19069) 3 lat temu
feature_layouts.md b56282756b [Docs] Clean up some code block languages (#14434) 5 lat temu
feature_leader_key.md bbf7a20b33 Refactor Leader key feature (#19632) 3 lat temu
feature_led_indicators.md 1124bbc1db Remove deprecated led_set_kb (#19273) 3 lat temu
feature_led_matrix.md 5c4b53a143 [Bug] Realign and size check EECONFIG structures (#20541) 3 lat temu
feature_macros.md 4d33f356a6 Macro keycode name refactoring (#18958) 3 lat temu
feature_midi.md 650864c27d Merge remote-tracking branch 'origin/master' into develop 3 lat temu
feature_mouse_keys.md 2a61bfc27d add "inertia" mode for mouse keys (#18774) 3 lat temu
feature_oled_driver.md 2ddad246ce OLED Driver improvements (#20331) 3 lat temu
feature_os_detection.md 85ee55ff3b Detect host OS based on USB fingerprint (#18463) 3 lat temu
feature_pointing_device.md 59eb8940b0 Make Pointing Device Auto Layer more configurable (#20061) 3 lat temu
feature_programmable_button.md 6bbe8b6edd Normalise Joystick and Programmable Button keycodes (#18832) 3 lat temu
feature_ps2_mouse.md 0237ff0c62 [Core] Rework PS/2 driver selection (#17892) 4 lat temu
feature_rawhid.md b56282756b [Docs] Clean up some code block languages (#14434) 5 lat temu
feature_rgb_matrix.md 5c4b53a143 [Bug] Realign and size check EECONFIG structures (#20541) 3 lat temu
feature_rgblight.md 47966dc2a6 Migrate `rgblight.pin` and `RGB_DI_PIN` to `ws2812.pin` (#20303) 3 lat temu
feature_secure.md ec2414c074 Deprecate `SECURE_*` keycodes for `QK_SECURE_*` (#18847) 3 lat temu
feature_send_string.md 3ecb0a80af Feature-ify Send String (#17275) 4 lat temu
feature_sequencer.md f587a0c548 Align sequencer keycodes (#19875) 3 lat temu
feature_space_cadet.md 002b58f0e4 Normalise Space Cadet keycodes (#18864) 3 lat temu
feature_split_keyboard.md a518e1e5d8 Sync activity timestamps between sides. (#20192) 3 lat temu
feature_st7565.md 37fba09021 ST7565 invert (#13237) 5 lat temu
feature_stenography.md fcf8b804ed [Core] Refactor `keyevent_t` for 1ms timing resolution (#15847) 3 lat temu
feature_swap_hands.md f5b7491883 Add swap hands toggle functions (#20381) 3 lat temu
feature_tap_dance.md 1978007fae Tap Dance: remove `qk_` prefix (#19313) 3 lat temu
feature_tri_layer.md fe02abc479 [Core] Tri Layer Keys (#19795) 3 lat temu
feature_unicode.md ea96799970 Merge remote-tracking branch 'origin/master' into develop 3 lat temu
feature_userspace.md 40bc5a8192 Enable CLI flashing via mdloader (#14729) 4 lat temu
feature_velocikey.md 74484e21af Deprecate `VLK_TOG` for `VK_TOGG` (#18807) 3 lat temu
feature_wpm.md 990ee8075e Fix typo in `feature_wpm.md` title (#20464) 3 lat temu
flash_driver.md 71c0b97bce Added external spi flash driver. (#15419) 4 lat temu
flashing.md 82a94ea1bd Add f303 to tinyuf2 bootloader support (#19620) 3 lat temu
flashing_bootloadhid.md 01f31bf28e [Docs] RESET -> QK_BOOT (#18365) 3 lat temu
fuse.txt 1b7b72c0e9 Ensure single newline at EOF for core files (#11310) 5 lat temu
getting_started_docker.md b56282756b [Docs] Clean up some code block languages (#14434) 5 lat temu
getting_started_github.md b2a186cf92 Purge uGFX. (#14720) 4 lat temu
getting_started_introduction.md 09c7304bd9 [Docs] update git command and directory name of documents (#7619) 6 lat temu
getting_started_make_guide.md 36d123e9c5 Add support for deferred executors. (#14859) 4 lat temu
gpio_control.md cf935d97ae Fix functions with empty params (#19647) 3 lat temu
hand_wire.md fc7e9efd21 Improve importer workflow (#17707) 4 lat temu
hardware_drivers.md b2a186cf92 Purge uGFX. (#14720) 4 lat temu
hardware_keyboard_guidelines.md 4704a4e053 Merge remote-tracking branch 'origin/master' into develop 3 lat temu
how_a_matrix_works.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 5 lat temu
how_keyboards_work.md b85c224b7c docs: reflect systemd's change in language (#17322) 4 lat temu
i2c_driver.md 81be7bb7b5 Fix i2c driver doc: Incorrect name (#16898) 4 lat temu
index.html 90fc901624 mermaid? 4 lat temu
isp_flashing_guide.md 952cdc7be5 Adds Docs option for ArduinoIDE's example `ArduinoISP` (#20486) 3 lat temu
keycodes.md 403b0addea Align magic keycodes (#19877) 3 lat temu
keycodes_basic.md 0152dd811d Move `KC_MISSION_CONTROL`/`KC_LAUNCHPAD` keycodes to core (#19884) 3 lat temu
keycodes_magic.md 403b0addea Align magic keycodes (#19877) 3 lat temu
keycodes_us_ansi_shifted.md 14f886d03b [Docs] Address some typos (also in moonlander matrix.c) (#16248) 4 lat temu
keymap.md 95671148a4 [Docs] Change defines to enums in examples (#19793) 3 lat temu
mod_tap.md 1899793f27 Make IGNORE_MOD_TAP_INTERRUPT the default behaviour for mod-taps (#20211) 3 lat temu
newbs.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 5 lat temu
newbs_building_firmware.md 32dabd5320 Align new-keymap with new-keyboard (#19229) 3 lat temu
newbs_building_firmware_configurator.md 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 5 lat temu
newbs_building_firmware_workflow.md c7f58145fb Update qmk_cli container references (#20154) 3 lat temu
newbs_flashing.md 4e35697e1a Add note about qmk doctor in newbs_flashing.md (#15688) 4 lat temu
newbs_getting_started.md 12de0297ed Suggest `qmk list-keyboards` when testing build environment (#19471) 3 lat temu
newbs_git_best_practices.md 3152bf572b [Docs] Restructure of Git Best Practices doc (#7231) 6 lat temu
newbs_git_resolving_merge_conflicts.md 3152bf572b [Docs] Restructure of Git Best Practices doc (#7231) 6 lat temu
newbs_git_resynchronize_a_branch.md f667821ed3 [Docs] Resynchronizing Your Branch including submodules (#19268) 3 lat temu
newbs_git_using_your_master_branch.md 54c58ea6de Add explicit id tags to externally linked headers 6 lat temu
newbs_learn_more_resources.md 70c6b183df [Docs] Refactor code examples (#18003) 4 lat temu
newbs_testing_debugging.md 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 5 lat temu
one_shot_keys.md 9ddb0165a4 fix typo (#19189) 3 lat temu
other_eclipse.md 14f886d03b [Docs] Address some typos (also in moonlander matrix.c) (#16248) 4 lat temu
other_vscode.md ec83c0b185 Add recommendations for VSCode intellisense (#19402) 3 lat temu
platformdev_blackpill_f4x1.md e5b36e2c3f Docs: typo fixes in platformdev_blackpill_f4x1.md (#19635) 3 lat temu
platformdev_chibios_earlyinit.md 01f31bf28e [Docs] RESET -> QK_BOOT (#18365) 3 lat temu
platformdev_proton_c.md 345e19f691 Add converter docs (#17593) 4 lat temu
platformdev_rp2040.md 896d9aa98c Add rp2040_ce and add elite-pi and helios as alias (#19830) 3 lat temu
platformdev_selecting_arm_mcu.md 3afd2d81b8 Add documentation for selecting an Arm MCU (#9046) 6 lat temu
porting_your_keyboard_to_qmk.md f067f42305 [Docs] Discuss layout macro (#19803) 3 lat temu
power.txt bb53635f33 Trim trailing whitespace 8 lat temu
pr_checklist.md d06ce0153b PR checklist: keyboard updates must go to `develop` (#20323) 3 lat temu
qmk.css ccc87421e7 Some more tweaks to make everything look nice 8 lat temu
qmk_custom_dark.css 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 5 lat temu
qmk_custom_light.css 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 5 lat temu
quantum_keycodes.md a6f3194397 Add ability to enter bootloader mode from `QK_MAKE` (#17745) 4 lat temu
quantum_painter.md 82a34aee30 [Feature] Disable debug on QP's internal task (#20623) 3 lat temu
quantum_painter_lvgl.md cf935d97ae Fix functions with empty params (#19647) 3 lat temu
quantum_painter_qff.md 1f2b1dedcc Quantum Painter (#10174) 4 lat temu
quantum_painter_qgf.md 1f2b1dedcc Quantum Painter (#10174) 4 lat temu
quantum_painter_rle.md 1f2b1dedcc Quantum Painter (#10174) 4 lat temu
redirects.json d569f08771 Configuration system for CLI (#6708) 7 lat temu
ref_functions.md c347e732be Remove legacy EEPROM clear keycodes (#18782) 3 lat temu
reference_configurator_support.md f529580860 Basic keycode overhaul (#14726) 4 lat temu
reference_glossary.md 014aa0661e Fix Space Cadet md link (#14300) 5 lat temu
reference_info_json.md 3fc9c03559 Remove `all` from list of animations in `info.json` (#19978) 3 lat temu
reference_keymap_extras.md 4a8bd7b9a5 Rename keymap_extras headers for consistency (#16939) 4 lat temu
serial_driver.md 3f45fd4924 Fix serial_driver.md list item numbering (#19819) 3 lat temu
spi_driver.md 0e59827023 Merge remote-tracking branch 'upstream/master' into develop 5 lat temu
squeezing_avr.md 46bbb81dd2 Add RP2040 Community Edition alias for Liatris (#19966) 3 lat temu
support.md e4823aadec Fix capitalisation of "GitHub" (#9184) 6 lat temu
support_deprecation_policy.md d1a430b348 Initial deprecation policy documentation. (#19908) 3 lat temu
sw.js 303f425c6b Fix up info boxes. 8 lat temu
syllabus.md f4966a19d6 [Docs] Squeezing space out of AVR (#15243) 4 lat temu
tap_hold.md 1899793f27 Make IGNORE_MOD_TAP_INTERRUPT the default behaviour for mod-taps (#20211) 3 lat temu
translating.md 7164e8eeb5 Add yet another dictionary for the QMK Firmware docs sidebar heading (#7504) 6 lat temu
uart_driver.md 04b51e381e Update UART driver API (#14839) 4 lat temu
understanding_qmk.md 419a7944a4 Update understanding_qmk.md (#19664) 3 lat temu
unit_testing.md 1c0347b8b8 Remove SERIAL_LINK feature (#14727) 4 lat temu
usb_nkro.txt 995c3141a6 convert docs to lowercase and underscores 9 lat temu
ws2812_driver.md 47966dc2a6 Migrate `rgblight.pin` and `RGB_DI_PIN` to `ws2812.pin` (#20303) 3 lat temu
xap.md 90fc901624 mermaid? 4 lat temu
xap_0.0.1.md 9fcab705a9 Align client/docs gen with recent changes 3 lat temu
xap_0.1.0.md 9fcab705a9 Align client/docs gen with recent changes 3 lat temu
xap_0.2.0.md 9fcab705a9 Align client/docs gen with recent changes 3 lat temu
xap_0.3.0.md 9fcab705a9 Align client/docs gen with recent changes 3 lat temu
xap_protocol.md 9fcab705a9 Align client/docs gen with recent changes 3 lat temu

README.md

Quantum Mechanical Keyboard Firmware

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

?> **Basic** [QMK Configurator](newbs_building_firmware_configurator.md)
User friendly graphical interfaces, no programming knowledge required. ?> **Advanced** [Use The Source](newbs.md)
More powerful, but harder to use.

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.