diff --git a/src/Ftp.h b/src/Ftp.h index e63031d..bbc29fd 100644 --- a/src/Ftp.h +++ b/src/Ftp.h @@ -31,6 +31,7 @@ #include "Sim800.h" #include "Result.h" + class FTP : public SIM800 { diff --git a/src/GPRS.cpp b/src/GPRS.cpp index b5416f9..d25b603 100644 --- a/src/GPRS.cpp +++ b/src/GPRS.cpp @@ -52,12 +52,12 @@ Result openGPRSContext(SIM800 *sim800, const char *apn) sim800->sendATTest(); - while ((sim800->sendCmdAndWaitForResp_P(REGISTRATION_STATUS, CONNECTED, 2000) != TRUE && - sim800->sendCmdAndWaitForResp_P(REGISTRATION_STATUS, ROAMING, 2000) != TRUE) && + while ((sim800->sendCmdAndWaitForResp_P(REGISTRATION_STATUS, CONNECTED, 12000) != TRUE && + sim800->sendCmdAndWaitForResp_P(REGISTRATION_STATUS, ROAMING, 12000) != TRUE) && attempts < MAX_ATTEMPTS) { - sim800->sendCmdAndWaitForResp_P(READ_VOLTAGE, AT_OK, 1000); - sim800->sendCmdAndWaitForResp_P(SIGNAL_QUALITY, AT_OK, 1000); + sim800->sendCmdAndWaitForResp_P(READ_VOLTAGE, AT_OK, 2000); + sim800->sendCmdAndWaitForResp_P(SIGNAL_QUALITY, AT_OK, 2000); attempts++; delay(1000 * attempts); if (attempts == MAX_ATTEMPTS) @@ -67,20 +67,20 @@ Result openGPRSContext(SIM800 *sim800, const char *apn) } } - if (sim800->sendCmdAndWaitForResp_P(BEARER_PROFILE_GPRS, AT_OK, 2000) == FALSE) + if (sim800->sendCmdAndWaitForResp_P(BEARER_PROFILE_GPRS, AT_OK, 14000) == FALSE) result = ERROR_BEARER_PROFILE_GPRS; char httpApn[64]; char tmp[24]; strcpy_P(tmp, apn); sprintf_P(httpApn, BEARER_PROFILE_APN, tmp); - if (sim800->sendCmdAndWaitForResp(httpApn, AT_OK_, 2000) == FALSE) + if (sim800->sendCmdAndWaitForResp(httpApn, AT_OK_, 10000) == FALSE) result = ERROR_BEARER_PROFILE_APN; - while (sim800->sendCmdAndWaitForResp_P(QUERY_BEARER, BEARER_OPEN, 2000) == FALSE && attempts < MAX_ATTEMPTS) + while (sim800->sendCmdAndWaitForResp_P(QUERY_BEARER, BEARER_OPEN, 10000) == FALSE && attempts < MAX_ATTEMPTS) { attempts++; - if (sim800->sendCmdAndWaitForResp_P(OPEN_GPRS_CONTEXT, AT_OK, 2000) == FALSE) + if (sim800->sendCmdAndWaitForResp_P(OPEN_GPRS_CONTEXT, AT_OK, 10000) == FALSE) { result = ERROR_OPEN_GPRS_CONTEXT; } @@ -97,7 +97,7 @@ Result closeGPRSContext(SIM800 *sim800) { Result result = SUCCESS; - if (sim800->sendCmdAndWaitForResp_P(CLOSE_GPRS_CONTEXT, AT_OK, 2000) == FALSE) + if (sim800->sendCmdAndWaitForResp_P(CLOSE_GPRS_CONTEXT, AT_OK, 4000) == FALSE) result = ERROR_CLOSE_GPRS_CONTEXT; return result; diff --git a/src/Http.cpp b/src/Http.cpp index 43fc25d..53fcf54 100644 --- a/src/Http.cpp +++ b/src/Http.cpp @@ -55,7 +55,7 @@ Result HTTP::connect(const char *apn) { Result result = openGPRSContext(this, apn); - if (sendCmdAndWaitForResp_P(HTTP_INIT, AT_OK, 2000) == FALSE) + if (sendCmdAndWaitForResp_P(HTTP_INIT, AT_OK, 8000) == FALSE) result = ERROR_HTTP_INIT; return result; @@ -65,7 +65,7 @@ Result HTTP::disconnect() { Result result = closeGPRSContext(this); - if (sendCmdAndWaitForResp_P(HTTP_CLOSE, AT_OK, 2000) == FALSE) + if (sendCmdAndWaitForResp_P(HTTP_CLOSE, AT_OK, 5000) == FALSE) result = ERROR_HTTP_CLOSE; return result; @@ -83,7 +83,7 @@ Result HTTP::post(const char *uri, const char *body, char *response) sprintf_P(buffer, HTTP_DATA, strlen(body), delayToDownload); strcpy_P(resp, DOWNLOAD); - sendCmdAndWaitForResp(buffer, resp, 2000); + sendCmdAndWaitForResp(buffer, resp, 7000); purgeSerial(); sendCmd(body); @@ -108,7 +108,7 @@ Result HTTP::get(const char *uri, char *response) Result result; setHTTPSession(uri); - if (sendCmdAndWaitForResp_P(HTTP_GET, HTTP_2XX, 2000) == TRUE) + if (sendCmdAndWaitForResp_P(HTTP_GET, HTTP_2XX, 7000) == TRUE) { char buffer[16]; strcpy_P(buffer, HTTP_READ); diff --git a/src/Sim800.cpp b/src/Sim800.cpp index ab2ac14..dd7d0e9 100644 --- a/src/Sim800.cpp +++ b/src/Sim800.cpp @@ -203,11 +203,11 @@ void SIM800::sleep(bool force) { if (force) { - sendCmdAndWaitForResp_P(SLEEP_MODE_1, AT_OK, 2000); + sendCmdAndWaitForResp_P(SLEEP_MODE_1, AT_OK, 4000); } else { - sendCmdAndWaitForResp_P(SLEEP_MODE_2, AT_OK, 2000); + sendCmdAndWaitForResp_P(SLEEP_MODE_2, AT_OK, 4000); } } diff --git a/src/Sim800.h b/src/Sim800.h index f699526..0dbf2f8 100644 --- a/src/Sim800.h +++ b/src/Sim800.h @@ -143,4 +143,4 @@ class SIM800 unsigned int resetPin; }; -#endif \ No newline at end of file +#endif