Merge branch 'master' into master

This commit is contained in:
Volodymyr Shymanskyy
2017-09-27 12:01:16 +03:00
committed by GitHub
3 changed files with 36 additions and 6 deletions

View File

@@ -171,7 +171,7 @@ public:
String remoteIP() TINY_GSM_ATTR_NOT_IMPLEMENTED; String remoteIP() TINY_GSM_ATTR_NOT_IMPLEMENTED;
private: private:
TinyGsmSim800* at; TinyGsmSim800* at;
uint8_t mux; uint8_t mux;
uint16_t sock_available; uint16_t sock_available;
uint32_t prev_check; uint32_t prev_check;
@@ -411,13 +411,17 @@ public:
return res; return res;
} }
bool isNetworkConnected() {
RegStatus s = getRegistrationStatus();
return (s == REG_OK_HOME || s == REG_OK_ROAMING);
}
bool waitForNetwork(unsigned long timeout = 60000L) { bool waitForNetwork(unsigned long timeout = 60000L) {
for (unsigned long start = millis(); millis() - start < timeout; ) { for (unsigned long start = millis(); millis() - start < timeout; ) {
RegStatus s = getRegistrationStatus(); if (isNetworkConnected()) {
if (s == REG_OK_HOME || s == REG_OK_ROAMING) {
return true; return true;
} }
delay(1000); delay(500);
} }
return false; return false;
} }
@@ -514,7 +518,31 @@ public:
bool gprsDisconnect() { bool gprsDisconnect() {
sendAT(GF("+CIPSHUT")); sendAT(GF("+CIPSHUT"));
return waitResponse(60000L) == 1; if (waitResponse(60000L) != 1)
return false;
sendAT(GF("+CGATT=0"));
if (waitResponse(60000L) != 1)
return false;
return true;
}
bool isGprsConnected() {
sendAT(GF("+CGATT?"));
if (waitResponse(GF(GSM_NL "+CGATT:")) != 1) {
return false;
}
int res = stream.readStringUntil('\n').toInt();
waitResponse();
if (res != 1)
return false;
sendAT(GF("+CIFSR;E0")); // Another option is to use AT+CGPADDR=1
if (waitResponse() != 1)
return false;
return true;
} }
String getLocalIP() { String getLocalIP() {

View File

@@ -15,7 +15,7 @@
// Select your modem // Select your modem
// SSL/TLS is currently supported only with SIM8xx series // SSL/TLS is currently supported only with SIM8xx series
#define TINY_GSM_MODEM_SIM800 #define TINY_GSM_MODEM_SIM800
#define TINY_GSM_MODEM_SIM808 //#define TINY_GSM_MODEM_SIM808
// Increase RX buffer // Increase RX buffer
#define TINY_GSM_RX_BUFFER 64 #define TINY_GSM_RX_BUFFER 64

View File

@@ -17,6 +17,8 @@ waitForNetwork KEYWORD2
getSimStatus KEYWORD2 getSimStatus KEYWORD2
gprsConnect KEYWORD2 gprsConnect KEYWORD2
gprsDisconnect KEYWORD2 gprsDisconnect KEYWORD2
isGprsConnected KEYWORD2
isNetworkConnected KEYWORD2
factoryReset KEYWORD2 factoryReset KEYWORD2
####################################### #######################################