2020-05-26 07:05 PM
STM32Cube Programmer v2.4 (also tried v2.3)
Windows 10 Pro (build 18363) and Mac (Catalina 10.15.4)
STM32F405 custom board, STM32F407 on DISCOVERY board
I cannot unset the read protection of the MCU via the Cube programmer when interfacing to the factory boot loader over the serial port. It recognizes that the MCU is present and that it is under RDP. It then tries to unset RDP, but fails with a timeout.
I can successfully unset RDP using the factory boot loader over the UART using the stm32flash program. The fact that the Cube programmer fails with both my own PCB and the standard DISCOVERY development PCB suggests to me it is not a hardware issue.
The Cube programmer can set RDP over serial port, and it can set / clear it using ST-Link. I've tried it on Windows and Mac, same results.
I've been working on and off on my firmware for 9 months, but since I normally use the ST-Link or a secondary UART bootloader, I am not sure whether this behavior is new, or has always existed but I didn't catch it until now, when a customer brought it to our attention.
To clarify, I am talking about entering and leaving Level 1 of RDP (I don't utilize level 2 in my application).
Are there any obvious thing I might be missing?
-Chris
EDIT: clarity and grammar
2020-05-26 08:04 PM
I just discovered the FLASHER-STM32 Windows-only program. I did a quick test, and it had no problem un-setting RDP. I'm beginning to think it's a quirk of CUBE Programmer that it can't perform this operation.
2020-05-26 08:07 PM
Going from level 1 to level 0 erases the chip, which takes 15 seconds or so. Does it actually fail, or does it just timeout before the erase is complete?
2020-05-26 08:18 PM
TDK, it times out before it has a chance to erase. If this really is a bug worth investigating, I'll make a communications dump and post here. I'm still hoping one of the forum members here will point out something I've done wrong.
2020-05-28 08:10 PM
Well, let me ask the opposite question... is anyone successfully using STM32Cube Programmer to manage RDP settings on an STM32F4 family chip over the factory bootloader???