Part Number: MSP430F2617
During testing of one of our products, we discovered that occassionally, the watchdog timer (WDT) was detected to be tripped at startup.
Upon further investigation, it was found that the WDT appears to occur before user code ever executes - this was confirmed by utilizing a `__low_level_init()` function that asserts one GPIO as soon as possible and then asserts a different GPIO if the WDT IFG is set. In subsequent scope captures, most devices come up relatively quickly (< 2ms) indicating no WDT has occurred. However, some devices appear to come up after a significant period of time (> 30ms) and immediately indicate a watchdog timeout before our code has ever executed. This 30ms period closely corresponds with the expected watchdog duration (~1.1MHz nominal CPU speed, 32768 watchdog period).
Legend for captures:
* CH1 (Yellow) - battery enable signal (switches power source from slow turn on regulator to internal battery, which comes up much faster)
* CH2 (Green) - WDT IFG detected, gets asserted high in __low_level_init if the WDT IFG is set. If the IFG is low, this pin is de-asserted
* CH3 (Blue) - GPIO that is always asserted as soon as the processor begins executing __low_level_init()
* CH4 (Pink) - VCC supply rail

Figure 1: Nominal startup case - __low_level_init() executes and no WDT event is detected (green trace remains low).

Figure 2: it can be seen that the processor begins executing our code with the WDT asserted (green trace goes high along with blue) before we have ever executed code.
The fact that the 30ms period closely aligns with the watchdog period seems to imply that the DCO/MCLK are running, but our code does not appear to be executing and we need to determine what exactly is happening in the processor during this period.
Question: For these devices that take > 30ms to start up and indicate an immediate watchdog, what is the CPU doing during this period? Is it halted? Is it executing arbitrary code (e.g. off in the weeds)?
Background:
We discovered an LDO in our design with a mis-specified bypass capacitor, which causes the MSP430's VCC supply to rise slower than anticipated. When this bypass capacitor is precharged, our supply comes up much quicker and we do not see these watchdog/slow startup issues.
This problem only occurs on a few of our products (e.g. 10% occurrence), and we suspect it's related to the VCC startup process.
