qmk_firmware/docs
Drashna Jaelre f4966a19d6
[Docs] Squeezing space out of AVR (#15243)
* [Docs] Squeezing space out of AVR

* Add more info

* Apply suggestions from code review

Co-authored-by: Nick Brassel <nick@tzarc.org>

* Add oled section

* Apply suggestions from code review

Co-authored-by: Nick Brassel <nick@tzarc.org>

* Update layers and intro wording

* Rename doc file

* add get_u8_str support

* oled clarifications

Co-authored-by: Nick Brassel <nick@tzarc.org>

Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-11-23 08:14:00 +11:00
..
ChangeLog Bootmagic lite docs clarity. (#14204) 2021-08-29 09:47:48 +10:00
de Remove bin/qmk (#14231) 2021-08-29 16:50:22 -07:00
es Purge uGFX. (#14720) 2021-10-07 10:57:48 +11:00
fr-fr Move tmk_core/common/<plat> (#13918) 2021-11-19 10:41:02 -08:00
gitbook/images
he-il Purge uGFX. (#14720) 2021-10-07 10:57:48 +11:00
ja Move tmk_core/common/<plat> (#13918) 2021-11-19 10:41:02 -08:00
ko-kr [Core] [Docs] Remove travis-ci references (#13916) 2021-08-20 23:31:26 +01:00
pt-br [Core] [Docs] Remove travis-ci references (#13916) 2021-08-20 23:31:26 +01:00
ru-ru Purge uGFX. (#14720) 2021-10-07 10:57:48 +11:00
zh-cn Move tmk_core/common/<plat> (#13918) 2021-11-19 10:41:02 -08:00
_langs.md Fix hebrew emoji in langs.md (#15140) 2021-11-13 17:18:02 +00:00
_summary.md [Docs] Squeezing space out of AVR (#15243) 2021-11-23 08:14:00 +11:00
.nojekyll
adc_driver.md 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
api_development_environment.md Add API documentation 2020-03-05 16:00:10 -08:00
api_development_overview.md Add API documentation 2020-03-05 16:00:10 -08:00
api_docs.md [Docs] Use HTTPS for images and links where possible (#11695) 2021-01-30 22:00:56 +11:00
api_overview.md [Docs] Use HTTPS for images and links where possible (#11695) 2021-01-30 22:00:56 +11:00
arm_debugging.md [Docs] fix docs (#7642) 2019-12-21 11:00:22 +00:00
audio_driver.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
breaking_changes_history.md 2021Q3 pre-merge develop changelog, keyboard aliases (#14198) 2021-08-29 08:18:18 +10:00
breaking_changes_instructions.md 2020 May 30 Breaking Changes Update (#9215) 2020-05-30 13:14:59 -07:00
breaking_changes.md 2021Q3 pre-merge develop changelog, keyboard aliases (#14198) 2021-08-29 08:18:18 +10:00
chibios_upgrade_instructions.md Update to ChibiOS 20.3.4, support builds against trunk (#14208) 2021-11-03 08:26:40 +11:00
cli_commands.md Merge remote-tracking branch 'upstream/master' into develop 2021-11-05 08:55:55 +11:00
cli_configuration.md Fix capitalisation of "GitHub" (#9184) 2020-05-25 19:43:14 -07:00
cli_development.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
cli_tab_complete.md Fix Typo in documentation (#14942) 2021-10-24 23:32:42 +01:00
cli.md Streamline the macos install process 2020-05-18 22:46:33 -07:00
CNAME
coding_conventions_c.md [Docs] Use HTTPS for images and links where possible (#11695) 2021-01-30 22:00:56 +11:00
coding_conventions_python.md Refactor new-keyboard to be python3.7 compatible (#14707) 2021-11-05 08:14:43 +11:00
compatible_microcontrollers.md [Core] Add support for RISC-V builds and GD32VF103 MCU (#12508) 2021-10-18 16:23:20 +11:00
config_options.md Add support for deferred executors. (#14859) 2021-11-15 18:21:09 +00:00
configurator_architecture.md Architecture documentation for Configurator and API (#13935) 2021-08-10 07:47:53 -07:00
configurator_default_keymaps.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
configurator_diagram.drawio Architecture documentation for Configurator and API (#13935) 2021-08-10 07:47:53 -07:00
configurator_diagram.svg Architecture documentation for Configurator and API (#13935) 2021-08-10 07:47:53 -07:00
configurator_step_by_step.md Fix capitalisation of "GitHub" (#9184) 2020-05-25 19:43:14 -07:00
configurator_troubleshooting.md Polish Configurator section 2020-03-05 16:00:10 -08:00
contributing.md Remove bin/qmk (#14231) 2021-08-29 16:50:22 -07:00
custom_matrix.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
custom_quantum_functions.md Add support for deferred executors. (#14859) 2021-11-15 18:21:09 +00:00
data_driven_config.md Create a system to map between info.json and config.h/rules.mk (#11548) 2021-01-31 12:46:00 -08:00
documentation_best_practices.md [Docs] fix file path (#9540) 2020-06-25 15:58:36 +10:00
documentation_templates.md [Docs] Use HTTPS for images and links where possible (#11695) 2021-01-30 22:00:56 +11:00
driver_installation_zadig.md [Core] Add support for RISC-V builds and GD32VF103 MCU (#12508) 2021-10-18 16:23:20 +11:00
easy_maker.md [Keyboard] ez_maker/directpins for easy one-offs in qmk_configurator (#13321) 2021-08-14 08:42:59 -07:00
eeprom_driver.md eeprom_i2c driver: added EXTERNAL_EEPROM_WP_PIN configuration option. (#12617) 2021-06-21 19:34:28 -07:00
faq_build.md [Docs] Use HTTPS for images and links where possible (#11695) 2021-01-30 22:00:56 +11:00
faq_debug.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
faq_general.md Fix typos and reword some sentences in FAQs (#11546) 2021-01-23 13:41:29 -08:00
faq_keymap.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
faq_misc.md Remove BOOTMAGIC_ENABLE = lite option (#15002) 2021-11-05 08:18:09 +11:00
feature_advanced_keycodes.md Additional documentation for GUI mod combo (#13266) 2021-06-22 12:41:57 +10:00
feature_audio.md Fixup Audio startup and add to documents (#13606) 2021-08-15 21:51:50 +01:00
feature_auto_shift.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
feature_backlight.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
feature_bluetooth.md Improve Adafruit BLE configuration defines (#14749) 2021-10-08 16:15:20 +01:00
feature_bootmagic.md Remove BOOTMAGIC_ENABLE = lite option (#15002) 2021-11-05 08:18:09 +11:00
feature_combo.md Merge remote-tracking branch 'origin/master' into develop 2021-11-22 20:02:13 +00:00
feature_command.md Remove Full Bootmagic (#13846) 2021-08-06 23:59:56 -07:00
feature_debounce_type.md Remove backwards compatibility of debounce names (#13877) 2021-08-09 19:46:18 +01:00
feature_digitizer.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
feature_dip_switch.md Added right vs left specific pin assignments for dip switch (#13074) 2021-08-19 18:39:15 +01:00
feature_dynamic_macros.md Fix typo in docs/feature_dynamic_macros (#10085) 2020-08-19 22:59:59 +01:00
feature_encoders.md Rework encoders to enable asymmetric split keyboards (#12090) 2021-11-20 09:06:08 -08:00
feature_grave_esc.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
feature_haptic_feedback.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
feature_hd44780.md fixed typo for clear lcd screen function in hd44780 docs (#9086) 2020-05-13 19:06:41 +01:00
feature_joystick.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
feature_key_lock.md Add explicit id tags to externally linked headers 2020-03-05 16:00:10 -08:00
feature_key_overrides.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
feature_layers.md Move tmk_core/common/<plat> (#13918) 2021-11-19 10:41:02 -08:00
feature_layouts.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
feature_leader_key.md 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
feature_led_indicators.md [Docs] add sync options heading, update led indicators (#14441) 2021-09-15 10:11:25 -07:00
feature_led_matrix.md Require explicit enabling of RGB Matrix modes (#15018) 2021-11-15 10:41:04 -08:00
feature_macros.md Macros in JSON keymaps (#14374) 2021-11-22 11:11:35 -08:00
feature_midi.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
feature_mouse_keys.md Add support for 8 buttons to mouse report (#10807) 2021-01-28 04:38:34 +11:00
feature_oled_driver.md Merge remote-tracking branch 'origin/master' into develop 2021-11-02 06:19:36 +00:00
feature_pointing_device.md Rework and expand Pointing Device support (#14343) 2021-11-14 22:03:24 -08:00
feature_programmable_button.md Add Support for USB programmable buttons (#12950) 2021-09-15 08:40:22 -07:00
feature_ps2_mouse.md Align PS/2 GPIO defines (#14745) 2021-10-20 20:07:40 +01:00
feature_rawhid.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
feature_rgb_matrix.md Rename RGB fractal (#15174) 2021-11-16 11:14:57 -08:00
feature_rgblight.md Retain brightness with lighting layers (#13025) 2021-07-21 23:46:12 -07:00
feature_sequencer.md Ensure single newline at EOF for core files (#11310) 2020-12-28 04:36:32 +11:00
feature_space_cadet.md [Docs] Use HTTPS for images and links where possible (#11695) 2021-01-30 22:00:56 +11:00
feature_split_keyboard.md [Docs] add sync options heading, update led indicators (#14441) 2021-09-15 10:11:25 -07:00
feature_st7565.md ST7565 invert (#13237) 2021-06-19 18:51:35 +10:00
feature_stenography.md Merge remote-tracking branch 'origin/master' into develop 2021-11-17 22:31:15 +00:00
feature_swap_hands.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
feature_tap_dance.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
feature_terminal.md Remove build option firmware size impacts (#6947) 2019-10-18 18:14:49 -07:00
feature_thermal_printer.md
feature_unicode.md 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
feature_userspace.md Enable CLI flashing via mdloader (#14729) 2021-10-15 22:07:33 +01:00
feature_velocikey.md Remove BOOTMAGIC_ENABLE = lite option (#15002) 2021-11-05 08:18:09 +11:00
feature_wpm.md Reimplements WPM feature to be smaller & precise (#13902) 2021-11-16 05:40:52 +11:00
flashing_bootloadhid.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
flashing.md Change USBasp and bootloadHID bootloaders to lowercase (#14354) 2021-09-10 17:17:54 +10:00
fuse.txt Ensure single newline at EOF for core files (#11310) 2020-12-28 04:36:32 +11:00
getting_started_docker.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
getting_started_github.md Purge uGFX. (#14720) 2021-10-07 10:57:48 +11:00
getting_started_introduction.md [Docs] update git command and directory name of documents (#7619) 2019-12-12 20:59:00 -08:00
getting_started_make_guide.md Add support for deferred executors. (#14859) 2021-11-15 18:21:09 +00:00
getting_started_vagrant.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
hand_wire.md [Docs] Added information on soldering diodes in parallel (#13117) 2021-07-29 22:56:27 -07:00
hardware_avr.md Port new_keyboard.sh to CLI (#13706) 2021-07-30 21:57:40 +01:00
hardware_drivers.md Purge uGFX. (#14720) 2021-10-07 10:57:48 +11:00
hardware_keyboard_guidelines.md Purge uGFX. (#14720) 2021-10-07 10:57:48 +11:00
how_a_matrix_works.md [Docs] Use HTTPS for images and links where possible (#11695) 2021-01-30 22:00:56 +11:00
how_keyboards_work.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
i2c_driver.md i2c_master: Add support for reading/writing to 16-bit registers (#14289) 2021-10-07 10:29:35 +11:00
index.html Simplify the visual flow of the getting started page (#11316) 2020-12-27 16:56:10 +00:00
internals_defines.md
internals_gpio_control.md Move tmk_core/common/<plat> (#13918) 2021-11-19 10:41:02 -08:00
internals_input_callback_reg.md
internals_midi_device_setup_process.md
internals_midi_device.md
internals_midi_util.md
internals_send_functions.md
internals_sysex_tools.md
isp_flashing_guide.md Rework ISP flashing guide (#14938) 2021-11-05 14:42:08 +11:00
keycodes_basic.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
keycodes_magic.md Add a toggle key for GUI On/Off in Magic feature (#13830) 2021-08-18 08:47:50 +10:00
keycodes_us_ansi_shifted.md Backslash-escape pipe character in keycode lists (#7157) 2019-10-26 06:10:03 +01:00
keycodes.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
keymap.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
mod_tap.md [Docs] Correct logic of tap hold statement (#14992) 2021-11-12 14:14:28 -08:00
newbs_building_firmware_configurator.md Small tweaks to docs to make them more user friendly (#11518) 2021-01-20 18:46:01 +00:00
newbs_building_firmware.md Add explicit id tags to externally linked headers 2020-03-05 16:00:10 -08:00
newbs_flashing.md A few small typo fixes in docs (#12524) 2021-04-11 12:50:45 +02:00
newbs_getting_started.md [Docs] Add instructions to create keymap before proceeding (#14945) 2021-10-27 08:03:00 -07:00
newbs_git_best_practices.md [Docs] Restructure of Git Best Practices doc (#7231) 2019-12-02 18:47:02 -08:00
newbs_git_resolving_merge_conflicts.md [Docs] Restructure of Git Best Practices doc (#7231) 2019-12-02 18:47:02 -08:00
newbs_git_resynchronize_a_branch.md [Docs] Clean up some code block languages (#14434) 2021-09-14 13:16:24 +01:00
newbs_git_using_your_master_branch.md Add explicit id tags to externally linked headers 2020-03-05 16:00:10 -08:00
newbs_learn_more_resources.md Small tweaks to docs to make them more user friendly (#11518) 2021-01-20 18:46:01 +00:00
newbs_testing_debugging.md Small tweaks to docs to make them more user friendly (#11518) 2021-01-20 18:46:01 +00:00
newbs.md [Docs] Use HTTPS for images and links where possible (#11695) 2021-01-30 22:00:56 +11:00
one_shot_keys.md fix: Fix typo in documentation for one shot keys. ON_TOGG -> OS_TOGG (#13754) 2021-07-28 12:00:55 +01:00
other_eclipse.md eclipse: recommend changing the default project make target (#12447) 2021-04-19 02:20:17 -07:00
other_vscode.md [Core] [Docs] Remove travis-ci references (#13916) 2021-08-20 23:31:26 +01:00
platformdev_chibios_earlyinit.md Ensure single newline at EOF for core files (#11310) 2020-12-28 04:36:32 +11:00
platformdev_selecting_arm_mcu.md Add documentation for selecting an Arm MCU (#9046) 2020-06-10 23:32:58 +01:00
power.txt
pr_checklist.md Move tmk_core/common/<plat> (#13918) 2021-11-19 10:41:02 -08:00
proton_c_conversion.md Add board specific to Proton-C, with usual defaults turned on. (#10976) 2020-12-03 13:04:28 +11:00
qmk_custom_dark.css Small tweaks to docs to make them more user friendly (#11518) 2021-01-20 18:46:01 +00:00
qmk_custom_light.css Small tweaks to docs to make them more user friendly (#11518) 2021-01-20 18:46:01 +00:00
qmk.css
quantum_keycodes.md Add explicit id tags to externally linked headers 2020-03-05 16:00:10 -08:00
README.md Small tweaks to docs to make them more user friendly (#11518) 2021-01-20 18:46:01 +00:00
redirects.json Configuration system for CLI (#6708) 2019-09-22 13:25:33 -07:00
ref_functions.md Remove Full Bootmagic (#13846) 2021-08-06 23:59:56 -07:00
reference_configurator_support.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
reference_glossary.md Fix Space Cadet md link (#14300) 2021-09-04 15:01:56 +01:00
reference_info_json.md [Docs] Clean up reference_info_json.md (#14806) 2021-10-15 12:45:33 +11:00
reference_keymap_extras.md Rework keymap_extras docs (#13949) 2021-08-15 00:18:20 +10:00
serial_driver.md Make solo half of split keyboards (more) usable. (#13523) 2021-08-22 10:51:17 +10:00
spi_driver.md Merge remote-tracking branch 'upstream/master' into develop 2021-02-08 07:57:09 +11:00
squeezing_avr.md [Docs] Squeezing space out of AVR (#15243) 2021-11-23 08:14:00 +11:00
support.md Fix capitalisation of "GitHub" (#9184) 2020-05-25 19:43:14 -07:00
sw.js
syllabus.md [Docs] Squeezing space out of AVR (#15243) 2021-11-23 08:14:00 +11:00
tap_hold.md [Docs] Clarify "nested" and "rolling" key sequences (#14655) 2021-11-18 20:34:22 -08:00
translating.md Add yet another dictionary for the QMK Firmware docs sidebar heading (#7504) 2019-11-28 22:14:04 +00:00
uart_driver.md Update UART driver API (#14839) 2021-11-13 18:23:14 +00:00
understanding_qmk.md Basic keycode overhaul (#14726) 2021-11-03 22:22:17 -07:00
unit_testing.md Remove SERIAL_LINK feature (#14727) 2021-10-07 12:32:05 +11:00
usb_nkro.txt
ws2812_driver.md Fix up WS2812 SPI driver on F072. (#13022) 2021-06-03 09:48:16 +10:00

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.