Puff of smoke in air. 3 different PCBs. PCB has ghosts?
12 V rail has a bunch of DC barrel jacks on it that will be exposed to end users. So, naturally I decided to jam a jeweler's screwdriver into one of them to conduct my short circuit test.
Which means you put +12V on the unprotected JACK_DETECT
line, frying the MCU. See "voltage on any pin [..]" above.
Re-design the circuit that a dead short between VBAT+
and JACKx_DETECT
does not allow the voltage on the MCU pin to rise above VCC - e.g. with a resistor and a diode.
I think your switch in the LOAD_GND line is probably the guilty party here, combined with the unprotected jack detect lines to the micro (Which I would note are connected to LOAD_GND for any jack where there is NOT a plug inserted.
Consider what happens if you turn off that mosfet (The jack detect lines on any socket without a jack inserted will be connected to the battery voltage via the short circuited load, smoke will ensue), you should at least have some series resistance and a clamp on the jack detect lines (Say 10k or so and a pair of diodes), but really I don't see what the LOAD_GND switch really buys you over a high side switch?
Incidentally, the automotive scene has really nice logic controlled high side switches with built in over current trip and current sensing, well worth a look.