Showing results for 
Search instead for 
Did you mean: 

Problem with the nRST pin in a STM32F100CBT6

Associate II
Posted on January 19, 2012 at 20:58

We have a problem with the nRST pin of a STM32F100CBT6 microcontroller. We have been working on the problem for several days and we don�t find out what is exactly the cause of this problem.

The problem lies in the nRST pin. There is nothing but a pull-up 10KOhms and a 100nF capacitor connected on this pin, but the pin does't go high.

For an unknown reason we see an unstable signal on this pin during some seconds, that fluctuates around 2.5 Volts to 2.7 Volts. After a period of 1-10 seconds the reset signal goes to low and remains there forever. The only way to take the microcontroller out of the reset is to force a 3.3V level onto this pin. When the pin is again released, it behaves well during some seconds (3 to 20 seconds), then it starts the fluctuations during some seconds (20 seconds or more) and finally falls again to reset.

Power supply is applied through a linear regulator (LM1117-3.3) to all the VDD and VDDA pins. We have checked pin by pin that the voltage arrives well to all the supply pins. Decoupling capacitors for each power supply pin pair are 100nF and are located very close to the microcontroller (2-3 mm away). Power supply is stable and does not have any fluctuations. It is also accurate, as we have measured a level of 3.37V with an oscilloscope and two different multimeters.

We have built 2 boards with this microcontroller and we have exactly the same problem.

Sometimes the reset signal stays high during enough time to program the microcontroller. The problems happens with the microcontroller erased and with the microcontroller programmed. In the second case (microcontroller programmed) we use HSE and we can see that the crystal clock works properly (8MHz). However, WE DO SEE THE SAME FLUCTUATIONS superimposed to the clock signal. We have checked the PCB and there are no shorts or couplings between the clock lines and the nRST (although we see that they connect to the microcontroller through contiguous pins).

We have also tried to remove the crystal and to run from the HSI Clock (Hi Speed Internal Clock) but the problem with the nRST stays there.

We have tried to remove the capacitor and the pull-up resistor, and the problem is the same, although the fluctuation levels are a little bit lower

We have the IWDG disconnected and the only thing that is now soldered on both boards is the microcontroller and the regulator (with its decoupling 470uF capacitors and the input and the output of the regulator)

The ONLY way to make the system go out of reset is to make a short-circuit (a 56 ohm resistor) between the nRST pin and the 3.3V voltage rail, but we cannot then reprogram the device (our JTAG cannot make the nRST pin low under these conditions).

We are looking desesperately for a solution. Please help us.

Posted on January 19, 2012 at 21:55

Without seeing a schematic of the pin connections I can't provide specific opinions.

If you have any 5V signals, make sure they are only connected to FT (5V Tolerant) pins.

Check if you have VBAT connected to anything.

Check all the ground connections. (VSSA, VSS)

Remove the regulator, and use a bench supply, confirm reasonable current draw.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Associate II
Posted on January 19, 2012 at 22:41

Thank you very much, Clive for answering.

No 5V signals are present on the microcontroller.

With the 100nF nRST capacitor removed, this is the power supply consumption:

7.5 mA left alone (nRST is held low by the microcontroller itself)

37mA if nRST is forced to 3.3V (the oscillator starts oscilating and the program is executed).

Check the schematic attached.

VBAT can be connected to 3.3V, isn't it??


Attachments :

ConnMod.pdf :
Associate II
Posted on January 19, 2012 at 22:55

By the way, the BOOT0 is connected to a pull-down (10K) to 0V. This modification is done on the board.

Associate II
Posted on January 24, 2012 at 21:41

Any suggestions?

I am going crazy with this microcontroller... I have now 4 boards, all with the same uC but two different PCB designs and I have exactly the same problem: the microcontroller generates a crazy nRST signal level.

Please help me. 

Posted on January 24, 2012 at 23:34

Not seeing anything hideous with the schematics, the pin numbering looks Ok.

NRST has two pull ups.

BOOT1/PB2 not connected to anything, would ground, or pull down.

I'd probably be looking at the PCB design files, and confirming it matches the schematic, that there are no unexpected shorts on empty boards, or soldering issues with the populated boards. Pin 1 correctly orientated.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Associate II
Posted on January 25, 2012 at 09:00

Your schm seems ok. Are you sure C7(100nF) is mounted properly??

I hope there should not be any shorting between NRST and GND???

Posted on June 01, 2012 at 18:31


Did you ever find a solution to this problem?

I'm experiencing what seems to be the same thing on a board with a STM32F102CB (rev.Y I think), and I found this thread with Google. In my case nRST starts floating away after a few seconds. The chip works fine if I force nRST high.

I'll try to characterise the issue a bit more and see if it's software related or bad soldering, but I though I might find a shortcut here 😉

Associate II
Posted on June 05, 2012 at 14:28


Please read AN2586 on pages 9 and 10. You don't need external pull-up on nRST pin. It has internal 100K pull up. I hope this will help you. If problem still exist, with several MCUs, than board layout can be a problem.  I have made several boards with STM32 MCUs, I also made eval board where I can solder different STM32 (100, 101, 103 and 107), and I have never had problems with MCU booting.



Associate II
Posted on September 29, 2012 at 14:06

I'm having the same problem - nRST is staying low for no apparent reason. Like the other two I can force it high with a 56R resistor (but then the JTAG adaptor doesn't work).

The board design looks ok, the boards are meant to be electrically tested and every one of the 10 I've tried so far has the same problem except for the first 2 PCBs the board loader did. One of them has the same problem at startup but it goes away as soon as I hit the micro area with spray freeze - I thought it was just a bad joint, perhaps it's not.