Quote Originally Posted by mpgmike View Post
I had a project that lived in an electrically noisy environment. Prior to that I used 10k pull-ups on MCLR in addition to the internal WPU. It kept RESETting randomly. I swapped the 10k to a 4.7k and the random RESETs went away. That pull-up is pretty important. It not only serves as a pull-up to VDD, but also a pull-down to VDD to counter noise & spikes in the power supply. If MCLR goes low, it RESETs. If MCLR goes high (>VDD), it goes into Programming Mode. Both can cause issues.
A cap from MCLR to ground is also necessary to kill the spikes.

But if the pin can be programmed as I/O then these problems are minimised.

Ioannis