<spanclass="line"><span> 0 22396 0 22396 577c planck_rev4_cbbrowne.hex</span></span></code></pre></div><ul><li>The above file is of size 22396/577ch, which is less than 28672/7000h</li><li>As long as you have a suitable alternative .hex file around, you can retry, loading that one</li><li>Some of the options you might specify in your keyboard's Makefile consume extra memory; watch out for BOOTMAGIC_ENABLE, MOUSEKEY_ENABLE, EXTRAKEY_ENABLE, CONSOLE_ENABLE</li><li>DFU tools do /not/ allow you to write into the bootloader (unless you throw in an extra fruit salad of options), so there is little risk there.</li><li>EEPROM has around a 100000 (100k) write cycle. You shouldn't rewrite the firmware repeatedly and continually; that'll burn the EEPROM eventually.</li></ul><h2id="nkro-doesn-t-work"tabindex="-1">NKRO Doesn't work <aclass="header-anchor"href="#nkro-doesn-t-work"aria-label="Permalink to "NKRO Doesn't work""></a></h2><p>First you have to compile firmware with the build option <code>NKRO_ENABLE</code> in <strong>Makefile</strong>.</p><p>Try <code>Magic</code><strong>N</strong> command(<code>LShift+RShift+N</code> by default) when <strong>NKRO</strong> still doesn't work. You can use this command to toggle between <strong>NKRO</strong> and <strong>6KRO</strong> mode temporarily. In some situations <strong>NKRO</strong> doesn't work and you will need to switch to <strong>6KRO</strong> mode, in particular when you are in BIOS.</p><h2id="trackpoint-needs-reset-circuit-ps-2-mouse-support"tabindex="-1">TrackPoint Needs Reset Circuit (PS/2 Mouse Support) <aclass="header-anchor"href="#trackpoint-needs-reset-circuit-ps-2-mouse-support"aria-label="Permalink to "TrackPoint Needs Reset Circuit (PS/2 Mouse Support)""></a></h2><p>Without reset circuit you will have inconsistent result due to improper initialization of the hardware. See circuit schematic of TPM754:</p><ul><li><ahref="https://geekhack.org/index.php?topic=50176.msg1127447#msg1127447"target="_blank"rel="noreferrer">https://geekhack.org/index.php?topic=50176.msg1127447#msg1127447</a></li><li><ahref="https://www.mikrocontroller.net/attachment/52583/tpm754.pdf"target="_blank"rel="noreferrer">https://www.mikrocontroller.net/attachment/52583/tpm754.pdf</a></li></ul><h2id="can-t-read-column-of-matrix-beyond-16"tabindex="-1">Can't Read Column of Matrix Beyond 16 <aclass="header-anchor"href="#can-t-read-column-of-matrix-beyond-16"aria-label="Permalink to "Can't Read Column of Matrix Beyond 16""></a></h2><p>Use <code>1UL<<16</code> instead of <code>1<<16</code> in <code>read_cols()</code> in [matrix.h] when your columns goes beyond 16.</p><p>In C <code>1</code> means one of [int] type which is [16 bit] in case of AVR, so you can't shift left more than 15. Thus, calculating <code>1<<16</code> will unexpectedly equal zero. To work around this, you have to use [unsigned long] type with <code>1UL</code>.</p><p><ahref="https://deskthority.net/workshop-f7/rebuilding-and-redesigning-a-classic-thinkpad-keyboard-t6181-60.html#p146279"target="_blank"rel="noreferrer">https://deskthority.net/workshop-f7/rebuilding-and-redesigning-a-classic-thinkpad-keyboard-t6181-60.html#p146279</a></p><h2id="special-extra-key-doesn-t-work-system-audio-control-keys"tabindex="-1">Special Extra Key Doesn't Work (System, Audio Control Keys) <aclass="header-anchor"href="#special-extra-key-doesn-t-work-system-audio-control-keys"aria-label="Permalink to "Special Extra Key Doesn't Work (System, Audio Control Keys)""></a></h2><p>You need to define <code>EXTRAKEY_ENABLE</code> in <code>rules.mk</code> to use them in QMK.</p><divclass="language- vp-adaptive-theme"><buttontitle="Copy Code"class="copy"></button><spanclass="lang"></span><preclass="shiki shiki-themes github-light github-dark vp-code"><code><spanclass="line"><span>EXTRAKEY_ENABLE = yes # Audio control and System control</span></span></code></pre></div><h2id="wake-from-sleep-