ESP32 Bench
Boards: ESP32, S3, C3
Flash and monitor: Web Serial
← All errors

Guru Meditation Error: Core 0 panic'ed (Interrupt wdt timeout on CPU0)

CrashesRecognised by the crash translator

What it looks like

Guru Meditation Error: Core  0 panic'ed (Interrupt wdt timeout on CPU0).

What it means

Interrupts were blocked on one core for longer than the interrupt watchdog allows, about 300 ms by default. The chip panics so it does not hang.

Likely causes

  • Long work inside an interrupt handler: Serial.print, delay(), I2C or SPI transfers, or loops waiting on hardware.
  • A critical section (portENTER_CRITICAL or noInterrupts()) held for a long time.
  • A spin-wait in an interrupt on a flag that another task sets.

How to fix it

  1. Keep interrupt handlers to a few lines: set a volatile flag or give a semaphore, then do the work in loop() or a task.
  2. Never call Serial, delay() or Wire inside an interrupt handler.
  3. Mark interrupt handlers IRAM_ATTR.

Paste your full log

The lines around the error usually say more. Paste everything from the reset to the backtrace and the crash translator explains each part. It runs in your browser; nothing is sent anywhere.