Skip to main content
Associate II
July 2, 2026
Solved

stm32wb does not run when power on

  • July 2, 2026
  • 11 replies
  • 149 views

Hello ST Community,

I am working with STM32WB05 in a custom PCB (new design) and it does not run when power on the PCB. To run it, I have to reset by reset line. If I am debugging, I neither have problem.

I had used others microcontroller before (STM32L1, STM32WL55...) and it had never happend.

 

I have check the pollowing points:

1-  Power supply. I am using a externa battery with 3-3,5Volts.

2- BOOT pin: I think that the problem is the STM32WB05 enter in boot mode but in the datasheet, I can not see any pin to enter it.

I have tried to join PA10 to GND by 10K resistor (I see in nucleo manual UM3343 that BOOT0 pin is PA10) but that no work.

3-  Clock source: I am using interna clock HSE

4- reset line is always high level

 

Any confirmation or guidance would be greatly appreciated.

Thank you for your support.

Best answer by microdruid

Problem fixed: the issue was due to a wrong mount on the prototype boards with both pull-down and pull-up present on BOOT0 pin so at power-up bootloader was executed instead of my code.

 

Removing the pull-up and then with a strong L value on BOOT0 the power-up always execute my code correctly.

11 replies

Visitor II
July 29, 2026

I have the same problem with custom board and  STM32WBA54CE (never happened before on any STM32F3, G4, H7, other ARMs M3, FM4, PIC16/24/32, dsPIC33, Renesas, Freescale, etc.).

 

I have pull-down at BOOT0 pin, all power supply pins (except VDDA) together by a 3.3V LDO, VDDA by 3.3 voltage reference.

100nF on NRST pin, originally using internal resistor, then 1K pull-up (has some improvements: power-up goes well 1 time over 4-5).

Checked rising time of supply: both VDD and VDDA go up in about 0.5ms (and same on NRST with external pull-up).

 

With a pulse on NRST starts well every time… so I’m thinking about adding a voltage monitor / reset IC… but shouldn’t it supposed to start well without any external help?

Laurent LOUAZON
ST Employee
August 20, 2026

Hello,
can you share your HW schematics?

Regards

Laurent

Visitor II
August 20, 2026
uC connections

 

Laurent LOUAZON
ST Employee
August 20, 2026

Hello,

Thanks for sharing.
My comments:

- Can you please let me know Y3 exact reference?
We do recommend a 8pF load cap version.
In any case C9 and C10 must be removed. (frequency centering will be done through internal programmable capacitor bank)

- You are not using external LSE xtal.
This is fine but be sure FW is set accordingly.

See below wiki page
https://wiki.st.com/stm32mcu/wiki/Connectivity:HSE_and_LSE:_How_to_select_crystals_and_center_oscillators_with_STM32WBAx

 

You can find a reference schematics/layout for STM32WBA52 in QFN48 (pin to pin compatible with STM32WBA54) that might be useful.
 

I do not see RF matching/filtering.
Please refer AN5948 or reference schematics I provided.

 

Let me know if this helps.

Regards
Laurent

Visitor II
August 25, 2026

hello Laurent,

 thanks for your reply and advices.

The crystal reference is ABM3-32.000MHZ-D2Y-T from Abracon: it’s a 18pF load type.

Table 60 on datasheet (DS14127 Rev 7) states that crystal allowed load is between 8 and 18pF, so we are in range.

I’ll remove external caps and rely on the internal cap banks).

 

The wiki link is dead (page not found).

I confirm you that there’s no LSE nor bt connection in this project (we selected WBA54 device as base for all new and future projects but this very first one doesn’t need bt LE).

Anyway, the power on problem I’m experiencing it’s not related to external oscillator: at reset the uC starts with HSI16 and runs with this till clock reconfiguration by SystemClock_Config() in main(). But it doesn’t arrive to main() at all...

Laurent LOUAZON
ST Employee
August 25, 2026

Hello,

 

HSE
Our datasheet is under modification. 
CL of 18pF is for sure too high.
8pF is the recommended version and you should remove as well external load caps.
The wiki page link I provided is still internal and will be public soon. It will provide better details on LSE/HSE Xtal selection and the easy way to center LSE or HSE frequency.

 

LSE
Sorry the wiki page I provided was not the one I wanted to share.
Here is the one that explain how to configure STM32WBA5 if not using external LSE.
How to run an RF application on the STM32WBA without LSE crystal - stm32mcu
Can you please apply suggestions provided jhere and let me know if this solved the problem?

 

Regards
Laurent

Visitor II
August 25, 2026

hello Laurent,

 

 I’ll surely choose and mount a crystal with recommended CL but, at the moment I have no problem with oscillator: it is working properly (also with the external 18pF load caps, that anyway now I’ve removed).

The problem is not the external clock, is (maybe) the internal one or something else that do not allow the uC to start-up correctly at power-on but actually need a pulse reset on NRST pin in order to start.

So please let shift the focus from clocking to the real problem

Laurent LOUAZON
ST Employee
August 25, 2026

Hello,

OK.
May I ask you to share plots for +3.3VR and +3.4V (on the same plot)?
I’d like to confirm below statement (page30 of datasheet) is respected. 
Could you explain why you do have two different power domains?
 


 

Also you mention rise up is quite slow (500ms).
I guess you have no choice to change this behavior and confirm proper start if you fasten Vdd rise up time? 
In the other hand, our datasheet does not mention limit for it (table42)
But I faced some cases in the past (was not STM32WBA) that a slow ramp up time can lead to “cross conduction” so that registers are not properly initialized).
 

If you share those information, I could try reproducing such conditions and confirm anu issue here.

 

Regards
Laurent

Visitor II
August 25, 2026

hello Laurent,

 0.5ms, not 500ms!

Actually is slighter longer, 1-1.5ms as you can see in the scope capture: yellow is +3.4V, orange is +3.3VR, cyan is NRST.

We use different power domain as VDDA will be used also as reference for ADC and so it comes from a voltage reference ( ADR366BUJZ, supplyed by the +3.4V). The main power supply +3.4V comes from a common LDO (MCP1824T-ADJE/DC).

Laurent LOUAZON
ST Employee
August 26, 2026

Hello,

Sorry for my typo (500ms instead of 500us).
Thanks for curves.
I do not see problem with your plots vs what we state in our doc (VDDA must remain below VDD+300mV when VDD is below 1V).

I will send you a private message to discuss your case.

Regards

Laurent

microdruidBest answer
Visitor II
August 27, 2026

Problem fixed: the issue was due to a wrong mount on the prototype boards with both pull-down and pull-up present on BOOT0 pin so at power-up bootloader was executed instead of my code.

 

Removing the pull-up and then with a strong L value on BOOT0 the power-up always execute my code correctly.