This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

F29H850TU: ERAD doesn't detect stack overflow

Part Number: F29H850TU


I have custom project and i need to detect stack overflow.

I am using ERAD module to detect stack overflow and checked "erad_ex6_stack_overflow_detect_syscfg" example it was working correctly but it doesn't work with my custom project.

The ERAD configuration

Screenshot 2025-10-20 202530.png

Reference Address is the same as the end of stack address of my custom project.

that isDebugging info:

image.png
last call to the recursive function "functionCallCount" variable equal to 647900 then MCU stuck in presist fail and this error shown up.
image.png

After checking the CPU registers before reach 647900 it was 

image.png

so it should be stack overflow and this address is closer to the address shown in the error message as well.

what do you recommend?

 

  • Hi Mahmoud,

    Were you able to verify if the existing example works as intended? The configuration for checking stack overflow is the following as described in the TRM Chapter.

    Can you verify in your custom project that the ERAD configurations for stack qualification (detection) is the same?

  • Hi Ryan,

    Yes, with TI's example "erad_ex6_stack_overflow_detect_syscfg".

    In my custom project I'm following the stack qualification as same as the TRM 17.2.2.

    i checked that also while debugging the issue but i have found that configuration didn't wrote correctly.



    the red boxes show mismatch between the configurations.

  • Hi Mahmoud,

    What version of F29x SDK are you using? I am unable to replicate this issue using the latest F29x SDK release.

    Is your project importing the latest F29x driverlib?

    Best regards,

    Ryan Ma

  • SDK version: 1.1.0.00, we are not using the latest.
    yes, lthe latest F29x driverlib.

    I am able to write the correct values to the register but hard coded why could that happen?

  • Hi Mahmoud, 

    ERAD can either be debugger owned or application owned. When debugging, and setting hardware breakpoints the ERAD EBCs get used to set these. Usually I 've seen CCS use the first EBC instances which is why in the example I use the later EBC instances. 

    Can you try switching to the latest SDK version? 

    Seems for some reason the ERAD_configBusComp() is not setting the correct bits for your setup.

    What happens if you step into ERAD_configBusComp()? Are you getting any ASSERT failures?

    Best regards,

    Ryan Ma