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.

CCS/TMS320F28034: Watchdog Reset Status bit (WDFLAG in WDCR) set after Firmware Update

Part Number: TMS320F28034

Tool/software: Code Composer Studio

Hello Guys,

I need little help with unwanted watchdog reset status.

Here, is the brief background of my design:

The product has multiple boards with a TI MCU on each board. On one of the secondary boards F28034 is used, and a primary board uses a TIVA ARM MCU. During firmware updated process TIVA sends the command to F28034 to make it go into bootloader mode. In bootloader mode F28034 read data over SCI and update the flash with new application. In bootloading mode the Watchdog is disabled throughout.

Sequential Steps that leads to the Problem:

1. F28034 application gets the command to reset to Bootloader
2. Watchdog is disabled in Bootloader through out the Bootloader process
3. Bootloader runs and finds the presence of valid software file source over SCI
4. Bootloader reads and update flash with new application
5. A Jump to Start of Bootloader is executed to reset the bootloader
6. Bootlader goes through regular path and Control jumps to application.
7. An automatic reset happens (Unwanted). Breakpoint in start of bootlaoder suggest that the cause of reset is by the Watchdog reset (I don't use watchdog for resetting the MCU)
8. Now application starts again with Watchdog reset bit set
9. A next forced soft reset clear everything to normal

I don't want the watchdog reset status set when the new application runs as my application needs to reset again and report the fault in the log. This thing is very repeatable and happens right after when the bootloader finishes the application update and jumps to the new application. No watchdog issue persist after reset and things work fine.I have verified that in no situation the watchdog reset status bit gets set in bootloader.

Any help with this will be appreciated.

Amjad

  • Nevermind guys. I found the issue. 

    My I2C Driver has blocking type implementation(which is not good, I know that) in the application and just when I do a firmware update and jump to the application the I2C goes into while condition and waits forever for I2C status to change to inactive and never comes out. That triggers a watchdog reset.

    Thanks

    Amjad