diff --git a/boards.txt b/boards.txt
index a8db483945d..363a8d340a8 100644
--- a/boards.txt
+++ b/boards.txt
@@ -891,6 +891,11 @@ esp32da.menu.DebugLevel.debug.build.code_debug=4
 esp32da.menu.DebugLevel.verbose=Verbose
 esp32da.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32da.menu.EraseFlash.none=Disabled
+esp32da.menu.EraseFlash.none.upload.erase_cmd=
+esp32da.menu.EraseFlash.all=Enabled
+esp32da.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32wrover.name=ESP32 Wrover Module
@@ -1002,6 +1007,11 @@ esp32wrover.menu.DebugLevel.debug.build.code_debug=4
 esp32wrover.menu.DebugLevel.verbose=Verbose
 esp32wrover.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32wrover.menu.EraseFlash.none=Disabled
+esp32wrover.menu.EraseFlash.none.upload.erase_cmd=
+esp32wrover.menu.EraseFlash.all=Enabled
+esp32wrover.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 pico32.name=ESP32 PICO-D4
@@ -1074,6 +1084,11 @@ pico32.menu.DebugLevel.debug.build.code_debug=4
 pico32.menu.DebugLevel.verbose=Verbose
 pico32.menu.DebugLevel.verbose.build.code_debug=5
 
+pico32.menu.EraseFlash.none=Disabled
+pico32.menu.EraseFlash.none.upload.erase_cmd=
+pico32.menu.EraseFlash.all=Enabled
+pico32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32s3box.name=ESP32-S3-Box
@@ -1185,6 +1200,11 @@ esp32s3box.menu.DebugLevel.debug.build.code_debug=4
 esp32s3box.menu.DebugLevel.verbose=Verbose
 esp32s3box.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32s3box.menu.EraseFlash.none=Disabled
+esp32s3box.menu.EraseFlash.none.upload.erase_cmd=
+esp32s3box.menu.EraseFlash.all=Enabled
+esp32s3box.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32s3usbotg.name=ESP32-S3-USB-OTG
@@ -1291,6 +1311,11 @@ esp32s3usbotg.menu.DebugLevel.debug.build.code_debug=4
 esp32s3usbotg.menu.DebugLevel.verbose=Verbose
 esp32s3usbotg.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32s3usbotg.menu.EraseFlash.none=Disabled
+esp32s3usbotg.menu.EraseFlash.none.upload.erase_cmd=
+esp32s3usbotg.menu.EraseFlash.all=Enabled
+esp32s3usbotg.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32s3camlcd.name=ESP32S3 CAM LCD
@@ -1409,6 +1434,11 @@ esp32s3camlcd.menu.DebugLevel.debug.build.code_debug=4
 esp32s3camlcd.menu.DebugLevel.verbose=Verbose
 esp32s3camlcd.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32s3camlcd.menu.EraseFlash.none=Disabled
+esp32s3camlcd.menu.EraseFlash.none.upload.erase_cmd=
+esp32s3camlcd.menu.EraseFlash.all=Enabled
+esp32s3camlcd.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32s2usb.name=ESP32S2 Native USB
@@ -1512,6 +1542,11 @@ esp32s2usb.menu.DebugLevel.debug.build.code_debug=4
 esp32s2usb.menu.DebugLevel.verbose=Verbose
 esp32s2usb.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32s2usb.menu.EraseFlash.none=Disabled
+esp32s2usb.menu.EraseFlash.none.upload.erase_cmd=
+esp32s2usb.menu.EraseFlash.all=Enabled
+esp32s2usb.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32wroverkit.name=ESP32 Wrover Kit (all versions)
@@ -1642,6 +1677,11 @@ esp32wroverkit.menu.DebugLevel.debug.build.code_debug=4
 esp32wroverkit.menu.DebugLevel.verbose=Verbose
 esp32wroverkit.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32wroverkit.menu.EraseFlash.none=Disabled
+esp32wroverkit.menu.EraseFlash.none.upload.erase_cmd=
+esp32wroverkit.menu.EraseFlash.all=Enabled
+esp32wroverkit.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 tinypico.name=UM TinyPICO
@@ -1733,6 +1773,11 @@ tinypico.menu.DebugLevel.debug.build.code_debug=4
 tinypico.menu.DebugLevel.verbose=Verbose
 tinypico.menu.DebugLevel.verbose.build.code_debug=5
 
+tinypico.menu.EraseFlash.none=Disabled
+tinypico.menu.EraseFlash.none.upload.erase_cmd=
+tinypico.menu.EraseFlash.all=Enabled
+tinypico.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 feathers2.name=UM FeatherS2
@@ -1879,6 +1924,11 @@ feathers2.menu.DebugLevel.debug.build.code_debug=4
 feathers2.menu.DebugLevel.verbose=Verbose
 feathers2.menu.DebugLevel.verbose.build.code_debug=5
 
+feathers2.menu.EraseFlash.none=Disabled
+feathers2.menu.EraseFlash.none.upload.erase_cmd=
+feathers2.menu.EraseFlash.all=Enabled
+feathers2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 feathers2neo.name=UM FeatherS2 Neo
@@ -2011,6 +2061,11 @@ feathers2neo.menu.DebugLevel.debug.build.code_debug=4
 feathers2neo.menu.DebugLevel.verbose=Verbose
 feathers2neo.menu.DebugLevel.verbose.build.code_debug=5
 
+feathers2neo.menu.EraseFlash.none=Disabled
+feathers2neo.menu.EraseFlash.none.upload.erase_cmd=
+feathers2neo.menu.EraseFlash.all=Enabled
+feathers2neo.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 tinys2.name=UM TinyS2
@@ -2143,6 +2198,11 @@ tinys2.menu.DebugLevel.debug.build.code_debug=4
 tinys2.menu.DebugLevel.verbose=Verbose
 tinys2.menu.DebugLevel.verbose.build.code_debug=5
 
+tinys2.menu.EraseFlash.none=Disabled
+tinys2.menu.EraseFlash.none.upload.erase_cmd=
+tinys2.menu.EraseFlash.all=Enabled
+tinys2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 rmp.name=UM RMP
 rmp.vid.0=0x303a
@@ -2268,6 +2328,11 @@ rmp.menu.DebugLevel.debug.build.code_debug=4
 rmp.menu.DebugLevel.verbose=Verbose
 rmp.menu.DebugLevel.verbose.build.code_debug=5
 
+rmp.menu.EraseFlash.none=Disabled
+rmp.menu.EraseFlash.none.upload.erase_cmd=
+rmp.menu.EraseFlash.all=Enabled
+rmp.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 tinys3.name=UM TinyS3
 tinys3.vid.0=0x303a
@@ -2414,6 +2479,11 @@ tinys3.menu.DebugLevel.debug.build.code_debug=4
 tinys3.menu.DebugLevel.verbose=Verbose
 tinys3.menu.DebugLevel.verbose.build.code_debug=5
 
+tinys3.menu.EraseFlash.none=Disabled
+tinys3.menu.EraseFlash.none.upload.erase_cmd=
+tinys3.menu.EraseFlash.all=Enabled
+tinys3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 pros3.name=UM PROS3
@@ -2570,6 +2640,11 @@ pros3.menu.DebugLevel.debug.build.code_debug=4
 pros3.menu.DebugLevel.verbose=Verbose
 pros3.menu.DebugLevel.verbose.build.code_debug=5
 
+pros3.menu.EraseFlash.none=Disabled
+pros3.menu.EraseFlash.none.upload.erase_cmd=
+pros3.menu.EraseFlash.all=Enabled
+pros3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 feathers3.name=UM FeatherS3
@@ -2726,6 +2801,11 @@ feathers3.menu.DebugLevel.debug.build.code_debug=4
 feathers3.menu.DebugLevel.verbose=Verbose
 feathers3.menu.DebugLevel.verbose.build.code_debug=5
 
+feathers3.menu.EraseFlash.none=Disabled
+feathers3.menu.EraseFlash.none.upload.erase_cmd=
+feathers3.menu.EraseFlash.all=Enabled
+feathers3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 S_ODI_Ultra.name=S.ODI Ultra v1
@@ -2792,6 +2872,11 @@ S_ODI_Ultra.menu.DebugLevel.info.build.code_debug=3
 S_ODI_Ultra.menu.DebugLevel.debug=Debug
 S_ODI_Ultra.menu.DebugLevel.debug.build.code_debug=4
 
+S_ODI_Ultra.menu.EraseFlash.none=Disabled
+S_ODI_Ultra.menu.EraseFlash.none.upload.erase_cmd=
+S_ODI_Ultra.menu.EraseFlash.all=Enabled
+S_ODI_Ultra.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 micros2.name=microS2
@@ -2938,6 +3023,11 @@ micros2.menu.DebugLevel.debug.build.code_debug=4
 micros2.menu.DebugLevel.verbose=Verbose
 micros2.menu.DebugLevel.verbose.build.code_debug=5
 
+micros2.menu.EraseFlash.none=Disabled
+micros2.menu.EraseFlash.none.upload.erase_cmd=
+micros2.menu.EraseFlash.all=Enabled
+micros2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 magicbit.name=MagicBit
@@ -2998,6 +3088,11 @@ magicbit.menu.DebugLevel.debug.build.code_debug=4
 magicbit.menu.DebugLevel.verbose=Verbose
 magicbit.menu.DebugLevel.verbose.build.code_debug=5
 
+magicbit.menu.EraseFlash.none=Disabled
+magicbit.menu.EraseFlash.none.upload.erase_cmd=
+magicbit.menu.EraseFlash.all=Enabled
+magicbit.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 turta_iot_node.name=Turta IoT Node
@@ -3051,6 +3146,11 @@ turta_iot_node.menu.DebugLevel.debug.build.code_debug=4
 turta_iot_node.menu.DebugLevel.verbose=Verbose
 turta_iot_node.menu.DebugLevel.verbose.build.code_debug=5
 
+turta_iot_node.menu.EraseFlash.none=Disabled
+turta_iot_node.menu.EraseFlash.none.upload.erase_cmd=
+turta_iot_node.menu.EraseFlash.all=Enabled
+turta_iot_node.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 ttgo-lora32.name=TTGO LoRa32-OLED
@@ -3128,6 +3228,11 @@ ttgo-lora32.menu.DebugLevel.debug.build.code_debug=4
 ttgo-lora32.menu.DebugLevel.verbose=Verbose
 ttgo-lora32.menu.DebugLevel.verbose.build.code_debug=5
 
