qmk_firmware/docs
QMK Bot 66eb5d0a90 Merge remote-tracking branch 'origin/master' into develop 2024-05-11 23:33:35 +00:00
..
ChangeLog MechKeys ACR60 Layout Updates (#23309) 2024-04-29 20:04:04 -07:00
gitbook/images
internals
ja Fix WAIT_FOR_USB handling (#23598) 2024-04-24 19:33:52 +01:00
zh-cn Move velocikey to within rgblight (#22123) 2023-09-25 17:48:10 +01:00
.nojekyll
CNAME
README.md
__capabilities.md Add embed to docs capabilities (#23698) 2024-05-12 03:26:11 +10:00
__capabilities_inc.md Add embed to docs capabilities (#23698) 2024-05-12 03:26:11 +10:00
_langs.md
_summary.md 2024q1 `develop` changelog. (#23150) 2024-02-28 21:39:19 +11:00
adc_driver.md Generalise ADC driver source inclusion (#22448) 2023-11-12 22:30:27 +00: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 [Audio] Enable Complementary output for PWM Hardware driver (#22726) 2023-12-21 19:38:59 -08:00
breaking_changes.md 2024q1 `develop` changelog. (#23150) 2024-02-28 21:39:19 +11:00
breaking_changes_history.md 2024q1 `develop` changelog. (#23150) 2024-02-28 21:39:19 +11: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 Give definition of 'CLI' for new users (#22647) 2023-12-13 02:25:55 +00:00
cli_commands.md Merge remote-tracking branch 'origin/master' into develop 2024-05-07 11:52:16 +00:00
cli_configuration.md
cli_development.md Fix minimum python version references (#22191) 2023-10-04 01:19:04 +01:00
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 Fix minimum python version references (#22191) 2023-10-04 01:19:04 +01:00
compatible_microcontrollers.md STM32H723 support (#21352) 2023-06-28 13:07:14 +10:00
config_options.md Rename `RGBW` define to `WS2812_RGBW` (#23585) 2024-04-28 00:36:54 +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 Documentation regarding user code removal/acceptance (#22507) 2023-12-04 00:57:42 +00:00
custom_matrix.md Remove matrix_init_quantum/matrix_scan_quantum (#19806) 2023-02-11 03:47:17 +00:00
custom_quantum_functions.md Update naming convention for GPIO control macros (#23085) 2024-02-17 00:18:26 +11: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 Update Atmel DFU driver assignments for dfu-programmer 1.x (#23165) 2024-02-28 21:03:43 +11:00
easy_maker.md
eeprom_driver.md Consolidate some EEPROM Driver configuration (#22321) 2023-10-23 00:37:27 +01: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
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 [Audio] Add support for audio shutdown pin (#22731) 2024-03-06 22:02:37 +11: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 Move BACKLIGHT_PWM_PERIOD to correct docs section (#22480) 2023-11-22 11:41:19 +11:00
feature_bluetooth.md Bluetooth: driver naming cleanups (#21624) 2023-07-29 15:16:14 +10:00
feature_bootmagic.md Removal of bootmagic lite terminology (#22979) 2024-02-17 12:27:34 +00: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 Fix double code indenting (#23117) 2024-02-20 00:45:25 +00:00
feature_command.md
feature_converters.md Add Imera converter (#22419) 2023-11-28 17:53:47 +11: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 Keymap introspection for Dip Switches (#22543) 2023-12-11 23:06:18 +00: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 Remove rgblight_list.h (#18878) 2022-10-27 23:50:14 +01:00
feature_encoders.md [Doc] Use number indexes for encoder code example (#22980) 2024-01-29 19:28:23 +00: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 Fix joystick initialization (#22953) 2024-02-17 01:14:46 +11: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 Fix typos: key-modifer→key-modifier and interacton→interaction (#22464) 2023-11-13 20:55:45 +00: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 Update naming convention for GPIO control macros (#23085) 2024-02-17 00:18:26 +11:00
feature_led_matrix.md Add new set of keycodes for LED Matrix (#23432) 2024-04-11 14:14:02 +10:00
feature_macros.md Add latam spanish headers (#22542) 2023-12-04 00:13:27 +00: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 [Doc]: Correct Markdown syntax errors. (#22511) 2023-11-29 02:48:47 +00:00
feature_os_detection.md [Core] Add OS detection callbacks (#21777) 2024-02-17 01:19:02 +11:00
feature_pointing_device.md Add utility functions for Pointing Device Auto Mouse feature (#23144) 2024-03-10 05:34:41 +00: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 add pywinusb lib to list of example libs for HID (#22747) 2024-01-09 22:13:51 +11: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 LED drivers: update PWM register defines for `g_<driver>_leds` (#23052) 2024-02-12 02:19:45 +00:00
feature_rgblight.md Rename `RGBW` define to `WS2812_RGBW` (#23585) 2024-04-28 00:36:54 +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 Remove deprecated quantum keycodes (#23407) 2024-04-04 15:16:27 +01:00
feature_space_cadet.md Use wayback machine for unreachable site (#20987) 2023-05-21 17:44:06 +01:00
feature_split_keyboard.md Oneshot locked mods split transaction (#23434) 2024-04-08 12:55:42 -06:00
feature_st7565.md
feature_stenography.md Remove requirement for `keymap_steno.h` include in keymaps (#22423) 2023-11-12 18:25:46 +11:00
feature_swap_hands.md Add swap hands toggle functions (#20381) 2023-04-09 09:37:31 -07:00
feature_tap_dance.md Align location of tap dance keycode (#22742) 2023-12-24 06:52:41 +00:00
feature_tri_layer.md Update feature_tri_layer.md - typo (#23275) 2024-03-14 14:28:54 +11:00
feature_unicode.md Fix old usage of UNICODE_MODE_MAC (#22238) 2023-10-09 23:16:54 +01:00
feature_userspace.md Documentation regarding user code removal/acceptance (#22507) 2023-12-04 00:57:42 +00:00
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 page for capabilties used by docs site. (#23428) 2024-05-05 11:38:31 +01: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 Modify wording in 'getting_started_introduction.md' (#23232) 2024-03-14 19:00:03 -07:00
getting_started_make_guide.md Unicodemap keycodes rename (#21092) 2023-06-01 17:25:08 +01:00
gpio_control.md Update naming convention for GPIO control macros (#23085) 2024-02-17 00:18:26 +11:00
hand_wire.md Update hand_wire.md (#23429) 2024-04-06 16:57:12 -06:00
hardware_drivers.md
hardware_keyboard_guidelines.md Rename `RGBLED_NUM` -> `RGBLIGHT_LED_COUNT` (#22570) 2023-12-12 15:30:08 +11:00
how_a_matrix_works.md
how_keyboards_work.md
i2c_driver.md Update naming convention for GPIO control macros (#23085) 2024-02-17 00:18:26 +11:00
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 Add new set of keycodes for LED Matrix (#23432) 2024-04-11 14:14:02 +10: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 Update keymap.md (#22834) 2024-01-06 12:06:14 +11: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 Add page for capabilties used by docs site. (#23428) 2024-05-05 11:38:31 +01: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 [Doc]: Correct Markdown syntax errors. (#22511) 2023-11-29 02:48:47 +00:00
newbs_external_userspace.md QMK Userspace (#22222) 2023-11-28 07:53:43 +11:00
newbs_flashing.md Update newbs docs with some rp2040 stuff (#21186) 2023-06-10 15:56:43 +01:00
newbs_getting_started.md Remove rosetta instructions for Apple Silicon (#22174) 2023-09-30 22:33:57 -07: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
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 Add instructions for debugging ARM with VSCode+BMP. (#11217) 2024-03-08 22:24:11 +11: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
platformdev_rp2040.md [Core] Allow ChibiOS `SIO` driver for `UART` driver (#22839) 2024-02-20 11:34:24 +01: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 PR Checklist: explain wireless requirements. (#23584) 2024-04-23 19:38:08 +10:00
qmk.css
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
quantum_keycodes.md [Docs] Add note about `ENABLE_COMPILE_KEYCODE` to docs (#21290) 2023-06-19 19:55:27 -06:00
quantum_painter.md [Driver] ILI9486 on Quantum Painter (#18521) 2024-02-17 18:36:05 +11:00
quantum_painter_lvgl.md Lvgl rate control (#22049) 2023-09-17 14:25:14 +10:00
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 Breaking changes changelog, 2023q3 version (#21848) 2023-08-29 21:15:21 +10:00
reference_info_json.md Remove 'split.transport.protocol=serial_usart' (#23668) 2024-05-10 20:54:44 +10:00
reference_keymap_extras.md Add MacOS Czech ISO and ANSI keymaps #23346 (#23412) 2024-04-30 23:53:30 -07:00
serial_driver.md Update serial_driver.md (#23035) 2024-03-29 19:04:23 -06:00
spi_driver.md Dedupe I2C, SPI, UART driver inclusions (#22253) 2023-10-13 17:25:32 +11:00
squeezing_avr.md [Doc] Revise squeezing AVR (#23665) 2024-05-12 00:33:01 +01:00
support.md
support_deprecation_policy.md Initial deprecation policy documentation. (#19908) 2023-03-03 14:16:32 +11:00
sw.js
syllabus.md
tap_hold.md Fixed non-executable codes in the documentation (#22600) 2023-12-05 11:06:06 -08:00
translating.md
uart_driver.md [Core] Allow ChibiOS `SIO` driver for `UART` driver (#22839) 2024-02-20 11:34:24 +01: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 Rename `RGBW` define to `WS2812_RGBW` (#23585) 2024-04-28 00:36: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.