qmk_firmware/docs
2023-09-26 06:17:57 +00:00
..
ChangeLog Breaking changes changelog, 2023q3 version (#21848) 2023-08-29 21:15:21 +10:00
gitbook/images
internals Move Doxygen docs to subdirectory (#16561) 2022-03-07 11:22:22 +00:00
ja Move velocikey to within rgblight (#22123) 2023-09-25 17:48:10 +01:00
zh-cn Move velocikey to within rgblight (#22123) 2023-09-25 17:48:10 +01:00
_langs.md
_summary.md Move velocikey to within rgblight (#22123) 2023-09-25 17:48:10 +01:00
.nojekyll
adc_driver.md Add analog support for RP2040 (#19453) 2023-01-19 10:30:58 +11:00
apa102_driver.md Update WS2812 docs and add APA102 docs (#22106) 2023-09-25 14:18:40 +10: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_history.md Breaking changes changelog, 2023q3 version (#21848) 2023-08-29 21:15:21 +10:00
breaking_changes_instructions.md develop 2023q2 changelog (#21049) 2023-05-29 06:02:11 +10:00
breaking_changes.md Breaking changes changelog, 2023q3 version (#21848) 2023-08-29 21:15:21 +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_commands.md qmk find: usability improvements (#20440) 2023-05-20 22:14:43 +10: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
cli.md
CNAME
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 Bluetooth: driver naming cleanups (#21624) 2023-07-29 15:16:14 +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
configurator_troubleshooting.md
contributing.md Breaking changes changelog, 2023q3 version (#21848) 2023-08-29 21:15:21 +10: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 [Docs] RESET -> QK_BOOT (#18365) 2022-09-15 01:03:55 +01:00
easy_maker.md
eeprom_driver.md Default wear leveling logical size to half backing (#22006) 2023-09-14 07:13:21 +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 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 Improve test invocation, fix Retro Shift bugs, and add Auto+Retro Shift test cases (#15889) 2023-09-25 12:45:49 +10:00
feature_autocorrect.md [Enhancement] More info on apply_autocorrect (#21056) 2023-07-08 00:13:15 +10:00
feature_backlight.md [Core] Allow customizing PWM frequency (#21717) 2023-09-03 14:56:02 +02:00
feature_bluetooth.md Bluetooth: driver naming cleanups (#21624) 2023-07-29 15:16:14 +10: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
feature_dynamic_macros.md Add direction to dynamic_macro_record_start_user (#19689) 2023-04-03 13:01:07 +10:00
feature_eeprom.md Remove rgblight_list.h (#18878) 2022-10-27 23:50:14 +01:00
feature_encoders.md Encodermap direction define. (#20454) 2023-04-15 16:18:44 +01:00
feature_grave_esc.md
feature_haptic_feedback.md haptic: further naming cleanups (#21682) 2023-08-04 01:16:16 +01: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 Merge remote-tracking branch 'origin/master' into develop 2022-10-24 23:28:56 -07:00
feature_key_overrides.md [Feature] Send a dummy keycode to neutralize flashing modifiers in retro tap and key overrides (#20992) 2023-07-08 00:18:02 +10:00
feature_layers.md Changed interverts to inverts (#21270) 2023-07-03 17:01:10 +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 Add and use I2C address defines for ISSI LED drivers (#22008) 2023-09-19 19:31:54 +10:00
feature_macros.md Corrected duration example, should be number not string (#21839) 2023-08-26 19:43:40 +01:00
feature_midi.md Merge remote-tracking branch 'origin/master' into develop 2023-02-08 02:21:22 +00:00
feature_mouse_keys.md Add MOUSEKEY_WHEEL_DELTA documentation (#21493) 2023-07-10 10:57:08 -07:00
feature_oled_driver.md Merge remote-tracking branch 'origin/master' into develop 2023-09-25 19:41:01 +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 Make Pointing Device Auto Layer more configurable (#20061) 2023-05-06 06:38:45 -07:00
feature_programmable_button.md Fix doc for programmable buttons. (#22136) 2023-09-25 23:17:20 -07:00
feature_ps2_mouse.md Document the RP2040-specific PS/2 implementation (#22079) 2023-09-25 13:00:13 +10:00
feature_rawhid.md Raw HID: documentation improvements (#21596) 2023-07-25 09:20:41 +10: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 Added flower blooming on RGB Matrix effect (#21948) 2023-09-25 12:58:45 +10:00
feature_rgblight.md Move velocikey to within rgblight (#22123) 2023-09-25 17:48:10 +01: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 Add full solenoid support on split keyboards (#21583) 2023-09-25 12:23:31 +10: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 On-each-release tap dance function (#20255) 2023-07-26 21:04:35 -07:00
feature_tri_layer.md [Core] Tri Layer Keys (#19795) 2023-02-12 10:23:07 +11:00
feature_unicode.md Unicode, Unicodemap and UCIS refactor (#21659) 2023-08-27 13:30:19 +10:00
feature_userspace.md
feature_wpm.md Fix typo in feature_wpm.md title (#20464) 2023-04-16 15:14:08 +01:00
flash_driver.md Added external spi flash driver. (#15419) 2022-02-11 20:26:16 +00:00
flashing_bootloadhid.md [Docs] RESET -> QK_BOOT (#18365) 2022-09-15 01:03:55 +01:00
flashing.md feat, docs: WB32 flashing (#21217) 2023-07-08 00:48:45 +10:00
fuse.txt
getting_started_docker.md
getting_started_github.md
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
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 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_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
keycodes.md Unicodemap keycodes rename (#21092) 2023-06-01 17:25:08 +01:00
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_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_building_firmware.md Align new-keymap with new-keyboard (#19229) 2022-12-03 12:04:06 +00: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
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 [Docs] Refactor code examples (#18003) 2022-08-12 17:27:24 -07:00
newbs_testing_debugging.md
newbs.md
one_shot_keys.md fix typo (#19189) 2022-11-29 16:34:20 +00:00
other_eclipse.md
other_vscode.md Fix VS code live share extension link (#21585) 2023-07-23 09:07:17 +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 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 Add reminder about format-json to PR Checklist (#22055) 2023-09-23 01:18:11 -07:00
qmk_custom_dark.css [Docs] Improve contrast for warnings in dark mode (#21928) 2023-09-05 19:00:14 -07:00
qmk_custom_light.css
qmk.css
quantum_keycodes.md [Docs] Add note about ENABLE_COMPILE_KEYCODE to docs (#21290) 2023-06-19 19:55:27 -06:00
quantum_painter_lvgl.md Lvgl rate control (#22049) 2023-09-17 14:25:14 +10: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
quantum_painter.md [Enhancement] QP Getters (#21171) 2023-09-25 12:31:46 +10:00
README.md
redirects.json
ref_functions.md Remove legacy EEPROM clear keycodes (#18782) 2022-10-20 12:20:07 +01:00
reference_configurator_support.md
reference_glossary.md Breaking changes changelog, 2023q3 version (#21848) 2023-08-29 21:15:21 +10:00
reference_info_json.md Update WS2812 docs and add APA102 docs (#22106) 2023-09-25 14:18:40 +10:00
reference_keymap_extras.md Rename keymap_extras headers for consistency (#16939) 2022-05-15 21:27:01 +10:00
serial_driver.md Fix serial_driver.md list item numbering (#19819) 2023-02-12 17:05:46 +00:00
spi_driver.md Chibios SPI driver: allow some SPI pins to be left unassigned (#20315) 2023-09-25 12:54:22 +10:00
squeezing_avr.md Added flower blooming on RGB Matrix effect (#21948) 2023-09-25 12:58:45 +10:00
support_deprecation_policy.md Initial deprecation policy documentation. (#19908) 2023-03-03 14:16:32 +11:00
support.md
sw.js
syllabus.md
tap_hold.md [Feature] Send a dummy keycode to neutralize flashing modifiers in retro tap and key overrides (#20992) 2023-07-08 00:18:02 +10:00
translating.md
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 Improve test invocation, fix Retro Shift bugs, and add Auto+Retro Shift test cases (#15889) 2023-09-25 12:45:49 +10:00
usb_nkro.txt
ws2812_driver.md Update WS2812 docs and add APA102 docs (#22106) 2023-09-25 14:18:40 +10:00

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.