cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F3 NRST pin slowly pulls low

Bence Péceli
Associate II
Posted on May 01, 2018 at 07:34

Hello, I have an STM32F3 built into an application. I managed to upload a very simple code and run it, but something weird is happening. After about 20-30 seconds the mcu turns off. I measured the voltage at the NRST pin and after powering the device it slowly starts to decrease. After about 20-30 seconds it reaches 1.3-1.5 V and the mcu turns off. It keeps decreasing and stops at about 0.8-0.9 V. I desoldered most components, including the reset button, hoping one of them was faulty, but it didnt help. Now this part of the circuit consists of only the mcu NRST pin and a pull up resistor (10k). What could cause such a problem? Thank you in advance

18 REPLIES 18
AvaTar
Lead
Posted on May 01, 2018 at 09:24

Now this part of the circuit consists of only the mcu NRST pin and a pull up resistor (10k).

This is presumably not the case, otherwise you would measure a stable Vcc at NRST.

Your measurements suggest the pin floats, and the behavior is dictated by rather stable EMI influences.

I would double-check if PCB is correctly routed, perhaps solder in an external pull-up resistor with wires.

Posted on May 01, 2018 at 09:54

You might also want to look at the NRST pin using an oscilloscope. That pin is bidirectional and internal resets cause short pulses.

I'd also triple-check *all* the supply and ground pins, including the analog ones (or, more precisely, starting by them, as the reset is in the analog domain), and look for bad solder joints.

JW

Posted on May 01, 2018 at 10:41

First of all, thank you for the answers,

I checked the supply and ground pins and they all seem to be connected. I also checked the wiring, there is indeed a connection through a 10k resistor to the supply from the nrst pin.

What bothers me is that the patter is very stable. After powering the device it starts without a problem, the program running on it (simply flashing an LED). Then the nrst voltage gradually lowers, every time in almost the same manner, at the same speed. If there was a short I would assume it would be pulled low from the start. Also, what is strange that if I power it down after this cycle, powering it again doesnt start the cycle over, but sort of continues where it stopped. Only after waiting a few minutes does it start again. 

I was thinking that it could be software reset, but i think there would be no such gradual change in that case, and it would start over immediately. 

Do these symptoms give you guys any ideas about what could be wrong?

Thanks, Bence
LMI2
Lead
Posted on May 01, 2018 at 20:25

If an input is trully floating, in my experience it is also sensitive to hand capacitance. That is waving your hand above the chip the input shows randomly logic 1 and 0. And the chip takes extra current.

is your chip broken?

Posted on May 01, 2018 at 18:30

Do you have any capacitor on that NRST?

Post a photo of the board.

JW

Posted on May 01, 2018 at 19:40

I have a capacitor, but the problem persisted even after removing it from the board. There are no visible problems with the soldering. I sort of circumwent the problem by changing the 10k pull-up resistor to 1k. There is a voltage drop of around 0.9V across it, which is still a high input so the mcu runs continously. As far as i know the NRST is a high impedance input, so the current must be flowing elsewhere. Is this assumption correct?

What is weird that there is no resistor that in series with the pull up could cause such a voltage drop.

The board is kind of small, I dont know if anything is visible on it. There are no components on the bottom side. Please note that I'm a begginer at soldering, but criticism is welcome.0690X00000604dRQAQ.jpg

Barely visible reset sign at the most right button. Right after it there is a decoupling capacitor, and net to the connector there is the 1k pull up. Pin 7 is NRST, also conncected to the jtag connector (black one on the lower left). MCU pin numbering starts on the lower side.

Bottom layer is only wiring, very clean, no soldering at all.

There are some solder bridges but only where the closely packed components are connected anyway.

Bence
Posted on May 01, 2018 at 22:00

Nice board.

As far as i know the NRST is a high impedance input, so the current must be flowing elsewhere. Is this assumption correct?

No.

From DS, Table 12. Legend/abbreviations used in the pinout table:

RST Bidirectional reset pin with embedded weak pull-up resistor

and then under 6.3.15  NRST pin characteristics you'll find the NRST pullup value, which is typ. 40kOhm.

So the described behaviour doesn't make sense, and it's time for desperate measures:

- isn't reset connected to the radio board, and/or to the white connector, or to any other circuit? Can you disconnect all?

- check for the third time all the power and ground pins (btw. how is VBAT connected? This IMO can't be reason for problems, but one never knows)

- resolder pin 7

- measure for shorts to every neighbouring pin and trace

- wash thoroughly the board to remove any chemicals traces

- cut the trace from pin 7

The mcu may be damaged too, so you may need to change it, but I'd leave it as a last-resort solution.

JW

T J
Lead
Posted on May 02, 2018 at 02:37

obviously a hand soldered board.

let me say that flux is your best friend.

you may find the issue will go away when you are in production.

I would suggest that you remove, clean and replace the Resistor and Cap for Reset with flux, consider a reset chip.in production or can you make another board? using flux on every connection ?

then metho to clean...

I use a 10k and  0.1uF and a MIC803 reset chip.

AvaTar
Lead
Posted on May 02, 2018 at 08:05

I would suggest that you remove, clean and replace the Resistor and Cap for Reset with flux, consider a reset chip.

I would hand-wire a pull-up resistor (using wires, not the PCB) from Vcc to the NRST pin, or as close as you can get.

I agree that your description sounds like a cap is involved. Scoping the NRST pin is recommended, but I would be cautious with interpretations. For small parasitary components (caps and resistors), the scope impedance might fool you.

My next guess - some 'semi-conducting' liquid penetrated the Reset-button.

you may find the issue will go away when you are in production.

Or perhaps not ...