+ttgo-lora32.menu.EraseFlash.none=Disabled
+ttgo-lora32.menu.EraseFlash.none.upload.erase_cmd=
+ttgo-lora32.menu.EraseFlash.all=Enabled
+ttgo-lora32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 ttgo-t1.name=TTGO T1
@@ -3260,6 +3365,11 @@ ttgo-t1.menu.DebugLevel.debug.build.code_debug=4
 ttgo-t1.menu.DebugLevel.verbose=Verbose
 ttgo-t1.menu.DebugLevel.verbose.build.code_debug=5
 
+ttgo-t1.menu.EraseFlash.none=Disabled
+ttgo-t1.menu.EraseFlash.none.upload.erase_cmd=
+ttgo-t1.menu.EraseFlash.all=Enabled
+ttgo-t1.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 ttgo-t7-v13-mini32.name=TTGO T7 V1.3 Mini32
@@ -3387,6 +3497,11 @@ ttgo-t7-v13-mini32.menu.DebugLevel.debug.build.code_debug=4
 ttgo-t7-v13-mini32.menu.DebugLevel.verbose=Verbose
 ttgo-t7-v13-mini32.menu.DebugLevel.verbose.build.code_debug=5
 
+ttgo-t7-v13-mini32.menu.EraseFlash.none=Disabled
+ttgo-t7-v13-mini32.menu.EraseFlash.none.upload.erase_cmd=
+ttgo-t7-v13-mini32.menu.EraseFlash.all=Enabled
+ttgo-t7-v13-mini32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 ttgo-t7-v14-mini32.name=TTGO T7 V1.4 Mini32
@@ -3514,6 +3629,11 @@ ttgo-t7-v14-mini32.menu.DebugLevel.debug.build.code_debug=4
 ttgo-t7-v14-mini32.menu.DebugLevel.verbose=Verbose
 ttgo-t7-v14-mini32.menu.DebugLevel.verbose.build.code_debug=5
 
+ttgo-t7-v14-mini32.menu.EraseFlash.none=Disabled
+ttgo-t7-v14-mini32.menu.EraseFlash.none.upload.erase_cmd=
+ttgo-t7-v14-mini32.menu.EraseFlash.all=Enabled
+ttgo-t7-v14-mini32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 ttgo-t-oi-plus.name=TTGO T-OI PLUS RISC-V ESP32-C3
@@ -3635,6 +3755,11 @@ ttgo-t-oi-plus.menu.DebugLevel.debug.build.code_debug=4
 ttgo-t-oi-plus.menu.DebugLevel.verbose=Verbose
 ttgo-t-oi-plus.menu.DebugLevel.verbose.build.code_debug=5
 
+ttgo-t-oi-plus.menu.EraseFlash.none=Disabled
+ttgo-t-oi-plus.menu.EraseFlash.none.upload.erase_cmd=
+ttgo-t-oi-plus.menu.EraseFlash.all=Enabled
+ttgo-t-oi-plus.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 cw02.name=XinaBox CW02
@@ -3721,6 +3846,11 @@ cw02.menu.DebugLevel.debug.build.code_debug=4
 cw02.menu.DebugLevel.verbose=Verbose
 cw02.menu.DebugLevel.verbose.build.code_debug=5
 
+cw02.menu.EraseFlash.none=Disabled
+cw02.menu.EraseFlash.none.upload.erase_cmd=
+cw02.menu.EraseFlash.all=Enabled
+cw02.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32thing.name=SparkFun ESP32 Thing
@@ -3797,6 +3927,11 @@ esp32thing.menu.DebugLevel.debug.build.code_debug=4
 esp32thing.menu.DebugLevel.verbose=Verbose
 esp32thing.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32thing.menu.EraseFlash.none=Disabled
+esp32thing.menu.EraseFlash.none.upload.erase_cmd=
+esp32thing.menu.EraseFlash.all=Enabled
+esp32thing.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32thing_plus.name=SparkFun ESP32 Thing Plus
@@ -3872,6 +4007,11 @@ esp32thing_plus.menu.DebugLevel.debug.build.code_debug=4
 esp32thing_plus.menu.DebugLevel.verbose=Verbose
 esp32thing_plus.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32thing_plus.menu.EraseFlash.none=Disabled
+esp32thing_plus.menu.EraseFlash.none.upload.erase_cmd=
+esp32thing_plus.menu.EraseFlash.all=Enabled
+esp32thing_plus.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32thing_plus_c.name=SparkFun ESP32 Thing Plus C
@@ -3947,6 +4087,11 @@ esp32thing_plus_c.menu.DebugLevel.debug.build.code_debug=4
 esp32thing_plus_c.menu.DebugLevel.verbose=Verbose
 esp32thing_plus_c.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32thing_plus_c.menu.EraseFlash.none=Disabled
+esp32thing_plus_c.menu.EraseFlash.none.upload.erase_cmd=
+esp32thing_plus_c.menu.EraseFlash.all=Enabled
+esp32thing_plus_c.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 sparkfun_esp32s2_thing_plus.name=SparkFun ESP32-S2 Thing Plus
@@ -4113,6 +4258,11 @@ sparkfun_esp32s2_thing_plus.menu.DebugLevel.debug.build.code_debug=4
 sparkfun_esp32s2_thing_plus.menu.DebugLevel.verbose=Verbose
 sparkfun_esp32s2_thing_plus.menu.DebugLevel.verbose.build.code_debug=5
 
+sparkfun_esp32s2_thing_plus.menu.EraseFlash.none=Disabled
+sparkfun_esp32s2_thing_plus.menu.EraseFlash.none.upload.erase_cmd=
+sparkfun_esp32s2_thing_plus.menu.EraseFlash.all=Enabled
+sparkfun_esp32s2_thing_plus.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32micromod.name=SparkFun ESP32 MicroMod
@@ -4262,6 +4412,11 @@ esp32micromod.menu.DebugLevel.debug.build.code_debug=4
 esp32micromod.menu.DebugLevel.verbose=Verbose
 esp32micromod.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32micromod.menu.EraseFlash.none=Disabled
+esp32micromod.menu.EraseFlash.none.upload.erase_cmd=
+esp32micromod.menu.EraseFlash.all=Enabled
+esp32micromod.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 sparkfun_lora_gateway_1-channel.name=SparkFun LoRa Gateway 1-Channel
@@ -4356,6 +4511,11 @@ sparkfun_lora_gateway_1-channel.menu.DebugLevel.debug.build.code_debug=4
 sparkfun_lora_gateway_1-channel.menu.DebugLevel.verbose=Verbose
 sparkfun_lora_gateway_1-channel.menu.DebugLevel.verbose.build.code_debug=5
 
+sparkfun_lora_gateway_1-channel.menu.EraseFlash.none=Disabled
+sparkfun_lora_gateway_1-channel.menu.EraseFlash.none.upload.erase_cmd=
+sparkfun_lora_gateway_1-channel.menu.EraseFlash.all=Enabled
+sparkfun_lora_gateway_1-channel.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 sparkfun_esp32_iot_redboard.name=SparkFun ESP32 IoT RedBoard
@@ -4521,6 +4681,11 @@ sparkfun_esp32_iot_redboard.menu.DebugLevel.debug.build.code_debug=4
 sparkfun_esp32_iot_redboard.menu.DebugLevel.verbose=Verbose
 sparkfun_esp32_iot_redboard.menu.DebugLevel.verbose.build.code_debug=5
 
+sparkfun_esp32_iot_redboard.menu.EraseFlash.none=Disabled
+sparkfun_esp32_iot_redboard.menu.EraseFlash.none.upload.erase_cmd=
+sparkfun_esp32_iot_redboard.menu.EraseFlash.all=Enabled
+sparkfun_esp32_iot_redboard.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 nina_w10.name=u-blox NINA-W10 series (ESP32)
@@ -4659,6 +4824,11 @@ nina_w10.menu.DebugLevel.debug.build.code_debug=4
 nina_w10.menu.DebugLevel.verbose=Verbose
 nina_w10.menu.DebugLevel.verbose.build.code_debug=5
 
+nina_w10.menu.EraseFlash.none=Disabled
+nina_w10.menu.EraseFlash.none.upload.erase_cmd=
+nina_w10.menu.EraseFlash.all=Enabled
+nina_w10.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 widora-air.name=Widora AIR
@@ -4726,6 +4896,11 @@ widora-air.menu.DebugLevel.debug.build.code_debug=4
 widora-air.menu.DebugLevel.verbose=Verbose
 widora-air.menu.DebugLevel.verbose.build.code_debug=5
 
+widora-air.menu.EraseFlash.none=Disabled
+widora-air.menu.EraseFlash.none.upload.erase_cmd=
+widora-air.menu.EraseFlash.all=Enabled
+widora-air.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp320.name=Electronic SweetPeas - ESP320
@@ -4793,6 +4968,11 @@ esp320.menu.DebugLevel.debug.build.code_debug=4
 esp320.menu.DebugLevel.verbose=Verbose
 esp320.menu.DebugLevel.verbose.build.code_debug=5
 
+esp320.menu.EraseFlash.none=Disabled
+esp320.menu.EraseFlash.none.upload.erase_cmd=
+esp320.menu.EraseFlash.all=Enabled
+esp320.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 nano32.name=Nano32
@@ -4860,6 +5040,11 @@ nano32.menu.DebugLevel.debug.build.code_debug=4
 nano32.menu.DebugLevel.verbose=Verbose
 nano32.menu.DebugLevel.verbose.build.code_debug=5
 
+nano32.menu.EraseFlash.none=Disabled
+nano32.menu.EraseFlash.none.upload.erase_cmd=
+nano32.menu.EraseFlash.all=Enabled
+nano32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 d32.name=LOLIN D32
@@ -4939,6 +5124,11 @@ d32.menu.DebugLevel.debug.build.code_debug=4
 d32.menu.DebugLevel.verbose=Verbose
 d32.menu.DebugLevel.verbose.build.code_debug=5
 
+d32.menu.EraseFlash.none=Disabled
+d32.menu.EraseFlash.none.upload.erase_cmd=
+d32.menu.EraseFlash.all=Enabled
+d32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 d32_pro.name=LOLIN D32 PRO
@@ -5027,6 +5217,11 @@ d32_pro.menu.DebugLevel.debug.build.code_debug=4
 d32_pro.menu.DebugLevel.verbose=Verbose
 d32_pro.menu.DebugLevel.verbose.build.code_debug=5
 
+d32_pro.menu.EraseFlash.none=Disabled
+d32_pro.menu.EraseFlash.none.upload.erase_cmd=
+d32_pro.menu.EraseFlash.all=Enabled
+d32_pro.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 lolin_c3_mini.name=LOLIN C3 Mini
@@ -5139,6 +5334,11 @@ lolin_c3_mini.menu.DebugLevel.debug.build.code_debug=4
 lolin_c3_mini.menu.DebugLevel.verbose=Verbose
 lolin_c3_mini.menu.DebugLevel.verbose.build.code_debug=5
 
+lolin_c3_mini.menu.EraseFlash.none=Disabled
+lolin_c3_mini.menu.EraseFlash.none.upload.erase_cmd=
+lolin_c3_mini.menu.EraseFlash.all=Enabled
+lolin_c3_mini.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 lolin_s2_mini.name=LOLIN S2 Mini
@@ -5232,6 +5432,11 @@ lolin_s2_mini.menu.DebugLevel.debug.build.code_debug=4
 lolin_s2_mini.menu.DebugLevel.verbose=Verbose
 lolin_s2_mini.menu.DebugLevel.verbose.build.code_debug=5
 
+lolin_s2_mini.menu.EraseFlash.none=Disabled
+lolin_s2_mini.menu.EraseFlash.none.upload.erase_cmd=
+lolin_s2_mini.menu.EraseFlash.all=Enabled
+lolin_s2_mini.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 lolin_s2_pico.name=LOLIN S2 PICO
@@ -5325,6 +5530,11 @@ lolin_s2_pico.menu.DebugLevel.debug.build.code_debug=4
 lolin_s2_pico.menu.DebugLevel.verbose=Verbose
 lolin_s2_pico.menu.DebugLevel.verbose.build.code_debug=5
 
+lolin_s2_pico.menu.EraseFlash.none=Disabled
+lolin_s2_pico.menu.EraseFlash.none.upload.erase_cmd=
+lolin_s2_pico.menu.EraseFlash.all=Enabled
+lolin_s2_pico.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 lolin_s3.name=LOLIN S3
@@ -5472,6 +5682,11 @@ lolin_s3.menu.DebugLevel.debug.build.code_debug=4
 lolin_s3.menu.DebugLevel.verbose=Verbose
 lolin_s3.menu.DebugLevel.verbose.build.code_debug=5
 
+lolin_s3.menu.EraseFlash.none=Disabled
+lolin_s3.menu.EraseFlash.none.upload.erase_cmd=
+lolin_s3.menu.EraseFlash.all=Enabled
+lolin_s3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 lolin32.name=WEMOS LOLIN32
@@ -5565,6 +5780,11 @@ lolin32.menu.DebugLevel.debug.build.code_debug=4
 lolin32.menu.DebugLevel.verbose=Verbose
 lolin32.menu.DebugLevel.verbose.build.code_debug=5
 
+lolin32.menu.EraseFlash.none=Disabled
+lolin32.menu.EraseFlash.none.upload.erase_cmd=
+lolin32.menu.EraseFlash.all=Enabled
+lolin32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 lolin32-lite.name=WEMOS LOLIN32 Lite
@@ -5659,6 +5879,11 @@ lolin32-lite.menu.DebugLevel.debug.build.code_debug=4
 lolin32-lite.menu.DebugLevel.verbose=Verbose
 lolin32-lite.menu.DebugLevel.verbose.build.code_debug=5
 
+lolin32-lite.menu.EraseFlash.none=Disabled
+lolin32-lite.menu.EraseFlash.none.upload.erase_cmd=
+lolin32-lite.menu.EraseFlash.all=Enabled
+lolin32-lite.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 pocket_32.name=Dongsen Tech Pocket 32
@@ -5726,6 +5951,11 @@ pocket_32.menu.DebugLevel.debug.build.code_debug=4
 pocket_32.menu.DebugLevel.verbose=Verbose
 pocket_32.menu.DebugLevel.verbose.build.code_debug=5
 
+pocket_32.menu.EraseFlash.none=Disabled
+pocket_32.menu.EraseFlash.none.upload.erase_cmd=
+pocket_32.menu.EraseFlash.all=Enabled
+pocket_32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 WeMosBat.name=WeMos WiFi&Bluetooth Battery
@@ -5830,6 +6060,11 @@ WeMosBat.menu.DebugLevel.debug.build.code_debug=4
 WeMosBat.menu.DebugLevel.verbose=Verbose
 WeMosBat.menu.DebugLevel.verbose.build.code_debug=5
 
+WeMosBat.menu.EraseFlash.none=Disabled
+WeMosBat.menu.EraseFlash.none.upload.erase_cmd=
+WeMosBat.menu.EraseFlash.all=Enabled
+WeMosBat.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 espea32.name=ESPea32
@@ -5897,6 +6132,11 @@ espea32.menu.DebugLevel.debug.build.code_debug=4
 espea32.menu.DebugLevel.verbose=Verbose
 espea32.menu.DebugLevel.verbose.build.code_debug=5
 
+espea32.menu.EraseFlash.none=Disabled
+espea32.menu.EraseFlash.none.upload.erase_cmd=
+espea32.menu.EraseFlash.all=Enabled
+espea32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 quantum.name=Noduino Quantum
@@ -5964,6 +6204,11 @@ quantum.menu.DebugLevel.debug.build.code_debug=4
 quantum.menu.DebugLevel.verbose=Verbose
 quantum.menu.DebugLevel.verbose.build.code_debug=5
 
+quantum.menu.EraseFlash.none=Disabled
+quantum.menu.EraseFlash.none.upload.erase_cmd=
+quantum.menu.EraseFlash.all=Enabled
+quantum.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 node32s.name=Node32s
@@ -6040,6 +6285,11 @@ node32s.menu.DebugLevel.debug.build.code_debug=4
 node32s.menu.DebugLevel.verbose=Verbose
 node32s.menu.DebugLevel.verbose.build.code_debug=5
 
+node32s.menu.EraseFlash.none=Disabled
+node32s.menu.EraseFlash.none.upload.erase_cmd=
+node32s.menu.EraseFlash.all=Enabled
+node32s.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 hornbill32dev.name=Hornbill ESP32 Dev
@@ -6107,6 +6357,11 @@ hornbill32dev.menu.DebugLevel.debug.build.code_debug=4
 hornbill32dev.menu.DebugLevel.verbose=Verbose
 hornbill32dev.menu.DebugLevel.verbose.build.code_debug=5
 
+hornbill32dev.menu.EraseFlash.none=Disabled
+hornbill32dev.menu.EraseFlash.none.upload.erase_cmd=
+hornbill32dev.menu.EraseFlash.all=Enabled
+hornbill32dev.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 hornbill32minima.name=Hornbill ESP32 Minima
@@ -6173,6 +6428,11 @@ hornbill32minima.menu.DebugLevel.debug.build.code_debug=4
 hornbill32minima.menu.DebugLevel.verbose=Verbose
 hornbill32minima.menu.DebugLevel.verbose.build.code_debug=5
 
+hornbill32minima.menu.EraseFlash.none=Disabled
+hornbill32minima.menu.EraseFlash.none.upload.erase_cmd=
+hornbill32minima.menu.EraseFlash.all=Enabled
+hornbill32minima.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 dfrobot_beetle_esp32c3.name=DFRobot Beetle ESP32-C3
 #dfrobot_beetle_esp32c3.vid.0=0x3343
@@ -6317,6 +6577,11 @@ dfrobot_beetle_esp32c3.menu.DebugLevel.debug.build.code_debug=4
 dfrobot_beetle_esp32c3.menu.DebugLevel.verbose=Verbose
 dfrobot_beetle_esp32c3.menu.DebugLevel.verbose.build.code_debug=5
 
+dfrobot_beetle_esp32c3.menu.EraseFlash.none=Disabled
+dfrobot_beetle_esp32c3.menu.EraseFlash.none.upload.erase_cmd=
+dfrobot_beetle_esp32c3.menu.EraseFlash.all=Enabled
+dfrobot_beetle_esp32c3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 dfrobot_firebeetle2_esp32s3.name=DFRobot Firebeetle 2 ESP32-S3
@@ -6529,6 +6794,11 @@ dfrobot_firebeetle2_esp32s3.menu.DebugLevel.debug.build.code_debug=4
 dfrobot_firebeetle2_esp32s3.menu.DebugLevel.verbose=Verbose
 dfrobot_firebeetle2_esp32s3.menu.DebugLevel.verbose.build.code_debug=5
 
+dfrobot_firebeetle2_esp32s3.menu.EraseFlash.none=Disabled
+dfrobot_firebeetle2_esp32s3.menu.EraseFlash.none.upload.erase_cmd=
+dfrobot_firebeetle2_esp32s3.menu.EraseFlash.all=Enabled
+dfrobot_firebeetle2_esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 firebeetle32.name=FireBeetle-ESP32
@@ -6596,6 +6866,11 @@ firebeetle32.menu.DebugLevel.debug.build.code_debug=4
 firebeetle32.menu.DebugLevel.verbose=Verbose
 firebeetle32.menu.DebugLevel.verbose.build.code_debug=5
 
+firebeetle32.menu.EraseFlash.none=Disabled
+firebeetle32.menu.EraseFlash.none.upload.erase_cmd=
+firebeetle32.menu.EraseFlash.all=Enabled
+firebeetle32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 intorobot-fig.name=IntoRobot Fig
@@ -6663,6 +6938,11 @@ intorobot-fig.menu.DebugLevel.debug.build.code_debug=4
 intorobot-fig.menu.DebugLevel.verbose=Verbose
 intorobot-fig.menu.DebugLevel.verbose.build.code_debug=5
 
+intorobot-fig.menu.EraseFlash.none=Disabled
+intorobot-fig.menu.EraseFlash.none.upload.erase_cmd=
+intorobot-fig.menu.EraseFlash.all=Enabled
+intorobot-fig.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 onehorse32dev.name=Onehorse ESP32 Dev Module
@@ -6730,6 +7010,11 @@ onehorse32dev.menu.DebugLevel.debug.build.code_debug=4
 onehorse32dev.menu.DebugLevel.verbose=Verbose
 onehorse32dev.menu.DebugLevel.verbose.build.code_debug=5
 
+onehorse32dev.menu.EraseFlash.none=Disabled
+onehorse32dev.menu.EraseFlash.none.upload.erase_cmd=
+onehorse32dev.menu.EraseFlash.all=Enabled
+onehorse32dev.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit ESP32 Feather
 
@@ -6852,6 +7137,11 @@ featheresp32.menu.DebugLevel.debug.build.code_debug=4
 featheresp32.menu.DebugLevel.verbose=Verbose
 featheresp32.menu.DebugLevel.verbose.build.code_debug=5
 
+featheresp32.menu.EraseFlash.none=Disabled
+featheresp32.menu.EraseFlash.none.upload.erase_cmd=
+featheresp32.menu.EraseFlash.all=Enabled
+featheresp32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit Metro ESP32-S2
 
@@ -7018,6 +7308,11 @@ adafruit_metro_esp32s2.menu.DebugLevel.debug.build.code_debug=4
 adafruit_metro_esp32s2.menu.DebugLevel.verbose=Verbose
 adafruit_metro_esp32s2.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_metro_esp32s2.menu.EraseFlash.none=Disabled
