qmk_firmware/docs
Takeshi ISHII 75a18e69f9
Some GPIO manipulations in matrix.c change to atomic. (#10491)
* Changed the processing of select_xxx()/unselect_xxx() in quantum/matrix.c to be atomic.

* Changed the processing of select_xxx()/unselect_xxx() in quantum/split_common/matrix.c to be atomic.

* update matrix.c

* add ATOMIC_BLOCK_FORCEON macro to quantum/quantum_atomic_extend.h

* quantum_atomic_extend.h's contents move into quantum.h

* update ATOMIC_BLOCK_xxx for unknown platform

* ATOMIC_BLOCK macro support PROTOCOL_ARM_ATSAM

* Add Atomic Operation section in docs/internals_gpio_control.md
2020-10-30 13:23:06 -07:00
..
ChangeLog Reduce Helix keyboard build variation (#8669) 2020-10-30 13:23:04 -07:00
de
es
fr-fr
gitbook/images
he-il
ja Add last breaking changes log to sidebar (#10680) 2020-10-18 15:46:47 +11:00
pt-br
ru-ru
zh-cn
.nojekyll
_langs.md
_summary.md Add last breaking changes log to sidebar (#10680) 2020-10-18 15:46:47 +11:00
adc_driver.md
api_development_environment.md
api_development_overview.md
api_docs.md
api_overview.md
arm_debugging.md
breaking_changes.md update "Breaking Changes" doc 2020-08-29 14:30:02 -07:00
breaking_changes_instructions.md
cli.md
cli_commands.md [CLI] Add c2json (#8817) 2020-10-06 17:10:19 -07:00
cli_configuration.md
cli_development.md
CNAME
coding_conventions_c.md
coding_conventions_python.md
compatible_microcontrollers.md
config_options.md New feature: Retro Tapping per key (#10622) 2020-10-30 13:23:01 -07:00
configurator_default_keymaps.md [Docs] add "Adding Default Keymaps to QMK Configurator" doc (#10049) 2020-10-18 03:50:32 +11:00
configurator_step_by_step.md
configurator_troubleshooting.md
contributing.md
custom_matrix.md
custom_quantum_functions.md Add housekeeping task callbacks so that keyboards/keymaps are capable of executing code for each main loop iteration. (#10530) 2020-10-30 13:23:03 -07:00
documentation_best_practices.md
documentation_templates.md
driver_installation_zadig.md MSYS and WSL installation improvements (#10593) 2020-10-18 02:45:21 +11:00
eeprom_driver.md
faq_build.md 50-qmk.rules: Move udev rules from documentation into a file (#10664) 2020-10-17 20:30:18 +01:00
faq_debug.md Add TMK "FEED" VID to list of deprecated udev rules 2020-09-19 05:21:31 +10:00
faq_general.md
faq_keymap.md
feature_advanced_keycodes.md Doc followup 9942 (#10473) 2020-10-01 22:19:57 +01:00
feature_audio.md
feature_auto_shift.md #define AUTO_SHIFT_SETUP (#8441) 2020-08-29 14:30:02 -07:00
feature_backlight.md Rescale both ChibiOS and AVR backlighting. 2020-10-30 13:23:04 -07:00
feature_bluetooth.md Add description in Bluetooth docs for requiring NKRO to be disabled (#10359) 2020-09-22 22:31:37 +10:00
feature_bootmagic.md
feature_combo.md changed type of process_combo_event argument in tutorial (#10621) 2020-10-13 02:14:37 +11:00
feature_command.md
feature_debounce_type.md Fix typo within debounce documentation (#10600) 2020-10-13 01:46:16 +01:00
feature_dip_switch.md
feature_dynamic_macros.md
feature_encoders.md Per-encoder resolutions (#10259) 2020-10-30 13:15:41 -07:00
feature_grave_esc.md
feature_haptic_feedback.md Haptic and solenoid cleanup (#9700) 2020-10-30 13:15:50 -07:00
feature_hd44780.md
feature_joystick.md Joystick 16-bit support (#10439) 2020-10-30 13:15:41 -07:00
feature_key_lock.md
feature_layers.md
feature_layouts.md
feature_leader_key.md
feature_led_matrix.md
feature_macros.md
feature_mouse_keys.md Share button state from mousekey to pointing_device (#10179) 2020-10-30 13:15:42 -07:00
feature_oled_driver.md OLED display update interval support (#10388) 2020-10-30 13:20:54 -07:00
feature_pointing_device.md
feature_ps2_mouse.md
feature_rawhid.md
feature_rgb_matrix.md Add advanced/efficient RGB Matrix Indicators (#8564) 2020-10-30 13:15:44 -07:00
feature_rgblight.md Tweak the Christmas animation effect to be less harsh on the eyes (#7648) 2020-08-29 14:30:02 -07:00
feature_space_cadet.md
feature_split_keyboard.md Replace figures in docs/feature_split_keyboard.md (#10242) 2020-09-06 21:15:55 -07:00
feature_stenography.md
feature_swap_hands.md
feature_tap_dance.md
feature_terminal.md
feature_thermal_printer.md
feature_unicode.md
feature_userspace.md
feature_velocikey.md
feature_wpm.md
flashing.md Add st-flash flash target (#9964) 2020-08-29 14:30:02 -07:00
flashing_bootloadhid.md
fuse.txt
getting_started_docker.md
getting_started_github.md
getting_started_introduction.md
getting_started_make_guide.md Remove support for Adafruit EZ-Key (#10103) 2020-08-29 14:30:02 -07:00
getting_started_vagrant.md
hand_wire.md
hardware_avr.md
hardware_drivers.md
hardware_keyboard_guidelines.md Fixes small typo in docs (#10515) 2020-10-05 19:21:39 +11:00
how_a_matrix_works.md
how_keyboards_work.md
i2c_driver.md
index.html
internals_defines.md
internals_gpio_control.md Some GPIO manipulations in matrix.c change to atomic. (#10491) 2020-10-30 13:23:06 -07:00
internals_input_callback_reg.md
internals_midi_device.md
internals_midi_device_setup_process.md
internals_midi_util.md
internals_send_functions.md
internals_sysex_tools.md
isp_flashing_guide.md
keycodes.md
keycodes_basic.md
keycodes_us_ansi_shifted.md
keymap.md
mod_tap.md [Docs] Add link to Tap-Hold Configuration Options from Mod-Tap (#10548) 2020-10-15 21:23:24 -07:00
newbs.md
newbs_building_firmware.md
newbs_building_firmware_configurator.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 Update other_vscode.md of Japanese document (#10604) 2020-10-15 03:24:26 +09:00
platformdev_chibios_earlyinit.md
platformdev_selecting_arm_mcu.md
power.txt
pr_checklist.md Docs/PR_checklist: Reorder, unify and pet-peeves (#10253) 2020-09-06 13:06:12 +01:00
proton_c_conversion.md
qmk.css
qmk_custom_dark.css
qmk_custom_light.css
quantum_keycodes.md
README.md
redirects.json
ref_functions.md [Docs] Clarify functionality of update_tri_layer_state (#10370) 2020-09-21 11:35:26 -07:00
reference_configurator_support.md
reference_glossary.md
reference_info_json.md Mark 'key_count' as optional within info.json docs (#10513) 2020-10-03 00:42:11 +01:00
reference_keymap_extras.md
serial_driver.md
spi_driver.md
support.md
sw.js
syllabus.md
tap_hold.md New feature: Retro Tapping per key (#10622) 2020-10-30 13:23:01 -07:00
translating.md
understanding_qmk.md
unit_testing.md
usb_nkro.txt
ws2812_driver.md

Quantum Mechanical Keyboard Firmware

Current Version Build Status Discord Docs Status GitHub contributors GitHub forks

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

Totally new to QMK? There are two ways to get started:

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.