Watchdog Timer Reset
Espressif ESP32
Severity:What Does This Error Mean?
ESP32 watchdog timer reset means a task ran for too long without yielding control back to the FreeRTOS scheduler. Add delay(1) or vTaskDelay(1) inside any long loop to give the watchdog a chance to reset. This prevents the watchdog from force-rebooting the chip.
Affected Models
- ESP32-DevKitC
- ESP32-WROOM-32
- ESP32-S3
- ESP32-C3
- All ESP32 variants
Common Causes
- Long blocking loop in the Arduino loop() function or a FreeRTOS task
- Blocking network call (HTTP request) taking too long
- Waiting in a while() loop without yielding
- Interrupt handler running for too long
- Task starvation — idle task cannot run to pet the watchdog