@@ -29,6 +29,7 @@ def __init__(
2929 port : Optional [str ] = None ,
3030 baud : int = EspSerial .DEFAULT_BAUDRATE ,
3131 skip_autoflash : bool = False ,
32+ erase_flash : bool = False ,
3233 port_app_cache : Dict [str , str ] = None ,
3334 confirm_target_elf_sha256 : bool = False ,
3435 erase_nvs : bool = False ,
@@ -45,7 +46,7 @@ def __init__(
4546 if target and self .app .target and self .app .target != target :
4647 raise ValueError (f'Targets do not match. App target: { self .app .target } , Cmd target: { target } .' )
4748
48- super ().__init__ (pexpect_proc , target or app .target , port , baud , skip_autoflash , ** kwargs )
49+ super ().__init__ (pexpect_proc , target or app .target , port , baud , skip_autoflash , erase_flash , ** kwargs )
4950
5051 def _post_init (self ):
5152 if self .esp .serial_port in self ._port_app_cache :
@@ -129,6 +130,9 @@ def __init__(self, attributes):
129130 if self .ESPTOOL_VERSION == EsptoolVersion .V4 :
130131 default_kwargs ['force' ] = False
131132
133+ if self .erase_flash :
134+ default_kwargs ['erase_all' ] = True
135+
132136 default_kwargs .update (self .app .flash_settings )
133137 default_kwargs .update (self .app .flash_args .get ('extra_esptool_args' , {}))
134138 args = FlashArgs (default_kwargs )
0 commit comments