Skip to content

Add better esptool support (ArduinoIDE 2.0.0) #6506

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Apr 4, 2022
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions boards.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,15 @@ esp32s3.name=ESP32S3 Dev Module
esp32s3.vid.0=0x303a
esp32s3.pid.0=0x1001

esp32s3.bootloader.tool=esptool_py
esp32s3.bootloader.tool.default=esptool_py
esp32s3.bootloader.file=bootloader_{build.boot}_{build.flash_freq}.bin

esp32s3.upload.tool=esptool_py
esp32s3.upload.tool.default=esptool_py
esp32s3.upload.tool.network=esptool_py
esp32s3.upload.protocol=esp32

esp32s3.upload.maximum_size=1310720
esp32s3.upload.maximum_data_size=327680
esp32s3.upload.flags=
Expand Down Expand Up @@ -63,13 +71,6 @@ esp32s3.build.flash_type=qspi
esp32s3.build.psram_type=qspi
esp32s3.build.memory_type={build.flash_type}_{build.psram_type}

#esp32s3.menu.MemoryType.default=QSPI Flash and PSRAM
#esp32s3.menu.MemoryType.default.build.memory_type=qspi_qspi
#esp32s3.menu.MemoryType.qspi_opi=QSPI Flash and OPI PSRAM
#esp32s3.menu.MemoryType.qspi_opi.build.memory_type=qspi_opi
#esp32s3.menu.MemoryType.opi_opi=OPI Flash and PSRAM
#esp32s3.menu.MemoryType.opi_opi.build.memory_type=opi_opi

esp32s3.menu.PSRAM.disabled=Disabled
esp32s3.menu.PSRAM.disabled.build.defines=
esp32s3.menu.PSRAM.disabled.build.psram_type=qspi
Expand Down
47 changes: 44 additions & 3 deletions platform.txt
Original file line number Diff line number Diff line change
Expand Up @@ -187,12 +187,53 @@ recipe.size.pattern="{compiler.path}{compiler.size.cmd}" -A "{build.path}/{build
recipe.size.regex=^(?:\.iram0\.text|\.iram0\.vectors|\.dram0\.data|\.flash\.text|\.flash\.rodata|)\s+([0-9]+).*
recipe.size.regex.data=^(?:\.dram0\.data|\.dram0\.bss|\.noinit)\s+([0-9]+).*

# ------------------------------

## Required discoveries and monitors
## ---------------------------------
pluggable_discovery.required.0=builtin:serial-discovery
pluggable_discovery.required.1=builtin:mdns-discovery
pluggable_monitor.required.serial=builtin:serial-monitor

## ------------------
## Upload/Debug tools
## ------------------

##
## ESPTool
##

## Upload Sketch
## -------------
tools.esptool_py.upload.protocol=esp32
tools.esptool_py.upload.params.verbose=
tools.esptool_py.upload.params.quiet=
tools.esptool_py.upload.pattern_args=--chip {build.mcu} --port "{serial.port}" --baud {upload.speed} {upload.flags} --before default_reset --after hard_reset write_flash -z --flash_mode {build.flash_mode} --flash_freq {build.flash_freq} --flash_size {build.flash_size} 0xe000 "{runtime.platform.path}/tools/partitions/boot_app0.bin" {build.bootloader_addr} "{build.path}/{build.project_name}.bootloader.bin" 0x10000 "{build.path}/{build.project_name}.bin" 0x8000 "{build.path}/{build.project_name}.partitions.bin" {upload.extra_flags}
tools.esptool_py.upload.pattern_args=--chip {build.mcu} --port "{serial.port}" --baud {upload.speed} {upload.flags} --before default_reset --after hard_reset write_flash -z --flash_mode {build.flash_mode} --flash_freq {build.flash_freq} --flash_size {build.flash_size} {build.bootloader_addr} "{build.path}/{build.project_name}.bootloader.bin" 0x8000 "{build.path}/{build.project_name}.partitions.bin" 0xe000 "{runtime.platform.path}/tools/partitions/boot_app0.bin" 0x10000 "{build.path}/{build.project_name}.bin"{upload.extra_flags}
tools.esptool_py.upload.pattern="{path}/{cmd}" {upload.pattern_args}
tools.esptool_py.upload.pattern.linux=python3 "{path}/{cmd}" {upload.pattern_args}

## Upload Sketch Through OTA
## -------------------------
tools.esptool_py.upload.network_pattern={network_cmd} -i "{serial.port}" -p "{network.port}" "--auth={network.password}" -f "{build.path}/{build.project_name}.bin"

## Program Application
## -------------------
tools.esptool_py.program.params.verbose=
tools.esptool_py.program.params.quiet=
tools.esptool_py.program.pattern_args=--chip {build.mcu} --port "{serial.port}" --baud {upload.speed} {upload.flags} --before default_reset --after hard_reset write_flash -z --flash_mode {build.flash_mode} --flash_freq {build.flash_freq} --flash_size {build.flash_size} 0x10000 "{build.path}/{build.project_name}.bin"
tools.esptool_py.program.pattern="{path}/{cmd}" {program.pattern_args}
tools.esptool_py.program.pattern.linux=python3 "{path}/{cmd}" {program.pattern_args}

## Erase Chip (before burning the bootloader)
## ------------------------------------------
tools.esptool_py.erase.params.verbose=
tools.esptool_py.erase.params.quiet=
tools.esptool_py.erase.pattern_args=--chip {build.mcu} --port "{serial.port}" --baud {upload.speed} {upload.flags} --before default_reset --after hard_reset erase_flash
tools.esptool_py.erase.pattern="{path}/{cmd}" {erase.pattern_args}
tools.esptool_py.erase.pattern.linux=python3 "{path}/{cmd}" {erase.pattern_args}

## Burn Bootloader
## ---------------
tools.esptool_py.bootloader.params.verbose=
tools.esptool_py.bootloader.params.quiet=
tools.esptool_py.bootloader.pattern_args=--chip {build.mcu} --port "{serial.port}" --baud {upload.speed} {upload.flags} --before default_reset --after hard_reset write_flash -z --flash_mode {build.flash_mode} --flash_freq {build.flash_freq} --flash_size {build.flash_size} {build.bootloader_addr} "{runtime.platform.path}/tools/sdk/{build.mcu}/bin/{bootloader.file}"
tools.esptool_py.bootloader.pattern="{path}/{cmd}" {bootloader.pattern_args}
tools.esptool_py.bootloader.pattern.linux=python3 "{path}/{cmd}" {bootloader.pattern_args}
7 changes: 7 additions & 0 deletions programmers.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
esptool.name=Esptool
esptool.communication=USB
esptool.protocol=esp32
esptool.program.tool=esptool_py
esptool.program.tool.default=esptool_py
esptool.program.extra_params=
esptool.extra_params=