Skip to content

ESP-12E Node MCU will resets automatically at every time and stack overflow #2558

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
BharathTatikonda opened this issue Sep 29, 2016 · 17 comments

Comments

@BharathTatikonda
Copy link

Basic Infos
Hardware

Hardware: ?ESP-12?
Core Version: ?2.1.0-rc2?
hi, i have started ESP12-E to work with the GSM module, in this when i was running the it should be reset automatically when some messages will receives,... then it reset and restarted from first so the function is not completed,,....so, please suggest me how to disable the watchdog timer,..... when i run the program the error will be like this///.........

Soft WDT reset

ctx: cont
sp: 3ffefc90 end: 3ffeff00 offset: 01b0

        stack>>>
        3ffefe50: 00000001 00000001 00000000 402030ea

        3ffefe60: 00000106 00000000 000005dc 00001388

        3ffefe70: 00000005 3ffe87c0 00000004 40202fe8

        3ffefe80: 3ffe8517 3ffeed24 3ffeee1c 00000000

        3ffefe90: 00000005 000005dc 3ffe8ba2 4020313e

        3ffefea0: 4010564a feefeffe 3ffeee1c 3ffeeed0

        3ffefeb0: 3fffdad0 3ffe8ba2 00000000 40202b77

        3ffefec0: 3fffdad0 3ffeebe0 3ffeee1c 40201fd4

        3ffefed0: feefeffe 00000000 3ffeeec8 4020213d

        3ffefee0: feefeffe feefeffe feefeffe 4020388c

        3ffefef0: feefeffe feefeffe 3ffeeee0 40100718

        <<<stack<<<

so, please suggest me how to disable the watchdog timer and controlling of stack overflow in the esp12-e module
Settings in IDE

Module: ?Generic ESP8266 Module?
Flash Size: ?4MB/1MB?
CPU Frequency: ?80Mhz?
Flash Mode: ?qio?
Flash Frequency: ?40Mhz?
Upload Using: ?OTA / SERIAL?
Reset Method: ?ck / nodemcu?

@reaper7
Copy link
Contributor

reaper7 commented Sep 29, 2016

You are using any gms library or Your own functions for communication with gsm module?
Probably some functions waiting too long for response from gsm module and this is a reason of WDT reset.
You must search for "while loop" functions inside Your code(or gsm library) and insert yield(); inside.

P.S. Your stack without full code is useless.

@BharathTatikonda
Copy link
Author

yahh, i am using gsm libraries and i have also used the yield(); in while loops, it will ok means some what reduces the reset functioning but at some times the esp will going to reset,.... i want to modify that purely.....................

@BharathTatikonda
Copy link
Author

please tell me how to manage this reset one and stackover flow completely,..............

@reaper7
Copy link
Contributor

reaper7 commented Sep 29, 2016

Please install ESPExceptionDecoder
howto:
https://github.com/me-no-dev/EspExceptionDecoder

@BharathTatikonda
Copy link
Author

ok i will try and then contect with u

@BharathTatikonda
Copy link
Author

after installing, i want to include in my program or i want to run in my controller or just save in to my library section...........

@WereCatf
Copy link
Contributor

You can't disable the watchdog completely, you have to fix the code to call yield().

@BharathTatikonda
Copy link
Author

ooh what is the main function of yield(): and where i should use the yield(); funtions

@WereCatf
Copy link
Contributor

yield() does some background-stuff that you don't have to know the specifics of, but calling it periodically keeps the watchdog-timer happy. If you have long while-loops or for-loops or other sections of code that take a long time to run then those sections will have to also call yield() every now and then in order not to trigger watchdog.

@BharathTatikonda
Copy link
Author

ok what about in the if-else statements..............

@BharathTatikonda
Copy link
Author

but probably in my code sometimes getting the complete actions but in sometimes the esp will be going to reset,..... i want to maintain the complete actions at everytime,,...how it is possible?,,,,..

@WereCatf
Copy link
Contributor

Like I said, use yield() in any sections of code that may take a long time to run. It's up to you to know what sections take a long time to run and which ones don't.

@BharathTatikonda
Copy link
Author

Ok how much time the watchdog timer will going to be reset the
microcontroller............

On Sep 29, 2016 18:52, "WereCatf" notifications@github.com wrote:

Like I said, use yield() in any sections of code that may take a long time
to run. It's up to you to know what sections take a long time to run and
which ones don't.


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#2558 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AURsQ3nciblMOYXOFvlVFluRMJ8LBulhks5qu7ungaJpZM4KJuXl
.

@WereCatf
Copy link
Contributor

@satech-domo
Copy link

One suggestion to get info about your ESP when itgoing wrong
set up the terminal speed at 74880 and restart ESP.
You may get different messages to help your diagnostic.

@devyte
Copy link
Collaborator

devyte commented Oct 12, 2017

Closing per #3655 .

@sunil11101
Copy link

it can be a problem of power connect battery which can supply sufficient amount of power with no voltage sage

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants