We are having an ESD Immunity compliance issue. Our PCBA is fully enclosed in a metal chassis. The chassis is connected to earth ground. The GND of the PCBA within the enclosure is connected to chassis at one point. If we do a 4 KV direct-contact discharge to the chassis connection to external ground (a wire), the TIVA processor sometimes hangs permanently in a very strange mode even though the watchdog was enabled. (25-50% of discharges cause this effect) In other words, the watchdog does not cause the chip to reset even though it seems to be hung.
We have tried enabling both Watchdog1 and Watchdog2 (but not at the same time). I have confirmed that the watchdog timeout definitely causes a reset under other circumstances so I believe it is being set up correctly. But after the 4KV discharge, the processor seems to be halted. We do not use hibernate mode in our application. When halted; I have verified that the /HIB pin is high both in normal operation and when in the "halted" state. I have instrumented other parts of my code and everything seems to have stopped. The 25 MHz signal is definitely running. If I then manually ground the /RST pin, the device resumes proper operation.
So, why doesn't the watchdog cause the device to reset?
Device: TM4C1294KCPDTI3
ARM compiler: 5.2.7
TIVAWARE version: 2.1.1.71b
TI-RTOS version: 2.16.0.8
NDK version: 2.25.0.9