Releases: esp-rs/espflash
Releases · esp-rs/espflash
v4.2.0
Added
- Add chip detection based on security info, where supported (#953)
- Support for decoding
esp-backtrace's RISC-V stack-dump output (#955)
Changed
- Move
SecurityInfoto theconnectionmodule from theflashermodule (#953)
Fixed
- Fix a crash with Connection module when connecting to a loopback serial port (#954)
v4.1.0
Added
Changed
- Rename
--check-app-descriptorto--ignore-app-descriptor(#833)
Fixed
- Fix a crash in monitor when espflash is connected via USB Serial/JTAG, and the user is typing into the monitor but the device is not reading serial input. (#943, #944, #945)
- Fix ESP32-S2 flash size detection issues (#950)
- Images are now automatically padded to 4 bytes before writing by the library (previously this was done in the CLI) (#951)
v4.0.1
v4.0.0
Added
- Add
non-interactiveflag toflashsubcommand (#737) - Add
no-resetflag tomonitorsubcommands (#737) - Add an environment variable to set monitoring baudrate (
MONITOR_BAUD) (#737) - Add list-ports command to list available serial ports. (#761)
- [cargo-espflash]: Add
write-binsubcommand (#789) - Add
--monitoroption towrite-bin. (#783) - Add
watchdog-resetstrategy to--aftersubcommand (#779) - Add
ROMversion ofread-flashcommand (#812) espflashcan detect the log format automatically from ESP-HAL metadata. Requiresesp-println0.14 (#809)- Add
--output-formatoption to monitor (#818) - Added chip detection based on security info, where supported (#814)
espflashcan detect the chip from ESP-HAL metadata to prevent flashing firmware built for a different device. Requiresesp-hal1.0.0-beta.0 (#816)espflashno longer allows flashing a too-big partition table (#830)- Allow specifying a partition label for
write-bin, add--partition-table. (#828) --mmu-page-sizeparameter forflashandsave-image(#835)- Run some arguments checks for monitoring flags. (#842)
- Add support for the ESP32-C5 (#863)
--afteroptions now work withespflash board-info,espflash read-flashandespflash checksum-md5(#867)- Add support for serial port configuration files. (#777, #883)
- Add a
check-app-descriptorbool option toImageArgsand add the flag toflashcommand (#872) Connection::into_serialto get the underlying port from the connection (#882)- All methods on the now removed
Target&ReadEFuse,UsbOtgandRtcWdtResettraits have been implemented directly on (#891) - Update checks can now be skipped by setting the
ESPFLASH_SKIP_UPDATE_CHECKenvironment variable (#900) flash_write_sizeandmax_ram_block_sizefunctions no longer take a connection parameter and return a Result type (#903)DefaultProgressCallbackwhich implementsProgressCallbacksbut all methods are no-ops (#904)ProgressCallbacksnow has averifyingmethod to notify when post-flash checksum checking has begun (#908)- Implement
From<Connection> for Portand bothFrom<Flasher> for ConnectionandPortconversions (#915)
Changed
- Split the baudrate for connecting and monitoring in
flashsubcommand (#737) - Normalized arguments of the CLI commands (#759)
board-infonow printsSecurity information. (#758)- The
command,elfanderrormodules are no longer public (#772) write-binnow works for files whose lengths are not divisible by 4 (#780, #788)get_usb_pidis nowusb_pidand no longer needlessly returns aResult(#795)CodeSegmentandRomSegmenthave been merged into a singleSegmentstruct (#796)IdfBootloaderFormathas had its constructor's parameters reduced/simplified (#798)- Update flash size when creating the app partition (#797)
--non-interactivemay now react to key events (user input, Ctrl-C, Ctrl-R) if possible (#819)- Removed
get_prefix from any functions which previously had it (#824) - Take elf data as bytes rather than
ElfFilestruct when creating an image format (#825) - Updated to Rust 2024 edition (#843)
- Complete rework of reading eFuse field values (#847, #903)
- Updated bootloaders with
release/v5.4ones from IDF (#857) - Refactor image formatting to allow supporting more image formats in a backward compatible way (#877)
- Avoid having ESP-IDF format assumptions in the codebase (#877)
Flashernow takes theConnectionin new, instead of constructing the connection insideFlasher::connect(#882, #885)detect_chiphas moved to theConnectionstruct (#882)Flasher::into_serialhas been replaced byFlasher::into_connection(#882)- Automatically migrate
espflash@3configuration files to the new format (#883) - Update dependencies to their latest versions (#893)
Chip::crystal_freqhas been renamed toChip::xtal_frequency(#891)Chip::chip_revisionhas been renamed toChip::revision(also applies tominorandmajor) (#891)- Any reference to
esp_idforEspIdfhas been cut to justidf(#891) - Renamed
targetsmodule totarget(#891) - Test data is now excluded from the crates.io release (#897)
- The command module, and
Commandrelated structs now exist in a top level module, instead of theconnectionmodule (#901) - API's that take
Option<&mut dyn ProgressCallbacks>now take&mut dyn ProgressCallbacksinstead (#904) ProgressCallbacks::finish()now has askipped: boolparameter to indicate if a segment was skipped (#904)- CLI usage now shows when a segment has been skipped due to already-matching checksum and when a segment is being verified (#908)
Fixed
- Update the app image SHA in the correct location for padded images (#715)
- Fix
-sargument collision (#731) addressandsizeinerase-regionhave to be multiples of 4096 (#771)- Fixed typos in error variant names (#782)
- Fix
read-flashwhich didn't work with some lengths (#804) - espflash can now flash an ESP32-S2 in download mode over USB (#813)
- Fixed a case where espflash transformed the firmware ELF in a way that made it unbootable (#831)
- The app descriptor is now correctly placed in the front of the binary (#835)
- espflash now extracts the MMU page size from the app descriptor (#835)
ResetBeforeOperation&ResetAfterOperationare now public, to allow the creation of aConnection(#895)Flashernow respects its internalverifyandskipflags for all methods. (#901)- Progress is now reported on skipped segments and verification (#904)
- Moved the
non-interactiveflag toConnectArgsso we also avoid asking the user to select a port (#906)
Removed
- Removed the
libudevfeature (#742) - Removed the
flasher::parse_partition_tablefunction (#798) - The
FirmwareImagetrait has been removed (#802) - The
elfmodule has been removed, and its contents moved to theimage_formatmodule (#802) - The
Targettrait, theReadEFusetrait, andChip::into_target(#891) - The
UsbOtgandRtcWdtResettraits have been removed, along withChip::into_rtc_wdt_reset&Chip::into_usb_otg(#891)
v3.3.0
v3.2.0
v3.1.1
3.1.0
Added
- Support loading flash size, frequency, and mode from the config file (#627)
Fixed
- Fixed help text for
sizeparameter ofread-flashsubcommand - Fixed port detection on
muslwhen detection returns paths starting with/dev/ - [cargo-espflash]: Always resolve package_id from metadata when finding bootloader and partition table (#632)
- Fixed behavior of the
--target-app-partitionflag (#634)
Changed
- Update ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-H2, ESP32-S2, ESP32-S3 stub (#638)