2025-07-25 3:09 AM
Hello Firends,
Two Questions...
1. Firmware Flash with DFU Bootloader succesfully done along with RDP bit. Can we re-flash the fiirmware once RDP L1 is set before through DFU using USB ? my custom board uses STM32F303Rb device.
2. Each STM32 device has UID of 96 bit, Can we use this UID to Club with Firmware so that each firmware image is specifc to that particular Device ? Pls. suggest any Hardware tool / Software tool avilable for same. I found one is segger Flasher secure device, but very expensive.
Regards,
Bsuthar
2025-07-28 2:29 AM
Hi @bsuthar,
1) It's generally possible to revert RDP back to zero from RDP1, but with a mass erase. Some bootloaders are capable of that, if not, the debug interface can do that. Look at AN2606.
Introduction to system memory boot mode on STM32 MCUs - Application note
2) Doing this will always be expensive. Maybe there's another solution to your problem than linking the UID with binary.
BR,
J
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2025-08-01 10:31 PM - edited 2025-08-01 10:33 PM
Hello Bubbles,
Thank you for your Update.
Does ST has such tools , can be combo of Hardware ( ST-Link ) or Software ( CubeProg ) to achieve same like Segger Tools ? During Conversation with Segger people , We need to buy not only Hardware but Software as well to achieve it ...Leads high investment just to secure firmware on ST MCU Products..
Also , Few ST MCU has Secure Bootloader ( .SFI image ) , not Sure available with our Device ( STM32F303 ) or not ?
2025-08-12 7:59 AM
Hi @bsuthar,
here is the introduction article: Category:Secure manufacturing - stm32mcu
No, STM32F303 is not supported with SFI. The SFI is normally implemented using HSM, which as you said is additional HW and SW investment.
There are probably cheaper solutions than Segger, which are the field leaders for decades. It also depends on scale of the planned manufacturing.
BR,
J
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2025-09-15 5:32 AM
Hello Bubbles,
Thank you,
Can share some insight writing UID into OTP Memory ?
Is it possible to program OTP memory with CubeProgrammer at user level ?
2025-09-15 8:28 AM
Hello @bsuthar,
what exactly do you mean by user level? If you mean that user can program their device, yes, they can. But instead of using debug interface, I'd suggest trying bootloader. It should be easier to automate.
BR,
J
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2025-09-17 5:40 AM - edited 2025-09-17 5:47 AM
Yes, Bubbles
User Leve means user can program their device.
My Bad, Not OTP but Flash (Reserved ). F303 has not OTP memory.
Can you pls elobarate more on Bootloader based and Automate it ? an example would be better.
Thank you,
2025-09-18 8:22 AM
Hi @bsuthar,
the bootloader hub document is AN2606 ( Introduction to system memory boot mode on STM32 MCUs - Application note ) and then depending on bootloader interface there are multiple application notes on the bootloader protocol. Bootloaders support CLI programming of user flash, so you can have an arrangement using batch or script that will write the numbers you need to the individual chips.
BR,
J
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2025-09-19 9:01 PM
Hello Bubbles,
Yes, we are referring AN2606 and Other Application Notes Suggested on St Community. Our Targeted Bootloader is USB DFU only.
From your previous post quote "There are probably cheaper solutions than Segger, which are the field leaders for decades" Would it possible to refer 2-3 vendor ?
2025-09-20 12:48 AM - edited 2025-09-20 12:54 AM
If you strict F3 create your own protection design , no vender create it for you. Or put F3 and read about SBSFU
And FYI 96 bit UID (at 0x1FFF7A10) is placed on ST manufactere link no segger can change it...
STM32_Programmer_CLI -c port=SWD -r32 0x1FFF7A10 3