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.

MSP432E411Y: Watchdog-timeout with MQTT-client and HTTPserver in ccs debugger

Part Number: MSP432E411Y

Hello,

I integrated the mqttclient_MSP_EXP432E401Y_tirtos_ccs and httpserver_MSP_EXP432E401Y_tirtos_ccs from the SimpleLink MSP432E4 SDK (4.20.00.12) TI-RTOS-examples into the firmware for our MSP432E411Y-Controller. It is connected to a router with DHCP-server which is connected to a computer with a browser and a Mosquitto running.  

This works fine, until I connect the xds100 debug-probe and start the debug-mode of the code composer studio (11.1.0.00011). If I dis- and reconnect the network-cable from the computer or the computer goes into energy saving mode, the controller restarts due to a watchdog timeout and the debugger gets disconnected. This does not happen with the ccs in editor-mode.

Is there something that takes so much longer in debug mode during network connection? What can I do to avoid this?

Thank You,

Boris

  • Hi Boris,

    Confirm your question:

    You encounter some issue for network in CCS debug mode? but free run mode is OK?

    Thanks!

    Best Regards

    Johnson

  • Hi Johnson,

    Thanks for quick response!

    Yes, You're right, I never found this problem in CCS Edit mode, only in CCS Debug.

    Best Regards,

    Boris

  • Hi Boris,

    Just an idea, the clocks in debug mode might be a little different, so it might take a little more time.

    Have you tried turning off the watchdog to check if the communication function is normal in debug mode?

    Thanks!

    Best Regards

    Johnson

  • Hi Johnson,

    thanks, good idea... This did not solve my problem yet, but I found some new information that might be useful.

    I left my computer alone until it went into energy-saving mode. Now my application just stopped. I was able to reconnect the debugger and clicked the resume Icon. It started, but stopped almost immediately in trgmsg.c, line 114:

        for (i = 0; i < length; i++) PACKCHAR(*data++, p, i+8);

    There seems to be an undeleteable breakpoint, I pressed 'resume' until the loop was finished, then my application was running for a second, some ROV 'logger stop mode'-meesages were printed, then it stopped again in trgmsg.c, line 114. During the loop, the 'data' showed characters of a 'printf'-message displayed in the console "00045.100 TcpTimeoutRexmt: Retransmit Timeout". I use the ROV 'logger stop mode' for log information and replaced all 'printf' from the examples, but I am not able to find the source of this 'timeout'-message. Maybe this 'printf' makes a problem if there is no ccs-console in the energy-saving mode of the computer.

    Thanks and best regards,

    Boris

  • Hi Boris,

    I can't get your point. "printf" function issue?

    Thanks!

    Best Regards

    Johnson 

  • Hi Johnson,

    I don't know if the unwanted "printf" is the reason for my application to stop or being restarted by the watchdog, but I'would like to remove it to figure out if this is the problem.

    When I reconnected the debugger and resumed the application, I got into this loop in trgmsg.c, which was processing characters of the output text. The strange thing was that I had to click 'resume' after each pass of the loop (= each character of the text). Before the application stopped, this output was printed into the console without any problems.

    Where does this 'TcpTimeoutRexmt: Retransmit Timeout' come from?

    Is 'printf' to the ccs-console a problem if the connected ccs-debugger is no longer available due to power-save mode of the computer?

    What is the purpose of 'trgmsg.c'?

    Is there a completely different reason for the stopping/restarting of my application?

    Thanks and best regards,

    Boris

  • Hi Boris,

    I am sorry that I am not familar with this .c file. I can try to consult other expert to find some idea if they know.

    What is the purpose of 'trgmsg.c'?

    Thanks!

    Best Regards

    Johnson