const__pageData=JSON.parse('{"title":"Supporting Your Keyboard in QMK Configurator","description":"","frontmatter":{},"headers":[],"relativePath":"reference_configurator_support.md","filePath":"reference_configurator_support.md","lastUpdated":null}');
const_hoisted_1=/* @__PURE__ */createStaticVNode('<h1id="supporting-your-keyboard-in-qmk-configurator"tabindex="-1">SupportingYourKeyboardinQMKConfigurator<aclass="header-anchor"href="#supporting-your-keyboard-in-qmk-configurator"aria-label="Permalink to "Supporting Your Keyboard in QMK Configurator""></a></h1><p>Thispagecovershowtoproperlysupportkeyboardsinthe<ahref="https://config.qmk.fm/"target="_blank"rel="noreferrer">QMKConfigurator</a>.</p><h2id="how-the-configurator-understands-keyboards"tabindex="-1">HowtheConfiguratorUnderstandsKeyboards<aclass="header-anchor"href="#how-the-configurator-understands-keyboards"aria-label="Permalinkto"HowtheConfiguratorUnderstandsKeyboards""></a></h2><p>TounderstandhowtheConfiguratorunderstandskeyboards,firstonemustunderstandlayoutmacros.Forthisexercise,we'regoingtoimaginea17-keynumpadPCB,whichwe'regoingtocall<code>numpad</code>.</p><divclass="language-vp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang"></span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><span>|---------------|</span></span>\n<spanclass="line"><span>|NLk|/|*|-|</span></span>\n<spanclass="line"><span>|---+---+---+---|</span></span>\n<spanclass="line"><span>|7|8|9|+|</span></span>\n<spanclass="line"><span>|---+---+---||</span></span>\n<spanclass="line"><span>|4|5|6||</span></span>\n<spanclass="line"><span>|---+---+---+---|</span></span>\n<spanclass="line"><span>|1|2|3|Ent|</span></span>\n<spanclass="line"><span>|-------+---||</span></span>\n<spanclass="line"><span>|0|.||</span></span>\n<spanclass="line"><span>|---------------|</span></span></code></pre></div><divclass="tipcustom-block"><pclass="custom-block-title">TIP</p><p>Formoreonlayoutmacros,see<ahref="./understanding_qmk#matrix-scanning">UnderstandingQMK:MatrixScanning</a>and<ahref="./understanding_qmk#matrix-to-physical-layout-map">UnderstandingQMK:MatrixtoPhysicalLayoutMap</a>.</p></div><p>TheConfigurator'sAPIreadsthekeyboard's<code>.h</code>filefrom<code>qmk_firmware/keyboards/<keyboard>/<keyboard>.h</code>.Forournumpad,thisfilewouldbe<code>qmk_firmware/keyboards/numpad/numpad.h</code>:</p><divclass="language-cvp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang">c</span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#pragma</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">once</span></span>\n<spanclass="line"></span>\n<spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#define</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">LAYOUT</span><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\\</span></span>\n<spanclass="line"><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">k00,k01,k02,k03,</span><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\\</span></span>\n<spanclass="line"><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">k10,k11,k12,k13,</span><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\\</span></span>\n<spanclass="line"><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">k20,k21,k22,</span><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\\</span></span>\n<spanclass="line"><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">k30,k31,k32,k33,</span><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\\</span></span>\n<spanclass="line"><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">k40,k42</span><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\\</span></span>\n<spanclass="line"><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">){</span><