STM32CubeProgrammer errata 2.22.x

1. STM32CubeProgrammer errata 2.22.x

2. Main fixed issues for 2.22.0

ID Summary
223931 [GUI] Issue with 'Save As' when using multiple device memory tabs
224132 Flash Loader Loading Error in STM32CubeProgrammer on Ubuntu (25.10)
223560 [External loaders] Parsing loaders starting at 0x000000000
215420 [WB][FUS] Unknown Error Popup During FUS Upgrade
205505 [Programmer] Wrong Option Bytes Displayed for STM32G0x0
219183 [CLI] Noreconnect option not working after OB programming
217618 [Script manager] Issue with for and while loop conditional statements
214030 [OB] Duplicate User Configuration OB displayed in CubeProgrammer
218674 [bootloader][G0] Unable to program SEC_SIZEx OB via bootloader interfaces
218681 [DATABASE][U3][TZEN=0] Flash memory isn't erased before programming via BL interfaces
219367 [H5 512K][DATABASE][D478][BOR_LEV] OB possible values are wrong

3. Known problems and limitations

  • Integrity check:
    • STM32H7 microcontrollers: support integrity check for SFI:
      • Only the devices with a bootloader version higher than 0x91 are supported.
      • STM32CubeProgrammer does not support the devices with older bootloader versions. Users must use STM32CubeProgrammer v2.9.0 to use devices with old bootloader versions.
    • STM32H73xxx microcontrollers: support integrity check for SFI/SFIx:
      • Only the devices with a bootloader version higher than 0x93 are supported.
      • STM32CubeProgrammer does not support the devices with older bootloader versions. Users must use STM32CubeProgrammer v2.9.0 to use devices with old bootloader versions.
    • STM32H7Bxxx microcontrollers: support integrity check for SFI/SFIx:
      • Only the devices with a bootloader version equal to or higher than 0x92 are supported.
      • STM32CubeProgrammer does not support the devices with older bootloader versions. Users must use STM32CubeProgrammer v2.9.0 to use devices with old bootloader versions.
  • SFIx fails for large flash memory content on Linux® via the UART interface.
  • USB interoperability issue on macOS® due to ST-LINK limitation.
  • STM32H7 microcontrollers:
    • STM32CubeProgrammer does not support SFI.
    • STM32H7Axxx/Bxxx microcontrollers: Download verification issue with OTP.
  • STM32H7Rx/7Sx microcontrollers:
    • Erasing the external flash memory is not supported using IWDG.
    • GUI: the external memory edition is not supported via USB and UART while connected to the OpenBootloader.
    • Option bytes are not supported via OpenBootloader interfaces.
  • STM32L0 microcontrollers:
    • Register access mode incorrectly displayed for register viewer.
  • STM32L4R5xx microcontrollers:
    • Issues occur when erasing sectors in bank 2 memory with the UART interface.
  • STM32U3 microcontrollers:
    • Limited support via JTAG (functional only with mode = normal and reset = HWrst).
    • STM32U3C5/STM32U3B5: Unable to program binary or change OB when IWDG_SW=0
  • STM32U5 microcontrollers:
    • Unable to read the chip ID via J-Link when RDP is set to Level 2.
    • OTP memory programming failure with CLI when TZEN is enabled.
    • STM32U535/545 microcontrollers: SFIx is not supported.
    • STM32U59xxx microcontrollers: SFIx only supports the area E installation with OTFDEC region 1 (region 0 on TPC).
    • STM32U5Fxxx and STM32U5Gxxx microcontrollers: Unable to program SFIx via SPI/I2C on GUI.
    • STM32U575/STM32U585 microcontrollers: For CPNs with flash Size 1M, failed to erase using Erase selected sectors when SWAP_BANK is enabled.
    • STM32U535/STM32U545 microcontrollers: for flash Size 256K For CPNs with flash size 2M, failed to erase using Erase selected sectors when SWAP_BANK is enabled with the UART interface.
    • STM32L43 and STM32L45 microcontrollers: Failed to erase a part of the last sector using the GUI with the SWD interface.
  • STM32WBA microcontrollers:
    • OpenBootloader via SPI: cannot connect to STM32CubeProgrammer when the baud rate is below 3000 Bd.
    • “Connect Under Reset” is not working when called by STM32CubeIDE.
  • STM32WBA2 microcontrollers:
    • Erase operation failed when the External loader is selected. Note: Deselect the external flash to be able to perform the erase operation
  • SFIx fails for small flash memory content on supported bootloader interfaces with all platforms.
  • USB interoperability issue on macOS due to STLINK limitation
  • Unable to read the Chip ID of the STM32U5 via JLINK when RDP is set to Level 2.
  • STM32H74x/5x/7x: When connecting the target via JLINK, the BCM4 option byte is removed from STM32CubeProgrammer if it has been disabled.
  • STM32WL33 microcontrollers:
    • Failed to connect with Hotplug mode on CLI.
    • STM32CubeProgrammer fails to program RDP=0xABACABAD on WL33.
  • STM32L5 microcontrollers:
    • Unable to read, write, or erase the external flash memory when TZEN is enabled.
    • SFI programming failed via UART on Linux.
  • STM3V8 microcontroller:
    • Already programmed OTP Data is erased after programming other OTP via SWD.
    • Write32, download, erase and full chip erase operations fail via SWD when boot is on BL address.
    • Erase NVM High Cycle data not working, a workaround is to write 0xFFFFFFFF in the registerr
  • Incremental programming is an experimental feature with limited test coverage:
    • For Internal Flash programming, tested devices are: STM32C03x, STM32C05x, STM32C09x, STM32F101/F102/F103, STM32F37xx, STM32F411xC/E, STM32F72x/STM32F73x, STM32F76x/STM32F77x, STM32G03x/STM32G04x, STM32G0B0xx/B1xx/C1xx, STM32G491xx, STM32H50x, STM32H533/523, STM32H56x/573, STM32H72x/STM32H73x, STM32H7R/Sxx, STM32L05x/L06x/L010, STM32L4Pxxx/STM32L4Qxxx, STM32L4x1/STM32L475xx/STM32L476xx/STM32L486xx, STM32L5xx, STM32U0xx, STM32U3xx, STM32U535/STM32U545, STM32U575/STM32U585, STM32U59x/5Ax, STM32WB5x/35xx, STM32WBA52/54/55, STM32WBA6x, STM32WLxx
    • For external flash programming, tested boards are: STM32H735G-DK, STM32H7S78-DK, STM32H573I-DK, STM32U575I-EV, STM32WBA65I-DK1.
    • Incremental programming is not supported when TrustZone is enabled, the tool switches automatically to normal programming procedure.
  • The automatic mode doesn't work with UART interface when using an STLink with Dual VCP, the STLink configuration must be changed to single VCP.
  • In windows 10 32 bits: STM32TrustedPackageCreator display can be cut when maximizing the window.
  • OBkey provisioning with JLINK is not supported, currently the CLI says it clearly, but the GUI message doesn't.
  • SWD multidrop:
    • Connection fails on U0 and WL dual core.
    • The user must set targetsel to 0xxxxxxx instead of 0x0xxxxxx.
    • There is an instability when programming in “under_reset” mode, it's recommended to use "Normal" mode.
    • SFI not working.
  • Memory map export: Segment indexing is clearly displayed only for the first 9 segments (out of a total of 256).
  • SWV feature is provided as a beta functionality for devices V8, C5 and WBA2. It is not fully validated.
  • MCU factory reset is supported only via ST-Link.
  • RDP regression with password is supported only via ST-Link.
  • For SFI, for exact list of supported devices, please refer to AN4992.
  • Starting from STM32CubeProgrammer v2.21.0 "-align" option using STM32_SigningTool_CLI is mandatory with STM32N6.