The NetBSD Project

CVS log for pkgsrc/comms/py-esptool/Makefile

[BACK] Up to [cvs.NetBSD.org] / pkgsrc / comms / py-esptool

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.16: download - view: text, markup, annotated - select for diffs
Sat Sep 21 13:19:49 2024 UTC (6 weeks ago) by gdt
Branches: MAIN
CVS tags: pkgsrc-2024Q3-base, pkgsrc-2024Q3, HEAD
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +2 -2 lines
comms/py-esptool: Update to 4.8.0

Upstream NEWS content:

    ESP32-C5: Added full support
    ESP32-C61: Added full support
    ESP32-P4: Enabled USB-Serial/JTAG in flasher stub
    ESP32-P4: Updated eFuse table
    ESP32-P4: Added ECO1 magic number
    ESP32-P4: Added external spi flash connection restriction checks
    ESP32-P4: Added wafer and pkg_version fields
    ESP32-C5-beta3: Added preview support
    ESP32-S3: Clear boot control register on hard reset to avoid going back to download mode
    Added a new read_flash_sfdp command to read the flash chip SFDP register
    Added serial port filtering and selection by VID/PID/Name
    Added advisory port locking
    Added new ROM bootloader flash error definitions
    Added an option to retry connecting to the chip in a loop
    Automatically reconnect if a serial port disconnects during reset
    write_flash: Retry flashing if the chip disconnects during writing data
    write_flash: Added image binary SHA digest recalculation if fields change
    flash_id: Print flash voltage
    get_security_info: Print key_purpose fields
    loader: Enabled usage of context managers for esp instances
    espefuse: Added support to extend eFuse table by user CSV file
    espefuse: Added eFuse dump formats: joint(default) and split(new)
    espefuse: Added incompatible eFuse settings check for ESP32-S3
    espefuse: Allow eFuse filtering based on command line arguments
    espefuse: Added a check for correctness of written data
    espefuse: Updated adc_info command for all chips
    espefuse: Enabled operation with coding scheme == 3
    espefuse: Updated eFuses of ESP32-C6 and ESP32-H2
    espefuse: Postpone burning of some eFuses to the very end
    espefuse: Improved help for burn_efuse cmd
    espefuse: check_error --recover chip even if there are errors
    espsecure: Added support for secure boot v2 using ECDSA-P384 signatures
    cli: Added support for autocompletions

