Guru Meditation Error: Core 0 panic'ed (Interrupt wdt timeout on CPU0)
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
- Keep interrupt handlers to a few lines: set a volatile flag or give a semaphore, then do the work in loop() or a task.
- Never call Serial, delay() or Wire inside an interrupt handler.
- 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.