Compare commits

8 Commits

Author SHA256 Message Date
49e0ead4c4 Accepting request 1288851 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1288851
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-esptool?expand=0&rev=14
2025-06-27 21:02:25 +00:00
8af9c65288 Accepting request 1288557 from home:glaubitz:branches:devel:languages:python
- Update to 4.9.0
  * ESP32-H21: Added full support
  * ESP32-H4: Added full support
  * ESP32-P4: Enabled USB-OTG in flasher stub
  * ESP32-P4: Added support for >16MB flash sizes in flasher stub
  * ESP32-S3: Added support for >16MB encrypted writes in flasher stub
  * chip_type_verification: Enabled in secure download mode,
    stopped using magic numbers
  * watchdog_reset: Added a new watchdog_reset option working even in USB modes
  * erase_region: Enabled erasing in ROM bootloader and secure download mode
  * Added information about the currently used USB mode during chip connection
  * image_info: Extended the app description info with new segments
  * esp_rfc2217: Improved the logger message format
  * Added the option to filter connections based on the serial number
  * hard_reset: Added support for custom hard reset sequence configuration
  * Added support for Python 3.13
  * espefuse: Added support for eFuses for ESP32-C5 ECO2
  * espefuse: Added support for eFuses for ESP32-C61 ECO3
  * espsecure: Improved error messages in encrypt_flash_data() and decrypt_flash_data()
  * espefuse: Added support for different eFuse table versions for ESP32-H2
  * espefuse: Added 3 bit for PSRAM_CAP efuse field
  * espefuse: Added API for getting block and wafer versions
  * espefuse: Added ADC calibration data for ESP32-C61, ESP32-C5, and ESP32-P4
  * stub_flasher: Fixed failing ESP32-C5 ECO2 flash writes
  * stub_flasher: Fixed USB-Serial/JTAG mode on ESP32-C5 ECO2 and ESP32-C61 ECO3
  * write_flash: Detect more cases of unresponsive flash, fixed failing flash_size check
  * write_flash: Skipped flash_size checks if we can't read flash size
  * espefuse: Fixed output messages in set_flash_voltage
  * espefuse: Corrected JTAG_SEL_ENABLE to GPIO34 strapping pin on ESP32-P4
  * ESP32-C5: Fixed bootloader address

OBS-URL: https://build.opensuse.org/request/show/1288557
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-esptool?expand=0&rev=30
2025-06-27 14:20:17 +00:00
5b5cc8df6f Accepting request 1227783 from devel:languages:python
- update to 4.8.1:
  * Add esp32c2 eco4 rom magic value
  * Correctly exclude the unwanted sub/modules
  * Supports wafer efuse versions for esp32c61
  * add new command SFDP read
  * Add option to retry connection in a loop
  * Updates efuse table for esp32c5
  * Updates efuse table for esp32p4
  * Added stub flasher support
  * add autocompletions
  * allow picking UART by VID/PID/Name
  * Add USB-serial/JTAG stub support
  * Add UART stub support
  * Print key_purpose name for get_security_info cmd
  * Adds support extend efuse table by user CSV
    file* separated(default) and united(new)
  * Adds incompatible eFuse settings check for S3
  * Apply reconnections to the whole reset sequence,
    not line transitions
  * Automatically reconnect if port disconnects during reset
  * Add ECO1 magic number
  * Add support for secure boot v2 using
    ECDSA-P384 signatures
  * retry flashing if chip disconnects
  * Allow filtering efuses based on command line arguments
  * Enable context manager for esp instances
  * Added check for correctness of written data
  * Improves help for burn_efuse cmd
  * clear boot control register on hard reset
  * add spi-connection restriction to ROM class

