New Reboot Cause. What's this?

Moderators: grovkillen, Stuntteam, TD-er

Post Reply
Message
Author
User avatar
schnurzel59
Normal user
Posts: 32
Joined: 18 Feb 2019, 12:41
Location: Germany
Contact:

New Reboot Cause. What's this?

#1 Post by schnurzel59 » 24 Mar 2019, 23:44

Hello,
New Reboot Cause. What's this?Just ran my ESP 27h without error. Just as I wrote about it, he rebooted, it took longer than usual.
There is something completely new. See the picture. An old and the new main screen summarized.
the left Side are old. The right Side are new.
ganz neu.jpg
ganz neu.jpg (87.94 KiB) Viewed 3270 times
Greetings Martin

Oh God, my English is horrible.

TD-er
Core team member
Posts: 8643
Joined: 01 Sep 2017, 22:13
Location: the Netherlands
Contact:

Re: New Reboot Cause. What's this?

#2 Post by TD-er » 25 Mar 2019, 16:28

Well it is not "completely new" :)
The hardware (and software) watchdog are protection schemes to reboot the ESP when they appear to be stuck.
Normally the watchdog timer has to be reset before it will issue a reboot. This is done by calling a delay() or just at the end of a loop.
Sometimes a task may take too long and thus preventing us from calling delay() which will trigger the reboot.
This almost always happens when trying to make a network connection, or waiting for new data from the network but the network is not connected anymore.
There seems to be some bug somewhere which prevents us from getting notified of such a disconnect.

The Exception is caused by something else.
In the ESP code base, there are not that many places where exceptions can be thrown, so it is very likely some memory allocation that failed or an invalid pointer being dereferenced without proper checking.
The out of memory can happen sometimes and I know we do not check for memory allocations as much as we should, so a failed allocation can throw an exception.
For example if you try to create a string of a few kb, while there isn't a free block available of that size.
It can also be that there has been a stack overflow, or some pointer is being used while not initialized.
That last one is actually a programming error.

If you can give the active plugins running on that node, I can have a quick look to see if any of them is using uninitialized pointers.

User avatar
schnurzel59
Normal user
Posts: 32
Joined: 18 Feb 2019, 12:41
Location: Germany
Contact:

Re: New Reboot Cause. What's this?

#3 Post by schnurzel59 » 27 Mar 2019, 01:44

Hi,
"New" is for me only the reason of the reboot.
And the Free Memory and the Free Stack Comments: "sendContentBlocking" and "parseTemplate3"
I control 3 shutters. This happens depending on time and temperature. All calculations are done externally in my homematic.
Only commands are sent to the ESP with HTTP .... control?cmd=event,move=left,mid,right. The commands come from the Homematic or via app from the smartphone.
All current values ​​are sent to the Homematic with the controller. After a reboot, the data is automatically restored.
I use 6 relays (3 up and 3 down). Data is stored in dummy devices. The relays are switched with long pulses.
One switch is set up to use longpulse. Without a switch, relays will not turn off.
I would like to compile my own version with the Arduino IDE. But I do not manage to find a suitable Arduino version and a suitable ESPEasy-release without any mistakes.
In the last attempts, I mainly had the error in the Arduino-IDE

Code: Select all

StringProvider: 3:25: error: 'LabelType' has not been declared
WebServer:2930:23: error: 'LabelType' has not been declared
And so on. And many more.
In the StringProvider.ino i found:

Code: Select all

String getLabel(LabelType::Enum label) {
  switch (label)
i am not the great Programmer. But is that not a declaration?
About a small hint to the solution of this problem, I would be very happy.
Incidentally, my current ESPEasy build is: mega-20190315
Greetings Martin

Oh God, my English is horrible.

User avatar
ThomasB
Normal user
Posts: 1064
Joined: 17 Jun 2018, 20:41
Location: USA

Re: New Reboot Cause. What's this?

#4 Post by ThomasB » 27 Mar 2019, 02:56

About a small hint to the solution of this problem, I would be very happy.
Incidentally, my current ESPEasy build is: mega-20190315
I suspect that the issue regarding the LabelType declaration is related to the location of the StringProviderTypes.h header file. See the comments here:
viewtopic.php?f=6&t=6576

- Thomas

User avatar
schnurzel59
Normal user
Posts: 32
Joined: 18 Feb 2019, 12:41
Location: Germany
Contact:

Re: New Reboot Cause. What's this?

#5 Post by schnurzel59 » 28 Mar 2019, 22:20

Thank You,
Greetings Martin

Oh God, my English is horrible.

Post Reply

Who is online

Users browsing this forum: No registered users and 35 guests