An independent watchdog (IWDG on STM32) runs from its own dedicated low-speed clock, separate from the main clock tree, so it keeps counting even if the system clock fails or is misconfigured, maximally robust, and once started it generally can't be stopped. You must kick it before it times out; kicking any time before the deadline is fine. A window watchdog (WWDG) adds a lower bound: you must kick within a window, not too late and not too early. Kicking too early triggers a reset just like kicking too late. The reason to forbid early kicks is that healthy firmware has a known timing cadence; if it suddenly starts kicking much sooner than expected, it's likely looping incorrectly or executing an unintended path, so the window watchdog detects both "stopped making progress" and "running abnormally," a stronger correctness guarantee than a simple timeout. You use IWDG for robust liveness against total hangs, and WWDG when you also want to catch timing/flow anomalies.
Embedded Systems Fundamentals · Interview question
What's the difference between an independent watchdog and a window watchdog?
A strong answer
What a weak answer sounds like
You know the answer. Do you know what gets you dinged?
Pro breaks down the answer most candidates actually give to this question — and the specific reason an interviewer marks it down. It’s the difference between sounding correct and sounding senior, on all 472 questions.
From the lesson
The Watchdog Timer
The hardware that resets a hung MCU: a countdown timer firmware must periodically kick, why you kick only from healthy code, and the window-watchdog twist.
More The Watchdog Timer questions
What is a watchdog timer and what problem does it solve?Where in your code should you kick the watchdog, and what's the common mistake?How do you choose the watchdog timeout, and what goes wrong at the extremes?Why does your chip keep resetting when you pause at a breakpoint, and how do you handle long legitimate operations?
Browse all 472 interview questions