+adafruit_metro_esp32s2.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_metro_esp32s2.menu.EraseFlash.all=Enabled
+adafruit_metro_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit MagTag 2.9"
 
@@ -7184,6 +7479,11 @@ adafruit_magtag29_esp32s2.menu.DebugLevel.debug.build.code_debug=4
 adafruit_magtag29_esp32s2.menu.DebugLevel.verbose=Verbose
 adafruit_magtag29_esp32s2.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_magtag29_esp32s2.menu.EraseFlash.none=Disabled
+adafruit_magtag29_esp32s2.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_magtag29_esp32s2.menu.EraseFlash.all=Enabled
+adafruit_magtag29_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit FunHouse
 
@@ -7350,6 +7650,11 @@ adafruit_funhouse_esp32s2.menu.DebugLevel.debug.build.code_debug=4
 adafruit_funhouse_esp32s2.menu.DebugLevel.verbose=Verbose
 adafruit_funhouse_esp32s2.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_funhouse_esp32s2.menu.EraseFlash.none=Disabled
+adafruit_funhouse_esp32s2.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_funhouse_esp32s2.menu.EraseFlash.all=Enabled
+adafruit_funhouse_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit Feather ESP32-S2
 
@@ -7516,6 +7821,11 @@ adafruit_feather_esp32s2.menu.DebugLevel.debug.build.code_debug=4
 adafruit_feather_esp32s2.menu.DebugLevel.verbose=Verbose
 adafruit_feather_esp32s2.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_feather_esp32s2.menu.EraseFlash.none=Disabled
+adafruit_feather_esp32s2.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_feather_esp32s2.menu.EraseFlash.all=Enabled
+adafruit_feather_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit Feather ESP32-S2 TFT
 
@@ -7682,6 +7992,11 @@ adafruit_feather_esp32s2_tft.menu.DebugLevel.debug.build.code_debug=4
 adafruit_feather_esp32s2_tft.menu.DebugLevel.verbose=Verbose
 adafruit_feather_esp32s2_tft.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_feather_esp32s2_tft.menu.EraseFlash.none=Disabled
+adafruit_feather_esp32s2_tft.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_feather_esp32s2_tft.menu.EraseFlash.all=Enabled
+adafruit_feather_esp32s2_tft.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit QT Py ESP32-S2
 
@@ -7848,6 +8163,11 @@ adafruit_qtpy_esp32s2.menu.DebugLevel.debug.build.code_debug=4
 adafruit_qtpy_esp32s2.menu.DebugLevel.verbose=Verbose
 adafruit_qtpy_esp32s2.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_qtpy_esp32s2.menu.EraseFlash.none=Disabled
+adafruit_qtpy_esp32s2.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_qtpy_esp32s2.menu.EraseFlash.all=Enabled
+adafruit_qtpy_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit QT Py ESP32-C3
 
@@ -7979,6 +8299,11 @@ adafruit_qtpy_esp32c3.menu.DebugLevel.debug.build.code_debug=4
 adafruit_qtpy_esp32c3.menu.DebugLevel.verbose=Verbose
 adafruit_qtpy_esp32c3.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_qtpy_esp32c3.menu.EraseFlash.none=Disabled
+adafruit_qtpy_esp32c3.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_qtpy_esp32c3.menu.EraseFlash.all=Enabled
+adafruit_qtpy_esp32c3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit QT Py ESP32
 
@@ -8085,6 +8410,11 @@ adafruit_qtpy_esp32_pico.menu.DebugLevel.debug.build.code_debug=4
 adafruit_qtpy_esp32_pico.menu.DebugLevel.verbose=Verbose
 adafruit_qtpy_esp32_pico.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_qtpy_esp32_pico.menu.EraseFlash.none=Disabled
+adafruit_qtpy_esp32_pico.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_qtpy_esp32_pico.menu.EraseFlash.all=Enabled
+adafruit_qtpy_esp32_pico.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit Feather ESP32 V2
 
@@ -8191,6 +8521,11 @@ adafruit_feather_esp32_v2.menu.DebugLevel.debug.build.code_debug=4
 adafruit_feather_esp32_v2.menu.DebugLevel.verbose=Verbose
 adafruit_feather_esp32_v2.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_feather_esp32_v2.menu.EraseFlash.none=Disabled
+adafruit_feather_esp32_v2.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_feather_esp32_v2.menu.EraseFlash.all=Enabled
+adafruit_feather_esp32_v2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit Feather ESP32-S3 2MB PSRAM
 
@@ -8386,6 +8721,11 @@ adafruit_feather_esp32s3.menu.DebugLevel.debug.build.code_debug=4
 adafruit_feather_esp32s3.menu.DebugLevel.verbose=Verbose
 adafruit_feather_esp32s3.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_feather_esp32s3.menu.EraseFlash.none=Disabled
+adafruit_feather_esp32s3.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_feather_esp32s3.menu.EraseFlash.all=Enabled
+adafruit_feather_esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit Feather ESP32-S3 No PSRAM
 
@@ -8550,6 +8890,11 @@ adafruit_feather_esp32s3_nopsram.menu.DebugLevel.debug.build.code_debug=4
 adafruit_feather_esp32s3_nopsram.menu.DebugLevel.verbose=Verbose
 adafruit_feather_esp32s3_nopsram.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_feather_esp32s3_nopsram.menu.EraseFlash.none=Disabled
+adafruit_feather_esp32s3_nopsram.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_feather_esp32s3_nopsram.menu.EraseFlash.all=Enabled
+adafruit_feather_esp32s3_nopsram.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit Feather ESP32-S3 TFT
 
@@ -8745,6 +9090,11 @@ adafruit_feather_esp32s3_tft.menu.DebugLevel.debug.build.code_debug=4
 adafruit_feather_esp32s3_tft.menu.DebugLevel.verbose=Verbose
 adafruit_feather_esp32s3_tft.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_feather_esp32s3_tft.menu.EraseFlash.none=Disabled
+adafruit_feather_esp32s3_tft.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_feather_esp32s3_tft.menu.EraseFlash.all=Enabled
+adafruit_feather_esp32s3_tft.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 # Adafruit QT Py ESP32-S3 No PSRAM
 
@@ -8909,6 +9259,11 @@ adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.debug.build.code_debug=4
 adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.verbose=Verbose
 adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.verbose.build.code_debug=5
 
+adafruit_qtpy_esp32s3_nopsram.menu.EraseFlash.none=Disabled
+adafruit_qtpy_esp32s3_nopsram.menu.EraseFlash.none.upload.erase_cmd=
+adafruit_qtpy_esp32s3_nopsram.menu.EraseFlash.all=Enabled
+adafruit_qtpy_esp32s3_nopsram.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 nodemcu-32s.name=NodeMCU-32S
@@ -8976,6 +9331,11 @@ nodemcu-32s.menu.DebugLevel.debug.build.code_debug=4
 nodemcu-32s.menu.DebugLevel.verbose=Verbose
 nodemcu-32s.menu.DebugLevel.verbose.build.code_debug=5
 
+nodemcu-32s.menu.EraseFlash.none=Disabled
+nodemcu-32s.menu.EraseFlash.none.upload.erase_cmd=
+nodemcu-32s.menu.EraseFlash.all=Enabled
+nodemcu-32s.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 mhetesp32devkit.name=MH ET LIVE ESP32DevKIT
@@ -9052,6 +9412,11 @@ mhetesp32devkit.menu.DebugLevel.debug.build.code_debug=4
 mhetesp32devkit.menu.DebugLevel.verbose=Verbose
 mhetesp32devkit.menu.DebugLevel.verbose.build.code_debug=5
 
+mhetesp32devkit.menu.EraseFlash.none=Disabled
+mhetesp32devkit.menu.EraseFlash.none.upload.erase_cmd=
+mhetesp32devkit.menu.EraseFlash.all=Enabled
+mhetesp32devkit.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 mhetesp32minikit.name=MH ET LIVE ESP32MiniKit
@@ -9130,6 +9495,11 @@ mhetesp32minikit.menu.DebugLevel.debug.build.code_debug=4
 mhetesp32minikit.menu.DebugLevel.verbose=Verbose
 mhetesp32minikit.menu.DebugLevel.verbose.build.code_debug=5
 
+mhetesp32minikit.menu.EraseFlash.none=Disabled
+mhetesp32minikit.menu.EraseFlash.none.upload.erase_cmd=
+mhetesp32minikit.menu.EraseFlash.all=Enabled
+mhetesp32minikit.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32vn-iot-uno.name=ESP32vn IoT Uno
@@ -9197,6 +9567,11 @@ esp32vn-iot-uno.menu.DebugLevel.debug.build.code_debug=4
 esp32vn-iot-uno.menu.DebugLevel.verbose=Verbose
 esp32vn-iot-uno.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32vn-iot-uno.menu.EraseFlash.none=Disabled
+esp32vn-iot-uno.menu.EraseFlash.none.upload.erase_cmd=
+esp32vn-iot-uno.menu.EraseFlash.all=Enabled
+esp32vn-iot-uno.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32doit-devkit-v1.name=DOIT ESP32 DEVKIT V1
@@ -9262,6 +9637,11 @@ esp32doit-devkit-v1.menu.DebugLevel.info.build.code_debug=3
 esp32doit-devkit-v1.menu.DebugLevel.debug=Debug
 esp32doit-devkit-v1.menu.DebugLevel.debug.build.code_debug=4
 
+esp32doit-devkit-v1.menu.EraseFlash.none=Disabled
+esp32doit-devkit-v1.menu.EraseFlash.none.upload.erase_cmd=
+esp32doit-devkit-v1.menu.EraseFlash.all=Enabled
+esp32doit-devkit-v1.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32doit-espduino.name=DOIT ESPduino32
@@ -9322,6 +9702,11 @@ esp32doit-espduino.menu.DebugLevel.info.build.code_debug=3
 esp32doit-espduino.menu.DebugLevel.debug=Debug
 esp32doit-espduino.menu.DebugLevel.debug.build.code_debug=4
 
+esp32doit-espduino.menu.EraseFlash.none=Disabled
+esp32doit-espduino.menu.EraseFlash.none.upload.erase_cmd=
+esp32doit-espduino.menu.EraseFlash.all=Enabled
+esp32doit-espduino.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32-evb.name=OLIMEX ESP32-EVB
@@ -9386,6 +9771,11 @@ esp32-evb.menu.DebugLevel.debug.build.code_debug=4
 esp32-evb.menu.DebugLevel.verbose=Verbose
 esp32-evb.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32-evb.menu.EraseFlash.none=Disabled
