Closed
Description
Hardware:
Board: ESP32-WROOM-32U
Core Installation version: 1.0.6 (pio version 3.3.1)
IDE name: Platform.io
Flash Frequency: 40Mhz
PSRAM enabled: Yes
Upload Speed: 115200
Computer OS: Windows 10
Description:
I'm currently trying to reassign Serial2 on an ESP32 custom development board between GPIO pins 14,22 and 2,32.
I need to be able to do this multiple times in a sketch to talk to two channels of sensors via modbus.
The below sketch however crashes with a Core 0 panic after some number of changes.
Sketch: (leave the backquotes for code formatting)
#include <Arduino.h>
HardwareSerial SerialOne(0);
HardwareSerial SerialModem(1);
HardwareSerial SerialSensors(2);
void setup() {
SerialOne.begin(115200, SERIAL_8N1, GPIO_NUM_3, GPIO_NUM_1);
SerialModem.begin(115200, SERIAL_8N1, GPIO_NUM_16, GPIO_NUM_17);
SerialSensors.begin(9600, SERIAL_8N1, GPIO_NUM_14, GPIO_NUM_22);
}
void loop() {
delay(2000);
SerialOne.println("Changing serial Sensors to D2");
SerialSensors.begin(115200, SERIAL_8N2, GPIO_NUM_2, GPIO_NUM_32);
delay(2000);
SerialOne.println("Changing serial Sensors to D1");
SerialSensors.begin(115200, SERIAL_8N2, GPIO_NUM_14, GPIO_NUM_22);
}
Debug Messages:
rst:0x10 (RTCWDT_RTC_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Changing serial Sensors to D1
Changing serial Sensors to D2
Guru Meditation Error: Core 0 panic'ed (LoadProhibited). Exception was unhandled.
Core 0 register dump:
PC : 0x400e25fb PS : 0x00060b30 A0 : 0x80086128 A1 : 0x3ffb78b0
A2 : 0x00000000 A3 : 0x00000000 A4 : 0x00060023 A5 : 0x3ffb796c
A6 : 0x00000000 A7 : 0x00000001 A8 : 0x800e25fb A9 : 0x3ffb7870
A10 : 0x00000001 A11 : 0x00000000 A12 : 0x3ffaffe8 A13 : 0x00000000
A14 : 0x3ffaff9c A15 : 0x00060023 SAR : 0x00000000 EXCCAUSE: 0x0000001c
EXCVADDR: 0x0000000b LBEG : 0x00000000 LEND : 0x00000000 LCOUNT : 0x00000000
ELF file SHA256: 0000000000000000
Backtrace: 0x400e25fb:0x3ffb78b0 0x40086125:0x3ffb78d0
Rebooting...
Decoded Backtrace:
PC: 0x400e25fb: __stack_chk_fail at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp32/stack_check.c line 35
EXCVADDR: 0x0000000b
Decoding stack results
0x400e25fb: __stack_chk_fail at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp32/stack_check.c line 35
0x40086125: vQueueDelete at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/queue.c line 1796
Metadata
Metadata
Assignees
Labels
No labels