diff --git a/esptool/targets/esp32s3.py b/esptool/targets/esp32s3.py index f3d814455..bdf5f9d13 100644 --- a/esptool/targets/esp32s3.py +++ b/esptool/targets/esp32s3.py @@ -342,6 +342,11 @@ def hard_reset(self): uses_usb_otg = self.uses_usb_otg() if uses_usb_otg: self._check_if_can_reset() + # github.com/espressif/arduino-esp32/issues/6762#issuecomment-1829942230 + # Clear "Force Download Boot" flag, otherwise we keep resetting to boot mode + self.write_reg( + self.RTC_CNTL_OPTION1_REG, 0, self.RTC_CNTL_FORCE_DOWNLOAD_BOOT_MASK + ) print("Hard resetting via RTS pin...") HardReset(self._port, uses_usb_otg)()