Dealing with a "crash" with FreeRTOS

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
User11773
Level 4
Level 4
First like received First solution authored
I'm stress testing my system and getting it to fail.
The system stops in the Default Handler. Typically the reference is to VADC0_G3_3_IRQHandler().
4652.attach

I don't think its blowing the stack. I've run uxTaskGetStackHighWaterMark() on several tasks (the most suspect) and the returned values isn't changing.
One thought is to assert an external pin in the default handler.

Any pointers are appreciated.
0 Likes
3 Replies
jferreira
Employee
Employee
10 sign-ins 5 sign-ins First like received
Hi,

Have you tried using the malloc failed and stack overflow hooks? https://www.freertos.org/a00016.html
Check also the StateViewer plugin tool, https://www.highintegritysystems.com/tools/stateviewer/

Regards,
Jesus
0 Likes
User11773
Level 4
Level 4
First like received First solution authored
Thanks Jesus.

I avoid malloc as best I can. I do have the stack overflow hooks setup.
I'll try StateViewer.
0 Likes
User11773
Level 4
Level 4
First like received First solution authored
Hi ,

I have and are using the StateViewer plugin. Everything looks good.
I was testing with the Watchdog and set a breakpoint in the Handler.
I noticed a similar stack trace as above. The " () at 0xfffffd"
Doesn't FreeRTOS use a different stack for each Task?
What I posted above, does that imply that I got a interrupt or an errant interrupt?
Do I somehow have a interrupt with no defined Handler?
0 Likes