Revision 1.15: download - view: text, markup, annotated - select for diffs
Tue Jan 30 23:47:13 2024 UTC (9 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2024Q2-base, pkgsrc-2024Q2, pkgsrc-2024Q1-base, pkgsrc-2024Q1
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +8 -5 lines
py-esptool: updated to 4.7.0

v4.7.0 (2023-12-13)

New Features

test_esptool: Added test for embedded and detected flash size match
spi_connection: Support --spi-connection on all chips
espefuse: Support XTS_AES_256_KEY key_purpose for ESP32P4
xip_psram: support xip psram feature on esp32p4
add support for intel hex format
esp32p4: Stub flasher support
elf2image: add ram-only-header argument
rfc2217_server: Add hard reset sequence
espefuse: Adds efuse ADC calibration data for ESP32H2
espefuse: Update the way to complete the operation
add support for get_security_info on esp32c3 ECO7
loader: Added hints for some serial port issues when rising port error
Add support for Python 3.12
esp32c3: Support ECO6 and ECO7 magic numbers
merge_bin: add support for uf2 format
esp32-s3: Support >16MB quad flash chips
efuse: Update key purpose table and tests
efuse: ESP32P4 adds ecdsa_key support
espefuse: Add support for esp32p4 chip
esptool: added target to esp32p4
espsecure: Allow prompting for HSM PIN in read_hsm_config
esptool: Add new packages for ESP32C3 and flash efuses
esptool: Add tests for get_chip_features
esptool: Add PICO package for ESP32S3 and flash/psram efuses
get_security_info: Improved the output format and added more details

Bug Fixes

esp32c2: Added get_flash_cap and get_flash_vendor
testloadram: Windows assertion error
fixed exit() to be used from right module
esp32c2: Recommend using higher baud rate if connection fails
test_esptool: Fixed connection issue on Windows
esptool: Rephrase the --ram-only-header command message
load_ram: check for overlaps in bss section
tests/intelhex: make sure file is closed on Windows
spi_connection: Unattach previously attached SPI flash
espefuse: Fix ECDSA_FORCE_USE_HARDWARE_K for ECDSA key (esp32h2)
loader: Could not open serial port message adjusted
flasher_stub: fix usb-serial-jtag enabled non-related intr source
bin_image: Check only ELF sections when searching for .flash.appdesc
danger-github: Fir Danger GitHub token permission
Fix redirection of STDOUT
autodetection: Remove the ESP32-S2 ROM class from get_security_info autodetection
assert in esp32 exclusive workaround
elf2image: fix text/rodata mapping overlap issue on uni-idrom bus chips
dangerGH: Update token permissions - allow Danger to add comments to PR
expand file args: Correctly print the expanded command
esp32-c2: Enable flashing in secure download mode

Code Refactoring

stub_flasher: Cleanup, make adding new targets easier

Revision 1.14: download - view: text, markup, annotated - select for diffs
Mon Dec 12 13:46:15 2022 UTC (22 months, 3 weeks ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2023Q4-base, pkgsrc-2023Q4, pkgsrc-2023Q3-base, pkgsrc-2023Q3, pkgsrc-2023Q2-base, pkgsrc-2023Q2, pkgsrc-2023Q1-base, pkgsrc-2023Q1, pkgsrc-2022Q4-base, pkgsrc-2022Q4
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +3 -3 lines
py-esptool: updated to 4.4

Version 4.4

New Features

flasher_stub: Increased read/write speeds over USB-JTAG/Serial or USB-OTG modes, making some operations nearly twice as fast.
Added detection for guru meditation errors induced by the flasher stub or ROM bootloader.
Added a readable error message for serial-related failures, giving more information about possible HW issues.
espsecure.py: Improved AES-XTS encryption speed.

Bug Fixes

ESP32-S3 v0.0: Fixed chip revision detection.
bitstring: Added a workaround for breaking changes of bitstring==4
get_default_connected_device: Fixed to close unused serial ports.
flash_freq: Fall back to a chip-specific default flash frequency when no flash_freq arg is specified.
ESP32-C6: Fixed chip type detection and SPI flash communication.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Fri Jul 8 13:24:51 2022 UTC (2 years, 3 months ago) by gdt
Branches: MAIN
CVS tags: pkgsrc-2022Q3-base, pkgsrc-2022Q3
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +4 -2 lines
comms/py-esptool: Update to 4.1

Mark as not for python 2.7.

Summary of upstream release notes, less bugfixes:

* Version 4.1

    ESP32-C2: Added flash encryption support
    elf2image: Added argument to disable appending SHA256 digests

* Version 4.0

Starting from v4.0.0, esptool adopts the semantic versioning
specification, please read the related "Versions" esptool
documentation page when deciding which version to use.

** Breaking changes

  Public API has been defined by limiting access to internals that
  have been refactored into multiple source files. Changing or
  refactoring these limited internals won't be considered a breaking
  change in future releases. Migration is easy and self-explanatory
  (you will get an import error if something has moved) and is
  required only in projects that import esptool directly.

  If active security features are detected, the default behavior
  changes to prevent unintentional bricking (#699):

    If flash encryption is enabled, erase_flash and erase_region
    cannot be executed.

    If secure boot is enabled, erase_flash, erase_region and
    write_flash operations cannot be performed (write_flash is just
    restricted to protect the bootloader region 0x0000->0x8000).

    An override flag --force lets the users execute these operations
    anyways.

  Flash parameters in an image header can now be changed only when no
  SHA256 digest is appended (espressif/esp-idf#8798).

  Python versions 2.7, 3.4, 3.5, and 3.6 have been deprecated, the
  code is now Python 3-only compatible. Releases v4 and later can't be
  installed from PyPI on these deprecated Python versions.

  The ESP8684 alias has been removed, ESP32-C2 has to be used.

  Megabit flash sizes have been deprecated, use megabyte units from
  now on.

** New Features

   Added stub flasher support for ESP32-C2 ECO1, deprecated ECO0 stub (can still be used with ROM).

   espefuse.py: Added a new package - ESP32-D0WDR2-V3

Revision 1.12: download - view: text, markup, annotated - select for diffs
Thu Apr 21 10:59:59 2022 UTC (2 years, 6 months ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2022Q2-base, pkgsrc-2022Q2
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +4 -2 lines
*: convert to versioned_dependencies for py-cryptography

Revision 1.11: download - view: text, markup, annotated - select for diffs
Wed Apr 20 12:22:11 2022 UTC (2 years, 6 months ago) by adam
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +2 -3 lines
py-esptool: updated to 3.3

Version 3.3

New Features

Added flash size options up to 128MB.
Added stub flasher support for ESP32-C2.
Added --flash-mmu-page-size option to change flash MMU page size on ESP32-C2.
Added address and dummy cycles configuration to SPI flash commands, allowed reading flash SFDP registers.
Added target-specific flash frequency options.

espsecure.py

Added support for ECDSA P192 and P256 signatures in Secure Boot V2.
Refined Secure Boot V2 ECC support.
Added support for XTS_AES_128 using 128 bit key FE scheme.

espefuse.py

Added execute_scripts nesting support, a script can now be called from another script.
Added ESP32-C2 espefuse.py support.
Fixed power-out time for VDDQ settings for ESP32-S3.
Removed dysfunctional JTAG_SEL_ENABLE on ESP32-C3.
Removed unused eFuse fields on ESP32-C3 and ESP32-H2.
Added execute_scripts error handling in script files.
Added support for running multiple commands at once.
Added checks for secure download mode.
Added a recovery option to fix eFuse blocks after encoding errors.

Internal features

These features are intended for use inside Espressif:

Preview support for ESP32-H2-beta2 has been added. This SoC is not generally available, so it is unsupported in this release. Official support will be added in a later esptool.py release.

Bug Fixes

Fixed autodetection on ESP32-S2 in USB-OTG mode.
Fixed flash.rodata not being recognized as part of IRAM in the ELF parser.
Fixed wrong UART_RXFIFO_CNT_M mask values in the stub flasher.
Added overerase detection and a fix sequence for certain XMC flash chips.
Allowed USB PID detection for USB-JTAG-Serial mode on lowercase port names.
Fixed chip autodetection to work in secure download mode.
Fixed wrong firmware image being returned for beta chips.
Fixed a wrong bootloader flashing offset on ESP32-S3.

Miscellaneous Changes

Launched a new self-hosted esptool.py documentation and heavily updated its contents.
Renamed the ESP8684 target to ESP32-C2 (added alias for compatibility).
Added a warning for flash sizes that are not supported by the stub flasher.

Revision 1.10: download - view: text, markup, annotated - select for diffs
Tue Jan 4 20:52:38 2022 UTC (2 years, 9 months ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2022Q1-base, pkgsrc-2022Q1
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +2 -1 lines
*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS

Revision 1.9: download - view: text, markup, annotated - select for diffs
Thu Dec 16 20:08:52 2021 UTC (2 years, 10 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2021Q4-base, pkgsrc-2021Q4
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +2 -3 lines
py-esptool: updated to 3.2

Version 3.2

New Features

Support for ESP32-S3 SoC has been added (removed ESP32-S3-beta3).
Added USB-JTAG-Serial and USB-CDC support for ESP32-S3.
Added a check to disable stub when connecting to an unsupported chip.
Added boot log detection and context of failures logging.
Improved error messages to cover more cases and provide more information.
Added get_security_info command stub support.
Augmented chip autodetection to work even in secure download mode. (ESP32-C3 and later only)
Added flash chip connection verification check.
Added ESP8266 version 3 image format support.
espsecure.py

Added option for 512bit keys for encrypt_flash_data.
espefuse.py

Added a new command which can execute custom python scripts to burn efuses all at once.
Added ESP32-S2 flash_ver, psram_ver, and pkg_ver efuses.
Corrected lenght of soft_dis_jtag efuse.
Added custom_mac eFuse field for ESP32-C3/-S2/-S3/-H2.
Added a check for read_protect_efuse.
Added support for 512bit XTS_AES flash encryption key.
Added a step to close the serial port after espefuse operations.
Added a security confirmation flag to espefuse tests.

Internal features

These features are intended for use inside Espressif:

Preview support for ESP32-H2 and ESP8684 has 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.
Added automatic delay for boot time after ESP32 reset in FPGA.

Bug Fixes

Fixed build from sources (require wheel only when installing from pip).
Fixed failing flashing process on some supported chips.
Fixed ESP32-C3 package detection.
Fixed test child processes being blocked waiting for the OS pipe buffer to accept more data.
Fixed MacOS USB PID detection on tty and cu ports.
Fixed erroneous comparison when handling deflated data.

Miscellaneous Changes

Changed unnecessarily alarming error to a warning.
Removed ESP32 rev0 connection workaround.
Added a readable error and a use example to merge_bin.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Tue Sep 21 23:26:02 2021 UTC (3 years, 1 month ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2021Q3-base, pkgsrc-2021Q3
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +2 -2 lines
py-esptool: fix DEPENDS line

Revision 1.7: download - view: text, markup, annotated - select for diffs
Tue Sep 21 17:26:09 2021 UTC (3 years, 1 month ago) by gdt
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +3 -1 lines
comms/py-esptool: Add BUILD-DEPENDS on py-wheel

By inspection, setup.py requires py-wheel at build time.

No PKGREVISION++ as either this built and is the same, or didn't use
to build.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Thu Sep 9 08:04:23 2021 UTC (3 years, 1 month ago) by adam
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +6 -4 lines
py-esptool: updated to 3.1

Version 3.1

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.
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
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
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.
Fixed errors when burning and read-protecting an efuse at the same time
Fixed burning of SPI pins configuration efuses

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
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.
Fixed SecureBoot v2 public key extraction

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()
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

Revision 1.5: download - view: text, markup, annotated - select for diffs
Tue Jul 21 08:14:06 2020 UTC (4 years, 3 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2021Q2-base, pkgsrc-2021Q2, pkgsrc-2021Q1-base, pkgsrc-2021Q1, pkgsrc-2020Q4-base, pkgsrc-2020Q4, pkgsrc-2020Q3-base, pkgsrc-2020Q3
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +10 -8 lines
py-esptool: updated to 2.8

Version 2.8

Features
esptool.py image_info now prints a summary of segment memory types (IRAM, DRAM, etc) based on the address range.
esptool.py write_flash will warn if it looks like a bootloader binary is built for ESP32-S2 or another newer chip (support for flashing ESP32-S2 will be added in a future version.)

Bug Fixes
Removed ESP8266 SDK & ESP-IDF dependencies when building the flasher stub binaries. Previously the SDKs were used to include some register address macros, only. This removes any uncertainty about whether the flasher stub binary is a derived work of either SDK. The flasher stub binary itself is the same as the binary in v2.7.
Fixed minor issues running esptool automated tests on macOS.
Minor flake8 fixes including compatibility with newer flake8 versions.

ESP32 Only

Features
Support detection of new ESP32 silicon revisions
New esptool.py elf2image --min-rev X option allows creating a .bin file which only supports a minimum ESP32 silicon revision.

Bugfixes
Fix burning custom MAC with espefuse.py when 3/4 Coding Scheme is set

Revision 1.4: download - view: text, markup, annotated - select for diffs
Tue Aug 13 16:44:27 2019 UTC (5 years, 2 months ago) by gdt
Branches: MAIN
CVS tags: pkgsrc-2020Q2-base, pkgsrc-2020Q2, pkgsrc-2020Q1-base, pkgsrc-2020Q1, pkgsrc-2019Q4-base, pkgsrc-2019Q4, pkgsrc-2019Q3-base, pkgsrc-2019Q3
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +4 -10 lines
comms/py-esptool: Pivot to PyPi

This avoids much pain with github's nonstandard naming conventions.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Tue Aug 13 12:03:55 2019 UTC (5 years, 2 months ago) by gdt
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +2 -2 lines
comms/py-esptool: Fix PKGREVISION handling

Revision 1.2: download - view: text, markup, annotated - select for diffs
Tue Aug 13 12:02:05 2019 UTC (5 years, 2 months ago) by gdt
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +5 -5 lines
comms/py-esptool: Add PYPKGPREFIX to PKGNAME

Revision 1.1: download - view: text, markup, annotated - select for diffs
Tue Aug 13 11:44:10 2019 UTC (5 years, 2 months ago) by gdt
Branches: MAIN
comms/py-esptool: Add version 2.7

This is a program to upload firmware images to ESP8266/ESP32 chips.

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>