It happens, we’ve all been there. You look away for a second and things get hot. Fortunately components are resilient and can often survive a little abuse.
Here are a few things to check before chucking your device into the bin.
Does the device boot as expected?
- Is your Status LED going through the connection cycle like it normally would? (link)
- If so, does it breath cyan once done and can you ping it from the cloud?
If the above are true, be sure to check all the pins by setting them to digitalWrite(Pin, HIGH); and checking for 3V3 with a multimeter.
Do a second check with digitalWrite(Pin, LOW); and check that the voltage reads 0V on the pin.
If you are using SPI, I2C or analog functions, be sure to check that those protocols still function as expected.
In most cases your device should emerge unscathed from an errant short.
The Status LED is not turning on
If you don’t see a Status LED, -start worrying- there is still hope.
Remove your device from any shield or feather and disconnect all cables and batteries.
Try the following steps:
- Tap the RESET button. Your device could be sleeping. If it responds, set the device into Safe Mode and see if it connects.
- Ensure that there is power going to the device. If you are using USB, test the cable on another device. Try powering it from a known-good battery.
- If it is battery powered, try powering it via USB.
- If you are sure power is going to the device, check the EN pin - is it pulled to GND? It should read 3V3 for a device to function normally.
- Use a multimeter to verify that the 3V3 pin reads 3V3.
If you have no luck with the above, it is likely that your device has been damaged and will have to be replaced.
My device works when removed from the breadboard circuit, but not when plugged in
If your device works in isolation, but plugging into the circuit causes issues, check the following items:
- Verify that there are no shorts between the power pins and GND using a multimeter in Continuity mode - see this Sparkfun guide
- The power pins are 3V3, Li+ and VUSB on Gen 3 devices and 3V3, VIN and VBAT on Gen 2 devices.
- Make sure that none of the GPIO pins are shorted directly to ground when being driven HIGH.
My device gets really warm when the battery is plugged in
Make sure your battery connector conforms to the Feather specification and that the polarity is not reversed. See the Particle battery tutorial.
If the polarity is correct, check with a spare battery if possible.
Measure the voltage on the battery. It should measure between 3.4 and 4.2V.
When powered by a USB cable or via VUSB, my device gets very warm
Check that there are no shorts between VUSB and GND by using a multimeter in Continuity mode - see this Sparkfun guide
When powered “off” with the EN pin pulled low, my device remains powered (back powered)
The NRF52840 is a very low-power microcontroller, capable of functioning with an input voltage as low as 1.8V. If the main power supplies are cut off, it is possible to “back power” the NRF via pull-ups on the I2C or GPIO pins. Always make sure your pull-ups are connected to the 3V3 pin on the device, and not to an external power rail.