keychron_qmk_firmware/docs
Stefan Kerkmann 117bff17ba
[Core] Unite half-duplex and full-duplex serial drivers (#13081)
* Unite half-duplex and full-duplex serial driver.

* Add full duplex operation mode to the interrupt based driver
* Delete DMA UART based full duplex driver
* The new driver targets #11930

* Fix freezes with failing transactions in half-duplex

* Increase default serial TX/RX buffer size to 128 bytes

* Correctly use bool instead of size_t

Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-07-02 08:24:08 +10:00
..
ChangeLog
de
es
fr-fr Cleanup junk characters, part 1 (#13282) 2021-06-21 11:29:15 +01:00
gitbook/images
he-il
ja Convert Dip Switch callbacks to boolean functions (#13399) 2021-07-01 08:22:21 -07:00
ko-kr
pt-br
ru-ru
zh-cn
_langs.md
_summary.md Add ST7565 LCD driver (#13089) 2021-06-10 17:16:09 +10:00
.nojekyll
adc_driver.md
api_development_environment.md
api_development_overview.md
api_docs.md
api_overview.md
arm_debugging.md
audio_driver.md
breaking_changes_history.md
breaking_changes_instructions.md
breaking_changes.md Merge remote-tracking branch 'upstream/master' into develop 2021-06-20 12:10:59 +10:00
chibios_upgrade_instructions.md
cli_commands.md Move RGBLight code into its own folder (#13312) 2021-06-28 15:15:24 +10:00
cli_configuration.md
cli_development.md
cli_tab_complete.md
cli.md
CNAME
coding_conventions_c.md
coding_conventions_python.md
compatible_microcontrollers.md Adds support for STM32L412xB, STM32L422xB. (#13383) 2021-06-30 10:07:40 +10:00
config_options.md Extensible split data sync (#11930) 2021-06-18 09:10:06 +10:00
configurator_default_keymaps.md
configurator_step_by_step.md
configurator_troubleshooting.md
contributing.md
custom_matrix.md
custom_quantum_functions.md
data_driven_config.md
documentation_best_practices.md
documentation_templates.md
driver_installation_zadig.md
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
faq_debug.md
faq_general.md
faq_keymap.md
faq_misc.md
feature_advanced_keycodes.md Additional documentation for GUI mod combo (#13266) 2021-06-22 12:41:57 +10:00
feature_audio.md Document user song list file (#13101) 2021-06-15 22:31:06 -07:00
feature_auto_shift.md
feature_backlight.md
feature_bluetooth.md
feature_bootmagic.md
feature_combo.md
feature_command.md
feature_debounce_type.md Add asym_eager_defer_pk debounce type (#12689) 2021-06-16 14:00:37 +10:00
feature_dip_switch.md Convert Dip Switch callbacks to boolean functions (#13399) 2021-07-01 08:22:21 -07:00
feature_dynamic_macros.md
feature_encoders.md
feature_grave_esc.md
feature_haptic_feedback.md Add Per Key exclusions for Haptic Feedback (#12386) 2021-06-19 19:28:54 -07:00
feature_hd44780.md
feature_joystick.md
feature_key_lock.md
feature_layers.md
feature_layouts.md
feature_leader_key.md
feature_led_indicators.md
feature_led_matrix.md Top level heading for common config (LED Matrix) (#13153) 2021-06-15 22:07:24 -07:00
feature_macros.md
feature_midi.md
feature_mouse_keys.md
feature_oled_driver.md Add oled_invert (#13172) 2021-06-19 01:08:22 +10:00
feature_pointing_device.md
feature_ps2_mouse.md
feature_rawhid.md
feature_rgb_matrix.md Relocate RGB/HSV color defs to a more fitting place (#13377) 2021-06-29 19:15:58 +01:00
feature_rgblight.md Relocate RGB/HSV color defs to a more fitting place (#13377) 2021-06-29 19:15:58 +01:00
feature_sequencer.md
feature_space_cadet.md
feature_split_keyboard.md Extensible split data sync (#11930) 2021-06-18 09:10:06 +10:00
feature_st7565.md ST7565 invert (#13237) 2021-06-19 18:51:35 +10: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_bootloadhid.md
flashing.md
fuse.txt
getting_started_docker.md
getting_started_github.md
getting_started_introduction.md
getting_started_make_guide.md
getting_started_vagrant.md
hand_wire.md
hardware_avr.md
hardware_drivers.md
hardware_keyboard_guidelines.md
how_a_matrix_works.md
how_keyboards_work.md
i2c_driver.md
index.html
internals_defines.md
internals_gpio_control.md
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
keycodes_basic.md
keycodes_us_ansi_shifted.md
keycodes.md Add Mac centric Shift and Alt + GUI Macros (#13107) 2021-06-19 19:14:19 -07:00
keymap.md
mod_tap.md Add Mac centric Shift and Alt + GUI Macros (#13107) 2021-06-19 19:14:19 -07:00
newbs_building_firmware_configurator.md
newbs_building_firmware.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
newbs.md
one_shot_keys.md [Docs] Update one_shot_keys.md (#12291) 2021-06-15 20:35:31 -07:00
other_eclipse.md
other_vscode.md
platformdev_chibios_earlyinit.md
platformdev_selecting_arm_mcu.md
power.txt
pr_checklist.md [Docs] pr_checklist: fix capitalization of Vial (#13301) 2021-06-22 17:45:13 -07:00
proton_c_conversion.md
qmk_custom_dark.css
qmk_custom_light.css
qmk.css
quantum_keycodes.md
README.md
redirects.json
ref_functions.md
reference_configurator_support.md
reference_glossary.md
reference_info_json.md
reference_keymap_extras.md
serial_driver.md [Core] Unite half-duplex and full-duplex serial drivers (#13081) 2021-07-02 08:24:08 +10:00
spi_driver.md
support.md
sw.js
syllabus.md
tap_hold.md
translating.md
uart_driver.md
understanding_qmk.md
unit_testing.md
usb_nkro.txt
ws2812_driver.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.