OBS-URL: https://build.opensuse.org/request/show/1227783
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-esptool?expand=0&rev=13
2024-12-02 18:09:46 +00:00
9aad804fd0 - update to 4.8.1:
* Add esp32c2 eco4 rom magic value
  * Correctly exclude the unwanted sub/modules
  * Supports wafer efuse versions for esp32c61
  * add new command SFDP read
  * Add option to retry connection in a loop
  * Updates efuse table for esp32c5
  * Updates efuse table for esp32p4
  * Added stub flasher support
  * add autocompletions
  * allow picking UART by VID/PID/Name
  * Add USB-serial/JTAG stub support
  * Add UART stub support
  * Print key_purpose name for get_security_info cmd
  * Adds support extend efuse table by user CSV
    file* separated(default) and united(new)
  * Adds incompatible eFuse settings check for S3
  * Apply reconnections to the whole reset sequence,
    not line transitions
  * Automatically reconnect if port disconnects during reset
  * Add ECO1 magic number
  * Add support for secure boot v2 using
    ECDSA-P384 signatures
  * retry flashing if chip disconnects
  * Allow filtering efuses based on command line arguments
  * Enable context manager for esp instances
  * Added check for correctness of written data
  * Improves help for burn_efuse cmd
  * clear boot control register on hard reset
  * add spi-connection restriction to ROM class

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-esptool?expand=0&rev=28
2024-11-30 09:43:18 +00:00
31dff4e4e0 - switch to modern python on sle15
* 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

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-esptool?expand=0&rev=27
2024-08-14 15:14:50 +00:00
4a2e6bce18 Accepting request 1185698 from devel:languages:python
- Clean up SPEC file.
- update to 4.7.0:
  New Features
    * spi_connection: Support --spi-connection on all chips, allowing connection of an external flash
    * esp32-s3: Support >16MB quad flash chips
    * bin_images: add support for intel hex format images
    * merge_bin: add support for uf2 format
    * esptool: added esp32p4 target
    * esp32p4: Stub flasher support
    * espefuse: Support XTS_AES_256_KEY key_purpose for ESP32P4
    * xip_psram: support xip psram feature on esp32p4
    * 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
    * efuse: Update key purpose table and tests
    * efuse: ESP32P4 adds ecdsa_key support
    * espefuse: Add support for esp32p4 chip
    * 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
    * flasher_stub: fix usb-serial-jtag enabled non-related intr source, improved stability
    * esp32c2: Added get_flash_cap and get_flash_vendor
    * testloadram: Windows assertion error
    * fixed exit() to be used from the correct module
    * esp32c2: Recommend using higher baud rate if connection fails
    * test_esptool: Fixed connection issues 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
    * bin_image: Check only ELF sections when searching for .flash.appdesc
    * Fix redirection of STDOUT
    * autodetection: Remove the ESP32-S2 ROM class from get_security_info autodetection
    * elf2image: fix text/rodata mapping overlap issue on uni-idrom bus chips
    * expand file args: Correctly print the expanded command
    * esp32-c2: Enable flashing in secure download mode

OBS-URL: https://build.opensuse.org/request/show/1185698
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-esptool?expand=0&rev=12
2024-07-19 13:26:14 +00:00
eb13a80275 - Clean up SPEC file.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-esptool?expand=0&rev=25
2024-07-04 23:25:18 +00:00
825a1bfd39 Accepting request 1185436 from home:adrianSuSE:branches:devel:languages:python
- update to 4.7.0:
  New Features
    * spi_connection: Support --spi-connection on all chips, allowing connection of an external flash
    * esp32-s3: Support >16MB quad flash chips
    * bin_images: add support for intel hex format images
    * merge_bin: add support for uf2 format
    * esptool: added esp32p4 target
    * esp32p4: Stub flasher support
    * espefuse: Support XTS_AES_256_KEY key_purpose for ESP32P4
    * xip_psram: support xip psram feature on esp32p4
    * 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
    * efuse: Update key purpose table and tests
    * efuse: ESP32P4 adds ecdsa_key support
    * espefuse: Add support for esp32p4 chip
    * 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
    * flasher_stub: fix usb-serial-jtag enabled non-related intr source, improved stability
    * esp32c2: Added get_flash_cap and get_flash_vendor
    * testloadram: Windows assertion error

