In my last post, “What is a watchdog timer, and why is it important?” I discussed how watchdog timers (WDTs) work and how you can implement them in your system. In this post, I’ll talk about why you should use a watchdog timer in your application, how a window watchdog timer works and some additional watchdog timer features that make them a great addition to many different applications.
Why should you use a watchdog timer in your application?
Watchdog timers have a home in a wide variety of applications, from drones and grid metering to motor control and beyond. For all of these different applications, the watchdog timer provides the same basic functionality: monitoring the processor for errant operation and issuing a corresponding signal.
However, the utility of this monitoring can vary based on the type of application. For example, it’s impractical to expect someone to manually reset a drone whose processor hangs up when it’s hundreds of feet in the air. In smart meters, this same issue could cause the device to be unable to read or record information. Meters and sensors in remote locations can also experience software failure causing the system to be unable to read and record information and no one to manually reset it. Code failure in systems that control motors and other mechanical components is especially alarming as faulty operation of these systems could cause physical harm to operators and nearby persons. Fortunately, using a watchdog timer can add redundancy to catch these errors and help prevent these problems from occurring.
How does a window watchdog timer work?
A window watchdog timer, like that in Figure 1, is a special type of watchdog timer that monitors not only if the signal from the processor fails to send before the watchdog timeout ends (i.e. upper watchdog boundary) but also if the processor sends the watchdog input (WDI) signal before the watchdog timeout window begins (i.e. lower watchdog boundary). This functionality is illustrated in Figure 2.
Figure 1: A window watchdog timer (TPS3850) monitoring a microcontroller
Figure 2: Window watchdog functionality
This is unlike a standard watchdog timer which only checks to see if the pulse comes before the timeout ends. Being able to monitor for an early WDI signal is useful as it can detect and halt undesirable overclocking.
What are some additional watchdog timer features?
The window watchdog timer is just one type of additional functionality in watchdog timers. Several additional features can ensure the robustness and functionality of a system:
- Adjustable watchdog timeout – Different systems and applications require different timeout periods for their WDI signal. An external capacitor and SET pins can be used to adjust the watchdog timeout anywhere from a few milliseconds to over a minute.
- Watchdog timer disable function – Some watchdog timers can be disabled using a pin on the device. This feature is useful during system initialization and debugging, when you don’t want to reset the processor.
Table 1: TI’s TPS3850 family
Now that you’ve learned more about the importance of a watchdog timer, how a watchdog timer works, and some additional features, consider the TPS3850 family when designing your next application.