github espressif/esptool v3.1
Version 3.1

latest releases: v4.10.0, v5.1.0, v4.10.dev2...
4 years ago

New Features

  • Support for ESP32-C3 SoC has been added
  • Added --encrypt-files option to specify which files need encryption before flashing.
  • Added --use_segments option for elf2image to use segments instead of sections to generate the image. (#546)
  • Improved the write_flash timeout calculation and status message.
  • Support for detecting ESP8285 versions -N08, -N16, -H08, and -H16 has been added.
  • Added support for all write_reg command forms (including delay and mask parameters) to flasher stub.
  • Added merge_bin command to combine binary files on host (#254, #568)
  • Extended the --min-rev argument of elf2image to work on all chips apart from ESP8266.
  • Added diagnostic warnings about the memory regions needing to be erased during a flash write (#306)
  • Added --after no_reset_stub option to keep the flasher stub running and allow its repeated usage.
  • Added support for the USB-JTAG-Serial peripheral of ESP32-C3.

espsecure.py

  • Added custom command-line argument to allow calling from other Python scripts.
  • Added --aes-xts option to encrypt/decrypt flash data files with AES-XTS algorithm on the S2 and C3.
  • Fixed handling of files to forbid empty output and re-writing input.

espefuse.py

  • Added custom command-line argument to allow calling from other Python scripts.
  • Added security measures to prevent burning custom multicast MAC address. (#472)
  • Fixed errors when burning and read-protecting an efuse at the same time (#584)
  • Fixed burning of SPI pins configuration efuses (#216)

Internal features

These features are intended for use inside Espressif:

  • Support for ESP32-S3-beta3 & ESP32-C6-beta have been added. These SoCs are not generally available, so they are unsupported in this release. Official support will be added in a later esptool release.
  • Support for 32-bit addressing to enable 32/64MB flash memory chips on the S3.

Bug Fixes

  • Fixed error outputs when installing from pip.
  • Increased the timeout for writing to flash to improve stability (#577, #533)
  • Fixed failing dump_mem overall bytes read message.
  • Allowed the write_mem mask argument to be optional to match with its usage example on Wiki.
  • Ensured expand_file_arguments gets called when using custom command-line arguments. (#400)
  • Fixed SecureBoot v2 public key extraction (#623)

Miscellaneous Changes

  • Decomposed port detection logic.
  • Added flushing after each command before waiting for a reply.
  • Made it easier to use esptool.py as a component by permitting passing an already formed esp object to main() (#402)
  • Added function to merge adjacent sections in elf2image for the use case of linker scripts that have a large number of sections.
  • Decoupled esptool reset logic for easier monkey-patching (#508)

Thanks to @Skallwar, @eykamp, @gnought, @middelink and others for contributing to this release.

Don't miss a new esptool release

NewReleases is sending notifications on new releases.