Hardware watchdog
Watchdog.init
Watchdog.init(WatchdogConfiguration().timeout(30s));
Watchdog.start();
The minimum is 1 millisecond, but you should never set it that short since it will frequently fire as the thread scheduler works at 1 millisecond timeslices, and any delays caused by high priority threads or disabled interrupts will exceed that limit.
The maximium varies by platform:
- Boron, B Series SoM, Argon, Tracker SoM (nRF52840): 131,071,999 milliseconds
- P2 and Photon 2 (RTL872x): 8,190,000 milliseconds (around 2 hours and 15 minutes)
Watchdog capabilities
WatchdogConfiguration.capabilities, capabilities
On nRF52840 (Boron, B Series SoM, Argon, Tracker SoM) devices, you can optionally keep the watchdog running during sleep by using a capabilities flag:
Watchdog.init(WatchdogConfiguration()
.capabilities(WatchdogCap::SLEEP_RUNNING)
.timeout(20min));
Watchdog.start();