This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Watchdog is activated in nRF51822 although NVIC_systemreset() is called but not in nRF51422

In my nRF51822 I have an app & a dfu bootloader (modified from nRF51DK)   & softdevice.

The app starts the watchdog with 5 seconds timeout. An user can make the app to start the bootloader but if no dfu is made withing 90 seconds the bootloader exits and the nRF51822 goes back to normal operation. When the user starts the app writes a value to flash and starts the bootloader by calling the NVIC_systemreset() function. Then the nRF51822 exits "bootloader_mode" after 5 seconds although no DFU is made. if i check NRF_WDT->RUNSTATUS in the bootloaders sourcecode is says that the watchdog is running.

I have solved the problem by reloading the watchdog register in the bootloaders code if NRF_WDT->RUNSTATUS say's that the bootloader is running.

I have done the same dfu-bootloader in a nRF51422 but in that processor the watchdog is deactivated after a call to NVIC_systemreset()

Why does a call to NVIC_systemreset() deactivate the watchdog in nRF51422 but not in nRF51822?

Same softdevice in both. (s130_nrf51_2.0.0_softdevice.hex)

I have no panic with this since I have solved the problem, just curious.

  

Related