My code is based on the TPS65381/RM46_FreeRTOS project. I am able to consistently transition to the DIAGNOSTIC state at power-up by setting the bit in the SAFETY_CHECK_CTRL register, and my Q+A WD code works and I am able to to get into the ACTIVE state and hold ENDRV high while sending a steady stream of WD answers. The problem is that it sometimes takes on the order of milliseconds to go ACTIVE and see the WdFailCount go to zero, and other times it may take 30 seconds, or 30 minutes, or forever. I stay in a DIAGNOSTIC state sending WD answers, waiting for the WdFailCount to drop to zero. Additionally, when I attach or remove the JTAG connector while the code is running and still in DIAGNOSTIC, the act of connection/removing the JTAG connector will cause the watchdog to start working and the 65381 goes ACTIVE and stays there. I am guessing this is due to ESD causing the MCU to reset? Can someone shed light on what is going on at startup, and explain what condition causes the watchdog to sometimes be satisfied immediately and sometimes after seconds/minutes/hours?
Thanks,
Bobby Goldberg