How to reset the EEPROM in an ESP32 device

Today’s stupid action (I try and do at least one a day) was to deploy a program to an ESP32 device with the wrong libraries. I’ve just got some Heltec LoRa 32 V2 devices. It turns out that the V2 is important. Among other things it means that you shouldn’t deploy version one binaries to the device, otherwise the WiFi will crash every time you try to use it.

Should you be as stupid as me, you can reset the EEPROM in a device that you’ve broken like this by using a command line tool that you can find in your ESP32 installation:

C:\Users\Rob\AppData\Local\Arduino15\packages\esp32\tools\esptool_py\2.6.1>esptool --chip esp32 --port com11 erase_flash

I’ve added the full path to the command on my machine, yours will be different unless you are also called rob. This command also only works if your device is attached to com port 11, change the value to target a device connected somewhere else.