Giter Club home page Giter Club logo

Comments (7)

r-hmn avatar r-hmn commented on August 26, 2024 2

Update; I posted my problem here.
Turned out i was writing outside a buffer and my stack sometimes got overwritten because memory/stack is quite full, hence strange errors happened.

from esp-exception-decoder.

dankeboy36 avatar dankeboy36 commented on August 26, 2024

I looked into it, @r-hmn, and I could reproduce the same behavior, but I do not think this is a decoder bug. Your stack dump looks invalid. See here, ESP8266 stack dump starts with >>>stack>>> and ends with <<<stack<<<. Yours not.

Your starts with this:


User exception (panic/abort/assert)
--------------- CUT HERE FOR EXCEPTION DECODER ---------------

Panic core_esp8266_main.cpp:191 __yield

>>>stack>>>

ctx: sys
sp: 3ffff570 end: 3fffffb0 offset: 0010
3ffff580:  00000000 00000001 00000000 40211905  

And another stack dump comes in before the other dump is fully printed(?):

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

Panic core_esp8266_main.cpp:191 __yield

>>>stack>>>

ctx: sys
sp: 3ffff290 end: 3fffffb0 offset: 0010
3ffff2a0:  00000000 00000000 00000000 40103132  

You should ask the Arduino forum (https://forum.arduino.cc/c/software/ide-2-x/93) why you see two stack dumps. Share the board and your sketch (if you can) with the community. The decoder will work once you figure out how to have one stack dump.

from esp-exception-decoder.

dankeboy36 avatar dankeboy36 commented on August 26, 2024

another stack dump comes in before the other dump is fully printed(?):

Maybe it's due to the serial monitor in IDE2: arduino/arduino-ide#1081.

You can print the monitor to an actual terminal and copy it back to the decoder terminal.

  • open IDE2,
  • make sure the monitor widget is not open, and the monitor is not running,
  • select the board, verify, and upload from IDE2 as usual,
  • remember the port your board is attached to (mine is /dev/cu.usbmodem14101 for this example),
    Screen Shot 2023-10-24 at 15 44 26
  • (from the screenshots, I am assuming you're on Linux) navigate to the resources/app/lib/backend/resources folder inside your IDE2 installation,
  • you see the arduino-cli executable there. if you run ./arduino-cli version, it prints the version
  • if you run ./arduino-cli monitor -p /dev/cu.usbmodem14101 (your port is probably different), you will see the monitor output in the terminal. Here is my example (I am on macOS, though):
% pwd
/Applications/Arduino IDE.app/Contents/Resources/app/lib/backend/resources
% ./arduino-cli version
arduino-cli  Version: 0.34.0 Commit: 304d48cd Date: 2023-08-22T15:54:20Z
% ./arduino-cli monitor -p /dev/cu.usbmodem14101
Connected to /dev/cu.usbmodem14101! Press CTRL-C to exit.
count=10000000, lines/sec=0
count=10000001, lines/sec=0
count=10000002, lines/sec=0
count=10000003, lines/sec=0
count=10000004, lines/sec=0

Now, you can check if you really see two stack dumps overwriting each other. If you see the dump between >>>stack>>> and <<<stack<<<. It's an IDE2 bug with the monitor, and the decoder should work. If you see two starting >>>stack>>> tags but no trailing one, I would ask on the Arduino forum.

I hope this helps.

from esp-exception-decoder.

r-hmn avatar r-hmn commented on August 26, 2024

The github you listed is about the selection itself changing. it's quite an anoyance indeed. Thanks for the aduino-cli explanation. that will come in handy the next time.

The stacktrace which i mentioned is how it is listed on the output. Some times there's one stacktrace, sometime i get two. it's probably an indicator of how bad the program is failing :) but i don't recall it having the form as what you linked to.

i copied it in multiple parts to get the whole thing properly reported here. But when i post it to the exception decoder, i use one stacktrace at the time, starting after the ---CUT..

from esp-exception-decoder.

r-hmn avatar r-hmn commented on August 26, 2024

I looked into it, @r-hmn, and I could reproduce the same behavior, but I do not think this is a decoder bug. Your stack dump looks invalid. See here, ESP8266 stack dump starts with >>>stack>>> and ends with <<<stack<<<. Yours not.

You should ask the Arduino forum (https://forum.arduino.cc/c/software/ide-2-x/93) why you see two stack dumps. Share the board and your sketch (if you can) with the community. The decoder will work once you figure out how to have one stack dump

Thanks. i will.
Cheers

from esp-exception-decoder.

r-hmn avatar r-hmn commented on August 26, 2024

Would just appending the text <<<stack<<< be a way to let the decoder recognize and decode the top part of the stack?
(it does print a decoded stack result)

from esp-exception-decoder.

dankeboy36 avatar dankeboy36 commented on August 26, 2024

Would just appending the text <<<stack<<< be a way to let the decoder recognize

Yes. I did the same with your initial example (#11 (comment)). If added the closing <<<stack<<<, the decoder could recognize and parse the stack.

and decode the top part of the stack?

I think, yes. I am unsure whether it's correct or complete, though.

from esp-exception-decoder.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.