qmk/docs
Nick Brassel ffdc70bf0a
Consolidate `KEYBOARD_OUTPUT`+`KEYMAP_OUTPUT`=>`INTERMEDIATE_OUTPUT` (#21272)
2023-06-21 08:41:49 +10:00
..
ChangeLog `develop` 2023q2 changelog (#21049) 2023-05-29 06:02:11 +10:00
gitbook/images
internals
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
README.md
_langs.md
_summary.md Update "Most Recent ChangeLog" (#21071) 2023-05-28 21:36:46 +01:00
adc_driver.md
api_development_environment.md
api_development_overview.md
api_docs.md
api_overview.md
arm_debugging.md
audio_driver.md
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
cli.md
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
coding_conventions_python.md
compatible_microcontrollers.md
config_options.md Keymap introspection for combos. (#19670) 2023-05-15 22:27:37 +10:00
configurator_architecture.md
configurator_default_keymaps.md
configurator_diagram.drawio
configurator_diagram.svg
configurator_step_by_step.md
configurator_troubleshooting.md
contributing.md
custom_matrix.md
custom_quantum_functions.md
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
driver_installation_zadig.md
easy_maker.md
eeprom_driver.md
faq_build.md
faq_debug.md
faq_general.md
faq_keymap.md
faq_misc.md
feature_advanced_keycodes.md Update code example to match description (#20528) 2023-04-23 12:56:45 -06:00
feature_audio.md
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
feature_backlight.md
feature_bluetooth.md
feature_bootmagic.md
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
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
feature_encoders.md Encodermap direction define. (#20454) 2023-04-15 16:18:44 +01:00
feature_grave_esc.md
feature_haptic_feedback.md
feature_hd44780.md
feature_joystick.md
feature_key_lock.md
feature_key_overrides.md
feature_layers.md Fix typo (#21189) 2023-06-09 15:51:17 +01:00
feature_layouts.md
feature_leader_key.md
feature_led_indicators.md
feature_led_matrix.md [Bug] Realign and size check EECONFIG structures (#20541) 2023-05-08 10:56:03 -07:00
feature_macros.md
feature_midi.md
feature_mouse_keys.md
feature_oled_driver.md OLED Driver improvements (#20331) 2023-05-10 14:04:53 -07:00
feature_os_detection.md
feature_pointing_device.md Make Pointing Device Auto Layer more configurable (#20061) 2023-05-06 06:38:45 -07:00
feature_programmable_button.md
feature_ps2_mouse.md
feature_rawhid.md
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 [Bug] Realign and size check EECONFIG structures (#20541) 2023-05-08 10:56:03 -07:00
feature_rgblight.md Move `RGBLIGHT_LED_MAP` to data driven (#21095) 2023-06-14 22:01:13 +10:00
feature_secure.md
feature_send_string.md
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
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
feature_tri_layer.md
feature_unicode.md Unicodemap keycodes rename (#21092) 2023-06-01 17:25:08 +01:00
feature_userspace.md
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
flashing_bootloadhid.md
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
hand_wire.md
hardware_drivers.md
hardware_keyboard_guidelines.md
how_a_matrix_works.md
how_keyboards_work.md
i2c_driver.md
index.html
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
keycodes_magic.md
keycodes_us_ansi_shifted.md
keymap.md
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
newbs_building_firmware.md
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
newbs_git_resynchronize_a_branch.md
newbs_git_using_your_master_branch.md
newbs_learn_more_resources.md
newbs_testing_debugging.md
one_shot_keys.md
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
platformdev_chibios_earlyinit.md
platformdev_proton_c.md Add converter docs (#17593) 2022-07-08 22:49:16 +01:00
platformdev_rp2040.md
platformdev_selecting_arm_mcu.md Add documentation for selecting an Arm MCU (#9046) 2020-06-10 23:32:58 +01:00
porting_your_keyboard_to_qmk.md
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
quantum_painter_qff.md
quantum_painter_qgf.md
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
reference_keymap_extras.md
serial_driver.md
spi_driver.md
squeezing_avr.md
support.md
support_deprecation_policy.md
sw.js
syllabus.md
tap_hold.md Remove outdated remarks regarding the default MT behavior (#21077) 2023-05-30 02:08:15 +01:00
translating.md
uart_driver.md
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
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.