OBS-URL: https://build.opensuse.org/request/show/1185436
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-esptool?expand=0&rev=24
2024-07-04 23:13:40 +00:00
4 changed files with 197 additions and 20 deletions

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e8805a91410abe4aad4078c06eb71b9ee918044f2729e6a186d72ff7458a9d10
size 7003860

3
esptool-4.9.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:89587769bea01111dae512873b464dbf9d6796ce5d19e5acd015160b58da3316
size 5944315

View File

@@ -1,3 +1,168 @@
-------------------------------------------------------------------
Wed Jun 25 13:24:02 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 4.9.0
* ESP32-H21: Added full support
* ESP32-H4: Added full support
* ESP32-P4: Enabled USB-OTG in flasher stub
* ESP32-P4: Added support for >16MB flash sizes in flasher stub
* ESP32-S3: Added support for >16MB encrypted writes in flasher stub
* chip_type_verification: Enabled in secure download mode,
stopped using magic numbers
* watchdog_reset: Added a new watchdog_reset option working even in USB modes
* erase_region: Enabled erasing in ROM bootloader and secure download mode
* Added information about the currently used USB mode during chip connection
* image_info: Extended the app description info with new segments
* esp_rfc2217: Improved the logger message format
* Added the option to filter connections based on the serial number
* hard_reset: Added support for custom hard reset sequence configuration
* Added support for Python 3.13
* espefuse: Added support for eFuses for ESP32-C5 ECO2
* espefuse: Added support for eFuses for ESP32-C61 ECO3
* espsecure: Improved error messages in encrypt_flash_data() and decrypt_flash_data()
* espefuse: Added support for different eFuse table versions for ESP32-H2
* espefuse: Added 3 bit for PSRAM_CAP efuse field
* espefuse: Added API for getting block and wafer versions
* espefuse: Added ADC calibration data for ESP32-C61, ESP32-C5, and ESP32-P4
* stub_flasher: Fixed failing ESP32-C5 ECO2 flash writes
* stub_flasher: Fixed USB-Serial/JTAG mode on ESP32-C5 ECO2 and ESP32-C61 ECO3
* write_flash: Detect more cases of unresponsive flash, fixed failing flash_size check
* write_flash: Skipped flash_size checks if we can't read flash size
* espefuse: Fixed output messages in set_flash_voltage
* espefuse: Corrected JTAG_SEL_ENABLE to GPIO34 strapping pin on ESP32-P4
* ESP32-C5: Fixed bootloader address
* ESP32-H21: Fixed eFuse base address
* IntelHex: Do not use padding for merged IntelHex files
* elf2image: Fixed for RAM app when SHA256 offset is not specified
* elf2image: Fixed support for --flash-mmu-page-config for all chips
* elf2image: Try to correct MMU page size if not specified,
print correctly in error messages
* tests: Expect the correct module name for Python 3.14 argparse
* Fixed closing port when connection fails
* image_info: Hidden missing app info based on IDF version
* save_segment: Added segment length check, the same as the bootloader does
* image_info: Prevented reading app description in invalid cases
* esp_rfc2217: Fixed keyboard interrupt on Windows
* detect_chip: Fixed to select the correct loader before further
operations to avoid silent failures
* usb_resets: Fixed resetting in USB-OTG and USB-Serial/JTAG modes
-------------------------------------------------------------------
Sat Nov 30 09:40:57 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 4.8.1:
* Add esp32c2 eco4 rom magic value
* Correctly exclude the unwanted sub/modules
* Supports wafer efuse versions for esp32c61
* add new command SFDP read
* Add option to retry connection in a loop
* Updates efuse table for esp32c5
* Updates efuse table for esp32p4
* Added stub flasher support
* add autocompletions
* allow picking UART by VID/PID/Name
* Add USB-serial/JTAG stub support
* Add UART stub support
* Print key_purpose name for get_security_info cmd
* Adds support extend efuse table by user CSV
file* separated(default) and united(new)
* Adds incompatible eFuse settings check for S3
* Apply reconnections to the whole reset sequence,
not line transitions
* Automatically reconnect if port disconnects during reset
* Add ECO1 magic number
* Add support for secure boot v2 using
ECDSA-P384 signatures
* retry flashing if chip disconnects
* Allow filtering efuses based on command line arguments
* Enable context manager for esp instances
* Added check for correctness of written data
* Improves help for burn_efuse cmd
* clear boot control register on hard reset
* add spi-connection restriction to ROM class
* add UF2 IDs for ESP32-C5 and ESP32-C61
* Updates efuses for C5 and C61
* add c61 basic flash support (no_stub)
* skipped the stub check for esp32c5 mp
* base support of esp32c5 mp (no stub)
* Added warning when secure boot enabled
* Recalculated SHA digest for image binary
* print flash voltage in flash_id command
* Adds wafer and pkg versions
* Update adc_info commands for all chips
* Adds new efuses for esp32p4
* Allow the espefuse.py to work when coding
scheme == 3
* Add ROM bootloader flash error definitions
* Use ruff instead of flake8 and black both in pre-commit and
CI
* Enable USB-serial/JTAG in flasher stub
* Postpone some efuses to burn them at the very end
* add advisory port locking
* check_error --recover chip even if there are num_errors
* Adds new efuses for esp32c6 and esp32h2
* add target esp32c5 beta3
* Bug Fixes
-------------------------------------------------------------------
Wed Aug 14 15:14:39 UTC 2024 - Dirk Müller <dmueller@suse.com>
- switch to modern python on sle15
-------------------------------------------------------------------
Thu Jul 4 23:25:10 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
- Clean up SPEC file.
-------------------------------------------------------------------
Thu Jul 4 18:22:41 UTC 2024 - Adrian Schröter <adrian@suse.de>
- update to 4.7.0:
New Features
* spi_connection: Support --spi-connection on all chips, allowing connection of an external flash
* esp32-s3: Support >16MB quad flash chips
* bin_images: add support for intel hex format images
* merge_bin: add support for uf2 format
* esptool: added esp32p4 target
* esp32p4: Stub flasher support
* espefuse: Support XTS_AES_256_KEY key_purpose for ESP32P4
* xip_psram: support xip psram feature on esp32p4
* 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
* efuse: Update key purpose table and tests
* efuse: ESP32P4 adds ecdsa_key support
* espefuse: Add support for esp32p4 chip
* 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
* flasher_stub: fix usb-serial-jtag enabled non-related intr source, improved stability
* esp32c2: Added get_flash_cap and get_flash_vendor
* testloadram: Windows assertion error
* fixed exit() to be used from the correct module
* esp32c2: Recommend using higher baud rate if connection fails
* test_esptool: Fixed connection issues 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
* bin_image: Check only ELF sections when searching for .flash.appdesc
* Fix redirection of STDOUT
* autodetection: Remove the ESP32-S2 ROM class from get_security_info autodetection
* elf2image: fix text/rodata mapping overlap issue on uni-idrom bus chips
* expand file args: Correctly print the expanded command
* esp32-c2: Enable flashing in secure download mode
-------------------------------------------------------------------
Tue Jun 20 16:13:33 UTC 2023 - Dirk Müller <dmueller@suse.com>
@@ -58,7 +223,7 @@ Thu Apr 20 10:23:16 UTC 2023 - Torsten Gruner <simmphonie@opensuse.org>
- Added target tests for ESP32-H2.
- Reduced size of test images.
- Added a custom host_test marker for the test suite to allow running tests without real hardware (#838).
- version 4.5
* New Features
- Configuration file: Added the option to configure internal variables
@@ -98,7 +263,7 @@ Thu Apr 20 10:23:16 UTC 2023 - Torsten Gruner <simmphonie@opensuse.org>
and comply with the Black 23.1 style.
- Added target tests for all of the newly supported chips.
- Updated the toolchains for stub flasher builds.
-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.
@@ -326,8 +491,8 @@ Mon Mar 2 16:39:21 UTC 2020 - Marketa Calabkova <mcalabkova@suse.com>
- Update to 2.8
* 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
* 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.)
* few bugfixes

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-esptool
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,35 +16,44 @@
#
%{?sle15_python_module_pythons}
Name: python-esptool
Version: 4.6.2
Version: 4.9.0
Release: 0
Summary: A serial utility to communicate & flash code to Espressif ESP8266 & ESP32 chips
License: GPL-2.0-or-later
Group: Development/Languages/Python
URL: https://github.com/espressif/esptool
Source: https://github.com/espressif/esptool/archive/v%{version}.tar.gz#/esptool-%{version}.tar.gz
BuildRequires: %{python_module PyYAML}
BuildRequires: %{python_module base >= 3.7}
BuildRequires: %{python_module bitstring >= 3.1.6}
BuildRequires: %{python_module ecdsa >= 0.16.0}
BuildRequires: %{python_module pyaes}
BuildRequires: %{python_module intelhex}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pyelftools}
BuildRequires: %{python_module pyserial >= 3.0}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module reedsolo >= 1.5.3}
BuildRequires: %{python_module requests}
BuildRequires: %{python_module setuptools}
%if 0%{?python_version_nodots} < 37
BuildRequires: %{python_module cryptography}
%endif
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: openssl
BuildRequires: python-rpm-macros
Requires: python-PyYAML >= 5.1
Requires: python-bitstring >= 3.1.6
Requires: python-cryptography >= 2.1.4
Requires: python-ecdsa >= 0.16.0
Requires: python-pyaes
Requires: python-intelhex
Requires: python-pyserial >= 3.0
Requires: python-reedsolo >= 1.5.3
Requires(post): update-alternatives
Requires(postun):update-alternatives
Requires(postun): update-alternatives
BuildArch: noarch
%if 0%{?python_version_nodots} < 37
BuildRequires: %{python_module cryptography}
%endif
%python_subpackages
%description
@@ -54,23 +63,25 @@ Allows flashing firmware, reading back firmware, querying chip parameters, etc.
%prep
%setup -q -n esptool-%{version}
sed -i '/^#!/d' flasher_stub/*.py
%build
%python_build
%pyproject_wheel
%install
%python_install
%pyproject_install
%python_clone -a %{buildroot}%{_bindir}/espefuse.py
%python_clone -a %{buildroot}%{_bindir}/espsecure.py
%python_clone -a %{buildroot}%{_bindir}/esptool.py
%python_clone -a %{buildroot}%{_bindir}/esp_rfc2217_server.py
%python_expand rm -rf %{buildroot}%{$python_sitelib}/__pycache__/*.pyc
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
# there are more tests but upstream runs only those in .travis.yml
%pytest test/test_imagegen.py
%pytest test/test_espsecure.py
# requires python-pkcs11 which isn't packaged
rm -v test/test_espsecure.py test/test_espsecure_hsm.py
%pytest -m host_test
%post
%python_install_alternative espefuse.py
@@ -91,8 +102,9 @@ sed -i '/^#!/d' flasher_stub/*.py
%python_alternative %{_bindir}/espsecure.py
%python_alternative %{_bindir}/espefuse.py
%python_alternative %{_bindir}/esp_rfc2217_server.py
%{python_sitelib}/esptool-%{version}-*egg-info
%{python_sitelib}/esptool-%{version}.dist-info
%{python_sitelib}/esptool
%{python_sitelib}/esp_rfc2217_server
%{python_sitelib}/espsecure
%{python_sitelib}/espefuse