2020-09-27 02:51 PM
Hello, we have boards with the MCU STM32F746. This works normally but in two cases we had a problem with the option bytes. Several values were changed and now we can't remove the protection.
The first board we tried several times to change level protection of 1 to 0, and finally we done it.
In the second board, at the moment it's not possible for us. The level is the 1 and we don't undestand why we can't go back to level 0.
This is the configuration of the options bytes
OPTION BYTES BANK: 0
Read Out Protection:
RDP : 0xFF (Level 1, read protection of memories)
BOR Level:
BOR_LEV : 0x3 (BOR off, POR/PDR reset threshold level is applied)
User Configuration:
IWDG_STOP : 0x1 (IWDG counter active in stop mode)
IWDG_STDBY : 0x1 (IWDG counter active in standby mode)
WWDG_SW : 0x0 (Hardware window watchdog)
IWDG_SW : 0x0 (Hardware independant watchdog)
nRST_STOP : 0x1 (No reset generated)
nRST_STDBY : 0x1 (No reset generated)
Boot address Option Bytes:
BOOT_ADD0 : 0xEFBB (0x3BEEC000)
BOOT_ADD1 : 0xF5EF (0x3D7BC000)
Write Protection:
nWRP0 : 0x1 (Write protection not active on this sector)
nWRP1 : 0x1 (Write protection not active on this sector)
nWRP2 : 0x1 (Write protection not active on this sector)
nWRP3 : 0x1 (Write protection not active on this sector)
nWRP4 : 0x1 (Write protection not active on this sector)
nWRP5 : 0x1 (Write protection not active on this sector)
nWRP6 : 0x1 (Write protection not active on this sector)
nWRP7 : 0x1 (Write protection not active on this sector)
And when we try to remove the protection this happens:
SWD freq : 4000 KHz
Connect mode: Under Reset
Reset mode : Hardware reset
Device ID : 0x449
Device name : STM32F74x/STM32F75x
Flash size : 63,999 MBytes
Device type : MCU
Device CPU : Cortex-M7
Disabling memory Read Protection...
Error: Disabling memory Read Protection failed
Regarding the power supply, it's stable.
Anyone know who we can solve it?
Thanks & best regards
Solved! Go to Solution.
2020-09-28 12:18 PM
Finally, we solved it, writing manually each register of the option bytes by the programmer, like this
halt
w4 40023c08 08192A3B
w4 40023c08 4C5D6E7F
w4 40023c14 C0FFAAFD
w4 40023c18 00400080
w4 40023c10 00010000
Regards
2020-09-28 12:18 PM
Finally, we solved it, writing manually each register of the option bytes by the programmer, like this
halt
w4 40023c08 08192A3B
w4 40023c08 4C5D6E7F
w4 40023c14 C0FFAAFD
w4 40023c18 00400080
w4 40023c10 00010000
Regards
2022-12-01 09:34 AM
having similar issue here @GYacc ;(
Your solution didnt work for me.
Also im using windows CLI so the sintax is
STM32_Programmer_CLI.exe -c port=SWD freq=4000 -e 0 -w32 0x40023C14 0x0FFFAAED
any clue of why is this happening?, why did the rdp randomly got set to 0xFF, im not even using any protection in my debugging