-
Notifications
You must be signed in to change notification settings - Fork 7.7k
Closed
Labels
Area: WiFiIssue related to WiFiIssue related to WiFiStatus: Awaiting triageIssue is waiting for triageIssue is waiting for triage
Milestone
Description
Board
ESP32 Dev Module
Device Description
Espressif Dev module
Hardware Configuration
W5500 wired to default SPI pins
Version
latest development Release Candidate (RC-X)
IDE Name
Arduino IDE
Operating System
Linix Mint
Flash frequency
80 MHz
PSRAM enabled
no
Upload speed
921600
Description
ETH.end() crashes
Sketch
#define ETH_PHY_TYPE ETH_PHY_W5500
#define ETH_PHY_ADDR 1
#define ETH_PHY_CS 5
#define ETH_PHY_IRQ 26
#define ETH_PHY_RST -1
#define ETH_PHY_SPI SPI
#include <ETH.h>
void setup() {
Serial.begin(115200);
delay(500);
SPI.begin();
ETH.begin();
while (!ETH.hasIP()) {
Serial.print('.');
delay(1000);
}
ETH.end();
ETH.begin();
while (!ETH.hasIP()) {
Serial.print('.');
delay(1000);
}
}
void loop() {
}
Debug Message
CORRUPT HEAP: Bad tail at 0x3ffb9a00. Expected 0xbaad5678 got 0x00000000
assert failed: multi_heap_free multi_heap_poisoning.c:276 (head != NULL)
stack trace:
0x400827ad: panic_abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_system/panic.c:466
0x40088709: esp_system_abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_system/port/esp_system_chip.c:84
0x4008d99a: __assert_func at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/newlib/assert.c:81
0x4008cb25: multi_heap_free at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/heap/multi_heap_poisoning.c:276 (discriminator 1)
0x40083792: heap_caps_free at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/heap/heap_caps.c:388
0x4008d9d9: free at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/newlib/heap.c:39
0x4011dddd: post_instance_delete at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_event/esp_event.c:439
(inlined by) esp_event_loop_run at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_event/esp_event.c:615
0x4011de40: esp_event_loop_run_task at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_event/esp_event.c:107 (discriminator 15)
Other Steps to Reproduce
WiFi has _esp_netif = NULL;
before destroyNetif();
. Doing this in ETH.end() avoids the crash, but following ETH.begin() then ends with "E (8710) esp_eth: esp_eth_driver_uninstall(263): 2 ethernet reference in use".
I have checked existing issues, online documentation and the Troubleshooting Guide
- I confirm I have checked existing issues, online documentation and Troubleshooting guide.
Metadata
Metadata
Assignees
Labels
Area: WiFiIssue related to WiFiIssue related to WiFiStatus: Awaiting triageIssue is waiting for triageIssue is waiting for triage
Type
Projects
Status
Done