qmk/docs
Nick Brassel c814be0296
STM32H723 support (#21352)
2023-06-28 13:07:14 +10:00
..
ChangeLog `develop` 2023q2 changelog (#21049) 2023-05-29 06:02:11 +10:00
gitbook/images RGB improvements (#1684) 2017-09-06 14:49:19 -07:00
internals Move Doxygen docs to subdirectory (#16561) 2022-03-07 11:22:22 +00:00
ja Consolidate `KEYBOARD_OUTPUT`+`KEYMAP_OUTPUT`=>`INTERMEDIATE_OUTPUT` (#21272) 2023-06-21 08:41:49 +10:00
zh-cn [Core] Add Repeat Key ("repeat last key") as a core feature. (#19700) 2023-05-20 22:35:06 +10:00
.nojekyll
CNAME Create CNAME 2018-05-21 16:29:37 -04:00
README.md
_langs.md Remove stale docs translations (#15737) 2022-01-04 18:11:24 -08:00
_summary.md Update "Most Recent ChangeLog" (#21071) 2023-05-28 21:36:46 +01:00
adc_driver.md Add analog support for RP2040 (#19453) 2023-01-19 10:30:58 +11:00
api_development_environment.md Add API documentation 2020-03-05 16:00:10 -08:00
api_development_overview.md Add API documentation 2020-03-05 16:00:10 -08:00
api_docs.md 2022 Nov 26 changelog. (#19164) 2022-11-28 07:33:55 +11:00
api_overview.md
arm_debugging.md [Docs] fix docs (#7642) 2019-12-21 11:00:22 +00:00
audio_driver.md [Core] Adjust PWM hardware audio driver for RP2040 (#17723) 2022-10-27 19:26:16 +02:00
breaking_changes.md Branch point for 2023q3 Breaking Change. 2023-05-29 06:20:09 +10:00
breaking_changes_history.md `develop` 2023q2 changelog (#21049) 2023-05-29 06:02:11 +10:00
breaking_changes_instructions.md `develop` 2023q2 changelog (#21049) 2023-05-29 06:02:11 +10:00
chibios_upgrade_instructions.md Update branch names to reflect configurator's new deployment. (#19999) 2023-03-03 14:16:06 +11:00
cli.md Streamline the macos install process 2020-05-18 22:46:33 -07:00
cli_commands.md `qmk find`: usability improvements (#20440) 2023-05-20 22:14:43 +10:00
cli_configuration.md
cli_development.md
cli_tab_complete.md
coding_conventions_c.md [Docs] Code markdown amendment (#21323) 2023-06-20 20:58:13 -06:00
coding_conventions_python.md docs: some typos (#18582) 2022-10-05 17:32:07 +01:00
compatible_microcontrollers.md STM32H723 support (#21352) 2023-06-28 13:07:14 +10:00
config_options.md Keymap introspection for combos. (#19670) 2023-05-15 22:27:37 +10:00
configurator_architecture.md
configurator_default_keymaps.md Reallocate SAFE_RANGE (#19909) 2023-02-23 09:49:07 +11: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 Remove matrix_init_quantum/matrix_scan_quantum (#19806) 2023-02-11 03:47:17 +00:00
custom_quantum_functions.md [Doc] Add example to keyboard housekeeping and some minor fixes (#19968) 2023-03-15 16:55:18 -06:00
data_driven_config.md Consolidate `KEYBOARD_OUTPUT`+`KEYMAP_OUTPUT`=>`INTERMEDIATE_OUTPUT` (#21272) 2023-06-21 08:41:49 +10: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
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
faq_build.md
faq_debug.md
faq_general.md Fix typos and reword some sentences in FAQs (#11546) 2021-01-23 13:41:29 -08:00
faq_keymap.md
faq_misc.md [Docs] RESET -> QK_BOOT (#18365) 2022-09-15 01:03:55 +01:00
feature_advanced_keycodes.md Update code example to match description (#20528) 2023-04-23 12:56:45 -06: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 Document Autocorrect callback functions (#20115) 2023-03-13 13:34:23 -06: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 [Core] Caps Word "Invert on shift" option: pressing Shift inverts the shift state. (#20092) 2023-04-04 09:11:26 +10:00
feature_combo.md Keymap introspection for combos. (#19670) 2023-05-15 22:27:37 +10:00
feature_command.md
feature_converters.md Merge remote-tracking branch 'origin/master' into develop 2023-04-07 22:12:38 +00:00
feature_debounce_type.md Add debounce time description (#20333) 2023-04-04 12:15:00 +10:00
feature_digitizer.md Digitizer feature improvements (#19034) 2022-11-12 23:28:11 +00:00
feature_dip_switch.md Added right vs left specific pin assignments for dip switch (#13074) 2021-08-19 18:39:15 +01:00
feature_dynamic_macros.md Add direction to dynamic_macro_record_start_user (#19689) 2023-04-03 13:01:07 +10:00
feature_eeprom.md
feature_encoders.md Encodermap direction define. (#20454) 2023-04-15 16:18:44 +01:00
feature_grave_esc.md
feature_haptic_feedback.md Align haptic feedback keycode names (#18964) 2022-11-07 02:43:53 +00:00
feature_hd44780.md Fix anchor IDs for some API references (#21345) 2023-06-24 17:44:50 +10: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
feature_key_overrides.md [Doc] Add example to keyboard housekeeping and some minor fixes (#19968) 2023-03-15 16:55:18 -06:00
feature_layers.md Fix typo (#21189) 2023-06-09 15:51:17 +01:00
feature_layouts.md
feature_leader_key.md Refactor Leader key feature (#19632) 2023-02-13 03:19:02 +11:00
feature_led_indicators.md Remove deprecated led_set_kb (#19273) 2022-12-14 11:14:10 +00:00
feature_led_matrix.md Remove use of __flash within LED drivers (#21343) 2023-06-23 22:50:31 +01:00
feature_macros.md Macro keycode name refactoring (#18958) 2022-11-05 23:22:11 +11:00
feature_midi.md Merge remote-tracking branch 'origin/master' into develop 2023-02-08 02:21:22 +00:00
feature_mouse_keys.md
feature_oled_driver.md OLED Driver improvements (#20331) 2023-05-10 14:04:53 -07: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 Make Pointing Device Auto Layer more configurable (#20061) 2023-05-06 06:38:45 -07:00
feature_programmable_button.md Normalise Joystick and Programmable Button keycodes (#18832) 2022-10-24 15:50:33 +01:00
feature_ps2_mouse.md
feature_rawhid.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
feature_repeat_key.md [Core] Add Repeat Key ("repeat last key") as a core feature. (#19700) 2023-05-20 22:35:06 +10:00
feature_rgb_matrix.md Remove use of __flash within LED drivers (#21343) 2023-06-23 22:50:31 +01:00
feature_rgblight.md Move `RGBLIGHT_LED_MAP` to data driven (#21095) 2023-06-14 22:01:13 +10:00
feature_secure.md Deprecate `SECURE_*` keycodes for `QK_SECURE_*` (#18847) 2022-10-25 22:59:17 +01:00
feature_send_string.md Fix anchor IDs for some API references (#21345) 2023-06-24 17:44:50 +10:00
feature_sequencer.md Align sequencer keycodes (#19875) 2023-02-18 15:44:36 +00:00
feature_space_cadet.md Use wayback machine for unreachable site (#20987) 2023-05-21 17:44:06 +01:00
feature_split_keyboard.md Sync activity timestamps between sides. (#20192) 2023-03-21 10:16:11 +01:00
feature_st7565.md
feature_stenography.md [Core] Refactor `keyevent_t` for 1ms timing resolution (#15847) 2023-04-03 18:33:45 +10:00
feature_swap_hands.md Add swap hands toggle functions (#20381) 2023-04-09 09:37:31 -07:00
feature_tap_dance.md Tap Dance: remove `qk_` prefix (#19313) 2022-12-14 12:40:25 -08:00
feature_tri_layer.md [Core] Tri Layer Keys (#19795) 2023-02-12 10:23:07 +11:00
feature_unicode.md Unicodemap keycodes rename (#21092) 2023-06-01 17:25:08 +01:00
feature_userspace.md Enable CLI flashing via mdloader (#14729) 2021-10-15 22:07:33 +01:00
feature_velocikey.md
feature_wpm.md Fix typo in `feature_wpm.md` title (#20464) 2023-04-16 15:14:08 +01:00
flash_driver.md
flashing.md Add f303 to tinyuf2 bootloader support (#19620) 2023-01-18 22:36:58 +00:00
flashing_bootloadhid.md
fuse.txt
getting_started_docker.md
getting_started_github.md Purge uGFX. (#14720) 2021-10-07 10:57:48 +11:00
getting_started_introduction.md
getting_started_make_guide.md Unicodemap keycodes rename (#21092) 2023-06-01 17:25:08 +01:00
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 Purge uGFX. (#14720) 2021-10-07 10:57:48 +11:00
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
i2c_driver.md Fix anchor IDs for some API references (#21345) 2023-06-24 17:44:50 +10:00
index.html Fix anchors with <code> in table of content (#15169) 2022-05-14 23:08:32 +01:00
isp_flashing_guide.md Adds Docs option for ArduinoIDE's example `ArduinoISP` (#20486) 2023-04-19 19:23:50 +01:00
keycodes.md Unicodemap keycodes rename (#21092) 2023-06-01 17:25:08 +01:00
keycodes_basic.md Move `KC_MISSION_CONTROL`/`KC_LAUNCHPAD` keycodes to core (#19884) 2023-02-19 18:59:50 +11:00
keycodes_magic.md Align magic keycodes (#19877) 2023-02-23 08:14:29 +11:00
keycodes_us_ansi_shifted.md
keymap.md [Docs] Change defines to enums in examples (#19793) 2023-02-10 02:39:35 -08:00
mod_tap.md Make IGNORE_MOD_TAP_INTERRUPT the default behaviour for mod-taps (#20211) 2023-04-03 15:32:47 +10:00
newbs.md [Docs] Use HTTPS for images and links where possible (#11695) 2021-01-30 22:00:56 +11:00
newbs_building_firmware.md Align new-keymap with new-keyboard (#19229) 2022-12-03 12:04:06 +00:00
newbs_building_firmware_configurator.md Update newbs docs with some rp2040 stuff (#21186) 2023-06-10 15:56:43 +01:00
newbs_building_firmware_workflow.md [Docs] Highlight keymap name entry (#21138) 2023-06-05 23:17:39 -06:00
newbs_flashing.md Update newbs docs with some rp2040 stuff (#21186) 2023-06-10 15:56:43 +01:00
newbs_getting_started.md Add an emphasis on QMK MSYS terminal (#21168) 2023-06-08 10:10:30 +01:00
newbs_git_best_practices.md
newbs_git_resolving_merge_conflicts.md [Docs] Restructure of Git Best Practices doc (#7231) 2019-12-02 18:47:02 -08:00
newbs_git_resynchronize_a_branch.md [Docs] Resynchronizing Your Branch including submodules (#19268) 2023-02-11 12:07:51 -07:00
newbs_git_using_your_master_branch.md
newbs_learn_more_resources.md
newbs_testing_debugging.md
one_shot_keys.md fix typo (#19189) 2022-11-29 16:34:20 +00:00
other_eclipse.md
other_vscode.md Far better VSCode intellisense support using clangd. (#20382) 2023-05-14 15:32:34 +10: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
platformdev_proton_c.md Add converter docs (#17593) 2022-07-08 22:49:16 +01:00
platformdev_rp2040.md Add rp2040_ce and add elite-pi and helios as alias (#19830) 2023-02-12 23:02:05 +00:00
platformdev_selecting_arm_mcu.md
porting_your_keyboard_to_qmk.md [Docs] Discuss layout macro (#19803) 2023-03-06 11:24:56 -08:00
power.txt
pr_checklist.md `develop` 2023q2 changelog (#21049) 2023-05-29 06:02:11 +10:00
qmk.css
qmk_custom_dark.css
qmk_custom_light.css
quantum_keycodes.md [Docs] Add note about `ENABLE_COMPILE_KEYCODE` to docs (#21290) 2023-06-19 19:55:27 -06:00
quantum_painter.md [Feature] Disable debug on QP's internal task (#20623) 2023-05-01 19:38:18 -07: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_qgf.md Quantum Painter (#10174) 2022-04-13 18:00:18 +10:00
quantum_painter_rle.md
redirects.json
ref_functions.md
reference_configurator_support.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
reference_glossary.md Fix Space Cadet md link (#14300) 2021-09-04 15:01:56 +01:00
reference_info_json.md Remove `all` from list of animations in `info.json` (#19978) 2023-03-01 02:55:14 +00:00
reference_keymap_extras.md
serial_driver.md Fix serial_driver.md list item numbering (#19819) 2023-02-12 17:05:46 +00:00
spi_driver.md Fix anchor IDs for some API references (#21345) 2023-06-24 17:44:50 +10:00
squeezing_avr.md Add RP2040 Community Edition alias for Liatris (#19966) 2023-03-10 12:47:10 -08:00
support.md Fix capitalisation of "GitHub" (#9184) 2020-05-25 19:43:14 -07:00
support_deprecation_policy.md Initial deprecation policy documentation. (#19908) 2023-03-03 14:16:32 +11:00
sw.js
syllabus.md [Docs] Squeezing space out of AVR (#15243) 2021-11-23 08:14:00 +11:00
tap_hold.md Remove outdated remarks regarding the default MT behavior (#21077) 2023-05-30 02:08:15 +01:00
translating.md Add yet another dictionary for the QMK Firmware docs sidebar heading (#7504) 2019-11-28 22:14:04 +00:00
uart_driver.md Fix anchor IDs for some API references (#21345) 2023-06-24 17:44:50 +10:00
understanding_qmk.md Move `pre_process_record_kb()` before `process_combo()` (#20969) 2023-05-20 22:15:55 +10:00
unit_testing.md
usb_nkro.txt convert docs to lowercase and underscores 2017-06-10 14:58:55 -04:00
ws2812_driver.md Migrate `rgblight.pin` and `RGB_DI_PIN` to `ws2812.pin` (#20303) 2023-04-06 18:00:54 +10: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.