mirror of
https://github.com/qmk/qmk_firmware.git
synced 2026-07-11 03:17:28 -04:00
22 lines
25 KiB
HTML
22 lines
25 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en-US" dir="ltr">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
<title>404 | QMK Firmware</title>
|
|
<meta name="description" content="Not Found">
|
|
<meta name="generator" content="VitePress v1.6.4">
|
|
<link rel="preload stylesheet" href="/assets/style.DXtMBPge.css" as="style">
|
|
<link rel="preload stylesheet" href="/vp-icons.css" as="style">
|
|
|
|
<script type="module" src="/assets/app.CCKT8eV8.js"></script>
|
|
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
|
|
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
|
|
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
|
|
</head>
|
|
<body>
|
|
<div id="app"></div>
|
|
<script>window.__VP_HASH_MAP__=JSON.parse("{\"api_development_environment.md\":\"wNYXToe7\",\"api_development_overview.md\":\"CzbJJDNw\",\"api_docs.md\":\"C2yn8IjW\",\"api_overview.md\":\"DkBx64VD\",\"arm_debugging.md\":\"BVKHYCY3\",\"breaking_changes.md\":\"BJZxbNQ8\",\"breaking_changes_history.md\":\"CE5EMOAr\",\"breaking_changes_instructions.md\":\"YfjQwyDT\",\"capabilities.md\":\"B8T3JCyt\",\"capabilities_inc.md\":\"Sa8st2B_\",\"changelog_20190830.md\":\"CBfckQOX\",\"changelog_20200229.md\":\"DiinV84l\",\"changelog_20200530.md\":\"BH8FWHkm\",\"changelog_20200829.md\":\"DznAG4nm\",\"changelog_20201128.md\":\"-2Dfbq7k\",\"changelog_20210227.md\":\"vgsezX7T\",\"changelog_20210529.md\":\"CWpDbllD\",\"changelog_20210828.md\":\"X4_BluTJ\",\"changelog_20211127.md\":\"B9B6h84a\",\"changelog_20220226.md\":\"DIw57r5h\",\"changelog_20220528.md\":\"Aq5MEXya\",\"changelog_20220827.md\":\"Cr63IlPG\",\"changelog_20221126.md\":\"C2ha4Hg9\",\"changelog_20230226.md\":\"De4T2dUZ\",\"changelog_20230528.md\":\"BacADocV\",\"changelog_20230827.md\":\"Ccy4AdJq\",\"changelog_20231126.md\":\"Q4Va56-o\",\"changelog_20240225.md\":\"DSuQVEc0\",\"changelog_20240526.md\":\"ElUUrYcx\",\"changelog_20240825.md\":\"N1RvMy9r\",\"changelog_20241124.md\":\"Dy8bwJzG\",\"changelog_20250223.md\":\"B72dUS3J\",\"changelog_20250525.md\":\"a1xu4dA3\",\"changelog_20250831.md\":\"BO33XxfI\",\"changelog_20251130.md\":\"DtPMFMHL\",\"changelog_20260222.md\":\"CATMKVaN\",\"changelog_20260531.md\":\"DHtZDh3f\",\"chibios_upgrade_instructions.md\":\"CtaRRXpJ\",\"cli.md\":\"BSe0mfRY\",\"cli_commands.md\":\"CgJfYMV3\",\"cli_configuration.md\":\"BKXYakFu\",\"cli_development.md\":\"BBW4icmD\",\"cli_tab_complete.md\":\"CnVMEiZf\",\"coding_conventions_c.md\":\"CLEvGoZQ\",\"coding_conventions_python.md\":\"C39VQP0z\",\"compatible_microcontrollers.md\":\"Bf-rLjWh\",\"config_options.md\":\"BvppuDuW\",\"configurator_architecture.md\":\"oiNBnJec\",\"configurator_default_keymaps.md\":\"DnKCtKHc\",\"configurator_step_by_step.md\":\"DDwpDY58\",\"configurator_troubleshooting.md\":\"C2ghw8vC\",\"contributing.md\":\"dJQPrZXD\",\"custom_matrix.md\":\"BpQrge8p\",\"custom_quantum_functions.md\":\"DlfwiyHe\",\"data_driven_config.md\":\"CnG_3O32\",\"documentation_best_practices.md\":\"CywuRS8R\",\"documentation_templates.md\":\"8Tmv7rFN\",\"driver_installation_zadig.md\":\"Dopii2Qg\",\"drivers_adc.md\":\"4lcxwuNF\",\"drivers_apa102.md\":\"BoVkQMrw\",\"drivers_audio.md\":\"COE6LqFp\",\"drivers_aw20216s.md\":\"DmQVa7iu\",\"drivers_battery.md\":\"4AI78ASf\",\"drivers_eeprom.md\":\"BlurGiKn\",\"drivers_flash.md\":\"DaShF64Z\",\"drivers_gpio.md\":\"frhwWZT1\",\"drivers_i2c.md\":\"Co8uEeEh\",\"drivers_is31fl3218.md\":\"Boj71vTc\",\"drivers_is31fl3236.md\":\"CItbpifZ\",\"drivers_is31fl3729.md\":\"mDVSZ3C7\",\"drivers_is31fl3731.md\":\"CxEgviPy\",\"drivers_is31fl3733.md\":\"B-6AcIwY\",\"drivers_is31fl3736.md\":\"GDTnntSt\",\"drivers_is31fl3737.md\":\"D-aRCkbW\",\"drivers_is31fl3741.md\":\"Dlb-h25I\",\"drivers_is31fl3742a.md\":\"Cj8IJj4G\",\"drivers_is31fl3743a.md\":\"BiLEsQ8L\",\"drivers_is31fl3745.md\":\"Bs5pX8zD\",\"drivers_is31fl3746a.md\":\"r4Yz0yI2\",\"drivers_serial.md\":\"BaT67xXa\",\"drivers_snled27351.md\":\"BZ-74IBQ\",\"drivers_spi.md\":\"CCcP4GQP\",\"drivers_uart.md\":\"BzqycL-H\",\"drivers_ws2812.md\":\"CIqW0lWS\",\"easy_maker.md\":\"6n7dVTYS\",\"faq_build.md\":\"DZNHN8-D\",\"faq_debug.md\":\"vx_0_u9_\",\"faq_general.md\":\"D0EG2y83\",\"faq_keymap.md\":\"HQK7yaN_\",\"faq_misc.md\":\"CILFeSvN\",\"feature_advanced_keycodes.md\":\"BFCS9PZn\",\"feature_converters.md\":\"D6KzN6T3\",\"feature_debounce_type.md\":\"B4btv3zl\",\"feature_eeprom.md\":\"D_bqLEFa\",\"feature_layers.md\":\"Bqm53P73\",\"feature_layouts.md\":\"BogzTuHR\",\"feature_macros.md\":\"BlMWaiqJ\",\"feature_userspace.md\":\"Bf5gmiAY\",\"features_audio.md\":\"B0WDeKTO\",\"features_auto_shift.md\":\"DLSDpq9k\",\"features_autocorrect.md\":\"Y0LgzJas\",\"features_backlight.md\":\"Dhz64Vpl\",\"features_battery.md\":\"B6Ab94Jc\",\"features_bootmagic.md\":\"C_5K311x\",\"features_caps_word.md\":\"CIDaBP-l\",\"features_combo.md\":\"Dax9EotR\",\"features_command.md\":\"DWbb2ZHf\",\"features_community_modules.md\":\"BKB3EQD6\",\"features_digitizer.md\":\"BM6Nxg-j\",\"features_dip_switch.md\":\"BkvqWk2A\",\"features_dynamic_macros.md\":\"DaLBt-80\",\"features_encoders.md\":\"BkuwcHCp\",\"features_grave_esc.md\":\"CHuvHpZ3\",\"features_haptic_feedback.md\":\"B-ioEYF3\",\"features_hd44780.md\":\"DpvS25NL\",\"features_joystick.md\":\"B4D1xgy3\",\"features_key_lock.md\":\"Cu61mSCj\",\"features_key_overrides.md\":\"V4FVUQJE\",\"features_layer_lock.md\":\"Z90Yt_DL\",\"features_leader_key.md\":\"B47rYW2D\",\"features_led_indicators.md\":\"B-a_9KJt\",\"features_led_matrix.md\":\"CAcICmoN\",\"features_midi.md\":\"DBHZcct-\",\"features_mouse_keys.md\":\"9KGsb6t8\",\"features_oled_driver.md\":\"DYIJCwT3\",\"features_os_detection.md\":\"DaeYZhGC\",\"features_pointing_device.md\":\"Bs_a83Jz\",\"features_programmable_button.md\":\"B4W0QrV3\",\"features_ps2_mouse.md\":\"DkKbg0HB\",\"features_rawhid.md\":\"agsoL5dY\",\"features_repeat_key.md\":\"DQiZBEg0\",\"features_rgb_matrix.md\":\"rWDHSc7o\",\"features_rgblight.md\":\"BEL-EV8Z\",\"features_secure.md\":\"DWJXxMMA\",\"features_send_string.md\":\"DxT8iR_p\",\"features_sequencer.md\":\"DFoKQ0TL\",\"features_space_cadet.md\":\"DB0y0-h8\",\"features_split_keyboard.md\":\"CdeMXa87\",\"features_st7565.md\":\"xq_DcRr1\",\"features_stenography.md\":\"C9XRyFjT\",\"features_swap_hands.md\":\"De2lhBOi\",\"features_tap_dance.md\":\"C__8yEyM\",\"features_tri_layer.md\":\"C_6wFQ5v\",\"features_unicode.md\":\"BOggbpE5\",\"features_wireless.md\":\"B3qwab2e\",\"features_wpm.md\":\"BpdrOIEu\",\"flashing.md\":\"C_N9qmvk\",\"getting_started_docker.md\":\"DU9mSHtV\",\"getting_started_github.md\":\"BFmZeNj_\",\"getting_started_introduction.md\":\"1_zQTAKR\",\"getting_started_make_guide.md\":\"B89Bjq5W\",\"hand_wire.md\":\"C4wUtrFL\",\"hardware_drivers.md\":\"C6vlSLCV\",\"hardware_keyboard_guidelines.md\":\"Iwx9-_MM\",\"how_a_matrix_works.md\":\"DuLy3fYm\",\"how_keyboards_work.md\":\"Kqz2eMw-\",\"index.md\":\"su9L9OiU\",\"isp_flashing_guide.md\":\"KLb4YKDZ\",\"keycodes.md\":\"C3FCIw8j\",\"keycodes_basic.md\":\"CU34_bpC\",\"keycodes_magic.md\":\"BMOu_KA0\",\"keycodes_us_ansi_shifted.md\":\"BuLWPsJ7\",\"keymap.md\":\"mONRk0bh\",\"license_violations.md\":\"BDYMotOh\",\"mod_tap.md\":\"DyIZlvOO\",\"newbs.md\":\"DK0F0hz3\",\"newbs_building_firmware.md\":\"BacztC1l\",\"newbs_building_firmware_configurator.md\":\"CcGaQsSJ\",\"newbs_building_firmware_workflow.md\":\"DJFZn_sg\",\"newbs_external_userspace.md\":\"p0BK6C70\",\"newbs_flashing.md\":\"BAqEj3y-\",\"newbs_getting_started.md\":\"Cm1TQTfg\",\"newbs_git_best_practices.md\":\"CWQUgz_s\",\"newbs_git_resolving_merge_conflicts.md\":\"CY7BwXek\",\"newbs_git_resynchronize_a_branch.md\":\"BrxafOHM\",\"newbs_git_using_your_master_branch.md\":\"Bf4LKnsw\",\"newbs_learn_more_resources.md\":\"DTxLu81-\",\"newbs_testing_debugging.md\":\"D941n7-l\",\"one_shot_keys.md\":\"Dno09Hp_\",\"other_eclipse.md\":\"BEiZBPaS\",\"other_vscode.md\":\"Ddu5wbwi\",\"platformdev_blackpill_f4x1.md\":\"srCds2d5\",\"platformdev_chibios_earlyinit.md\":\"DeU_QvW8\",\"platformdev_proton_c.md\":\"CpRo5RCH\",\"platformdev_rp2040.md\":\"DFezYYEC\",\"platformdev_selecting_arm_mcu.md\":\"CJom15Xw\",\"porting_your_keyboard_to_qmk.md\":\"Diniu5iP\",\"pr_checklist.md\":\"Dngwy_uC\",\"proprietary_libs.md\":\"D4Bh0qxV\",\"quantum_keycodes.md\":\"DAEibZwV\",\"quantum_painter.md\":\"C4xi4nLC\",\"quantum_painter_lvgl.md\":\"-hrqCJME\",\"quantum_painter_qff.md\":\"KXPWPCR-\",\"quantum_painter_qgf.md\":\"4jcFdZf1\",\"quantum_painter_rle.md\":\"CP6A5xOl\",\"ref_functions.md\":\"n3k29tKJ\",\"reference_configurator_support.md\":\"7XJjzI54\",\"reference_glossary.md\":\"CIwm4raE\",\"reference_info_json.md\":\"BIc7hvpx\",\"reference_keymap_extras.md\":\"F0wC7lQo\",\"squeezing_avr.md\":\"BmvINcV0\",\"support.md\":\"zKsJE92C\",\"support_deprecation_policy.md\":\"CZ4IhETi\",\"syllabus.md\":\"QTALDIRy\",\"tap_hold.md\":\"CFcRBW4O\",\"understanding_qmk.md\":\"BGTp2EVQ\",\"unit_testing.md\":\"D0ysJBhz\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"QMK Firmware\",\"description\":\"Documentation for QMK Firmware\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"light\":\"/qmk-logo-light.svg\",\"dark\":\"/qmk-logo-dark.svg\"},\"title\":\"QMK Firmware\",\"nav\":[{\"text\":\"Home\",\"link\":\"/\"}],\"search\":{\"provider\":\"local\"},\"editLink\":{\"pattern\":\"https://github.com/qmk/qmk_firmware/edit/master/docs/:path\"},\"lastUpdated\":true,\"sidebar\":[{\"text\":\"Tutorial\",\"items\":[{\"text\":\"Introduction\",\"link\":\"/newbs\"},{\"text\":\"Setup\",\"link\":\"/newbs_getting_started\"},{\"text\":\"Building Your First Firmware\",\"link\":\"/newbs_building_firmware\"},{\"text\":\"Flashing Firmware\",\"link\":\"/newbs_flashing\"},{\"text\":\"Getting Help/Support\",\"link\":\"/support\"},{\"text\":\"External Userspace\",\"link\":\"/newbs_external_userspace\"},{\"text\":\"Other Resources\",\"link\":\"/newbs_learn_more_resources\"},{\"text\":\"Syllabus\",\"link\":\"/syllabus\"}]},{\"text\":\"FAQs\",\"items\":[{\"text\":\"General FAQ\",\"link\":\"/faq_general\"},{\"text\":\"Build/Compile QMK\",\"link\":\"/faq_build\"},{\"text\":\"Troubleshooting QMK\",\"link\":\"/faq_misc\"},{\"text\":\"Debugging QMK\",\"link\":\"/faq_debug\"},{\"text\":\"Keymap FAQ\",\"link\":\"/faq_keymap\"},{\"text\":\"Squeezing Space from AVR\",\"link\":\"/squeezing_avr\"},{\"text\":\"Glossary\",\"link\":\"/reference_glossary\"}]},{\"text\":\"Licensing\",\"items\":[{\"text\":\"License Violations\",\"link\":\"/license_violations\"},{\"text\":\"Proprietary Libraries\",\"link\":\"/proprietary_libs\"}]},{\"text\":\"Configurator\",\"items\":[{\"text\":\"Overview\",\"link\":\"/newbs_building_firmware_configurator\"},{\"text\":\"Step by Step\",\"link\":\"/configurator_step_by_step\"},{\"text\":\"Troubleshooting\",\"link\":\"/configurator_troubleshooting\"},{\"text\":\"Architecture\",\"link\":\"/configurator_architecture\"},{\"text\":\"QMK API\",\"items\":[{\"text\":\"Overview\",\"link\":\"/api_overview\"},{\"text\":\"API Documentation\",\"link\":\"/api_docs\"},{\"text\":\"Keyboard Support\",\"link\":\"/reference_configurator_support\"},{\"text\":\"Adding Default Keymaps\",\"link\":\"/configurator_default_keymaps\"}]}]},{\"text\":\"CLI\",\"items\":[{\"text\":\"Overview\",\"link\":\"/cli\"},{\"text\":\"Configuration\",\"link\":\"/cli_configuration\"},{\"text\":\"Commands\",\"link\":\"/cli_commands\"},{\"text\":\"Tab Completion\",\"link\":\"/cli_tab_complete\"}]},{\"text\":\"Using QMK\",\"items\":[{\"text\":\"Guides\",\"items\":[{\"text\":\"Customizing Functionality\",\"link\":\"/custom_quantum_functions\"},{\"text\":\"Driver Installation with Zadig\",\"link\":\"/driver_installation_zadig\"},{\"text\":\"Community Modules\",\"link\":\"/features/community_modules\"},{\"text\":\"Keymap Overview\",\"link\":\"/keymap\"},{\"text\":\"Development Environments\",\"items\":[{\"text\":\"Docker Guide\",\"link\":\"/getting_started_docker\"}]},{\"text\":\"Flashing\",\"link\":\"/flashing\"},{\"text\":\"IDEs\",\"items\":[{\"text\":\"Using Eclipse with QMK\",\"link\":\"/other_eclipse\"},{\"text\":\"Using VSCode with QMK\",\"link\":\"/other_vscode\"}]},{\"text\":\"Git Best Practices\",\"items\":[{\"text\":\"Introduction\",\"link\":\"/newbs_git_best_practices\"},{\"text\":\"Your Fork\",\"link\":\"/newbs_git_using_your_master_branch\"},{\"text\":\"Merge Conflicts\",\"link\":\"/newbs_git_resolving_merge_conflicts\"},{\"text\":\"Fixing Your Branch\",\"link\":\"/newbs_git_resynchronize_a_branch\"}]}]},{\"text\":\"Simple Keycodes\",\"items\":[{\"text\":\"Full List\",\"link\":\"/keycodes\"},{\"text\":\"Basic Keycodes\",\"link\":\"/keycodes_basic\"},{\"text\":\"Language-Specific Keycodes\",\"link\":\"/reference_keymap_extras\"},{\"text\":\"Modifier Keys\",\"link\":\"/feature_advanced_keycodes\"},{\"text\":\"Quantum Keycodes\",\"link\":\"/quantum_keycodes\"},{\"text\":\"Magic Keycodes\",\"link\":\"/keycodes_magic\"}]},{\"text\":\"Advanced Keycodes\",\"items\":[{\"text\":\"Command\",\"link\":\"/features/command\"},{\"text\":\"Dynamic Macros\",\"link\":\"/features/dynamic_macros\"},{\"text\":\"Grave Escape\",\"link\":\"/features/grave_esc\"},{\"text\":\"Leader Key\",\"link\":\"/features/leader_key\"},{\"text\":\"Mod-Tap\",\"link\":\"/mod_tap\"},{\"text\":\"Macros\",\"link\":\"/feature_macros\"},{\"text\":\"Mouse Keys\",\"link\":\"/features/mouse_keys\"},{\"text\":\"Programmable Button\",\"link\":\"/features/programmable_button\"},{\"text\":\"Repeat Key\",\"link\":\"/features/repeat_key\"},{\"text\":\"Space Cadet Shift\",\"link\":\"/features/space_cadet\"},{\"text\":\"US ANSI Shifted Keys\",\"link\":\"/keycodes_us_ansi_shifted\"}]},{\"text\":\"Software Features\",\"items\":[{\"text\":\"Auto Shift\",\"link\":\"/features/auto_shift\"},{\"text\":\"Autocorrect\",\"link\":\"/features/autocorrect\"},{\"text\":\"Caps Word\",\"link\":\"/features/caps_word\"},{\"text\":\"Combos\",\"link\":\"/features/combo\"},{\"text\":\"Debounce API\",\"link\":\"/feature_debounce_type\"},{\"text\":\"Digitizer\",\"link\":\"/features/digitizer\"},{\"text\":\"EEPROM\",\"link\":\"/feature_eeprom\"},{\"text\":\"Key Lock\",\"link\":\"/features/key_lock\"},{\"text\":\"Key Overrides\",\"link\":\"/features/key_overrides\"},{\"text\":\"Layers\",\"link\":\"/feature_layers\"},{\"text\":\"Layer Lock\",\"link\":\"/features/layer_lock\"},{\"text\":\"One Shot Keys\",\"link\":\"/one_shot_keys\"},{\"text\":\"OS Detection\",\"link\":\"/features/os_detection\"},{\"text\":\"Raw HID\",\"link\":\"/features/rawhid\"},{\"text\":\"Secure\",\"link\":\"/features/secure\"},{\"text\":\"Send String\",\"link\":\"/features/send_string\"},{\"text\":\"Sequencer\",\"link\":\"/features/sequencer\"},{\"text\":\"Swap Hands\",\"link\":\"/features/swap_hands\"},{\"text\":\"Tap Dance\",\"link\":\"/features/tap_dance\"},{\"text\":\"Tap-Hold Configuration\",\"link\":\"/tap_hold\"},{\"text\":\"Tri Layer\",\"link\":\"/features/tri_layer\"},{\"text\":\"Unicode\",\"link\":\"/features/unicode\"},{\"text\":\"Userspace\",\"link\":\"/feature_userspace\"},{\"text\":\"WPM Calculation\",\"link\":\"/features/wpm\"}]},{\"text\":\"Hardware Features\",\"items\":[{\"text\":\"Displays\",\"items\":[{\"text\":\"Quantum Painter\",\"link\":\"quantum_painter\",\"items\":[{\"text\":\"Quantum Painter LVGL Integration\",\"link\":\"/quantum_painter_lvgl\"}]},{\"text\":\"HD44780 LCD Driver\",\"link\":\"/features/hd44780\"},{\"text\":\"ST7565 LCD Driver\",\"link\":\"/features/st7565\"},{\"text\":\"OLED Driver\",\"link\":\"/features/oled_driver\"}]},{\"text\":\"Lighting\",\"items\":[{\"text\":\"Backlight\",\"link\":\"/features/backlight\"},{\"text\":\"LED Matrix\",\"link\":\"/features/led_matrix\"},{\"text\":\"RGB Lighting\",\"link\":\"/features/rgblight\"},{\"text\":\"RGB Matrix\",\"link\":\"/features/rgb_matrix\"}]},{\"text\":\"Audio\",\"link\":\"/features/audio\"},{\"text\":\"Battery\",\"link\":\"/features/battery\"},{\"text\":\"Bootmagic\",\"link\":\"/features/bootmagic\"},{\"text\":\"Converters\",\"link\":\"/feature_converters\"},{\"text\":\"Custom Matrix\",\"link\":\"/custom_matrix\"},{\"text\":\"DIP Switch\",\"link\":\"/features/dip_switch\"},{\"text\":\"Encoders\",\"link\":\"/features/encoders\"},{\"text\":\"Haptic Feedback\",\"link\":\"/features/haptic_feedback\"},{\"text\":\"Joystick\",\"link\":\"/features/joystick\"},{\"text\":\"LED Indicators\",\"link\":\"/features/led_indicators\"},{\"text\":\"MIDI\",\"link\":\"/features/midi\"},{\"text\":\"Pointing Device\",\"link\":\"/features/pointing_device\"},{\"text\":\"PS/2 Mouse\",\"link\":\"/features/ps2_mouse\"},{\"text\":\"Split Keyboard\",\"link\":\"/features/split_keyboard\"},{\"text\":\"Stenography\",\"link\":\"/features/stenography\"},{\"text\":\"Wireless\",\"link\":\"/features/wireless\"}]},{\"text\":\"Keyboard Building\",\"items\":[{\"text\":\"Easy Maker for One Offs\",\"link\":\"/easy_maker\"},{\"text\":\"Porting Keyboards\",\"link\":\"/porting_your_keyboard_to_qmk\"},{\"text\":\"Hand Wiring Guide\",\"link\":\"/hand_wire\"},{\"text\":\"ISP Flashing Guide\",\"link\":\"/isp_flashing_guide\"}]}]},{\"text\":\"Developing QMK\",\"items\":[{\"text\":\"PR Checklist\",\"link\":\"/pr_checklist\"},{\"text\":\"Breaking Changes\",\"items\":[{\"text\":\"Overview\",\"link\":\"/breaking_changes\"},{\"text\":\"My Pull Request Was Flagged\",\"link\":\"/breaking_changes_instructions\"},{\"text\":\"Most Recent ChangeLog\",\"link\":\"/ChangeLog/20260531\"},{\"text\":\"Past Breaking Changes\",\"link\":\"/breaking_changes_history\"},{\"text\":\"Deprecation Policy\",\"link\":\"/support_deprecation_policy\"}]},{\"text\":\"C Development\",\"items\":[{\"text\":\"ARM Debugging Guide\",\"link\":\"/arm_debugging\"},{\"text\":\"Coding Conventions\",\"link\":\"/coding_conventions_c\"},{\"text\":\"Compatible Microcontrollers\",\"link\":\"/compatible_microcontrollers\"},{\"text\":\"Drivers\",\"link\":\"hardware_drivers\",\"items\":[{\"text\":\"ADC Driver\",\"link\":\"/drivers/adc\"},{\"text\":\"APA102 Driver\",\"link\":\"/drivers/apa102\"},{\"text\":\"Audio Driver\",\"link\":\"/drivers/audio\"},{\"text\":\"Battery Driver\",\"link\":\"/drivers/battery\"},{\"text\":\"EEPROM Driver\",\"link\":\"/drivers/eeprom\"},{\"text\":\"Flash Driver\",\"link\":\"/drivers/flash\"},{\"text\":\"I2C Driver\",\"link\":\"/drivers/i2c\"},{\"text\":\"'serial' Driver\",\"link\":\"/drivers/serial\"},{\"text\":\"SPI Driver\",\"link\":\"/drivers/spi\"},{\"text\":\"UART Driver\",\"link\":\"/drivers/uart\"},{\"text\":\"WS2812 Driver\",\"link\":\"/drivers/ws2812\"}]},{\"text\":\"GPIO Controls\",\"link\":\"/drivers/gpio\"},{\"text\":\"Keyboard Guidelines\",\"link\":\"/hardware_keyboard_guidelines\"}]},{\"text\":\"Python Development\",\"items\":[{\"text\":\"Coding Conventions\",\"link\":\"/coding_conventions_python\"},{\"text\":\"QMK CLI Development\",\"link\":\"/cli_development\"}]},{\"text\":\"Configurator Development\",\"items\":[{\"text\":\"QMK API\",\"items\":[{\"text\":\"Development Environment\",\"link\":\"/api_development_environment\"},{\"text\":\"Architecture Overview\",\"link\":\"/api_development_overview\"}]}]},{\"text\":\"Hardware Platform Development\",\"items\":[{\"text\":\"Arm/ChibiOS\",\"items\":[{\"text\":\"Selecting an MCU\",\"link\":\"/platformdev_selecting_arm_mcu\"},{\"text\":\"Early initialization\",\"link\":\"/platformdev_chibios_earlyinit\"},{\"text\":\"Raspberry Pi RP2040\",\"link\":\"/platformdev_rp2040\"},{\"text\":\"Proton C\",\"link\":\"/platformdev_proton_c\"},{\"text\":\"WeAct Blackpill F4x1\",\"link\":\"/platformdev_blackpill_f4x1\"}]}]},{\"text\":\"QMK Reference\",\"items\":[{\"text\":\"Contributing to QMK\",\"link\":\"/contributing\"},{\"text\":\"Config Options\",\"link\":\"/config_options\"},{\"text\":\"Data Driven Configuration\",\"link\":\"/data_driven_config\"},{\"text\":\"Make Documentation\",\"link\":\"/getting_started_make_guide\"},{\"text\":\"Documentation Best Practices\",\"link\":\"/documentation_best_practices\"},{\"text\":\"Documentation Templates\",\"link\":\"/documentation_templates\"},{\"text\":\"Community Layouts\",\"link\":\"/feature_layouts\"},{\"text\":\"Unit Testing\",\"link\":\"/unit_testing\"},{\"text\":\"Useful Functions\",\"link\":\"/ref_functions\"},{\"text\":\"info.json Format\",\"link\":\"/reference_info_json\"}]},{\"text\":\"For a Deeper Understanding\",\"items\":[{\"text\":\"How Keyboards Work\",\"link\":\"/how_keyboards_work\"},{\"text\":\"How a Matrix Works\",\"link\":\"/how_a_matrix_works\"},{\"text\":\"Understanding QMK\",\"link\":\"/understanding_qmk\"}]}]}],\"externalLinkIcon\":true,\"socialLinks\":[{\"icon\":{\"svg\":\"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 50 50\\\" width=\\\"50px\\\" height=\\\"50px\\\"><path d=\\\"M 29 3 C 28.0625 3 27.164063 3.382813 26.5 4 C 25.835938 4.617188 25.363281 5.433594 25 6.40625 C 24.355469 8.140625 24.085938 10.394531 24.03125 13.03125 C 19.234375 13.179688 14.820313 14.421875 11.28125 16.46875 C 10.214844 15.46875 8.855469 14.96875 7.5 14.96875 C 6.089844 14.96875 4.675781 15.511719 3.59375 16.59375 C 1.425781 18.761719 1.425781 22.238281 3.59375 24.40625 L 3.84375 24.65625 C 3.3125 26.035156 3 27.488281 3 29 C 3 33.527344 5.566406 37.585938 9.5625 40.4375 C 13.558594 43.289063 19.007813 45 25 45 C 30.992188 45 36.441406 43.289063 40.4375 40.4375 C 44.433594 37.585938 47 33.527344 47 29 C 47 27.488281 46.6875 26.035156 46.15625 24.65625 L 46.40625 24.40625 C 48.574219 22.238281 48.574219 18.761719 46.40625 16.59375 C 45.324219 15.511719 43.910156 14.96875 42.5 14.96875 C 41.144531 14.96875 39.785156 15.46875 38.71875 16.46875 C 35.195313 14.433594 30.800781 13.191406 26.03125 13.03125 C 26.09375 10.546875 26.363281 8.46875 26.875 7.09375 C 27.164063 6.316406 27.527344 5.757813 27.875 5.4375 C 28.222656 5.117188 28.539063 5 29 5 C 29.460938 5 29.683594 5.125 30.03125 5.40625 C 30.378906 5.6875 30.785156 6.148438 31.3125 6.6875 C 32.253906 7.652344 33.695313 8.714844 36.09375 8.9375 C 36.539063 11.238281 38.574219 13 41 13 C 43.75 13 46 10.75 46 8 C 46 5.25 43.75 3 41 3 C 38.605469 3 36.574219 4.710938 36.09375 6.96875 C 34.3125 6.796875 33.527344 6.109375 32.75 5.3125 C 32.300781 4.851563 31.886719 4.3125 31.3125 3.84375 C 30.738281 3.375 29.9375 3 29 3 Z M 41 5 C 42.667969 5 44 6.332031 44 8 C 44 9.667969 42.667969 11 41 11 C 39.332031 11 38 9.667969 38 8 C 38 6.332031 39.332031 5 41 5 Z M 25 15 C 30.609375 15 35.675781 16.613281 39.28125 19.1875 C 42.886719 21.761719 45 25.226563 45 29 C 45 32.773438 42.886719 36.238281 39.28125 38.8125 C 35.675781 41.386719 30.609375 43 25 43 C 19.390625 43 14.324219 41.386719 10.71875 38.8125 C 7.113281 36.238281 5 32.773438 5 29 C 5 25.226563 7.113281 21.761719 10.71875 19.1875 C 14.324219 16.613281 19.390625 15 25 15 Z M 7.5 16.9375 C 8.203125 16.9375 8.914063 17.148438 9.53125 17.59375 C 7.527344 19.03125 5.886719 20.769531 4.75 22.71875 C 3.582031 21.296875 3.660156 19.339844 5 18 C 5.714844 17.285156 6.609375 16.9375 7.5 16.9375 Z M 42.5 16.9375 C 43.390625 16.9375 44.285156 17.285156 45 18 C 46.339844 19.339844 46.417969 21.296875 45.25 22.71875 C 44.113281 20.769531 42.472656 19.03125 40.46875 17.59375 C 41.085938 17.148438 41.796875 16.9375 42.5 16.9375 Z M 17 22 C 14.800781 22 13 23.800781 13 26 C 13 28.199219 14.800781 30 17 30 C 19.199219 30 21 28.199219 21 26 C 21 23.800781 19.199219 22 17 22 Z M 33 22 C 30.800781 22 29 23.800781 29 26 C 29 28.199219 30.800781 30 33 30 C 35.199219 30 37 28.199219 37 26 C 37 23.800781 35.199219 22 33 22 Z M 17 24 C 18.117188 24 19 24.882813 19 26 C 19 27.117188 18.117188 28 17 28 C 15.882813 28 15 27.117188 15 26 C 15 24.882813 15.882813 24 17 24 Z M 33 24 C 34.117188 24 35 24.882813 35 26 C 35 27.117188 34.117188 28 33 28 C 31.882813 28 31 27.117188 31 26 C 31 24.882813 31.882813 24 33 24 Z M 34.15625 33.84375 C 34.101563 33.851563 34.050781 33.859375 34 33.875 C 33.683594 33.9375 33.417969 34.144531 33.28125 34.4375 C 33.28125 34.4375 32.757813 35.164063 31.4375 36 C 30.117188 36.835938 28.058594 37.6875 25 37.6875 C 21.941406 37.6875 19.882813 36.835938 18.5625 36 C 17.242188 35.164063 16.71875 34.4375 16.71875 34.4375 C 16.492188 34.082031 16.066406 33.90625 15.65625 34 C 15.332031 34.082031 15.070313 34.316406 14.957031 34.632813 C 14.84375 34.945313 14.894531 35.292969 15.09375 35.5625 C 15.09375 35.5625 15.863281 36.671875 17.46875 37.6875 C 19.074219 38.703125 21.558594 39.6875 25 39.6875 C 28.441406 39.6875 30.925781 38.703125 32.53125 37.6875 C 34.136719 36.671875 34.90625 35.5625 34.90625 35.5625 C 35.207031 35.273438 35.296875 34.824219 35.128906 34.441406 C 34.960938 34.058594 34.574219 33.820313 34.15625 33.84375 Z\\\"/></svg>\"},\"link\":\"https://reddit.com/r/olkb\"},{\"icon\":\"discord\",\"link\":\"https://discord.gg/qmk\"},{\"icon\":\"github\",\"link\":\"https://github.com/qmk/qmk_firmware\"}]},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script>
|
|
|
|
</body>
|
|
</html> |