Tengo un arduino UNO R4 Wifi que me reporta datos a mi propia web, resulta q algunas veces tengo cortes d internet, durante el proceso el router no se apaga ni reinicia pero internet deja de estar disponible, el problema es q cuando ocurre solo un par d minutos arduino se recupera bien y reconecta, pero cuando ha sucedido que he estado horas sin internet arduino se queda colgado hasta reiniciar por el boton de reset, existe alguna manera q pueda obligar a arduino a autoreiniciar si ha permanecido sin internet por ejemplo 20min?
En principio te aclaro que no conozco nada del R4 así que no puedo darte más detalles.
Sin embargo, fijate si ésto te sirve, pienso que es por este lado la solución.
Le cambiaría el callback, para evitar conflictos con el reinicio de millis() , por
void timer_callback(timer_callback_args_t __attribute((unused)) *p_args) {
WDT.refresh();
if (millis() - TimeoutCounter >= (1000 * 60 * 5)) NVIC_SystemReset(); // More than 5 minutes unresponsive
}
Bueno, también cambiaría esa multiplicación por una constante pero es un detalle...
El código reinicia a los 5 minutos de "cuelgue", si quieres 20 minutos cambias el 5 por 20, obviamente.
Saludos
Felices fiestas!
Muchas gracias, estaré probando en estos dias y te digo algo