+esp32-evb.menu.EraseFlash.none.upload.erase_cmd=
+esp32-evb.menu.EraseFlash.all=Enabled
+esp32-evb.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32-gateway.name=OLIMEX ESP32-GATEWAY
@@ -9456,6 +9846,11 @@ esp32-gateway.menu.DebugLevel.debug.build.code_debug=4
 esp32-gateway.menu.DebugLevel.verbose=Verbose
 esp32-gateway.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32-gateway.menu.EraseFlash.none=Disabled
+esp32-gateway.menu.EraseFlash.none.upload.erase_cmd=
+esp32-gateway.menu.EraseFlash.all=Enabled
+esp32-gateway.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32-poe.name=OLIMEX ESP32-PoE
@@ -9520,6 +9915,11 @@ esp32-poe.menu.DebugLevel.debug.build.code_debug=4
 esp32-poe.menu.DebugLevel.verbose=Verbose
 esp32-poe.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32-poe.menu.EraseFlash.none=Disabled
+esp32-poe.menu.EraseFlash.none.upload.erase_cmd=
+esp32-poe.menu.EraseFlash.all=Enabled
+esp32-poe.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32-poe-iso.name=OLIMEX ESP32-PoE-ISO
@@ -9584,6 +9984,11 @@ esp32-poe-iso.menu.DebugLevel.debug.build.code_debug=4
 esp32-poe-iso.menu.DebugLevel.verbose=Verbose
 esp32-poe-iso.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32-poe-iso.menu.EraseFlash.none=Disabled
+esp32-poe-iso.menu.EraseFlash.none.upload.erase_cmd=
+esp32-poe-iso.menu.EraseFlash.all=Enabled
+esp32-poe-iso.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32-DevKitLipo.name=OLIMEX ESP32-DevKit-LiPo
@@ -9681,6 +10086,11 @@ esp32-DevKitLipo.menu.DebugLevel.debug.build.code_debug=4
 esp32-DevKitLipo.menu.DebugLevel.verbose=Verbose
 esp32-DevKitLipo.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32-DevKitLipo.menu.EraseFlash.none=Disabled
+esp32-DevKitLipo.menu.EraseFlash.none.upload.erase_cmd=
+esp32-DevKitLipo.menu.EraseFlash.all=Enabled
+esp32-DevKitLipo.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 espino32.name=ThaiEasyElec's ESPino32
@@ -9748,6 +10158,11 @@ espino32.menu.DebugLevel.debug.build.code_debug=4
 espino32.menu.DebugLevel.verbose=Verbose
 espino32.menu.DebugLevel.verbose.build.code_debug=5
 
+espino32.menu.EraseFlash.none=Disabled
+espino32.menu.EraseFlash.none.upload.erase_cmd=
+espino32.menu.EraseFlash.all=Enabled
+espino32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 m5stack-core-esp32.name=M5Stack-Core-ESP32
@@ -9837,6 +10252,11 @@ m5stack-core-esp32.menu.DebugLevel.debug.build.code_debug=4
 m5stack-core-esp32.menu.DebugLevel.verbose=Verbose
 m5stack-core-esp32.menu.DebugLevel.verbose.build.code_debug=5
 
+m5stack-core-esp32.menu.EraseFlash.none=Disabled
+m5stack-core-esp32.menu.EraseFlash.none.upload.erase_cmd=
+m5stack-core-esp32.menu.EraseFlash.all=Enabled
+m5stack-core-esp32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 m5stack-fire.name=M5Stack-FIRE
@@ -9914,6 +10334,11 @@ m5stack-fire.menu.DebugLevel.debug.build.code_debug=4
 m5stack-fire.menu.DebugLevel.verbose=Verbose
 m5stack-fire.menu.DebugLevel.verbose.build.code_debug=5
 
+m5stack-fire.menu.EraseFlash.none=Disabled
+m5stack-fire.menu.EraseFlash.none.upload.erase_cmd=
+m5stack-fire.menu.EraseFlash.all=Enabled
+m5stack-fire.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 m5stack-station.name=M5Stack-Station
@@ -10072,6 +10497,11 @@ m5stick-c.menu.DebugLevel.debug.build.code_debug=4
 m5stick-c.menu.DebugLevel.verbose=Verbose
 m5stick-c.menu.DebugLevel.verbose.build.code_debug=5
 
+m5stick-c.menu.EraseFlash.none=Disabled
+m5stick-c.menu.EraseFlash.none.upload.erase_cmd=
+m5stick-c.menu.EraseFlash.all=Enabled
+m5stick-c.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 m5stack-atom.name=M5Stack-ATOM
@@ -10140,6 +10570,11 @@ m5stack-atom.menu.DebugLevel.debug.build.code_debug=4
 m5stack-atom.menu.DebugLevel.verbose=Verbose
 m5stack-atom.menu.DebugLevel.verbose.build.code_debug=5
 
+m5stack-atom.menu.EraseFlash.none=Disabled
+m5stack-atom.menu.EraseFlash.none.upload.erase_cmd=
+m5stack-atom.menu.EraseFlash.all=Enabled
+m5stack-atom.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 m5stack-core2.name=M5Stack-Core2
@@ -10252,6 +10687,11 @@ m5stack-core2.menu.DebugLevel.debug.build.code_debug=4
 m5stack-core2.menu.DebugLevel.verbose=Verbose
 m5stack-core2.menu.DebugLevel.verbose.build.code_debug=5
 
+m5stack-core2.menu.EraseFlash.none=Disabled
+m5stack-core2.menu.EraseFlash.none.upload.erase_cmd=
+m5stack-core2.menu.EraseFlash.all=Enabled
+m5stack-core2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 m5stack-timer-cam.name=M5Stack-Timer-CAM
@@ -10356,6 +10796,11 @@ m5stack-timer-cam.menu.DebugLevel.debug.build.code_debug=4
 m5stack-timer-cam.menu.DebugLevel.verbose=Verbose
 m5stack-timer-cam.menu.DebugLevel.verbose.build.code_debug=5
 
+m5stack-timer-cam.menu.EraseFlash.none=Disabled
+m5stack-timer-cam.menu.EraseFlash.none.upload.erase_cmd=
+m5stack-timer-cam.menu.EraseFlash.all=Enabled
+m5stack-timer-cam.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 m5stack-coreink.name=M5Stack-CoreInk
@@ -10431,6 +10876,11 @@ m5stack-coreink.menu.DebugLevel.debug.build.code_debug=4
 m5stack-coreink.menu.DebugLevel.verbose=Verbose
 m5stack-coreink.menu.DebugLevel.verbose.build.code_debug=5
 
+m5stack-coreink.menu.EraseFlash.none=Disabled
+m5stack-coreink.menu.EraseFlash.none.upload.erase_cmd=
+m5stack-coreink.menu.EraseFlash.all=Enabled
+m5stack-coreink.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 odroid_esp32.name=ODROID ESP32
@@ -10521,6 +10971,11 @@ odroid_esp32.menu.DebugLevel.debug.build.code_debug=4
 odroid_esp32.menu.DebugLevel.verbose=Verbose
 odroid_esp32.menu.DebugLevel.verbose.build.code_debug=5
 
+odroid_esp32.menu.EraseFlash.none=Disabled
+odroid_esp32.menu.EraseFlash.none.upload.erase_cmd=
+odroid_esp32.menu.EraseFlash.all=Enabled
+odroid_esp32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 heltec_wifi_kit_32.name=Heltec WiFi Kit 32
@@ -10600,6 +11055,11 @@ heltec_wifi_kit_32.menu.DebugLevel.debug.build.code_debug=4
 heltec_wifi_kit_32.menu.DebugLevel.verbose=Verbose
 heltec_wifi_kit_32.menu.DebugLevel.verbose.build.code_debug=5
 
+heltec_wifi_kit_32.menu.EraseFlash.none=Disabled
+heltec_wifi_kit_32.menu.EraseFlash.none.upload.erase_cmd=
+heltec_wifi_kit_32.menu.EraseFlash.all=Enabled
+heltec_wifi_kit_32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 heltec_wifi_lora_32.name=Heltec WiFi LoRa 32
@@ -10707,6 +11167,11 @@ heltec_wifi_lora_32.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2
 heltec_wifi_lora_32.menu.LoRaWanDebugLevel.3=Freq && DIO && PW
 heltec_wifi_lora_32.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3
 
+heltec_wifi_lora_32.menu.EraseFlash.none=Disabled
+heltec_wifi_lora_32.menu.EraseFlash.none.upload.erase_cmd=
+heltec_wifi_lora_32.menu.EraseFlash.all=Enabled
+heltec_wifi_lora_32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 heltec_wifi_lora_32_V2.name=Heltec WiFi LoRa 32(V2)
@@ -10814,6 +11279,11 @@ heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2
 heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.3=Freq && DIO && PW
 heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3
 
+heltec_wifi_lora_32_V2.menu.EraseFlash.none=Disabled
+heltec_wifi_lora_32_V2.menu.EraseFlash.none.upload.erase_cmd=
+heltec_wifi_lora_32_V2.menu.EraseFlash.all=Enabled
+heltec_wifi_lora_32_V2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 heltec_wireless_stick.name=Heltec Wireless Stick
@@ -10921,6 +11391,11 @@ heltec_wireless_stick.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2
 heltec_wireless_stick.menu.LoRaWanDebugLevel.3=Freq && DIO && PW
 heltec_wireless_stick.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3
 
+heltec_wireless_stick.menu.EraseFlash.none=Disabled
+heltec_wireless_stick.menu.EraseFlash.none.upload.erase_cmd=
+heltec_wireless_stick.menu.EraseFlash.all=Enabled
+heltec_wireless_stick.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 heltec_wireless_stick_lite.name=Heltec Wireless Stick Lite
@@ -11029,6 +11504,11 @@ heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2
 heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.3=Freq && DIO && PW
 heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3
 
+heltec_wireless_stick_lite.menu.EraseFlash.none=Disabled
+heltec_wireless_stick_lite.menu.EraseFlash.none.upload.erase_cmd=
+heltec_wireless_stick_lite.menu.EraseFlash.all=Enabled
+heltec_wireless_stick_lite.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 espectro32.name=ESPectro32
@@ -11115,6 +11595,11 @@ espectro32.menu.DebugLevel.debug.build.code_debug=4
 espectro32.menu.DebugLevel.verbose=Verbose
 espectro32.menu.DebugLevel.verbose.build.code_debug=5
 
+espectro32.menu.EraseFlash.none=Disabled
+espectro32.menu.EraseFlash.none.upload.erase_cmd=
+espectro32.menu.EraseFlash.all=Enabled
+espectro32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 CoreESP32.name=Microduino-CoreESP32
@@ -11202,6 +11687,11 @@ CoreESP32.menu.DebugLevel.debug.build.code_debug=4
 CoreESP32.menu.DebugLevel.verbose=Verbose
 CoreESP32.menu.DebugLevel.verbose.build.code_debug=5
 
