qmk_firmware/docs
QMK Bot a1ecbaa45d Merge remote-tracking branch 'origin/master' into develop 2023-02-03 00:18:03 +00:00
..
ChangeLog Merge remote-tracking branch 'origin/master' into develop 2023-01-19 11:31:19 +00:00
gitbook/images
internals Move Doxygen docs to subdirectory (#16561) 2022-03-07 11:22:22 +00:00
ja Merge remote-tracking branch 'origin/master' into develop 2022-12-14 14:44:19 +00:00
zh-cn KC_GESC -> QK_GESC for cn and ja Docs (#19024) 2022-12-09 03:03:33 +11:00
.nojekyll
CNAME
README.md
_langs.md Remove stale docs translations (#15737) 2022-01-04 18:11:24 -08:00
_summary.md [Core] Quantum Painter - LVGL Integration (#18499) 2022-12-13 07:51:14 +11:00
adc_driver.md Add analog support for RP2040 (#19453) 2023-01-19 10:30:58 +11:00
api_development_environment.md
api_development_overview.md
api_docs.md 2022 Nov 26 changelog. (#19164) 2022-11-28 07:33:55 +11:00
api_overview.md
arm_debugging.md
audio_driver.md [Core] Adjust PWM hardware audio driver for RP2040 (#17723) 2022-10-27 19:26:16 +02:00
breaking_changes.md Minor cleanup to breaking/checklist docs. (#19596) 2023-01-19 22:30:16 +11:00
breaking_changes_history.md Stub next develop dates 2022-11-22 01:27:15 +00:00
breaking_changes_instructions.md
chibios_upgrade_instructions.md Add `qmk mass-compile`, which intends to supercede `qmk multibuild` whilst providing support for filtering as per data-driven definitions. (#18971) 2023-01-04 04:10:18 +00:00
cli.md
cli_commands.md docs: some typos (#18582) 2022-10-05 17:32:07 +01:00
cli_configuration.md
cli_development.md docs: some typos (#18582) 2022-10-05 17:32:07 +01:00
cli_tab_complete.md Add Zsh note for tab complete (#17226) 2022-07-02 21:59:59 +10:00
coding_conventions_c.md docs: some typos (#18582) 2022-10-05 17:32:07 +01:00
coding_conventions_python.md docs: some typos (#18582) 2022-10-05 17:32:07 +01:00
compatible_microcontrollers.md Tentative Teensy 3.5 support (#14420) 2022-07-03 00:12:45 +10:00
config_options.md Remove usages of config_common.h from config.h files. (#19714) 2023-01-31 06:03:30 +11:00
configurator_architecture.md
configurator_default_keymaps.md Remove deprecated Quantum keycodes (#19712) 2023-01-29 16:44:16 +00:00
configurator_diagram.drawio
configurator_diagram.svg
configurator_step_by_step.md update the Chinese translation based on the latest English version (#14924) 2022-01-18 18:24:02 +00:00
configurator_troubleshooting.md
contributing.md Minor cleanup to breaking/checklist docs. (#19596) 2023-01-19 22:30:16 +11:00
custom_matrix.md Make debounce() signal changes in the cooked matrix as return value (#17554) 2022-07-07 10:00:40 +02:00
custom_quantum_functions.md [Docs] Extract 'Layer Change Code' and EEPROM (#18174) 2022-09-19 02:20:22 +01:00
data_driven_config.md Format DD mappings and schemas (#18924) 2022-11-08 01:05:08 +00:00
documentation_best_practices.md
documentation_templates.md [Docs] Touch up documentation templates & porting keyboard docs (#19573) 2023-01-13 02:58:38 -08:00
driver_installation_zadig.md [Docs] RESET -> QK_BOOT (#18365) 2022-09-15 01:03:55 +01:00
easy_maker.md update the Chinese translation based on the latest English version (#14924) 2022-01-18 18:24:02 +00:00
eeprom_driver.md RP2040 emulated EEPROM. (#17519) 2022-07-02 15:18:50 +10:00
faq_build.md
faq_debug.md Remove legacy Debug keycode (#18769) 2022-10-19 11:33:05 +01:00
faq_general.md
faq_keymap.md Keymap FAQ updates (#17130) 2022-05-18 04:48:59 +10:00
faq_misc.md [Docs] RESET -> QK_BOOT (#18365) 2022-09-15 01:03:55 +01:00
feature_advanced_keycodes.md [Docs] Extract 'Layer Change Code' and EEPROM (#18174) 2022-09-19 02:20:22 +01:00
feature_audio.md Align audio keycode names (#18962) 2022-11-05 17:05:19 +00:00
feature_auto_shift.md Remove IGNORE_MOD_TAP_INTERRUPT_PER_KEY in favour of HOLD_ON_OTHER_KEY_PRESS_PER_KEY (#15741) 2022-12-13 22:20:07 +11:00
feature_autocorrect.md Clean up `qmk generate-autocorrect-data` (#19710) 2023-01-30 03:37:02 +00:00
feature_backlight.md Reworked backlight keycodes. (#18961) 2022-11-06 08:11:59 +11:00
feature_bluetooth.md Normalise output selection (Bluetooth) keycodes (#19004) 2022-11-08 19:03:31 +00:00
feature_bootmagic.md Add split keyboard example for Bootmagic Lite (#16349) 2022-03-15 01:31:17 -07:00
feature_caps_word.md Deprecate `CAPS_WORD`/`CAPSWRD` for `CW_TOGG` (#18834) 2022-10-24 17:30:37 +01:00
feature_combo.md A comma was missing (#19507) 2023-01-05 15:12:46 +00:00
feature_command.md
feature_converters.md Add Bonsai C4 as a platform board file (#18901) 2022-11-13 23:59:01 +00:00
feature_debounce_type.md Add sym_defer_pr debouncer type (#14948) 2021-12-27 13:44:56 +11:00
feature_digitizer.md Digitizer feature improvements (#19034) 2022-11-12 23:28:11 +00:00
feature_dip_switch.md
feature_dynamic_macros.md Normalise Dynamic Macro keycodes (#18939) 2022-11-03 23:01:06 +00:00
feature_eeprom.md Remove rgblight_list.h (#18878) 2022-10-27 23:50:14 +01:00
feature_encoders.md docs: add a note about reflashing both halves for encoder resolution (#19162) 2022-12-30 11:50:37 +11:00
feature_grave_esc.md Rename some Quantum keycodes (#15968) 2022-01-22 03:34:15 +00:00
feature_haptic_feedback.md Align haptic feedback keycode names (#18964) 2022-11-07 02:43:53 +00:00
feature_hd44780.md HD44780 driver rework (#16370) 2022-03-19 17:57:22 +11:00
feature_joystick.md [Docs] Fix `JOYSTICK_AXIS_COUNT` name in docs (#19605) 2023-01-16 00:52:18 -08:00
feature_key_lock.md Merge remote-tracking branch 'origin/master' into develop 2022-10-24 23:28:56 -07:00
feature_key_overrides.md Deprecate `KEY_OVERRIDE_*` keycodes for `KO_*` (#18843) 2022-10-25 14:45:57 +01:00
feature_layers.md Small doc changes (#19601) 2023-01-16 01:32:43 -08:00
feature_layouts.md
feature_leader_key.md Merge remote-tracking branch 'origin/master' into develop 2023-01-18 00:26:53 +00:00
feature_led_indicators.md Remove deprecated led_set_kb (#19273) 2022-12-14 11:14:10 +00:00
feature_led_matrix.md docs: Fix IS31FL3743A driver name (#19518) 2023-01-06 17:12:30 +00:00
feature_macros.md Macro keycode name refactoring (#18958) 2022-11-05 23:22:11 +11:00
feature_midi.md Move MIDI code out of tmk_core (#19704) 2023-01-30 18:47:50 +11:00
feature_mouse_keys.md add "inertia" mode for mouse keys (#18774) 2022-10-26 20:49:44 +01:00
feature_oled_driver.md Update OLED doc (#19213) 2022-11-30 17:48:23 +00:00
feature_os_detection.md Detect host OS based on USB fingerprint (#18463) 2022-12-09 03:45:30 +11:00
feature_pointing_device.md Add `*_RIGHT` configuration for PMW33XX driver (#19243) 2022-12-10 13:18:40 +11:00
feature_programmable_button.md Normalise Joystick and Programmable Button keycodes (#18832) 2022-10-24 15:50:33 +01:00
feature_ps2_mouse.md [Core] Rework PS/2 driver selection (#17892) 2022-08-31 09:16:07 +02:00
feature_rawhid.md
feature_rgb_matrix.md Use consistent highlight format (#19619) 2023-01-18 01:22:34 +00:00
feature_rgblight.md Fix description for selectively disabling animations (#19374) 2022-12-19 19:10:11 +11:00
feature_secure.md Deprecate `SECURE_*` keycodes for `QK_SECURE_*` (#18847) 2022-10-25 22:59:17 +01:00
feature_send_string.md Feature-ify Send String (#17275) 2022-07-02 22:10:08 +10:00
feature_sequencer.md
feature_space_cadet.md Normalise Space Cadet keycodes (#18864) 2022-10-27 11:19:16 +01:00
feature_split_keyboard.md Merge remote-tracking branch 'origin/master' into develop 2023-02-03 00:18:03 +00:00
feature_st7565.md
feature_stenography.md Rename postprocess_steno_user → post_process_steno_user (#17823) 2022-07-28 21:51:01 -07:00
feature_swap_hands.md Normalise Swap Hands keycodes (#19720) 2023-01-30 18:37:19 +00:00
feature_tap_dance.md Tap Dance: remove `qk_` prefix (#19313) 2022-12-14 12:40:25 -08:00
feature_unicode.md Merge remote-tracking branch 'origin/master' into develop 2022-12-31 21:23:49 +00:00
feature_userspace.md
feature_velocikey.md Deprecate `VLK_TOG` for `VK_TOGG` (#18807) 2022-10-22 21:45:20 +01:00
feature_wpm.md Fixes potential wpm sampling overflow, along with code comment fixes (#15277) 2021-12-27 11:52:56 +11:00
flash_driver.md Added external spi flash driver. (#15419) 2022-02-11 20:26:16 +00:00
flashing.md Add f303 to tinyuf2 bootloader support (#19620) 2023-01-18 22:36:58 +00:00
flashing_bootloadhid.md [Docs] RESET -> QK_BOOT (#18365) 2022-09-15 01:03:55 +01:00
fuse.txt
getting_started_docker.md
getting_started_github.md
getting_started_introduction.md
getting_started_make_guide.md Add support for deferred executors. (#14859) 2021-11-15 18:21:09 +00:00
getting_started_vagrant.md
gpio_control.md Fix functions with empty params (#19647) 2023-01-20 16:21:17 +00:00
hand_wire.md Improve importer workflow (#17707) 2022-08-13 14:39:56 +01:00
hardware_drivers.md
hardware_keyboard_guidelines.md Merge remote-tracking branch 'origin/master' into develop 2023-01-01 00:53:46 +00:00
how_a_matrix_works.md
how_keyboards_work.md docs: reflect systemd's change in language (#17322) 2022-06-06 23:29:59 +01:00
i2c_driver.md Fix i2c driver doc: Incorrect name (#16898) 2022-04-20 18:10:20 +01:00
index.html Fix anchors with <code> in table of content (#15169) 2022-05-14 23:08:32 +01:00
isp_flashing_guide.md ISP flashing guide: add instructions for flashing STM32duino bootloader (#16568) 2022-03-13 23:55:47 +00:00
keycodes.md Normalise Swap Hands keycodes (#19720) 2023-01-30 18:37:19 +00:00
keycodes_basic.md Chromeos keycodes (#18212) 2022-09-17 15:48:09 +10:00
keycodes_magic.md PoC: Swap Escape and Caps (#16336) 2022-07-02 22:08:48 +10:00
keycodes_us_ansi_shifted.md [Docs] Address some typos (also in moonlander matrix.c) (#16248) 2022-02-06 17:36:44 +00:00
keymap.md Remove useless line continuations (#19399) 2022-12-30 11:48:05 +11:00
mod_tap.md [Docs] Address some typos (also in moonlander matrix.c) (#16248) 2022-02-06 17:36:44 +00:00
newbs.md
newbs_building_firmware.md Align new-keymap with new-keyboard (#19229) 2022-12-03 12:04:06 +00:00
newbs_building_firmware_configurator.md
newbs_building_firmware_workflow.md [Docs] Building with GitHub Userspace (#16271) 2022-08-06 16:36:31 +10:00
newbs_flashing.md Add note about qmk doctor in newbs_flashing.md (#15688) 2022-07-02 22:48:44 +10:00
newbs_getting_started.md Attempt to discourage manual MSYS install for new users (#17556) 2022-07-04 00:41:00 +01:00
newbs_git_best_practices.md
newbs_git_resolving_merge_conflicts.md
newbs_git_resynchronize_a_branch.md
newbs_git_using_your_master_branch.md
newbs_learn_more_resources.md [Docs] Refactor code examples (#18003) 2022-08-12 17:27:24 -07:00
newbs_testing_debugging.md
one_shot_keys.md fix typo (#19189) 2022-11-29 16:34:20 +00:00
other_eclipse.md [Docs] Address some typos (also in moonlander matrix.c) (#16248) 2022-02-06 17:36:44 +00:00
other_vscode.md Update other_vscode.md (#17317) 2022-06-08 02:47:57 +01:00
platformdev_blackpill_f4x1.md Docs: typo fixes in platformdev_blackpill_f4x1.md (#19635) 2023-01-19 16:09:11 -07:00
platformdev_chibios_earlyinit.md [Docs] RESET -> QK_BOOT (#18365) 2022-09-15 01:03:55 +01:00
platformdev_proton_c.md Add converter docs (#17593) 2022-07-08 22:49:16 +01:00
platformdev_rp2040.md Add analog support for RP2040 (#19453) 2023-01-19 10:30:58 +11:00
platformdev_selecting_arm_mcu.md
porting_your_keyboard_to_qmk.md [Docs] Touch up documentation templates & porting keyboard docs (#19573) 2023-01-13 02:58:38 -08:00
power.txt
pr_checklist.md Minor cleanup to breaking/checklist docs. (#19596) 2023-01-19 22:30:16 +11:00
qmk.css
qmk_custom_dark.css
qmk_custom_light.css
quantum_keycodes.md Add ability to enter bootloader mode from `QK_MAKE` (#17745) 2022-07-23 17:43:32 +01:00
quantum_painter.md Add RGB565 and RGB888 color support to Quantum Painter (#19382) 2023-01-14 21:24:54 +11:00
quantum_painter_lvgl.md Fix functions with empty params (#19647) 2023-01-20 16:21:17 +00:00
quantum_painter_qff.md Quantum Painter (#10174) 2022-04-13 18:00:18 +10:00
quantum_painter_qgf.md Quantum Painter (#10174) 2022-04-13 18:00:18 +10:00
quantum_painter_rle.md Quantum Painter (#10174) 2022-04-13 18:00:18 +10:00
redirects.json
ref_functions.md Remove legacy EEPROM clear keycodes (#18782) 2022-10-20 12:20:07 +01:00
reference_configurator_support.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
reference_glossary.md
reference_info_json.md Rework input_pressed_state docs (#19267) 2022-12-08 20:41:38 +00:00
reference_keymap_extras.md Rename keymap_extras headers for consistency (#16939) 2022-05-15 21:27:01 +10:00
serial_driver.md spelling fix (#18831) 2022-10-24 17:18:03 +01:00
spi_driver.md
squeezing_avr.md Add Elite-Pi converter (#18236) 2022-09-08 14:59:27 -04:00
support.md
sw.js
syllabus.md [Docs] Squeezing space out of AVR (#15243) 2021-11-23 08:14:00 +11:00
tap_hold.md Remove IGNORE_MOD_TAP_INTERRUPT_PER_KEY in favour of HOLD_ON_OTHER_KEY_PRESS_PER_KEY (#15741) 2022-12-13 22:20:07 +11:00
translating.md
uart_driver.md Update UART driver API (#14839) 2021-11-13 18:23:14 +00:00
understanding_qmk.md Update understanding_qmk.md (#19664) 2023-01-24 15:17:24 +00:00
unit_testing.md
usb_nkro.txt
ws2812_driver.md [Core] Allow custom timings for WS2812 PIO driver (#18006) 2022-11-10 07:58:15 +11:00

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
User friendly graphical interfaces, no programming knowledge required.

?> Advanced Use The Source
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.