L'unica cosa che puoi fare è segnalare il problema nella sezione internazionale del forum.
Ti suggerisco un'ultima prova. Togli tutto il blocco del codice dopo l'if e mettilo in una subroutine.
if (millis()>contatore) {
scriviLog();
} else {
Serial.println ("Non loggato");
}
void scriviLog() {
contatore=millis()+55000;
Serial.println ("Dati Loggati.");
.....ecc...
}
Secondo me NON cambia nulla ma siccome siamo a fare 1000 prove.... puoi fare anche questa