+CoreESP32.menu.EraseFlash.none=Disabled
+CoreESP32.menu.EraseFlash.none.upload.erase_cmd=
+CoreESP32.menu.EraseFlash.all=Enabled
+CoreESP32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 alksesp32.name=ALKS ESP32
@@ -11343,6 +11833,11 @@ alksesp32.menu.DebugLevel.debug.build.code_debug=4
 alksesp32.menu.DebugLevel.verbose=Verbose
 alksesp32.menu.DebugLevel.verbose.build.code_debug=5
 
+alksesp32.menu.EraseFlash.none=Disabled
+alksesp32.menu.EraseFlash.none.upload.erase_cmd=
+alksesp32.menu.EraseFlash.all=Enabled
+alksesp32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 wipy3.name=WiPy 3.0
@@ -11410,6 +11905,11 @@ wipy3.menu.DebugLevel.debug.build.code_debug=4
 wipy3.menu.DebugLevel.verbose=Verbose
 wipy3.menu.DebugLevel.verbose.build.code_debug=5
 
+wipy3.menu.EraseFlash.none=Disabled
+wipy3.menu.EraseFlash.none.upload.erase_cmd=
+wipy3.menu.EraseFlash.all=Enabled
+wipy3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 wt32-eth01.name=WT32-ETH01 Ethernet Module
@@ -11511,6 +12011,11 @@ wt32-eth01.menu.DebugLevel.debug.build.code_debug=4
 wt32-eth01.menu.DebugLevel.verbose=Verbose
 wt32-eth01.menu.DebugLevel.verbose.build.code_debug=5
 
+wt32-eth01.menu.EraseFlash.none=Disabled
+wt32-eth01.menu.EraseFlash.none.upload.erase_cmd=
+wt32-eth01.menu.EraseFlash.all=Enabled
+wt32-eth01.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 bpi-bit.name=BPI-BIT
@@ -11577,6 +12082,11 @@ bpi-bit.menu.DebugLevel.debug.build.code_debug=4
 bpi-bit.menu.DebugLevel.verbose=Verbose
 bpi-bit.menu.DebugLevel.verbose.build.code_debug=5
 
+bpi-bit.menu.EraseFlash.none=Disabled
+bpi-bit.menu.EraseFlash.none.upload.erase_cmd=
+bpi-bit.menu.EraseFlash.all=Enabled
+bpi-bit.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 wesp32.name=Silicognition wESP32
@@ -11644,6 +12154,11 @@ wesp32.menu.DebugLevel.debug.build.code_debug=4
 wesp32.menu.DebugLevel.verbose=Verbose
 wesp32.menu.DebugLevel.verbose.build.code_debug=5
 
+wesp32.menu.EraseFlash.none=Disabled
+wesp32.menu.EraseFlash.none.upload.erase_cmd=
+wesp32.menu.EraseFlash.all=Enabled
+wesp32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 t-beam.name=T-Beam
@@ -11717,6 +12232,11 @@ t-beam.menu.DebugLevel.debug.build.code_debug=4
 t-beam.menu.DebugLevel.verbose=Verbose
 t-beam.menu.DebugLevel.verbose.build.code_debug=5
 
+t-beam.menu.EraseFlash.none=Disabled
+t-beam.menu.EraseFlash.none.upload.erase_cmd=
+t-beam.menu.EraseFlash.all=Enabled
+t-beam.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 d-duino-32.name=D-duino-32
@@ -11798,6 +12318,11 @@ d-duino-32.menu.DebugLevel.debug.build.code_debug=4
 d-duino-32.menu.DebugLevel.verbose=Verbose
 d-duino-32.menu.DebugLevel.verbose.build.code_debug=5
 
+d-duino-32.menu.EraseFlash.none=Disabled
+d-duino-32.menu.EraseFlash.none.upload.erase_cmd=
+d-duino-32.menu.EraseFlash.all=Enabled
+d-duino-32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 lopy.name=LoPy
@@ -11864,6 +12389,11 @@ lopy.menu.DebugLevel.debug.build.code_debug=4
 lopy.menu.DebugLevel.verbose=Verbose
 lopy.menu.DebugLevel.verbose.build.code_debug=5
 
+lopy.menu.EraseFlash.none=Disabled
+lopy.menu.EraseFlash.none.upload.erase_cmd=
+lopy.menu.EraseFlash.all=Enabled
+lopy.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 lopy4.name=LoPy4
@@ -11937,6 +12467,11 @@ lopy4.menu.DebugLevel.debug.build.code_debug=4
 lopy4.menu.DebugLevel.verbose=Verbose
 lopy4.menu.DebugLevel.verbose.build.code_debug=5
 
+lopy4.menu.EraseFlash.none=Disabled
+lopy4.menu.EraseFlash.none.upload.erase_cmd=
+lopy4.menu.EraseFlash.all=Enabled
+lopy4.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 oroca_edubot.name=OROCA EduBot
@@ -12011,6 +12546,11 @@ oroca_edubot.menu.DebugLevel.debug.build.code_debug=4
 oroca_edubot.menu.DebugLevel.verbose=Verbose
 oroca_edubot.menu.DebugLevel.verbose.build.code_debug=5
 
+oroca_edubot.menu.EraseFlash.none=Disabled
+oroca_edubot.menu.EraseFlash.none.upload.erase_cmd=
+oroca_edubot.menu.EraseFlash.all=Enabled
+oroca_edubot.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 fm-devkit.name=ESP32 FM DevKit
@@ -12068,6 +12608,11 @@ fm-devkit.menu.DebugLevel.debug.build.code_debug=4
 fm-devkit.menu.DebugLevel.verbose=Verbose
 fm-devkit.menu.DebugLevel.verbose.build.code_debug=5
 
+fm-devkit.menu.EraseFlash.none=Disabled
+fm-devkit.menu.EraseFlash.none.upload.erase_cmd=
+fm-devkit.menu.EraseFlash.all=Enabled
+fm-devkit.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 frogboard.name=Frog Board ESP32
@@ -12170,6 +12715,11 @@ frogboard.menu.DebugLevel.debug.build.code_debug=4
 frogboard.menu.DebugLevel.verbose=Verbose
 frogboard.menu.DebugLevel.verbose.build.code_debug=5
 
+frogboard.menu.EraseFlash.none=Disabled
+frogboard.menu.EraseFlash.none.upload.erase_cmd=
+frogboard.menu.EraseFlash.all=Enabled
+frogboard.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32cam.name=AI Thinker ESP32-CAM
@@ -12276,6 +12826,11 @@ esp32cam.menu.DebugLevel.debug.build.code_debug=4
 esp32cam.menu.DebugLevel.verbose=Verbose
 esp32cam.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32cam.menu.EraseFlash.none=Disabled
+esp32cam.menu.EraseFlash.none.upload.erase_cmd=
+esp32cam.menu.EraseFlash.all=Enabled
+esp32cam.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 twatch.name=TTGO T-Watch
@@ -12367,6 +12922,11 @@ twatch.menu.DebugLevel.debug.build.code_debug=4
 twatch.menu.DebugLevel.verbose=Verbose
 twatch.menu.DebugLevel.verbose.build.code_debug=5
 
+twatch.menu.EraseFlash.none=Disabled
+twatch.menu.EraseFlash.none.upload.erase_cmd=
+twatch.menu.EraseFlash.all=Enabled
+twatch.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 d1_mini32.name=WEMOS D1 MINI ESP32
@@ -12460,6 +13020,11 @@ d1_mini32.menu.DebugLevel.debug.build.code_debug=4
 d1_mini32.menu.DebugLevel.verbose=Verbose
 d1_mini32.menu.DebugLevel.verbose.build.code_debug=5
 
+d1_mini32.menu.EraseFlash.none=Disabled
+d1_mini32.menu.EraseFlash.none.upload.erase_cmd=
+d1_mini32.menu.EraseFlash.all=Enabled
+d1_mini32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 d1_uno32.name=WEMOS D1 R32
@@ -12553,6 +13118,11 @@ d1_uno32.menu.DebugLevel.debug.build.code_debug=4
 d1_uno32.menu.DebugLevel.verbose=Verbose
 d1_uno32.menu.DebugLevel.verbose.build.code_debug=5
 
+d1_uno32.menu.EraseFlash.none=Disabled
+d1_uno32.menu.EraseFlash.none.upload.erase_cmd=
+d1_uno32.menu.EraseFlash.all=Enabled
+d1_uno32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 gpy.name=Pycom GPy
@@ -12619,6 +13189,11 @@ gpy.menu.DebugLevel.debug.build.code_debug=4
 gpy.menu.DebugLevel.verbose=Verbose
 gpy.menu.DebugLevel.verbose.build.code_debug=5
 
+gpy.menu.EraseFlash.none=Disabled
+gpy.menu.EraseFlash.none.upload.erase_cmd=
+gpy.menu.EraseFlash.all=Enabled
+gpy.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 vintlabs-devkit-v1.name=VintLabs ESP32 Devkit
@@ -12731,6 +13306,11 @@ vintlabs-devkit-v1.menu.DebugLevel.info.build.code_debug=3
 vintlabs-devkit-v1.menu.DebugLevel.debug=Debug
 vintlabs-devkit-v1.menu.DebugLevel.debug.build.code_debug=4
 
+vintlabs-devkit-v1.menu.EraseFlash.none=Disabled
+vintlabs-devkit-v1.menu.EraseFlash.none.upload.erase_cmd=
+vintlabs-devkit-v1.menu.EraseFlash.all=Enabled
+vintlabs-devkit-v1.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 honeylemon.name=HONEYLemon
@@ -12798,6 +13378,11 @@ honeylemon.menu.DebugLevel.debug.build.code_debug=4
 honeylemon.menu.DebugLevel.verbose=Verbose
 honeylemon.menu.DebugLevel.verbose.build.code_debug=5
 
+honeylemon.menu.EraseFlash.none=Disabled
+honeylemon.menu.EraseFlash.none.upload.erase_cmd=
+honeylemon.menu.EraseFlash.all=Enabled
+honeylemon.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 mgbot-iotik32a.name=MGBOT IOTIK 32A
@@ -12948,6 +13533,11 @@ mgbot-iotik32a.menu.DebugLevel.debug.build.code_debug=4
 mgbot-iotik32a.menu.DebugLevel.verbose=Verbose
 mgbot-iotik32a.menu.DebugLevel.verbose.build.code_debug=5
 
