2021-11-29 11:41 AM
I'm having a problem with STM32CubeProgrammer and a 1MB STM32F767ZG configured in dual bank mode. On the left, I tried to flash a 520k bin to the device, over the top of previous firmware.
Expected behavior: erase sectors 0-7, 12, then write 520K bytes starting at address 0x08000000.
Actual behavior: erases sectors 0-8, then write 520K bytes starting at address 0x08000000.
Since it tries to erase the non-existent sector 8, sector 12 (the actual sector at 0x08080000) doesn't get erased and as such the contents of sector 12 get corrupted by the multiple writes without an erase.
See screenshot below: stm32cubeprogrammer tries to erase sector 8 at 0x0808 0000, but in dual bank mode, there is no sector 8!
2021-11-29 01:42 PM
Looks like both versions 2.8.0 and 2.9.0 are both affected
2021-11-29 01:45 PM
It also incorrectly identifies my MCU:
This is in reality an STM32F767ZGT, but it identifies it as 2MB.