QMK Bot 06391314cd Merge remote-tracking branch 'origin/master' into develop 2 lat temu
..
ChangeLog d0af56da33 Breaking changes for 2022q2. (#17221) 3 lat temu
gitbook 4580d3a730 RGB improvements (#1684) 7 lat temu
internals 75544d9127 Move Doxygen docs to subdirectory (#16561) 3 lat temu
ja f27b617f36 [Core] Process all changed keys in one scan loop, deprecate `QMK_KEYS_PER_SCAN` (#15292) 2 lat temu
zh-cn 0da6562c4d Make default layer size 16-bit (#15286) 3 lat temu
.nojekyll 9e5676650e Use docsfy to replace gitbook 7 lat temu
CNAME 4d26137e2a Create CNAME 7 lat temu
README.md 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 4 lat temu
_langs.md 1c1e6fa47d Remove stale docs translations (#15737) 3 lat temu
_summary.md 1d45c99355 Merge remote-tracking branch 'origin/master' into develop 2 lat temu
adc_driver.md 1646c0f26c 2021 May 29 Breaking Changes Update (#13034) 4 lat temu
api_development_environment.md 99850aabca Add API documentation 5 lat temu
api_development_overview.md 99850aabca Add API documentation 5 lat temu
api_docs.md 14f886d03b [Docs] Address some typos (also in moonlander matrix.c) (#16248) 3 lat temu
api_overview.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 4 lat temu
arm_debugging.md 52c18ef026 [Docs] fix docs (#7642) 5 lat temu
audio_driver.md c0763363db [Docs] Fix tables in Audio driver document (#17780) 2 lat temu
breaking_changes.md 89a5d5aea0 Fixup command sequencing for master/develop. (#17227) 3 lat temu
breaking_changes_history.md de6360feca stub changelog 3 lat temu
breaking_changes_instructions.md fced377ac0 2020 May 30 Breaking Changes Update (#9215) 5 lat temu
chibios_upgrade_instructions.md 5da04fb45b Update to ChibiOS 20.3.4, support builds against trunk (#14208) 3 lat temu
cli.md fcf150bd82 Streamline the macos install process 5 lat temu
cli_commands.md 59e28b8958 Add cli command to import keyboard|keymap|kbfirmware (#16668) 3 lat temu
cli_configuration.md e4823aadec Fix capitalisation of "GitHub" (#9184) 5 lat temu
cli_development.md da6d6ce2e1 Some docs improvements (#15845) 3 lat temu
cli_tab_complete.md ee26d3e77f Add Zsh note for tab complete (#17226) 3 lat temu
coding_conventions_c.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 4 lat temu
coding_conventions_python.md fefd7fdc51 Refactor new-keyboard to be python3.7 compatible (#14707) 3 lat temu
compatible_microcontrollers.md ac5e6b6a3b Tentative Teensy 3.5 support (#14420) 3 lat temu
config_options.md 154d35ac14 Remove `UNUSED_PINS` (#17931) 2 lat temu
configurator_architecture.md 9a0118c603 Architecture documentation for Configurator and API (#13935) 3 lat temu
configurator_default_keymaps.md f529580860 Basic keycode overhaul (#14726) 3 lat temu
configurator_diagram.drawio 9a0118c603 Architecture documentation for Configurator and API (#13935) 3 lat temu
configurator_diagram.svg 9a0118c603 Architecture documentation for Configurator and API (#13935) 3 lat temu
configurator_step_by_step.md f6a7f4d4ac update the Chinese translation based on the latest English version (#14924) 3 lat temu
configurator_troubleshooting.md d5f34c4810 Polish Configurator section 5 lat temu
contributing.md f6a7f4d4ac update the Chinese translation based on the latest English version (#14924) 3 lat temu
custom_matrix.md 8224f62806 Make debounce() signal changes in the cooked matrix as return value (#17554) 3 lat temu
custom_quantum_functions.md 3403f5813c Point out that deferred execution needs to be enabled in rules.mk (#16196) 3 lat temu
data_driven_config.md ace0603f4f Change data driven "str" type to represent a quoted string literal (#16516) 3 lat temu
documentation_best_practices.md 995464cb9c [Docs] fix file path (#9540) 5 lat temu
documentation_templates.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 4 lat temu
driver_installation_zadig.md e50867d52d [Core] Add support for RISC-V builds and GD32VF103 MCU (#12508) 3 lat temu
easy_maker.md f6a7f4d4ac update the Chinese translation based on the latest English version (#14924) 3 lat temu
eeprom_driver.md 5846b40f74 RP2040 emulated EEPROM. (#17519) 3 lat temu
faq_build.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 4 lat temu
faq_debug.md 683eeca2e2 [Docs] Fix custom debug function and sample output (#17790) 2 lat temu
faq_general.md d6701b3ac7 Fix typos and reword some sentences in FAQs (#11546) 4 lat temu
faq_keymap.md d241e80533 Keymap FAQ updates (#17130) 3 lat temu
faq_misc.md 84ea77ead6 Remove `BOOTMAGIC_ENABLE = lite` option (#15002) 3 lat temu
feature_advanced_keycodes.md 8153b55e07 Add trailing parens to `get_oneshot_mods` in feature_advanced_keycodes.md (#17211) 3 lat temu
feature_audio.md 4e3726bfe1 Fixup Audio startup and add to documents (#13606) 3 lat temu
feature_auto_shift.md d9393b8684 Add Retro Shift (Auto Shift for Tap Hold via Retro Tapping) and Custom Auto Shifts (#11059) 3 lat temu
feature_backlight.md b56282756b [Docs] Clean up some code block languages (#14434) 3 lat temu
feature_bluetooth.md 7d685956cc Rename `AdafruitBLE` to `BluefruitLE` (#16127) 3 lat temu
feature_bootmagic.md 9aaf4a5a9b Add split keyboard example for Bootmagic Lite (#16349) 3 lat temu
feature_caps_word.md 68b16bba68 [Core] Add Caps Word feature to core (#16588) 3 lat temu
feature_combo.md 21958a9343 New combo configuration options (#15083) 3 lat temu
feature_command.md a03aa301de Remove Full Bootmagic (#13846) 3 lat temu
feature_converters.md d510e80b89 Add Blok 2040 conversion (#17603) 2 lat temu
feature_debounce_type.md 25713dc222 Add sym_defer_pr debouncer type (#14948) 3 lat temu
feature_digitizer.md b56282756b [Docs] Clean up some code block languages (#14434) 3 lat temu
feature_dip_switch.md 9d1c98c891 Added right vs left specific pin assignments for dip switch (#13074) 3 lat temu
feature_dynamic_macros.md 9dc7b9d40c Added Wait time to sending each Keys for Dynamic Macros function (#16800) 3 lat temu
feature_encoders.md 70c6b183df [Docs] Refactor code examples (#18003) 2 lat temu
feature_grave_esc.md b45a037c7e Rename some Quantum keycodes (#15968) 3 lat temu
feature_haptic_feedback.md f090881aeb [Feature] Add support for multiple switchs/solenoids to Haptic Feedback engine (#15657) 3 lat temu
feature_hd44780.md 9ee2effe8e HD44780 driver rework (#16370) 3 lat temu
feature_joystick.md c05e8afe45 Joystick feature updates (#16732) 3 lat temu
feature_key_lock.md 7f67504993 Added cancel_key_lock function (#15321) 3 lat temu
feature_key_overrides.md f529580860 Basic keycode overhaul (#14726) 3 lat temu
feature_layers.md 2728603fe6 Move tmk_core/common/<plat> (#13918) 3 lat temu
feature_layouts.md b56282756b [Docs] Clean up some code block languages (#14434) 3 lat temu
feature_leader_key.md b1f8622513 [Docs] Update feature_leader_key.md (#16344) 3 lat temu
feature_led_indicators.md a5a4597311 Refine LED indicator documentation (#16304) 3 lat temu
feature_led_matrix.md f296e1d1e2 [Docs] Align LED Matrix docs with RGB matrix docs (#17140) 3 lat temu
feature_macros.md d02cefe613 implement `tap_code16_delay` (#17748) 2 lat temu
feature_midi.md 026d0e8bf1 Update feature_midi.md (#17390) 3 lat temu
feature_mouse_keys.md c725b6bf89 [Core] Mouse key kinetic mode fix (#17176) 3 lat temu
feature_oled_driver.md c10c2575b8 Remove OLED driver Split Common warning (#17862) 2 lat temu
feature_pointing_device.md ccdba43e59 Create generic Pointing Device Pin defines (#17776) 2 lat temu
feature_programmable_button.md 83988597f4 Add Support for USB programmable buttons (#12950) 3 lat temu
feature_ps2_mouse.md 84d5198ef9 Align PS/2 GPIO defines (#14745) 3 lat temu
feature_rawhid.md b56282756b [Docs] Clean up some code block languages (#14434) 3 lat temu
feature_rgb_matrix.md 06391314cd Merge remote-tracking branch 'origin/master' into develop 2 lat temu
feature_rgblight.md eb417b3aaf Add deprecated check for RGBLIGHT_ANIMATIONS (#17832) 2 lat temu
feature_secure.md 2a3dd95229 Add basic secure docs (#17577) 2 lat temu
feature_send_string.md 3ecb0a80af Feature-ify Send String (#17275) 3 lat temu
feature_sequencer.md 1b7b72c0e9 Ensure single newline at EOF for core files (#11310) 4 lat temu
feature_space_cadet.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 4 lat temu
feature_split_keyboard.md 1204cbb7ea Update feature_split_keyboard.md to add extra detail about left and right matrices. (#17492) 3 lat temu
feature_st7565.md 37fba09021 ST7565 invert (#13237) 4 lat temu
feature_stenography.md 95c1cc425e Rename postprocess_steno_user → post_process_steno_user (#17823) 2 lat temu
feature_swap_hands.md 8d5eacb7dd Add support for encoder mapping. (#13286) 3 lat temu
feature_tap_dance.md 1706da9054 tap-dance: Restructure code and document in more detail (#16394) 3 lat temu
feature_thermal_printer.md 4c675a83ba Format keycode tables 7 lat temu
feature_unicode.md f634fddd34 Remove `send_unicode_hex_string()` (#16518) 3 lat temu
feature_userspace.md 40bc5a8192 Enable CLI flashing via mdloader (#14729) 3 lat temu
feature_velocikey.md 84ea77ead6 Remove `BOOTMAGIC_ENABLE = lite` option (#15002) 3 lat temu
feature_wpm.md 0391801267 Fixes potential wpm sampling overflow, along with code comment fixes (#15277) 3 lat temu
flash_driver.md 71c0b97bce Added external spi flash driver. (#15419) 3 lat temu
flashing.md d717396708 [Core] Add Raspberry Pi RP2040 support (#14877) 3 lat temu
flashing_bootloadhid.md b56282756b [Docs] Clean up some code block languages (#14434) 3 lat temu
fuse.txt 1b7b72c0e9 Ensure single newline at EOF for core files (#11310) 4 lat temu
getting_started_docker.md b56282756b [Docs] Clean up some code block languages (#14434) 3 lat temu
getting_started_github.md b2a186cf92 Purge uGFX. (#14720) 3 lat temu
getting_started_introduction.md 09c7304bd9 [Docs] update git command and directory name of documents (#7619) 5 lat temu
getting_started_make_guide.md 36d123e9c5 Add support for deferred executors. (#14859) 3 lat temu
getting_started_vagrant.md b56282756b [Docs] Clean up some code block languages (#14434) 3 lat temu
gpio_control.md 75544d9127 Move Doxygen docs to subdirectory (#16561) 3 lat temu
hand_wire.md 6fd9b2feba [Docs] Added information on soldering diodes in parallel (#13117) 3 lat temu
hardware_drivers.md b2a186cf92 Purge uGFX. (#14720) 3 lat temu
hardware_keyboard_guidelines.md 87199eb2f5 add 'info_config.h' into docs/hardware_keyboard_guidelines.md (#16247) 3 lat temu
how_a_matrix_works.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 4 lat temu
how_keyboards_work.md b85c224b7c docs: reflect systemd's change in language (#17322) 3 lat temu
i2c_driver.md 81be7bb7b5 Fix i2c driver doc: Incorrect name (#16898) 3 lat temu
index.html 94755308e0 Fix anchors with <code> in table of content (#15169) 3 lat temu
isp_flashing_guide.md dde4120a1e ISP flashing guide: add instructions for flashing STM32duino bootloader (#16568) 3 lat temu
keycodes.md a6f3194397 Add ability to enter bootloader mode from `QK_MAKE` (#17745) 2 lat temu
keycodes_basic.md f529580860 Basic keycode overhaul (#14726) 3 lat temu
keycodes_magic.md 871eeae4ea PoC: Swap Escape and Caps (#16336) 3 lat temu
keycodes_us_ansi_shifted.md 14f886d03b [Docs] Address some typos (also in moonlander matrix.c) (#16248) 3 lat temu
keymap.md da6d6ce2e1 Some docs improvements (#15845) 3 lat temu
mod_tap.md 14f886d03b [Docs] Address some typos (also in moonlander matrix.c) (#16248) 3 lat temu
newbs.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) 4 lat temu
newbs_building_firmware.md d3584be431 [Docs] Update newbs_building_firmware.md (#16333) 3 lat temu
newbs_building_firmware_configurator.md 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 4 lat temu
newbs_building_firmware_workflow.md 64acbcb42a [Docs] Building with GitHub Userspace (#16271) 2 lat temu
newbs_flashing.md 4e35697e1a Add note about qmk doctor in newbs_flashing.md (#15688) 3 lat temu
newbs_getting_started.md 8fa7b62011 Attempt to discourage manual MSYS install for new users (#17556) 3 lat temu
newbs_git_best_practices.md 3152bf572b [Docs] Restructure of Git Best Practices doc (#7231) 5 lat temu
newbs_git_resolving_merge_conflicts.md 3152bf572b [Docs] Restructure of Git Best Practices doc (#7231) 5 lat temu
newbs_git_resynchronize_a_branch.md b56282756b [Docs] Clean up some code block languages (#14434) 3 lat temu
newbs_git_using_your_master_branch.md 54c58ea6de Add explicit id tags to externally linked headers 5 lat temu
newbs_learn_more_resources.md 70c6b183df [Docs] Refactor code examples (#18003) 2 lat temu
newbs_testing_debugging.md 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 4 lat temu
one_shot_keys.md fcce9f2a4f fix: Fix typo in documentation for one shot keys. ON_TOGG -> OS_TOGG (#13754) 3 lat temu
other_eclipse.md 14f886d03b [Docs] Address some typos (also in moonlander matrix.c) (#16248) 3 lat temu
other_vscode.md 5f72d54299 Update other_vscode.md (#17317) 3 lat temu
platformdev_blackpill_f411.md 8973835183 [Docs] Add information about WeAct Blackpill F411 (#16755) 2 lat temu
platformdev_chibios_earlyinit.md bbab8eb993 Make bootloader_jump for dualbank STM32 respect STM32_BOOTLOADER_DUAL_BANK_DELAY (#17178) 3 lat temu
platformdev_proton_c.md 345e19f691 Add converter docs (#17593) 3 lat temu
platformdev_rp2040.md 5846b40f74 RP2040 emulated EEPROM. (#17519) 3 lat temu
platformdev_selecting_arm_mcu.md 3afd2d81b8 Add documentation for selecting an Arm MCU (#9046) 5 lat temu
porting_your_keyboard_to_qmk.md 0d9a0d5d97 Align new-keyboard with recent schema updates (#16378) 3 lat temu
power.txt bb53635f33 Trim trailing whitespace 7 lat temu
pr_checklist.md 26954bbc28 [Docs] Add Encoder requirements to PR Checklist doc (#17634) 2 lat temu
qmk.css ccc87421e7 Some more tweaks to make everything look nice 7 lat temu
qmk_custom_dark.css 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 4 lat temu
qmk_custom_light.css 4e8166750b Small tweaks to docs to make them more user friendly (#11518) 4 lat temu
quantum_keycodes.md a6f3194397 Add ability to enter bootloader mode from `QK_MAKE` (#17745) 2 lat temu
quantum_painter.md 2bdd73f801 Add ST7735 driver to Quantum Painter (#17848) 2 lat temu
quantum_painter_qff.md 1f2b1dedcc Quantum Painter (#10174) 3 lat temu
quantum_painter_qgf.md 1f2b1dedcc Quantum Painter (#10174) 3 lat temu
quantum_painter_rle.md 1f2b1dedcc Quantum Painter (#10174) 3 lat temu
redirects.json d569f08771 Configuration system for CLI (#6708) 5 lat temu
ref_functions.md 71472a1692 Update ref_functions.md (replaced deprecated `RESET`) (#17436) 3 lat temu
reference_configurator_support.md f529580860 Basic keycode overhaul (#14726) 3 lat temu
reference_glossary.md 014aa0661e Fix Space Cadet md link (#14300) 3 lat temu
reference_info_json.md 82f0263e41 Merge remote-tracking branch 'origin/master' into develop 2 lat temu
reference_keymap_extras.md 4a8bd7b9a5 Rename keymap_extras headers for consistency (#16939) 3 lat temu
serial_driver.md d717396708 [Core] Add Raspberry Pi RP2040 support (#14877) 3 lat temu
spi_driver.md 0e59827023 Merge remote-tracking branch 'upstream/master' into develop 4 lat temu
squeezing_avr.md b1681fb6a1 [Core] Allow usage of AVRs minimal printf library (#16266) 3 lat temu
support.md e4823aadec Fix capitalisation of "GitHub" (#9184) 5 lat temu
sw.js 303f425c6b Fix up info boxes. 7 lat temu
syllabus.md f4966a19d6 [Docs] Squeezing space out of AVR (#15243) 3 lat temu
tap_hold.md 8f585153c4 Add GET_TAPPING_TERM macro to reduce duplicate code (#16681) 3 lat temu
translating.md 7164e8eeb5 Add yet another dictionary for the QMK Firmware docs sidebar heading (#7504) 5 lat temu
uart_driver.md 04b51e381e Update UART driver API (#14839) 3 lat temu
understanding_qmk.md 8545473307 Removes terminal from QMK. (#17258) 3 lat temu
unit_testing.md 1c0347b8b8 Remove SERIAL_LINK feature (#14727) 3 lat temu
usb_nkro.txt 995c3141a6 convert docs to lowercase and underscores 8 lat temu
ws2812_driver.md d717396708 [Core] Add Raspberry Pi RP2040 support (#14877) 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.