Resetting/Clearing EEPROM

Sometimes you'll want to clear the EEPROM on your board to clear out all of the settings and start fresh. For example, you might have played around with RGB colors/settings and put it into a state you want to get out of. Or, your board is getting weird phantom presses of keys not even in your base layer keymap. Resetting EEPROM can help in these cases.

What is EEPROM?#

EEPROM stands for Electrically Eraseable Programmable Read-Only Memory. It stores settings for your keyboard that can be changed on-the-fly without reflshing your board. Some of the settings that it stores includes RGB configuration, persistent layers, backlight state, and VIA keymaps.

How to clear/reset EEPROM#

To clear the EEPROM on your board, first, you'll need to know which microcontroller is present on your board. Please see the section on Determining Bootloader for some more information on this.

For ATmega32u4-based boards#

First open up QMK Toolbox. Make sure you download the latest release here.

Next, plug in your keyboard press the reset button on the bottom of your keyboard.

After your keyboard is in DFU mode, as indicated with the yellow text, click on Clear EEPROM at the lower-left.

Once the clearing process is complete, move on to the reflashing section of this page.

For STM32F072-based boards#

For keyboards using the STM32F072 like the BDN9 Rev. 2 and DSP40, the STM32F072 microcontroller doesn't actually have real EEPROM in it, so it is emulated instead using flash memory. To clear out the emulated EEPROM in this case, download the STM32F072 Flash Clearing .bin file and open it up in QMK Toolbox. Then press the reset button on the PCB and then click the Flash button.

Reflash after clearing EEPROM#

Once the EEPROM has been cleared, you will need to reflash your board with the firmware again. For the firmware that comes stock with Keebio boards, you can download the original .hex files here: Keebio Firmware. Note: Don't use the files that end with _bootloader.hex or _production.hex.