+mgbot-iotik32a.menu.EraseFlash.none=Disabled
+mgbot-iotik32a.menu.EraseFlash.none.upload.erase_cmd=
+mgbot-iotik32a.menu.EraseFlash.all=Enabled
+mgbot-iotik32a.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 mgbot-iotik32b.name=MGBOT IOTIK 32B
@@ -13098,6 +13688,11 @@ mgbot-iotik32b.menu.DebugLevel.debug.build.code_debug=4
 mgbot-iotik32b.menu.DebugLevel.verbose=Verbose
 mgbot-iotik32b.menu.DebugLevel.verbose.build.code_debug=5
 
+mgbot-iotik32b.menu.EraseFlash.none=Disabled
+mgbot-iotik32b.menu.EraseFlash.none.upload.erase_cmd=
+mgbot-iotik32b.menu.EraseFlash.all=Enabled
+mgbot-iotik32b.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 piranha_esp-32.name=Piranha ESP-32
@@ -13174,6 +13769,11 @@ piranha_esp-32.menu.DebugLevel.debug.build.code_debug=4
 piranha_esp-32.menu.DebugLevel.verbose=Verbose
 piranha_esp-32.menu.DebugLevel.verbose.build.code_debug=5
 
+piranha_esp-32.menu.EraseFlash.none=Disabled
+piranha_esp-32.menu.EraseFlash.none.upload.erase_cmd=
+piranha_esp-32.menu.EraseFlash.all=Enabled
+piranha_esp-32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 metro_esp-32.name=Metro ESP-32
@@ -13250,6 +13850,11 @@ metro_esp-32.menu.DebugLevel.debug.build.code_debug=4
 metro_esp-32.menu.DebugLevel.verbose=Verbose
 metro_esp-32.menu.DebugLevel.verbose.build.code_debug=5
 
+metro_esp-32.menu.EraseFlash.none=Disabled
+metro_esp-32.menu.EraseFlash.none.upload.erase_cmd=
+metro_esp-32.menu.EraseFlash.all=Enabled
+metro_esp-32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 sensesiot_weizen.name=Senses's WEIZEN
@@ -13317,6 +13922,11 @@ sensesiot_weizen.menu.DebugLevel.debug.build.code_debug=4
 sensesiot_weizen.menu.DebugLevel.verbose=Verbose
 sensesiot_weizen.menu.DebugLevel.verbose.build.code_debug=5
 
+sensesiot_weizen.menu.EraseFlash.none=Disabled
+sensesiot_weizen.menu.EraseFlash.none.upload.erase_cmd=
+sensesiot_weizen.menu.EraseFlash.all=Enabled
+sensesiot_weizen.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 kits-edu.name=KITS ESP32 EDU
@@ -13390,6 +14000,11 @@ kits-edu.menu.DebugLevel.debug.build.code_debug=4
 kits-edu.menu.DebugLevel.verbose=Verbose
 kits-edu.menu.DebugLevel.verbose.build.code_debug=5
 
+kits-edu.menu.EraseFlash.none=Disabled
+kits-edu.menu.EraseFlash.none.upload.erase_cmd=
+kits-edu.menu.EraseFlash.all=Enabled
+kits-edu.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 mPython.name=Labplus mPython
@@ -13510,6 +14125,11 @@ mPython.menu.DebugLevel.debug.build.code_debug=4
 mPython.menu.DebugLevel.verbose=Verbose
 mPython.menu.DebugLevel.verbose.build.code_debug=5
 
+mPython.menu.EraseFlash.none=Disabled
+mPython.menu.EraseFlash.none.upload.erase_cmd=
+mPython.menu.EraseFlash.all=Enabled
+mPython.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 OpenKB.name=INEX OpenKB
@@ -13578,6 +14198,11 @@ OpenKB.menu.DebugLevel.debug.build.code_debug=4
 OpenKB.menu.DebugLevel.verbose=Verbose
 OpenKB.menu.DebugLevel.verbose.build.code_debug=5
 
+OpenKB.menu.EraseFlash.none=Disabled
+OpenKB.menu.EraseFlash.none.upload.erase_cmd=
+OpenKB.menu.EraseFlash.all=Enabled
+OpenKB.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 wifiduino32.name=WiFiduino32
@@ -13655,6 +14280,11 @@ wifiduino32.menu.DebugLevel.debug.build.code_debug=4
 wifiduino32.menu.DebugLevel.verbose=Verbose
 wifiduino32.menu.DebugLevel.verbose.build.code_debug=5
 
+wifiduino32.menu.EraseFlash.none=Disabled
+wifiduino32.menu.EraseFlash.none.upload.erase_cmd=
+wifiduino32.menu.EraseFlash.all=Enabled
+wifiduino32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 imbrios-logsens-v1p1.name=IMBRIOS LOGSENS_V1P1
@@ -13749,6 +14379,11 @@ imbrios-logsens-v1p1.menu.DebugLevel.debug.build.code_debug=4
 imbrios-logsens-v1p1.menu.DebugLevel.verbose=Verbose
 imbrios-logsens-v1p1.menu.DebugLevel.verbose.build.code_debug=5
 
+imbrios-logsens-v1p1.menu.EraseFlash.none=Disabled
+imbrios-logsens-v1p1.menu.EraseFlash.none.upload.erase_cmd=
+imbrios-logsens-v1p1.menu.EraseFlash.all=Enabled
+imbrios-logsens-v1p1.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 healthypi4.name=ProtoCentral HealthyPi 4
@@ -13826,6 +14461,11 @@ healthypi4.menu.DebugLevel.debug.build.code_debug=4
 healthypi4.menu.DebugLevel.verbose=Verbose
 healthypi4.menu.DebugLevel.verbose.build.code_debug=5
 
+healthypi4.menu.EraseFlash.none=Disabled
+healthypi4.menu.EraseFlash.none.upload.erase_cmd=
+healthypi4.menu.EraseFlash.all=Enabled
+healthypi4.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 ET-Board.name=ET-Board
@@ -13902,6 +14542,11 @@ ET-Board.menu.DebugLevel.debug.build.code_debug=4
 ET-Board.menu.DebugLevel.verbose=Verbose
 ET-Board.menu.DebugLevel.verbose.build.code_debug=5
 
+ET-Board.menu.EraseFlash.none=Disabled
+ET-Board.menu.EraseFlash.none.upload.erase_cmd=
+ET-Board.menu.EraseFlash.all=Enabled
+ET-Board.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 ch_denky.name=Denky
@@ -13988,6 +14633,11 @@ ch_denky.menu.DebugLevel.debug.build.code_debug=4
 ch_denky.menu.DebugLevel.verbose=Verbose
 ch_denky.menu.DebugLevel.verbose.build.code_debug=5
 
+ch_denky.menu.EraseFlash.none=Disabled
+ch_denky.menu.EraseFlash.none.upload.erase_cmd=
+ch_denky.menu.EraseFlash.all=Enabled
+ch_denky.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 uPesy_wrover.name=uPesy ESP32 Wrover DevKit
@@ -14100,6 +14750,11 @@ uPesy_wrover.menu.DebugLevel.debug.build.code_debug=4
 uPesy_wrover.menu.DebugLevel.verbose=Verbose
 uPesy_wrover.menu.DebugLevel.verbose.build.code_debug=5
 
+uPesy_wrover.menu.EraseFlash.none=Disabled
+uPesy_wrover.menu.EraseFlash.none.upload.erase_cmd=
+uPesy_wrover.menu.EraseFlash.all=Enabled
+uPesy_wrover.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 uPesy_wroom.name=uPesy ESP32 Wroom DevKit
@@ -14205,6 +14860,11 @@ uPesy_wroom.menu.DebugLevel.debug.build.code_debug=4
 uPesy_wroom.menu.DebugLevel.verbose=Verbose
 uPesy_wroom.menu.DebugLevel.verbose.build.code_debug=5
 
+uPesy_wroom.menu.EraseFlash.none=Disabled
+uPesy_wroom.menu.EraseFlash.none.upload.erase_cmd=
+uPesy_wroom.menu.EraseFlash.all=Enabled
+uPesy_wroom.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 kb32.name=KB32-FT
@@ -14370,6 +15030,11 @@ kb32.menu.DebugLevel.debug.build.code_debug=4
 kb32.menu.DebugLevel.verbose=Verbose
 kb32.menu.DebugLevel.verbose.build.code_debug=5
 
+kb32.menu.EraseFlash.none=Disabled
+kb32.menu.EraseFlash.none.upload.erase_cmd=
+kb32.menu.EraseFlash.all=Enabled
+kb32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 deneyapkart.name=Deneyap Kart
@@ -14500,6 +15165,11 @@ deneyapkart.menu.DebugLevel.debug.build.code_debug=4
 deneyapkart.menu.DebugLevel.verbose=Verbose
 deneyapkart.menu.DebugLevel.verbose.build.code_debug=5
 
+deneyapkart.menu.EraseFlash.none=Disabled
+deneyapkart.menu.EraseFlash.none.upload.erase_cmd=
+deneyapkart.menu.EraseFlash.all=Enabled
+deneyapkart.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32-trueverit-iot-driver.name=Trueverit ESP32 Universal IoT Driver
@@ -14563,6 +15233,11 @@ esp32-trueverit-iot-driver.menu.DebugLevel.debug.build.code_debug=4
 esp32-trueverit-iot-driver.menu.DebugLevel.verbose=Verbose
 esp32-trueverit-iot-driver.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32-trueverit-iot-driver.menu.EraseFlash.none=Disabled
+esp32-trueverit-iot-driver.menu.EraseFlash.none.upload.erase_cmd=
+esp32-trueverit-iot-driver.menu.EraseFlash.all=Enabled
+esp32-trueverit-iot-driver.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 esp32-trueverit-iot-driver-mkii.name=Trueverit ESP32 Universal IoT Driver MK II
@@ -14626,6 +15301,11 @@ esp32-trueverit-iot-driver-mkii.menu.DebugLevel.debug.build.code_debug=4
 esp32-trueverit-iot-driver-mkii.menu.DebugLevel.verbose=Verbose
 esp32-trueverit-iot-driver-mkii.menu.DebugLevel.verbose.build.code_debug=5
 
+esp32-trueverit-iot-driver-mkii.menu.EraseFlash.none=Disabled
+esp32-trueverit-iot-driver-mkii.menu.EraseFlash.none.upload.erase_cmd=
+esp32-trueverit-iot-driver-mkii.menu.EraseFlash.all=Enabled
+esp32-trueverit-iot-driver-mkii.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 atmegazero_esp32s2.name=ATMegaZero ESP32-S2
@@ -14798,6 +15478,11 @@ atmegazero_esp32s2.menu.DebugLevel.debug.build.code_debug=4
 atmegazero_esp32s2.menu.DebugLevel.verbose=Verbose
 atmegazero_esp32s2.menu.DebugLevel.verbose.build.code_debug=5
 
