espressif / arduino-esp32

Arduino core for the ESP32
GNU Lesser General Public License v2.1
13.66k stars 7.41k forks source link

Backtrace:0x400839b1:0x3ffbeedc |<-CORRUPTED #6298

Closed gdanov closed 2 years ago

gdanov commented 2 years ago

Board

wemos lolin d32 pro

Device Description

none

Hardware Configuration

happens both with and without attached peripherials

Version

v2.0.2

IDE Name

emacs

Operating System

osx 12.1

Flash frequency

40MHz

PSRAM enabled

yes

Upload speed

1000000

Description

The crash messages have incomplete backtrace. Below is example using pio device monitor with monitor_filters = time, default, esp32_exception_decoder. Using platformio for build too.

00:09:22.640 >
00:09:22.640 > abort() was called at PC 0x40086097 on core 1
00:09:22.756 >
00:09:22.756 >
00:09:22.756 > Backtrace:0x400839b1:0x3ffbeedc |<-CORRUPTED
00:09:22.810 > #0 0x400839b1:0x3ffbeedc in panic_abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_system/panic.c:402
00:09:22.810 >
00:09:22.810 >
00:09:22.810 >
00:09:22.811 >
00:09:22.811 > ELF file SHA256: 0000000000000000

Tried to acquire the core dump as explained here but got message corefile.ESPCoreDumpLoaderError: Core dump version "0x9000" is not supported!

flash was dumped with esptool.py -p /dev/ttyUSB0 read_flash 32768 3072 /tmp/tmp2kvu_ifh

Sketch

don't know the reason for the crash

Debug Message

00:09:22.756 > Backtrace:0x400839b1:0x3ffbeedc |<-CORRUPTED
00:09:22.810 > #0 0x400839b1:0x3ffbeedc in panic_abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_system/panic.c:402

Other Steps to Reproduce

happens on two separate boards, same model, flashed in the same way

I have checked existing issues, online documentation and the Troubleshooting Guide

me-no-dev commented 2 years ago

if you do not provide your code, we have no way to assist you here

TobbeG commented 2 years ago

i have the same kind of issue, WDT gets triggered after a few hours or half a day. I have 5 units ESP322 Touchdown with same software, same problem with all - so its seems iots not hardware. I am using Arduino IDE 1.8.16 , ESP32 Dev Module - espressif system ESP32 Dev version 2.0.5 Arduino runs on Core 1 EVents runs on Core 1

Apart from this issue, everything works fine and Serial.print shows HEAP is stable and not the cause.

Debug prints 18:01:05.764 -> E (54025027) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time: 18:01:05.764 -> E (54025027) task_wdt: - IDLE (CPU 0) 18:01:05.764 -> E (54025027) task_wdt: Tasks currently running: 18:01:05.764 -> E (54025027) task_wdt: CPU 0: esp_timer 18:01:05.764 -> E (54025027) task_wdt: CPU 1: IDLE 18:01:05.764 -> E (54025027) task_wdt: Aborting. 18:01:05.764 -> 18:01:05.764 -> abort() was called at PC 0x4011e2dc on core 0 18:01:05.764 -> 18:01:05.764 -> 18:01:05.764 -> Backtrace:0x40083bf5:0x3ffbec6c |<-CORRUPTED 18:01:05.764 -> 18:01:05.764 -> 18:01:05.764 -> 18:01:05.764 -> 18:01:05.764 -> ELF file SHA256: 0000000000000000 18:01:05.764 -> 18:01:05.764 -> Rebooting... 18:01:05.810 -> ets Jun 8 2016 00:22:57 18:01:05.810 -> 18:01:05.810 -> rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) 18:01:05.810 -> configsip: 0, SPIWP:0xee 18:01:05.810 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 18:01:05.810 -> mode:DIO, clock div:1 18:01:05.810 -> load:0x3fff0030,len:1344 18:01:05.810 -> load:0x40078000,len:13864 18:01:05.810 -> load:0x40080400,len:3608 18:01:05.810 -> entry 0x400805f0 18:01:06.173 -> [ 4][D][esp32-hal-cpu.c:244] setCpuFrequencyMhz(): PLL: 480 / 2 = 240 Mhz, APB: 80000000 Hz

Totalgeek9224 commented 1 year ago

Bump- Similar issue

apbodrov commented 1 year ago

I had exactly the same bootloop, only the address in the backtrace is different. Using another microUSB cable helped

MichalMatu commented 1 year ago

thats my trigger: else if (receivedMessage.indexOf("scan") != -1) { String scanResults = ""; int numNetworks = WiFi.scanNetworks(); Serial.println("Scanning Wi-Fi networks...");

  for (int i = 0; i < numNetworks; i++)
  {
    scanResults += "Network name: " + WiFi.SSID(i) + " | Signal strength: " + String(WiFi.RSSI(i)) + "\n";
  }

  // Send the collected scan results to all clients
  Serial.println(scanResults);
  ws.textAll(scanResults);
}
Qtakruri commented 1 month ago

Anyone found the cause of this yet ?