cancel
Showing results for 
Search instead for 
Did you mean: 

Disabling memory Read Protection failed

GYacc
Associate II

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

1 ACCEPTED SOLUTION

Accepted Solutions
GYacc
Associate II

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

View solution in original post

2 REPLIES 2
GYacc
Associate II

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

having similar issue here @GYacc​ ;(

https://community.st.com/s/question/0D53W00001yGFBhSAO/oh-boy-i-bricked-my-nucleo-error-expected-value-for-option-byte-rdp-0xaa-found-0xff

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