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.

CC2652P: MCU Exeptions Handling

Part Number: CC2652P

Tool/software:

Hello!

We find sometimes our CC2652P processor hangs up!

Our application is based on three Coordinators using channels 11,15,20

Each coordinator joins about 20 routers/end devices, but only channel 20 Coordinator seems to produce associated devices hangup! All other never happens.

Please consider this has been checked at the end of a 10 days in field test period.

We resolved this problem by simply enabling device Watchdog function, and it seems to solve our problem, but:

I wish to trap Exceptions (math error, address error, and so on…) arising during program execution:

I was not able to see where they are in code, or how to provide them.

Just to see if some of them is triggered, and (for example) do a SwReset!

 

A last question about Watchdog: we see that after Wdog intervention, the device stays in reset for the same period Wdog was programmed for. Is this correct?

below how we handle watchdog.

Thanks a lot!

BR Luigi

Watchdog_Params params;
Watchdog_Handle watchdogHandle;
// setup:
Watchdog_init();
Watchdog_Params_init(&params); //periodo di 10 sec, con 2 sec già ok
params.resetMode = Watchdog_RESET_ON;
watchdogHandle = Watchdog_open(CONFIG_WATCHDOG_0, &params);
if (watchdogHandle == NULL)
{
while (1);
}

static void RetriggerWdtTi(void)
{

Watchdog_clear(watchdogHandle);
}

  • Hello Roberto,

    I hope you are doing well. 

    I wish to trap Exceptions (math error, address error, and so on…) arising during program execution:

    I was not able to see where they are in code, or how to provide them.

    - We could enable some logging here, or storing data and outputting it via UART perhaps. 

    - We could also do "connect to a running target" which can allow us to see where the device gets stuck as well. 

    A last question about Watchdog: we see that after Wdog intervention, the device stays in reset for the same period Wdog was programmed for. Is this correct?

    - I am a tad unsure about this point, I will try to do a test on a device myself to confirm. 

    Thanks,
    Alex F

  • Alex: thanks for your answer.

    My first request was non clear: I need to place C code inside my application to trap cpu runtime exeptions (we normally do with other processors) and in that moment we can understand what may couse stuck! BUT I do not kn ow how and where place them! Will you tell me how? Or where this code already exists in standard prj?

    Thanks

  • Hello Roberto, 

    I am looking into your request now, we do have some examples in the debugging guide in our SDK:BLE5-Stack Debugging Guide (ti.com) 

    Thanks,
    Alex F