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

abort() was called at PC 0x... on core 1

CrashesRecognised by the crash translator

What it looks like

assert failed: xQueueSemaphoreTake queue.c:1545 (( pxQueue ))
abort() was called at PC 0x400d5c2b on core 1
Backtrace: 0x40083a85:0x3ffb1e20 0x4008d6a1:0x3ffb1e40 0x400d5c2b:0x3ffb1e60

What it means

The firmware stopped itself on purpose. Something detected an impossible state and chose to crash rather than continue. The line just above abort() usually says what: an assert, a heap check, an uncaught C++ exception or an ESP_ERROR_CHECK failure.

Likely causes

  • A failed assert in ESP-IDF or a library (see the assert failed page).
  • ESP_ERROR_CHECK on a call that returned an error.
  • An uncaught C++ exception, such as std::bad_alloc when memory runs out.
  • Heap corruption detected by the allocator.

How to fix it

  1. Read the line above abort(): it names the check that failed.
  2. Decode the backtrace to see which of your functions led there.
  3. Check free memory with ESP.getFreeHeap() if the abort comes from an allocation.

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.