qmk_firmware/docs
David Hoelscher e9bd7d7ad3
I2C driver cleanup (#21273)
* remove i2c_start and i2c_stop from i2c drivers

* remove static i2c_address variable from chibios i2c driver
2024-01-17 14:05:38 +01:00
..
ChangeLog `develop` 2023q4 changelog (#22552) 2023-11-28 15:51:56 +11:00
gitbook/images
internals
ja I2C driver cleanup (#21273) 2024-01-17 14:05:38 +01:00
zh-cn Move velocikey to within rgblight (#22123) 2023-09-25 17:48:10 +01:00
.nojekyll
CNAME
README.md
_langs.md
_summary.md `develop` 2023q4 changelog (#22552) 2023-11-28 15:51:56 +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 `develop` 2023q4 changelog (#22552) 2023-11-28 15:51:56 +11:00
breaking_changes_history.md `develop` 2023q4 changelog (#22552) 2023-11-28 15:51:56 +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 [documentation] QMK migrate docs patch (#22646) 2023-12-12 09:46:00 -07: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 Align `SPLIT_HAND_MATRIX_GRID` left/right logic with `SPLIT_HAND_PIN` (#22775) 2024-01-09 22:24:53 +11: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 `develop` 2023q4 changelog (#22552) 2023-11-28 15:51:56 +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
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
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 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
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 [Doc]: Correct Markdown syntax errors. (#22511) 2023-11-29 02:48:47 +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 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 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 Remove deprecated led_set_kb (#19273) 2022-12-14 11:14:10 +00:00
feature_led_matrix.md LED drivers: rename "simple" to "mono" (#22814) 2024-01-04 06:05:37 +00: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 Migrate some common features to generic (#22403) 2023-11-09 02:01:44 +00:00
feature_pointing_device.md Cirque reachable calibration aide (#22803) 2024-01-13 00:28:09 -08: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 Rename `RGB_DISABLE_WHEN_USB_SUSPENDED` -> `RGB_MATRIX_SLEEP` (#22682) 2023-12-20 13:31:50 +11:00
feature_rgblight.md Rename `RGBLED_NUM` -> `RGBLIGHT_LED_COUNT` (#22570) 2023-12-12 15:30:08 +11: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 Align `SPLIT_HAND_MATRIX_GRID` left/right logic with `SPLIT_HAND_PIN` (#22775) 2024-01-09 22:24:53 +11: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 Fix typo in `docs/feature_tri_layer.md` (#22232) 2023-10-09 09:37:21 +01: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 feat, docs: WB32 flashing (#21217) 2023-07-08 00:48:45 +10:00
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 Fix functions with empty params (#19647) 2023-01-20 16:21:17 +00:00
hand_wire.md
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 I2C driver cleanup (#21273) 2024-01-17 14:05:38 +01: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 Unicodemap keycodes rename (#21092) 2023-06-01 17:25:08 +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
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
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 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
platformdev_proton_c.md
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 [docs] - reword PR checklist for vendor keymaps/userspace changes (#22725) 2023-12-21 12:30:55 +00: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 Add QP support for smaller OLED displays and SSD1306 (#22358) 2023-12-06 13:06:58 +00: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 redundant audio eeconfig init (#22736) 2023-12-24 06:52:58 +00:00
reference_keymap_extras.md Add Canadian French input locale (#21456) 2024-01-09 22:11:59 +11:00
serial_driver.md Clarify PIO define is optional in docs. (#22339) 2023-10-26 22:34:17 +01:00
spi_driver.md Dedupe I2C, SPI, UART driver inclusions (#22253) 2023-10-13 17:25:32 +11:00
squeezing_avr.md Add Imera converter (#22419) 2023-11-28 17:53:47 +11: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 Dedupe I2C, SPI, UART driver inclusions (#22253) 2023-10-13 17:25:32 +11: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 Clarify PIO define is optional in docs. (#22339) 2023-10-26 22:34:17 +01: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.