This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nRF51822 sometimes won't respond to hardware reset

On our custom board, we have a dedicated hardware reset IC which toggles the nRF51822's nRST line low in response to a magic button press. The nRST line has an external 100k pullup to VDD.

In several months of regularly using this circuit to reset the nRF51, thrice I have seen the chip get into a state where pulling the nRST line low does not reset the chip. Once this occurs, nothing will reset the chip short of disconnecting the power; even manually shorting nRST to ground has no effect. The firmware and everything else continues to run normally, however, since the nRF51 will not reset I cannot reprogram the firmware until I cut the power.

I suspect the problem may be related to pin latchup given the sporadic nature of the issue. There are a few suggestions in the DevZone about adding --pinreset to nrfjprog.exe (here) and installing a bypass capacitor (here), both of which I've added to a test board with no luck.

Short of modifying the electrical design to actually disconnect the power for a reset, is there anything else I can do that might mitigate the problem?

  • @Nick Pelis: I am suspecting that you chip might accidentally enter debug mode, maybe because of an ESD pulse happens on the SWDCLK pin.

    Why do you have 100k pullup on the nRRST line ? There is already a 12k pull up internally. I would suggest you to try adding a pull down resistor on the SWDCLK pin to have more resistance over ESD, try 470 Ohm. The draw back will be it could be harder for the programmer to flash the chip.

    Also please let me know your chip version (laser marking). On our chip version 3 you should be able to trigger a pin reset when in debug mode.

  • Thanks for the response @Hung Bui. I figured it was a momentary electrical glitch of some sort.

    We will delete the external pullup resistor in the next version of the design, and add a pulldown on SWDCLK on your recommendation.

    The markings on our chips say "NRF51822 CFACA0 1452AE".

  • From the laser marking, your chip is revision 3 chip and it should be able to get out of debug mode with a pin reset. But I'm not 100%sure about this, will confirm with R&D. Please let us know if you experience the issue again.

Related