2026-02-06 12:50 AM - last edited on 2026-02-10 8:41 AM by Amel NASRI
Hi!
In version 4 of the reference manual for STM32U0, it is suggested that BOR is enabled and on Level 3 from the factory.
Is that correct?
I'm currently working on an construction running @ 2V, so it would never start up, if so. And when I read out the Option Bytes on a new MCU, BOR is disabled?
Solved! Go to Solution.
2026-02-12 8:14 AM
Hello @TSN
I can confirm the correct factory value of BOR_LV is 0x6, not 0x7. This value will be updated in the reference manual in the future.
BR
Gyessine
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.
2026-02-06 2:52 AM - edited 2026-02-06 2:58 AM
Hello @TSN and welcome to STcommunity!
Based on the product reference manual, level three corresponds to 2.8 V, so 2.0 V is not sufficient.
You can upgrade your power supply to a minimum of 2.8V, or modify the BOR_LEV bits in the FLASH option register to set the desired voltage.
Also, you can use STM32CubeProgrammer to verify and make sure of the current BOR value.
Hope that helps!
Gyessine
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.
2026-02-06 3:06 AM
Hi!
And thanks for the reply.
However, I think my question was misunderstood.
My construction works fine and is is running fine @2V. But I never programmed the Option Bytes.
That is why I suspect that there is an error in the reference manual, as it looks like the BOR is disabled from the factory, which is the opposite of what is written in the manual.
Best regards!
/Tommie
2026-02-06 6:43 AM
Hello @TSN
I apologize for any misunderstanding regarding your question.
I think we need to clarify the difference between factory values and reset values.
Factory values and reset values are not always identical:
In STM32U0, the reset values are generally 00 for BOR_LVL and 1 for BOR_EN. This is why the project runs at 2.0 V, because BOR level 0 corresponds to 2.0 V.
If you want to recover the factory values, I recommend seeing this article.
I hope this answers your question, if yes please accept it as solution so it can be a reference for other users.
Gyessine
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.
2026-02-11 5:49 AM
Well, I guess that the situation for the option bytes are special - there is no Reset Value.
The value is loaded from flash during start - and that I why I need to know the correct Factory Value.
2026-02-11 8:02 AM
@TSN
Sorry but I am not sure that I fully understand your question.
Can you clarify what you mean by "correct factory value"?
According to the reference manual, the factory values are "111".
I tested the product and found out that reset values are "001"
BOR_EN is set and BOR level is 0
BR
Gyessine
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.
2026-02-11 8:20 AM
Option Bytes are different from the vast majority of other registers, as they are not reset by micro code in the MCU, but rather by reading them from FLASH - which is why the user can change them.
And that is why they can not have a reset value defined in the Reference Manual
(see above, FLASH_OPTR Reset Value is 0xXXXX XXXX).
The value depends on what the user might have programmed it to be.
My problem is that if I take a brand new MCU - without programming anything - and read the BOR settings, I get:
BOR level = 0b11 (2.8V)
BOR_EN = 0 (brown out is disabled)
Corresponding to '110'
I would expect that these were set to the Factory Value the very first time (as I have not changed them):
BOR level = 0b11 (2.8V)
BOR_EN = 1 (brown out is enabled).
Corresponding to '111'
I am confused that what I see in a real product is not what is defined in the manual, and even more confused if you read out a third value (also different from what is stated in the manual).
2026-02-12 2:24 AM
Hello @TSN
Thanks for clarifying the issue.
An internal ticket was submitted to the dedicated team for further investigation. Internal ticket number: 227101(This is an internal tracking number and is not accessible or usable by customers).We will get back to you with updates as soon as possible
BR
Gyessine
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.
2026-02-12 8:14 AM
Hello @TSN
I can confirm the correct factory value of BOR_LV is 0x6, not 0x7. This value will be updated in the reference manual in the future.
BR
Gyessine
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.
2026-02-12 8:17 AM
Hi Gyessine!
Excellent - that resolves my issue!
Thanks a lot!
/Tommie