qmk_firmware/docs
Ryan 8b658dcc9a
Normalise MIDI keycodes (#18972)
* `MI_ON`, `MI_OFF`, `MI_TOG` -> `MI_TOGG`

* `MI_CH*`, `MI_CHU` -> `MI_CHNU`, `MI_CHD` -> `MI_CHND`

* `MI_VEL_*` -> `MI_VL*`, `MI_VELU`, `MI_VELD`

* `MI_TRNS_*` -> `MI_TR*`, `MI_TRNSU` -> `MI_TRSU`, `MI_TRNSD` -> `MI_TRSD`

* `MI_OCT_*` -> `MI_OC*`, `MI_OCTU`, `MI_OCTD`

* Misc controls

* Note keycodes

* Add legacy keycodes

* Regenerate keycodes

* Typo
2022-11-07 02:26:15 +00:00
..
ChangeLog Macro keycode name refactoring (#18958) 2022-11-05 23:22:11 +11:00
gitbook/images
internals
ja Merge remote-tracking branch 'origin/master' into develop 2022-10-24 23:28:56 -07:00
zh-cn Macro keycode name refactoring (#18958) 2022-11-05 23:22:11 +11:00
.nojekyll
CNAME
README.md
_langs.md
_summary.md Remove thermal printer. (#18959) 2022-11-06 00:15:55 +11:00
adc_driver.md
api_development_environment.md
api_development_overview.md
api_docs.md Remove legacy keycodes, part 5 (#18710) 2022-10-15 22:29:43 +01: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
breaking_changes_history.md
breaking_changes_instructions.md
chibios_upgrade_instructions.md
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
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
config_options.md Implement split comms watchdog (#18599) 2022-10-06 20:52:42 +11:00
configurator_architecture.md
configurator_default_keymaps.md Macro keycode name refactoring (#18958) 2022-11-05 23:22:11 +11:00
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
documentation_best_practices.md
documentation_templates.md [Docs] Fix link to keyboard layout editor (#18801) 2022-10-22 12:39:49 -07:00
driver_installation_zadig.md
easy_maker.md
eeprom_driver.md
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
faq_misc.md
feature_advanced_keycodes.md
feature_audio.md Align audio keycode names (#18962) 2022-11-05 17:05:19 +00:00
feature_auto_shift.md Normalise Auto Shift keycodes (#18892) 2022-10-28 13:53:15 +01:00
feature_autocorrect.md Normalise Autocorrect keycodes (#18893) 2022-10-28 12:21:24 +01:00
feature_backlight.md Reworked backlight keycodes. (#18961) 2022-11-06 08:11:59 +11:00
feature_bluetooth.md
feature_bootmagic.md
feature_caps_word.md Deprecate `CAPS_WORD`/`CAPSWRD` for `CW_TOGG` (#18834) 2022-10-24 17:30:37 +01:00
feature_combo.md Normalise Combo keycodes (#18877) 2022-10-27 13:59:58 +01:00
feature_command.md
feature_converters.md
feature_debounce_type.md
feature_digitizer.md
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
feature_grave_esc.md
feature_haptic_feedback.md
feature_hd44780.md
feature_joystick.md Normalise Joystick and Programmable Button keycodes (#18832) 2022-10-24 15:50:33 +01: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
feature_layouts.md
feature_leader_key.md Deprecate `KC_LEAD` for `QK_LEAD` (#18792) 2022-10-21 14:25:54 +01:00
feature_led_indicators.md quantum: led: split out led_update_ports() for customization of led behaviour (#14452) 2022-10-06 21:24:41 +11:00
feature_led_matrix.md Reworked backlight keycodes. (#18961) 2022-11-06 08:11:59 +11:00
feature_macros.md Macro keycode name refactoring (#18958) 2022-11-05 23:22:11 +11:00
feature_midi.md Normalise MIDI keycodes (#18972) 2022-11-07 02:26:15 +00:00
feature_mouse_keys.md add "inertia" mode for mouse keys (#18774) 2022-10-26 20:49:44 +01:00
feature_oled_driver.md docs: some typos (#18582) 2022-10-05 17:32:07 +01:00
feature_pointing_device.md
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
feature_rgb_matrix.md Merge remote-tracking branch 'upstream/master' into develop 2022-10-29 16:54:14 +11:00
feature_rgblight.md Remove legacy Debug keycode (#18769) 2022-10-19 11:33:05 +01:00
feature_secure.md Deprecate `SECURE_*` keycodes for `QK_SECURE_*` (#18847) 2022-10-25 22:59:17 +01:00
feature_send_string.md
feature_sequencer.md
feature_space_cadet.md Normalise Space Cadet keycodes (#18864) 2022-10-27 11:19:16 +01:00
feature_split_keyboard.md Remove legacy EEPROM clear keycodes (#18782) 2022-10-20 12:20:07 +01:00
feature_st7565.md
feature_stenography.md
feature_swap_hands.md
feature_tap_dance.md
feature_unicode.md Normalise Unicode keycodes (#18898) 2022-10-31 21:15:12 +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
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
getting_started_vagrant.md
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
keycodes.md Normalise MIDI keycodes (#18972) 2022-11-07 02:26:15 +00:00
keycodes_basic.md
keycodes_magic.md
keycodes_us_ansi_shifted.md
keymap.md Remove legacy international keycodes (#18588) 2022-10-09 14:51:09 +11:00
mod_tap.md
newbs.md
newbs_building_firmware.md
newbs_building_firmware_configurator.md
newbs_building_firmware_workflow.md
newbs_flashing.md
newbs_getting_started.md
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
platformdev_blackpill_f4x1.md [Docs] Update platformdev_blackpill_f411.md (#18666) 2022-10-20 14:29:57 -07:00
platformdev_chibios_earlyinit.md
platformdev_proton_c.md
platformdev_rp2040.md [Core] Adjust PWM hardware audio driver for RP2040 (#17723) 2022-10-27 19:26:16 +02:00
platformdev_selecting_arm_mcu.md
porting_your_keyboard_to_qmk.md
power.txt
pr_checklist.md
qmk.css
qmk_custom_dark.css
qmk_custom_light.css
quantum_keycodes.md
quantum_painter.md
quantum_painter_qff.md
quantum_painter_qgf.md
quantum_painter_rle.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
reference_info_json.md
reference_keymap_extras.md
serial_driver.md spelling fix (#18831) 2022-10-24 17:18:03 +01:00
spi_driver.md
squeezing_avr.md
support.md
sw.js
syllabus.md
tap_hold.md Align dynamic tapping term keycode names (#18963) 2022-11-05 16:58:30 +00:00
translating.md
uart_driver.md Update UART driver API (#14839) 2021-11-13 18:23:14 +00:00
understanding_qmk.md Remove thermal printer. (#18959) 2022-11-06 00:15:55 +11:00
unit_testing.md
usb_nkro.txt
ws2812_driver.md

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.