+atmegazero_esp32s2.menu.EraseFlash.none=Disabled
+atmegazero_esp32s2.menu.EraseFlash.none.upload.erase_cmd=
+atmegazero_esp32s2.menu.EraseFlash.all=Enabled
+atmegazero_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 deneyapmini.name=Deneyap Mini
@@ -14972,6 +15657,11 @@ deneyapmini.menu.DebugLevel.debug.build.code_debug=4
 deneyapmini.menu.DebugLevel.verbose=Verbose
 deneyapmini.menu.DebugLevel.verbose.build.code_debug=5
 
+deneyapmini.menu.EraseFlash.none=Disabled
+deneyapmini.menu.EraseFlash.none.upload.erase_cmd=
+deneyapmini.menu.EraseFlash.all=Enabled
+deneyapmini.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 franzininho_wifi_esp32s2.name=Franzininho WiFi
@@ -15075,6 +15765,11 @@ franzininho_wifi_esp32s2.menu.DebugLevel.debug.build.code_debug=4
 franzininho_wifi_esp32s2.menu.DebugLevel.verbose=Verbose
 franzininho_wifi_esp32s2.menu.DebugLevel.verbose.build.code_debug=5
 
+franzininho_wifi_esp32s2.menu.EraseFlash.none=Disabled
+franzininho_wifi_esp32s2.menu.EraseFlash.none.upload.erase_cmd=
+franzininho_wifi_esp32s2.menu.EraseFlash.all=Enabled
+franzininho_wifi_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 franzininho_wifi_msc_esp32s2.name=Franzininho WiFi MSC
@@ -15178,6 +15873,11 @@ franzininho_wifi_msc_esp32s2.menu.DebugLevel.debug.build.code_debug=4
 franzininho_wifi_msc_esp32s2.menu.DebugLevel.verbose=Verbose
 franzininho_wifi_msc_esp32s2.menu.DebugLevel.verbose.build.code_debug=5
 
+franzininho_wifi_msc_esp32s2.menu.EraseFlash.none=Disabled
+franzininho_wifi_msc_esp32s2.menu.EraseFlash.none.upload.erase_cmd=
+franzininho_wifi_msc_esp32s2.menu.EraseFlash.all=Enabled
+franzininho_wifi_msc_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 dpu_esp32.name=DPU ESP32
@@ -15293,6 +15993,11 @@ dpu_esp32.menu.DebugLevel.debug.build.code_debug=4
 dpu_esp32.menu.DebugLevel.verbose=Verbose
 dpu_esp32.menu.DebugLevel.verbose.build.code_debug=5
 
+dpu_esp32.menu.EraseFlash.none=Disabled
+dpu_esp32.menu.EraseFlash.none.upload.erase_cmd=
+dpu_esp32.menu.EraseFlash.all=Enabled
+dpu_esp32.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 sonoff_dualr3.name=Sonoff DUALR3
@@ -15400,6 +16105,11 @@ sonoff_dualr3.menu.DebugLevel.debug.build.code_debug=4
 sonoff_dualr3.menu.DebugLevel.verbose=Verbose
 sonoff_dualr3.menu.DebugLevel.verbose.build.code_debug=5
 
+sonoff_dualr3.menu.EraseFlash.none=Disabled
+sonoff_dualr3.menu.EraseFlash.none.upload.erase_cmd=
+sonoff_dualr3.menu.EraseFlash.all=Enabled
+sonoff_dualr3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 lionbit.name=Lion:Bit Dev Board
 
@@ -15551,6 +16261,11 @@ lionbit.menu.DebugLevel.debug.build.code_debug=4
 lionbit.menu.DebugLevel.verbose=Verbose
 lionbit.menu.DebugLevel.verbose.build.code_debug=5
 
+lionbit.menu.EraseFlash.none=Disabled
+lionbit.menu.EraseFlash.none.upload.erase_cmd=
+lionbit.menu.EraseFlash.all=Enabled
+lionbit.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 watchy.name=Watchy
@@ -15628,6 +16343,11 @@ watchy.menu.DebugLevel.debug.build.code_debug=4
 watchy.menu.DebugLevel.verbose=Verbose
 watchy.menu.DebugLevel.verbose.build.code_debug=5
 
+watchy.menu.EraseFlash.none=Disabled
+watchy.menu.EraseFlash.none.upload.erase_cmd=
+watchy.menu.EraseFlash.all=Enabled
+watchy.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 deneyapkart1A.name=Deneyap Kart 1A
@@ -15761,6 +16481,11 @@ deneyapkart1A.menu.DebugLevel.debug.build.code_debug=4
 deneyapkart1A.menu.DebugLevel.verbose=Verbose
 deneyapkart1A.menu.DebugLevel.verbose.build.code_debug=5
 
+deneyapkart1A.menu.EraseFlash.none=Disabled
+deneyapkart1A.menu.EraseFlash.none.upload.erase_cmd=
+deneyapkart1A.menu.EraseFlash.all=Enabled
+deneyapkart1A.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 AirM2M_CORE_ESP32C3.name=AirM2M_CORE_ESP32C3
@@ -16012,6 +16737,11 @@ XIAO_ESP32C3.menu.DebugLevel.debug.build.code_debug=4
 XIAO_ESP32C3.menu.DebugLevel.verbose=Verbose
 XIAO_ESP32C3.menu.DebugLevel.verbose.build.code_debug=5
 
+XIAO_ESP32C3.menu.EraseFlash.none=Disabled
+XIAO_ESP32C3.menu.EraseFlash.none.upload.erase_cmd=
+XIAO_ESP32C3.menu.EraseFlash.all=Enabled
+XIAO_ESP32C3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 connaxio_espoir.name=Connaxio's Espoir
@@ -16125,6 +16855,11 @@ connaxio_espoir.menu.DebugLevel.debug.build.code_debug=4
 connaxio_espoir.menu.DebugLevel.verbose=Verbose
 connaxio_espoir.menu.DebugLevel.verbose.build.code_debug=5
 
+connaxio_espoir.menu.EraseFlash.none=Disabled
+connaxio_espoir.menu.EraseFlash.none.upload.erase_cmd=
+connaxio_espoir.menu.EraseFlash.all=Enabled
+connaxio_espoir.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 aw2eth.name=CNRS AW2ETH
@@ -16197,6 +16932,11 @@ aw2eth.menu.DebugLevel.debug.build.code_debug=4
 aw2eth.menu.DebugLevel.verbose=Verbose
 aw2eth.menu.DebugLevel.verbose.build.code_debug=5
 
+aw2eth.menu.EraseFlash.none=Disabled
+aw2eth.menu.EraseFlash.none.upload.erase_cmd=
+aw2eth.menu.EraseFlash.all=Enabled
+aw2eth.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 department_of_alchemy_minimain_esp32s2.name=Deparment of Alchemy MiniMain ESP32-S2
@@ -16366,6 +17106,11 @@ department_of_alchemy_minimain_esp32s2.menu.DebugLevel.debug.build.code_debug=4
 department_of_alchemy_minimain_esp32s2.menu.DebugLevel.verbose=Verbose
 department_of_alchemy_minimain_esp32s2.menu.DebugLevel.verbose.build.code_debug=5
 
+department_of_alchemy_minimain_esp32s2.menu.EraseFlash.none=Disabled
+department_of_alchemy_minimain_esp32s2.menu.EraseFlash.none.upload.erase_cmd=
+department_of_alchemy_minimain_esp32s2.menu.EraseFlash.all=Enabled
+department_of_alchemy_minimain_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 Bee_Motion_S3.name=Bee Motion S3
@@ -16470,6 +17215,11 @@ Bee_Motion_S3.menu.DebugLevel.debug.build.code_debug=4
 Bee_Motion_S3.menu.DebugLevel.verbose=Verbose
 Bee_Motion_S3.menu.DebugLevel.verbose.build.code_debug=5
 
+Bee_Motion_S3.menu.EraseFlash.none=Disabled
+Bee_Motion_S3.menu.EraseFlash.none.upload.erase_cmd=
+Bee_Motion_S3.menu.EraseFlash.all=Enabled
+Bee_Motion_S3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ########################################################################
 
 Bee_Motion.name=Bee Motion
@@ -16570,6 +17320,11 @@ Bee_Motion.menu.DebugLevel.debug.build.code_debug=4
 Bee_Motion.menu.DebugLevel.verbose=Verbose
 Bee_Motion.menu.DebugLevel.verbose.build.code_debug=5
 
+Bee_Motion.menu.EraseFlash.none=Disabled
+Bee_Motion.menu.EraseFlash.none.upload.erase_cmd=
+Bee_Motion.menu.EraseFlash.all=Enabled
+Bee_Motion.menu.EraseFlash.all.upload.erase_cmd=-e
+
 #####################################################################
 
 Bee_Motion_Mini.name=Bee Motion Mini
@@ -16677,6 +17432,11 @@ Bee_Motion_Mini.menu.DebugLevel.debug.build.code_debug=4
 Bee_Motion_Mini.menu.DebugLevel.verbose=Verbose
 Bee_Motion_Mini.menu.DebugLevel.verbose.build.code_debug=5
 
+Bee_Motion_Mini.menu.EraseFlash.none=Disabled
+Bee_Motion_Mini.menu.EraseFlash.none.upload.erase_cmd=
+Bee_Motion_Mini.menu.EraseFlash.all=Enabled
+Bee_Motion_Mini.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ###############################################################
 
 Bee_S3.name=Bee S3
@@ -16826,6 +17586,11 @@ Bee_S3.menu.DebugLevel.debug.build.code_debug=4
 Bee_S3.menu.DebugLevel.verbose=Verbose
 Bee_S3.menu.DebugLevel.verbose.build.code_debug=5
 
+Bee_S3.menu.EraseFlash.none=Disabled
+Bee_S3.menu.EraseFlash.none.upload.erase_cmd=
+Bee_S3.menu.EraseFlash.all=Enabled
+Bee_S3.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 unphone7.name=unPhone 7
@@ -16902,6 +17667,11 @@ unphone7.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA)
 unphone7.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs
 unphone7.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080
 
+unphone7.menu.EraseFlash.none=Disabled
+unphone7.menu.EraseFlash.none.upload.erase_cmd=
+unphone7.menu.EraseFlash.all=Enabled
+unphone7.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ##############################################################
 
 unphone8.name=unPhone 8
@@ -17202,4 +17972,9 @@ unphone9.menu.DebugLevel.debug.build.code_debug=4
 unphone9.menu.DebugLevel.verbose=Verbose
 unphone9.menu.DebugLevel.verbose.build.code_debug=5
 
+unphone9.menu.EraseFlash.none=Disabled
+unphone9.menu.EraseFlash.none.upload.erase_cmd=
+unphone9.menu.EraseFlash.all=Enabled
+unphone9.menu.EraseFlash.all.upload.erase_cmd=-e
+
 ###############################################################