You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Drashna Jael're 8478e96de6
Merge remote-tracking branch 'origin/master' into develop
3 years ago
..
ChangeLog 2022q3 Changelog. (#18180) 3 years ago
gitbook/images
internals Move Doxygen docs to subdirectory (#16561) 4 years ago
ja Merge remote-tracking branch 'origin/master' into develop 3 years ago
zh-cn [Docs] RESET -> QK_BOOT (#18365) 3 years ago
.nojekyll
CNAME
README.md
_langs.md
_summary.md Merge remote-tracking branch 'origin/master' into develop 3 years ago
adc_driver.md
api_development_environment.md
api_development_overview.md
api_docs.md [Docs] RESET -> QK_BOOT (#18365) 3 years ago
api_overview.md
arm_debugging.md
audio_driver.md [Docs] Fix tables in Audio driver document (#17780) 3 years ago
breaking_changes.md 2022q3 Changelog. (#18180) 3 years ago
breaking_changes_history.md 2022q3 Changelog. (#18180) 3 years ago
breaking_changes_instructions.md
chibios_upgrade_instructions.md
cli.md
cli_commands.md CLI: Teaching the CLI to flash binaries (#16584) 3 years ago
cli_configuration.md
cli_development.md Some docs improvements (#15845) 4 years ago
cli_tab_complete.md Add Zsh note for tab complete (#17226) 3 years ago
coding_conventions_c.md
coding_conventions_python.md
compatible_microcontrollers.md Tentative Teensy 3.5 support (#14420) 3 years ago
config_options.md Switch over MANUFACTURER and PRODUCT to string literals (#18183) 3 years ago
configurator_architecture.md
configurator_default_keymaps.md [Docs] RESET -> QK_BOOT (#18365) 3 years ago
configurator_diagram.drawio
configurator_diagram.svg
configurator_step_by_step.md
configurator_troubleshooting.md
contributing.md
custom_matrix.md Make debounce() signal changes in the cooked matrix as return value (#17554) 3 years ago
custom_quantum_functions.md [Docs] Extract 'Layer Change Code' and EEPROM (#18174) 3 years ago
data_driven_config.md [Docs] Fix typo in data driven config docs (#18095) 3 years ago
documentation_best_practices.md
documentation_templates.md
driver_installation_zadig.md [Docs] RESET -> QK_BOOT (#18365) 3 years ago
easy_maker.md
eeprom_driver.md RP2040 emulated EEPROM. (#17519) 3 years ago
faq_build.md
faq_debug.md [Docs] Fix custom debug function and sample output (#17790) 3 years ago
faq_general.md
faq_keymap.md Keymap FAQ updates (#17130) 4 years ago
faq_misc.md [Docs] RESET -> QK_BOOT (#18365) 3 years ago
feature_advanced_keycodes.md [Docs] Extract 'Layer Change Code' and EEPROM (#18174) 3 years ago
feature_audio.md [Docs] RESET -> QK_BOOT (#18365) 3 years ago
feature_auto_shift.md
feature_autocorrect.md [Core] Add getreuer's Autocorrect feature to core (#15699) 3 years ago
feature_backlight.md
feature_bluetooth.md
feature_bootmagic.md Add split keyboard example for Bootmagic Lite (#16349) 4 years ago
feature_caps_word.md Expand on the differences between Caps Word and Caps Lock (#18139) 3 years ago
feature_combo.md Use a macro to compute the size of arrays at compile time (#18044) 3 years ago
feature_command.md
feature_converters.md Add Elite-C to converters (#18309) 3 years ago
feature_debounce_type.md
feature_digitizer.md
feature_dip_switch.md
feature_dynamic_macros.md Added Wait time to sending each Keys for Dynamic Macros function (#16800) 3 years ago
feature_eeprom.md [Docs] Extract 'Layer Change Code' and EEPROM (#18174) 3 years ago
feature_encoders.md Resolve conflict merging master to develop (#18297) 3 years ago
feature_grave_esc.md
feature_haptic_feedback.md [Feature] Add support for multiple switchs/solenoids to Haptic Feedback engine (#15657) 4 years ago
feature_hd44780.md HD44780 driver rework (#16370) 4 years ago
feature_joystick.md Joystick feature updates (#16732) 4 years ago
feature_key_lock.md
feature_key_overrides.md
feature_layers.md [Docs] Extract 'Layer Change Code' and EEPROM (#18174) 3 years ago
feature_layouts.md
feature_leader_key.md [Docs] Update feature_leader_key.md (#16344) 4 years ago
feature_led_indicators.md Refine LED indicator documentation (#16304) 4 years ago
feature_led_matrix.md Change `DRIVER_LED_COUNT` to `{LED,RGB}_MATRIX_LED_COUNT` (#18399) 3 years ago
feature_macros.md implement `tap_code16_delay` (#17748) 3 years ago
feature_midi.md Update feature_midi.md (#17390) 4 years ago
feature_mouse_keys.md [Core] Mouse key kinetic mode fix (#17176) 4 years ago
feature_oled_driver.md Remove OLED driver Split Common warning (#17862) 3 years ago
feature_pointing_device.md Allow Active High for Pointing Device Motion Pin (#18404) 3 years ago
feature_programmable_button.md
feature_ps2_mouse.md [Core] Rework PS/2 driver selection (#17892) 3 years ago
feature_rawhid.md
feature_rgb_matrix.md Change `DRIVER_LED_COUNT` to `{LED,RGB}_MATRIX_LED_COUNT` (#18399) 3 years ago
feature_rgblight.md Add deprecated check for RGBLIGHT_ANIMATIONS (#17832) 3 years ago
feature_secure.md Add basic secure docs (#17577) 3 years ago
feature_send_string.md Feature-ify Send String (#17275) 3 years ago
feature_sequencer.md
feature_space_cadet.md
feature_split_keyboard.md Update feature_split_keyboard.md to add extra detail about left and right matrices. (#17492) 3 years ago
feature_st7565.md
feature_stenography.md Rename postprocess_steno_user → post_process_steno_user (#17823) 3 years ago
feature_swap_hands.md Add support for encoder mapping. (#13286) 4 years ago
feature_tap_dance.md Merge remote-tracking branch 'origin/master' into develop 3 years ago
feature_thermal_printer.md
feature_unicode.md Remove `UNICODE_KEY_OSX` and `UC_OSX` (#18290) 3 years ago
feature_userspace.md
feature_velocikey.md
feature_wpm.md
flash_driver.md Added external spi flash driver. (#15419) 4 years ago
flashing.md [Docs] RESET -> QK_BOOT (#18365) 3 years ago
flashing_bootloadhid.md [Docs] RESET -> QK_BOOT (#18365) 3 years ago
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 Move Doxygen docs to subdirectory (#16561) 4 years ago
hand_wire.md Improve importer workflow (#17707) 3 years ago
hardware_drivers.md
hardware_keyboard_guidelines.md add 'info_config.h' into docs/hardware_keyboard_guidelines.md (#16247) 4 years ago
how_a_matrix_works.md
how_keyboards_work.md docs: reflect systemd's change in language (#17322) 4 years ago
i2c_driver.md Fix i2c driver doc: Incorrect name (#16898) 4 years ago
index.html Fix anchors with <code> in table of content (#15169) 4 years ago
isp_flashing_guide.md ISP flashing guide: add instructions for flashing STM32duino bootloader (#16568) 4 years ago
keycodes.md Chromeos keycodes (#18212) 3 years ago
keycodes_basic.md Chromeos keycodes (#18212) 3 years ago
keycodes_magic.md PoC: Swap Escape and Caps (#16336) 3 years ago
keycodes_us_ansi_shifted.md [Docs] Address some typos (also in moonlander matrix.c) (#16248) 4 years ago
keymap.md Remove orphan custom functions reference in keymap docs (#18444) 3 years ago
mod_tap.md [Docs] Address some typos (also in moonlander matrix.c) (#16248) 4 years ago
newbs.md
newbs_building_firmware.md [Docs] Update newbs_building_firmware.md (#16333) 4 years ago
newbs_building_firmware_configurator.md
newbs_building_firmware_workflow.md [Docs] Building with GitHub Userspace (#16271) 3 years ago
newbs_flashing.md Add note about qmk doctor in newbs_flashing.md (#15688) 3 years ago
newbs_getting_started.md Attempt to discourage manual MSYS install for new users (#17556) 3 years ago
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 [Docs] Refactor code examples (#18003) 3 years ago
newbs_testing_debugging.md
one_shot_keys.md
other_eclipse.md [Docs] Address some typos (also in moonlander matrix.c) (#16248) 4 years ago
other_vscode.md Update other_vscode.md (#17317) 4 years ago
platformdev_blackpill_f411.md [Docs] Add information about WeAct Blackpill F411 (#16755) 3 years ago
platformdev_chibios_earlyinit.md [Docs] RESET -> QK_BOOT (#18365) 3 years ago
platformdev_proton_c.md Add converter docs (#17593) 3 years ago
platformdev_rp2040.md RP2040 emulated EEPROM. (#17519) 3 years ago
platformdev_selecting_arm_mcu.md
porting_your_keyboard_to_qmk.md Align new-keyboard with recent schema updates (#16378) 4 years ago
power.txt
pr_checklist.md [Docs] Explicitly mention kb/user callbacks as boolean (#18448) 3 years ago
qmk.css
qmk_custom_dark.css
qmk_custom_light.css
quantum_keycodes.md Add ability to enter bootloader mode from `QK_MAKE` (#17745) 3 years ago
quantum_painter.md [QP] Add RGB565 surface. Docs clarification, cleanup, tabsification, and reordering. (#18396) 3 years ago
quantum_painter_qff.md Quantum Painter (#10174) 4 years ago
quantum_painter_qgf.md Quantum Painter (#10174) 4 years ago
quantum_painter_rle.md Quantum Painter (#10174) 4 years ago
redirects.json
ref_functions.md Update ref_functions.md (replaced deprecated `RESET`) (#17436) 4 years ago
reference_configurator_support.md
reference_glossary.md
reference_info_json.md Merge remote-tracking branch 'origin/master' into develop 3 years ago
reference_keymap_extras.md Rename keymap_extras headers for consistency (#16939) 4 years ago
serial_driver.md [Core] Add Raspberry Pi RP2040 support (#14877) 3 years ago
spi_driver.md
squeezing_avr.md Add Elite-Pi converter (#18236) 3 years ago
support.md
sw.js
syllabus.md
tap_hold.md Add GET_TAPPING_TERM macro to reduce duplicate code (#16681) 4 years ago
translating.md
uart_driver.md
understanding_qmk.md [Docs] Update 'Process Record' according to the code (#18209) 3 years ago
unit_testing.md
usb_nkro.txt
ws2812_driver.md [Core] Add Raspberry Pi RP2040 support (#14877) 3 years ago

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.