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

what If watchdog reload value is long enough for DFU

As I know, I need to do watchdog feed on bootloader. but what If watchdog reload value is long enough for DFU?

for example, if DFU via BLE takes 2-3 minutes, generally , I set watchdog reload value to 600 (=10 minutes). in this case, I don't need to do watchdog feed in bootloader?

right now, I fed at wait_for_events() function in bootloader.c

Parents
  • Yes, it is possible to set a long enough watchdog timeout interval in the application before you jump to the bootloader so that the booloader will finish the DFU before the WDT time out. Although it is unlikely that a DFU should take more than 10 minutes, you do not have any guarantees,so I would recommend feeding the watchdog in the bootloader.

  • I understand. Setting the WDT timeout to 10 minutes or longer should be long enough for the application DFU to finish, but you will then have to wait that long for a WDT reset if there is anything in the application that causes the app to not function properly. If this wait is acceptable then its a OK solution, but again, I would recommend feeding the WDT in the bootloader and then reduce the WDT interval . Feeding the WDT in the bootloader is done by adding a single line of code so this should be pretty easy to implement.

Reply
  • I understand. Setting the WDT timeout to 10 minutes or longer should be long enough for the application DFU to finish, but you will then have to wait that long for a WDT reset if there is anything in the application that causes the app to not function properly. If this wait is acceptable then its a OK solution, but again, I would recommend feeding the WDT in the bootloader and then reduce the WDT interval . Feeding the WDT in the bootloader is done by adding a single line of code so this should be pretty easy to implement.

Children
No Data
Related