8000 TG1WDT_SYS_RESET Randomly, No Guru Meditation Error · Issue #1033 · espressif/arduino-esp32 · GitHub
[go: up one dir, main page]

Skip to content
TG1WDT_SYS_RESET Randomly, No Guru Meditation Error #1033
Closed
@Vincrl

Description

@Vincrl

Hardware:

Board: ESP32 Adafruit Feather Huzzah
Core Installation/update date: 25/jan/2018
IDE name: Arduino IDE
Flash Frequency: 80Mhz
Upload Speed: 921600

Description:

I have an embedded system that need to analyze a continual flow of UART information and transmit them on a fix frequency to a Database over TCP by using mbedTLS. To achieve that goal, I divided the Cores, so Core 0 takes care of WiFi transmission of data using mbedTLS of a JSON String. The Core 1 is simply reading package on the UART line and rights them in a buffer. The WiFi Task then reads these values every 10 seconds to transmit them if required by the server, it also transmits a smaller package if no informations are required by the server.

So here is the problem: After booting, everything setups just right. The ESP connects to the defined WiFi and it start its routine by transmitting. Then, randomly, (sometimes after 3 transmissions to server, other times 50) it reboots. but no giving any panic reasons or Guru Meditation (Verbose Option Active.) looking like this:

[I][HttpsHandler.cpp:25] process(): ----- Processing Https Request -----
[D][HttpsHandler.cpp:52] sendToDB(): Starting connection to server for update...
[V][ssl_client.cpp:48] start_ssl_client(): Free heap before TLS 107060
[V][ssl_client.cpp:50] start_ssl_client(): Starting socket
[V][ssl_client.cpp:86] start_ssl_client(): Seeding the random number generator
[V][ssl_client.cpp:95] start_ssl_client(): Setting up the SSL/TLS structure...
[V][ssl_client.cpp:108] start_ssl_client(): Loading CA cert
[V][ssl_client.cpp:143] start_ssl_client(): Setting hostname for TLS session...
[V][ssl_client.cpp:158] start_ssl_client(): Performing the SSL/TLS handshake...
[V][ssl_client.cpp:177] start_ssl_client(): Verifying peer X.509 certificate...
[V][ssl_client.cpp:186] start_ssl_client(): Certificate verified.
[V][ssl_client.cpp:201] start_ssl_client(): Free heap after TLS 65124
[D][HttpsHandler.cpp:58] sendToDB(): Connected to server!
[V][ssl_client.cpp:240] send_ssl_data(): Writing HTTP request...
[V][ssl_client.cpp:240] send_ssl_data(): Writing HTTP request...
[V][ssl_client.cpp:209] stop_ssl_socket(): Cleaning SSL connection.
[I][HttpsHandler.cpp:37] process(): ----- End of Https Request -----
[I][HttpsHandler.cpp:25] process(): ----- Processing Https Request -----
[D][HttpsHandler.cpp:52] sendToDB(): Starting connection to server for update...
[V][ssl_client.cpp:48] start_ssl_client(): Free heap before TLS 106520
[V][ssl_client.cpp:50] start_ssl_client(): Starting socket
[V][ssl_client.cpp:86] start_ssl_client(): Seeding the random number generator
ets Jun  8 2016 00:22:57

rst:0x8 (TG1WDT_SYS_RESET),boot:0x13 (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:1
load:0x3fff0018,len:4
load:0x3fff001c,len:956
load:0x40078000,len:0
load:0x40078000,len:13076
entry 0x40078a58
[I][wifiModule.ino:46] setup(): <--Booting WiFi Module-->

It does not always crashes at Seeding the random number, sometimes it crashes here:

[V][ssl_client.cpp:48] start_ssl_client(): Free heap before TLS 104556
[V][ssl_client.cpp:50] start_ssl_client(): Starting socket
[V][ssl_client.cpp:86] start_ssl_client(): Seeding the random number generator
[V][ssl_client.cpp:95] start_ssl_client(): Setting up the SSL/TLS structure...
[V][ssl_client.cpp:108] start_ssl_client(): Loading CA cert
[V][ssl_client.cpp:143] start_ssl_client(): Setting hostname for TLS session...
[V][ssl_client.cpp:158] start_ssl_client(): Performing the SSL/TLS handshake...
ets Jun  8 2016 00:22:57

rst:0x8 (TG1WDT_SYS_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee

I used to have a much more stable build. But since a few time it started acting out and I cant find the solution.

Sketch:

I am sadly not in the right to disclose the code at the moment but ill try to post to you guys a working example with the same crash.

What I tried:

  • Change Package size to smaller (Give more RAM)
  • Verify power is enough (2.1A 5V USB Source).
  • Increase HTTPS Requests Frequency (10s or 1min, same thing.)
  • Disable All Watchdogs in sdkconfig file:
	Line 209: CONFIG_INT_WDT=
	Line 210: CONFIG_INT_WDT_TIMEOUT_MS=300
	Line 211: CONFIG_INT_WDT_CHECK_CPU1=
	Line 212: CONFIG_TASK_WDT=
	Line 213: CONFIG_TASK_WDT_PANIC=
	Line 214: CONFIG_TASK_WDT_TIMEOUT_S=5
	Line 215: CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU0=
	Line 216: CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU1=

I am open to any solutions if you guys have some propositions. Thank You.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0