Buongiorno ragazzi, da un paio di mesi sto utilizzando diverse shield che montano il SimCom 800C che comunicano tutti con un server.
Di seguito riporto la struttura semplificate del programma che mi gestisce la parte GPRS:
//-----------------------------------------------------------
//--- Invio richieste al server -----------------------------
void INVGPRS() {
gprsSerial.println("AT+SAPBR=1,1");
delay(2000);
gprsSerial.println("AT+HTTPINIT");
delay(2000);
toSerial();
gprsSerial.println("AT+HTTPPARA=\"URL\",\"http://www.google.it\""); // esempio
delay(4000);
toSerial();
gprsSerial.println("AT+HTTPACTION=0");
delay(6000);
toSerial();
gprsSerial.println("AT+HTTPREAD");
delay(1000);
toSerial();
gprsSerial.println("AT+HTTPTERM");
toSerial();
delay(300)
gprsSerial.println("AT+SAPBR=0,1");
delay(1000);
toSerial();
gprsSerial.println("");
delay(500);
}
Il programma risponde in modo corretto ma alcune volte la risposta server non va a buon fine, perchè invece di ricevere
+HTTPACTION: 1,200,"n"
ricevo:
+HTTPACTION: 1,601
Ricevo la seconda risposta per un paio di minuti per dopo ricominciare a funzionare in modo corretto.
Come posso capire a cosa può essere dovuto questo errore di rete (Network Error) ?
Grazie a chi perderà qualche minuto.