SAME70 Watchdog Won't Fire

Go To Last Post
2 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Trying to set up a watchdog and using the wdt example in the ASF and it never fires even though I've hardcoded (for now) my code to not pet the watchdog after it is initialized.

 

Here is my initialization:

 

   /* Get timeout value. */
    timeout_value = wdt_get_timeout_value(WDT_FIFTEEN_SECS,
                                                                   BOARD_FREQ_SLCK_XTAL);

 

    /* Configure WDT to trigger a reset. */
    wdt_mode = WDT_MR_WDRSTEN   |  /* WDT resets the CPU on underflow or error. */
               WDT_MR_WDDBGHLT  |  /* WDT stops in debug state. */
               WDT_MR_WDIDLEHLT;   /* WDT stops in idle state. */

 

    /* Initialize WDT with the given parameters. */
    wdt_init(WDT, wdt_mode, timeout_value, timeout_value);
 

I've updated board_init() to not disable the WDT.  I get back a valid timeout_value.  No reset ever occurs.  The rest of the system is a FreeRTOS application.

The init of the watchdog is happening prior scheduling being turned on in FreeRTOS.

 

Any guesses would be helpful.

 

Charles Johnson

ZincFive, Inc.

cjohnson@zincfive.com

Charles Johnson
ZincFive, Inc.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Dear Charles,

 

I did have an issue with the SAME70 watchdog too but it has everything to do with the Watchdog Timer Mode Register that can only be written once.

Your question though was posted back in 2018, I guess it has been solved by now.

 

Regards,

Bart