Skip to content

ESP32-S2/S3 Upload Failure: Needs --after no_reset Option #2478

@DocKenny

Description

@DocKenny

Describe the problem

When uploading code to the ESP32-S2 or ESP32-S3 boards using the Arduino IDE, the process fails with a warning that the board cannot exit download mode over USB. This issue persists due to the lack of the --after no_reset option in the esptool command used by the IDE.

To reproduce

  1. Connect an ESP32-S2 or ESP32-S3 board to your computer via USB.
  2. Open the Arduino IDE and select the appropriate board under Tools > Board.
  3. Load any sample sketch and attempt to upload it to the board.
  4. Observe the error in the console output indicating that the board cannot exit download mode.

Expected behavior

The sketch should upload successfully without errors.

Arduino IDE version

2.3.3

Operating system

Windows

Operating system version

Windows 10

Additional context

This issue seems to be specific to boards like the ESP32-S2/S3 that use GPIO0 for download mode. A manual workaround is to add --after no_reset to the esptool command, but this requires user intervention and is not conducive to a smooth workflow. For more context and related discussions, please refer to this pull request on the esptool repository: esptool PR #997.

Issue checklist

  • I searched for previous reports in the issue tracker
  • I verified the problem still occurs when using the latest nightly build
  • My report contains all necessary details

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions