Having updated to 4.2, I have been changing my in field update code to work with the new firmware. It all appears to work grand, but one thing I have noticed is after calling
SystemUpdate.FlashAndReset()
, on reset this seems to get detected as a watchdog reset i.e.
if (Watchdog.LastResetCause == Watchdog.ResetCause.WatchdogReset)
{
Debug.Print("Watchdog did Reset");
}
else
{
Debug.Print("Reset switch or system power");
}
Dunno if this is related, but when I do IFU with a G120 and have the watchdog enabled, something during IFU freezes my watchdog reset routine, and the watchdog inevitably trips. It might be best to disable the watchdog (if possible) during IFU. Just my observation.
I thought that initially, but I have set my watchdog timeout to 2 minutes - and tested that it does not kick in till 2 minutes of ‘in-activity’ has elapsed.
Upon calling SystemUpdate.FlashAndReset() everything does hang, but only for around 15-20 seconds, so can’t see it being the watchdog kicking in.
I added in the stopping of the watchdog but it still flags the reset as being initiated by the watchdog. Just to reiterate the software update runs fine, it is more of a curiosity question as to why FlashAndReset() gets apparently mistaken as a watchdog reset? And also to find out if I am the only one experiencing this, in which case maybe I am missing something.