mirror of
				https://github.com/KevinMidboe/TinyGSM.git
				synced 2025-10-29 18:00:18 +00:00 
			
		
		
		
	Some class cleaning
This commit is contained in:
		| @@ -190,11 +190,8 @@ public: | |||||||
|   /* |   /* | ||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|   bool begin() { |  | ||||||
|     return init(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   bool init() { |   bool init(const char* pin = NULL) { | ||||||
|     if (!testAT()) { |     if (!testAT()) { | ||||||
|       return false; |       return false; | ||||||
|     } |     } | ||||||
| @@ -212,6 +209,15 @@ public: | |||||||
|     return true; |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   String getModemName() { | ||||||
|  |     #if defined(TINY_GSM_MODEM_A6) | ||||||
|  |       return "AI-Thinker A6"; | ||||||
|  |     #elif defined(TINY_GSM_MODEM_A7) | ||||||
|  |       return "AI-Thinker A7"; | ||||||
|  |     #endif | ||||||
|  |     return "AI-Thinker A6"; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   void setBaud(unsigned long baud) { |   void setBaud(unsigned long baud) { | ||||||
|     sendAT(GF("+IPR="), baud); |     sendAT(GF("+IPR="), baud); | ||||||
|   } |   } | ||||||
| @@ -255,6 +261,14 @@ public: | |||||||
|     return false; |     return false; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   bool hasWifi() { | ||||||
|  |     return false; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   bool hasGPRS() { | ||||||
|  |     return true; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * Power functions |    * Power functions | ||||||
|    */ |    */ | ||||||
| @@ -371,22 +385,6 @@ public: | |||||||
|     return (s == REG_OK_HOME || s == REG_OK_ROAMING); |     return (s == REG_OK_HOME || s == REG_OK_ROAMING); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   bool waitForNetwork(unsigned long timeout = 60000L) { |  | ||||||
|     for (unsigned long start = millis(); millis() - start < timeout; ) { |  | ||||||
|       if (isNetworkConnected()) { |  | ||||||
|         return true; |  | ||||||
|       } |  | ||||||
|       delay(250); |  | ||||||
|     } |  | ||||||
|     return false; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * WiFi functions |  | ||||||
|    */ |  | ||||||
|   bool networkConnect(const char* ssid, const char* pwd) TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|   bool networkDisconnect() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * GPRS functions |    * GPRS functions | ||||||
|    */ |    */ | ||||||
|   | |||||||
| @@ -214,11 +214,8 @@ public: | |||||||
|   /* |   /* | ||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|   bool begin() { |  | ||||||
|     return init(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   bool init() { |   bool init(const char* pin = NULL) { | ||||||
|     if (!testAT()) { |     if (!testAT()) { | ||||||
|       return false; |       return false; | ||||||
|     } |     } | ||||||
| @@ -230,6 +227,10 @@ public: | |||||||
|     return true; |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   String getModemName() { | ||||||
|  |     return "Quectel BG96"; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   void setBaud(unsigned long baud) { |   void setBaud(unsigned long baud) { | ||||||
|     sendAT(GF("+IPR="), baud); |     sendAT(GF("+IPR="), baud); | ||||||
|   } |   } | ||||||
| @@ -284,6 +285,14 @@ public: | |||||||
|     return false;  // TODO: For now |     return false;  // TODO: For now | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   bool hasWifi() { | ||||||
|  |     return false; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   bool hasGPRS() { | ||||||
|  |     return true; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * Power functions |    * Power functions | ||||||
|    */ |    */ | ||||||
| @@ -405,22 +414,6 @@ public: | |||||||
|     return (s == REG_OK_HOME || s == REG_OK_ROAMING); |     return (s == REG_OK_HOME || s == REG_OK_ROAMING); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   bool waitForNetwork(unsigned long timeout = 60000L) { |  | ||||||
|     for (unsigned long start = millis(); millis() - start < timeout; ) { |  | ||||||
|       if (isNetworkConnected()) { |  | ||||||
|         return true; |  | ||||||
|       } |  | ||||||
|       delay(250); |  | ||||||
|     } |  | ||||||
|     return false; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * WiFi functions |  | ||||||
|    */ |  | ||||||
|   bool networkConnect(const char* ssid, const char* pwd) TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|   bool networkDisconnect() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * GPRS functions |    * GPRS functions | ||||||
|    */ |    */ | ||||||
|   | |||||||
| @@ -206,11 +206,8 @@ public: | |||||||
|   /* |   /* | ||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|   bool begin() { |  | ||||||
|     return init(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   bool init() { |   bool init(const char* pin = NULL) { | ||||||
|     if (!testAT()) { |     if (!testAT()) { | ||||||
|       return false; |       return false; | ||||||
|     } |     } | ||||||
| @@ -229,6 +226,10 @@ public: | |||||||
|     return true; |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   String getModemName() { | ||||||
|  |     return "ESP8266"; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   void setBaud(unsigned long baud) { |   void setBaud(unsigned long baud) { | ||||||
|     sendAT(GF("+IPR="), baud); |     sendAT(GF("+IPR="), baud); | ||||||
|   } |   } | ||||||
| @@ -270,6 +271,14 @@ public: | |||||||
|     return true; |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   bool hasWifi() { | ||||||
|  |     return true; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   bool hasGPRS() { | ||||||
|  |     return false; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * Power functions |    * Power functions | ||||||
|    */ |    */ | ||||||
| @@ -381,30 +390,6 @@ public: | |||||||
|     return res2; |     return res2; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * GPRS functions |  | ||||||
|    */ |  | ||||||
|   bool gprsConnect(const char* apn, const char* user = NULL, const char* pwd = NULL) TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|   bool gprsDisconnect() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * Messaging functions |  | ||||||
|    */ |  | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * Location functions |  | ||||||
|    */ |  | ||||||
|  |  | ||||||
|   String getGsmLocation() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * Battery functions |  | ||||||
|    */ |  | ||||||
|  |  | ||||||
|   uint16_t getBattVoltage() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   int getBattPercent() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
| protected: | protected: | ||||||
|  |  | ||||||
|   bool modemConnect(const char* host, uint16_t port, uint8_t mux, bool ssl = false) { |   bool modemConnect(const char* host, uint16_t port, uint8_t mux, bool ssl = false) { | ||||||
|   | |||||||
| @@ -187,11 +187,8 @@ public: | |||||||
|   /* |   /* | ||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|   bool begin() { |  | ||||||
|     return init(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   bool init() { |   bool init(const char* pin = NULL) { | ||||||
|     if (!testAT()) { |     if (!testAT()) { | ||||||
|       return false; |       return false; | ||||||
|     } |     } | ||||||
| @@ -208,6 +205,10 @@ public: | |||||||
|     return true; |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   String getModemName() { | ||||||
|  |     return "Neoway M590"; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   void setBaud(unsigned long baud) { |   void setBaud(unsigned long baud) { | ||||||
|     sendAT(GF("+IPR="), baud); |     sendAT(GF("+IPR="), baud); | ||||||
|   } |   } | ||||||
| @@ -259,6 +260,14 @@ public: | |||||||
|     return false; |     return false; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   bool hasWifi() { | ||||||
|  |     return false; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   bool hasGPRS() { | ||||||
|  |     return true; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * Power functions |    * Power functions | ||||||
|    */ |    */ | ||||||
| @@ -379,22 +388,6 @@ public: | |||||||
|     return (s == REG_OK_HOME || s == REG_OK_ROAMING); |     return (s == REG_OK_HOME || s == REG_OK_ROAMING); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   bool waitForNetwork(unsigned long timeout = 60000L) { |  | ||||||
|     for (unsigned long start = millis(); millis() - start < timeout; ) { |  | ||||||
|       if (isNetworkConnected()) { |  | ||||||
|         return true; |  | ||||||
|       } |  | ||||||
|       delay(250); |  | ||||||
|     } |  | ||||||
|     return false; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * WiFi functions |  | ||||||
|    */ |  | ||||||
|   bool networkConnect(const char* ssid, const char* pwd) TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|   bool networkDisconnect() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * GPRS functions |    * GPRS functions | ||||||
|    */ |    */ | ||||||
|   | |||||||
| @@ -194,11 +194,8 @@ public: | |||||||
|   /* |   /* | ||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|   bool begin() { |  | ||||||
|     return init(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   bool init() { |   bool init(const char* pin = NULL) { | ||||||
|     if (!testAT()) { |     if (!testAT()) { | ||||||
|       return false; |       return false; | ||||||
|     } |     } | ||||||
| @@ -215,6 +212,10 @@ public: | |||||||
|     return true; |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   String getModemName() { | ||||||
|  |     return "Quectel M95"; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   void setBaud(unsigned long baud) { |   void setBaud(unsigned long baud) { | ||||||
|     sendAT(GF("+IPR="), baud); |     sendAT(GF("+IPR="), baud); | ||||||
|   } |   } | ||||||
| @@ -273,6 +274,14 @@ public: | |||||||
|     return false;  // TODO: For now |     return false;  // TODO: For now | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   bool hasWifi() { | ||||||
|  |     return false; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   bool hasGPRS() { | ||||||
|  |     return true; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * Power functions |    * Power functions | ||||||
|    */ |    */ | ||||||
| @@ -416,12 +425,6 @@ public: | |||||||
|     waitResponse(); |     waitResponse(); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * WiFi functions |  | ||||||
|    */ |  | ||||||
|   bool networkConnect(const char* ssid, const char* pwd) TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|   bool networkDisconnect() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * GPRS functions |    * GPRS functions | ||||||
|    */ |    */ | ||||||
|   | |||||||
| @@ -221,11 +221,8 @@ public: | |||||||
|   /* |   /* | ||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|   bool begin() { |  | ||||||
|     return init(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   bool init() { |   bool init(const char* pin = NULL) { | ||||||
|     if (!testAT()) { |     if (!testAT()) { | ||||||
|       return false; |       return false; | ||||||
|     } |     } | ||||||
| @@ -239,6 +236,17 @@ public: | |||||||
|     return true; |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   String getModemName() { | ||||||
|  |     #if defined(TINY_GSM_MODEM_MC60) | ||||||
|  |       return "Quectel MC60"; | ||||||
|  |     #elif defined(TINY_GSM_MODEM_MC60E) | ||||||
|  |       return "Quectel MC60E"; | ||||||
|  |     #endif | ||||||
|  |       return "Quectel MC60"; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   void setBaud(unsigned long baud) { return false; }; | ||||||
|  |  | ||||||
|   bool testAT(unsigned long timeout = 10000L) { |   bool testAT(unsigned long timeout = 10000L) { | ||||||
|     //streamWrite(GF("AAAAA" GSM_NL));  // TODO: extra A's to help detect the baud rate |     //streamWrite(GF("AAAAA" GSM_NL));  // TODO: extra A's to help detect the baud rate | ||||||
|     for (unsigned long start = millis(); millis() - start < timeout; ) { |     for (unsigned long start = millis(); millis() - start < timeout; ) { | ||||||
| @@ -294,15 +302,25 @@ public: | |||||||
|  |  | ||||||
|   /* |   /* | ||||||
|   * under development |   * under development | ||||||
|   * |   */ | ||||||
|   bool hasSSL() { |   // bool hasSSL() { | ||||||
|     sendAT(GF("+QIPSSL=?")); |   //   sendAT(GF("+QIPSSL=?")); | ||||||
|     if (waitResponse(GF(GSM_NL "+CIPSSL:")) != 1) { |   //   if (waitResponse(GF(GSM_NL "+CIPSSL:")) != 1) { | ||||||
|  |   //     return false; | ||||||
|  |   //   } | ||||||
|  |   //   return waitResponse() == 1; | ||||||
|  |   // } | ||||||
|  |  | ||||||
|  |   bool hasSSL() { return false; } | ||||||
|  |  | ||||||
|  |   bool hasWifi() { | ||||||
|     return false; |     return false; | ||||||
|   } |   } | ||||||
|     return waitResponse() == 1; |  | ||||||
|  |   bool hasGPRS() { | ||||||
|  |     return true; | ||||||
|   } |   } | ||||||
| */ |  | ||||||
|   /* |   /* | ||||||
|    * Power functions |    * Power functions | ||||||
|    */ |    */ | ||||||
| @@ -433,22 +451,6 @@ public: | |||||||
|     return (s == REG_OK_HOME || s == REG_OK_ROAMING); |     return (s == REG_OK_HOME || s == REG_OK_ROAMING); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   bool waitForNetwork(unsigned long timeout = 60000L) { |  | ||||||
|     for (unsigned long start = millis(); millis() - start < timeout; ) { |  | ||||||
|       if (isNetworkConnected()) { |  | ||||||
|         return true; |  | ||||||
|       } |  | ||||||
|       delay(250); |  | ||||||
|     } |  | ||||||
|     return false; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * WiFi functions |  | ||||||
|    */ |  | ||||||
|   bool networkConnect(const char* ssid, const char* pwd) TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|   bool networkDisconnect() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * GPRS functions |    * GPRS functions | ||||||
|    */ |    */ | ||||||
|   | |||||||
| @@ -236,11 +236,8 @@ public: | |||||||
|   /* |   /* | ||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|   bool begin() { |  | ||||||
|     return init(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   bool init() { |   bool init(const char* pin = NULL) { | ||||||
|     if (!testAT()) { |     if (!testAT()) { | ||||||
|       return false; |       return false; | ||||||
|     } |     } | ||||||
| @@ -254,6 +251,19 @@ public: | |||||||
|     return true; |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   String getModemName() { | ||||||
|  |     #if defined(TINY_GSM_MODEM_SIM800) | ||||||
|  |       return "SIMCom SIM800"; | ||||||
|  |     #elif defined(TINY_GSM_MODEM_SIM808) | ||||||
|  |       return "SIMCom SIM808"; | ||||||
|  |     #elif defined(TINY_GSM_MODEM_SIM868) | ||||||
|  |       return "SIMCom SIM868"; | ||||||
|  |     #elif defined(TINY_GSM_MODEM_SIM900) | ||||||
|  |       return "SIMCom SIM900"; | ||||||
|  |     #endif | ||||||
|  |     return "SIMCom SIM800"; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   void setBaud(unsigned long baud) { |   void setBaud(unsigned long baud) { | ||||||
|     sendAT(GF("+IPR="), baud); |     sendAT(GF("+IPR="), baud); | ||||||
|   } |   } | ||||||
| @@ -323,6 +333,14 @@ public: | |||||||
| #endif | #endif | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   bool hasWifi() { | ||||||
|  |     return false; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   bool hasGPRS() { | ||||||
|  |     return true; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * Power functions |    * Power functions | ||||||
|    */ |    */ | ||||||
| @@ -466,22 +484,6 @@ public: | |||||||
|     return (s == REG_OK_HOME || s == REG_OK_ROAMING); |     return (s == REG_OK_HOME || s == REG_OK_ROAMING); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   bool waitForNetwork(unsigned long timeout = 60000L) { |  | ||||||
|     for (unsigned long start = millis(); millis() - start < timeout; ) { |  | ||||||
|       if (isNetworkConnected()) { |  | ||||||
|         return true; |  | ||||||
|       } |  | ||||||
|       delay(250); |  | ||||||
|     } |  | ||||||
|     return false; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * WiFi functions |  | ||||||
|    */ |  | ||||||
|   bool networkConnect(const char* ssid, const char* pwd) TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|   bool networkDisconnect() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * GPRS functions |    * GPRS functions | ||||||
|    */ |    */ | ||||||
|   | |||||||
| @@ -27,7 +27,7 @@ public: | |||||||
|  |  | ||||||
|   // enable GPS |   // enable GPS | ||||||
|   bool enableGPS() { |   bool enableGPS() { | ||||||
|     uint16_t state; |     // uint16_t state; | ||||||
|  |  | ||||||
|     sendAT(GF("+CGNSPWR=1")); |     sendAT(GF("+CGNSPWR=1")); | ||||||
|     if (waitResponse() != 1) { |     if (waitResponse() != 1) { | ||||||
| @@ -38,7 +38,7 @@ public: | |||||||
|   } |   } | ||||||
|  |  | ||||||
|   bool disableGPS() { |   bool disableGPS() { | ||||||
|     uint16_t state; |     // uint16_t state; | ||||||
|  |  | ||||||
|     sendAT(GF("+CGNSPWR=0")); |     sendAT(GF("+CGNSPWR=0")); | ||||||
|     if (waitResponse() != 1) { |     if (waitResponse() != 1) { | ||||||
| @@ -65,7 +65,7 @@ public: | |||||||
|   // works only with ans SIM808 V2 |   // works only with ans SIM808 V2 | ||||||
|   bool getGPS(float *lat, float *lon, float *speed=0, int *alt=0, int *vsat=0, int *usat=0) { |   bool getGPS(float *lat, float *lon, float *speed=0, int *alt=0, int *vsat=0, int *usat=0) { | ||||||
|     //String buffer = ""; |     //String buffer = ""; | ||||||
|     char chr_buffer[12]; |     // char chr_buffer[12]; | ||||||
|     bool fix = false; |     bool fix = false; | ||||||
|  |  | ||||||
|     sendAT(GF("+CGNSINF")); |     sendAT(GF("+CGNSINF")); | ||||||
|   | |||||||
| @@ -213,9 +213,6 @@ public: | |||||||
|   /* |   /* | ||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|   bool begin(const char* pin = NULL) { |  | ||||||
|     return init(pin); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   bool init(const char* pin = NULL) { |   bool init(const char* pin = NULL) { | ||||||
|     if (!testAT()) { |     if (!testAT()) { | ||||||
| @@ -232,6 +229,10 @@ public: | |||||||
|     return (getSimStatus() == SIM_READY); |     return (getSimStatus() == SIM_READY); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   String getModemName() { | ||||||
|  |     return "ESP8266"; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   void setBaud(unsigned long baud) { |   void setBaud(unsigned long baud) { | ||||||
|     sendAT(GF("+IPR="), baud); |     sendAT(GF("+IPR="), baud); | ||||||
|   } |   } | ||||||
| @@ -284,6 +285,14 @@ public: | |||||||
|     return true; |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   bool hasWifi() { | ||||||
|  |     return false; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   bool hasGPRS() { | ||||||
|  |     return true; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * Power functions |    * Power functions | ||||||
|    */ |    */ | ||||||
| @@ -404,22 +413,6 @@ public: | |||||||
|     return (s == REG_OK_HOME || s == REG_OK_ROAMING); |     return (s == REG_OK_HOME || s == REG_OK_ROAMING); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   bool waitForNetwork(unsigned long timeout = 60000L) { |  | ||||||
|     for (unsigned long start = millis(); millis() - start < timeout; ) { |  | ||||||
|       if (isNetworkConnected()) { |  | ||||||
|         return true; |  | ||||||
|       } |  | ||||||
|       delay(250); |  | ||||||
|     } |  | ||||||
|     return false; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * WiFi functions |  | ||||||
|    */ |  | ||||||
|   bool networkConnect(const char* ssid, const char* pwd) TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|   bool networkDisconnect() TINY_GSM_ATTR_NOT_AVAILABLE; |  | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * GPRS functions |    * GPRS functions | ||||||
|    */ |    */ | ||||||
|   | |||||||
| @@ -217,11 +217,8 @@ public: | |||||||
|   /* |   /* | ||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|   bool begin() { |  | ||||||
|     return init(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   bool init() { |   bool init(const char* pin = NULL) { | ||||||
|     guardTime = 1100;  // Start with a default guard time of 1 second |     guardTime = 1100;  // Start with a default guard time of 1 second | ||||||
|  |  | ||||||
|     if (!commandMode(10)) return false;  // Try up to 10 times for the init |     if (!commandMode(10)) return false;  // Try up to 10 times for the init | ||||||
| @@ -246,6 +243,10 @@ public: | |||||||
|     return ret_val; |     return ret_val; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   String getModemName() { | ||||||
|  |     return getBeeName(); | ||||||
|  |   } | ||||||
|  |  | ||||||
|   void setBaud(unsigned long baud) { |   void setBaud(unsigned long baud) { | ||||||
|     if (!commandMode()) return; |     if (!commandMode()) return; | ||||||
|     switch(baud) |     switch(baud) | ||||||
| @@ -313,6 +314,16 @@ public: | |||||||
|     else return true; |     else return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   bool hasWifi() { | ||||||
|  |     if (beeType == XBEE_S6B_WIFI) return true; | ||||||
|  |     else return false; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   bool hasGPRS() { | ||||||
|  |     if (beeType == XBEE_S6B_WIFI) return false; | ||||||
|  |     else return true; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   XBeeType getBeeType() { |   XBeeType getBeeType() { | ||||||
|     return beeType; |     return beeType; | ||||||
|   } |   } | ||||||
| @@ -360,8 +371,8 @@ public: | |||||||
|       return false; |       return false; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   void setupPinSleep(bool maintainAssociation = false) { |   bool sleepEnable(bool maintainAssociation = false) { | ||||||
|     if (!commandMode()) return;  // Return immediately |     if (!commandMode()) return false;  // Return immediately | ||||||
|     sendAT(GF("SM"),1);  // Pin sleep |     sendAT(GF("SM"),1);  // Pin sleep | ||||||
|     waitResponse(); |     waitResponse(); | ||||||
|     if (beeType == XBEE_S6B_WIFI && !maintainAssociation) { |     if (beeType == XBEE_S6B_WIFI && !maintainAssociation) { | ||||||
| @@ -375,14 +386,13 @@ public: | |||||||
|     } |     } | ||||||
|     writeChanges(); |     writeChanges(); | ||||||
|     exitCommand(); |     exitCommand(); | ||||||
|  |     return true; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   bool poweroff() TINY_GSM_ATTR_NOT_IMPLEMENTED; |   bool poweroff() TINY_GSM_ATTR_NOT_IMPLEMENTED; | ||||||
|  |  | ||||||
|   bool radioOff() TINY_GSM_ATTR_NOT_IMPLEMENTED; |   bool radioOff() TINY_GSM_ATTR_NOT_IMPLEMENTED; | ||||||
|  |  | ||||||
|   bool sleepEnable(bool enable = true) TINY_GSM_ATTR_NOT_IMPLEMENTED; |  | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * SIM card functions |    * SIM card functions | ||||||
|    */ |    */ | ||||||
|   | |||||||
| @@ -204,7 +204,7 @@ public: | |||||||
|  |  | ||||||
| class GsmClient : public Client | class GsmClient : public Client | ||||||
| { | { | ||||||
|   friend class TinyGsmXBee; |   friend class TinyGsmMasterModem; | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -222,50 +222,78 @@ public: | |||||||
|    * Basic functions |    * Basic functions | ||||||
|    */ |    */ | ||||||
|  |  | ||||||
|   virtual bool begin() = 0; |   // Prepare the modem for further functionality | ||||||
|   virtual bool init() = 0; |   virtual bool init(const char* pin = NULL) = 0; | ||||||
|  |   // Begin is redundant with init | ||||||
|  |   virtual bool begin(const char* pin = NULL) { | ||||||
|  |     return init(pin); | ||||||
|  |   } | ||||||
|  |   // Returns a string with the chip name | ||||||
|  |   virtual String getModemName() = 0; | ||||||
|  |   // Sets the serial communication baud rate | ||||||
|   virtual void setBaud(unsigned long baud) = 0; |   virtual void setBaud(unsigned long baud) = 0; | ||||||
|  |   // Checks that the modem is responding to standard AT commands | ||||||
|   virtual bool testAT(unsigned long timeout = 10000L) = 0; |   virtual bool testAT(unsigned long timeout = 10000L) = 0; | ||||||
|  |   // Holds open communication with the modem waiting for data to come in | ||||||
|   virtual void maintain() = 0; |   virtual void maintain() = 0; | ||||||
|  |   // Resets all modem chip settings to factor defaults | ||||||
|   virtual bool factoryDefault() = 0; |   virtual bool factoryDefault() = 0; | ||||||
|  |   // Returns the response to a get info request.  The format varies by modem. | ||||||
|   virtual String getModemInfo() = 0; |   virtual String getModemInfo() = 0; | ||||||
|  |   // Answers whether secure communication is available on this modem | ||||||
|   virtual bool hasSSL() = 0; |   virtual bool hasSSL() = 0; | ||||||
|  |   virtual bool hasWifi() = 0; | ||||||
|  |   virtual bool hasGPRS() = 0; | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * Power functions |    * Power functions | ||||||
|    */ |    */ | ||||||
|  |  | ||||||
|   virtual bool restart() = 0; |   virtual bool restart() = 0; | ||||||
|  |   virtual bool poweroff() { return false; } | ||||||
|  |   virtual bool radioOff() { return false; } | ||||||
|  |   virtual bool sleepEnable(bool enable = true) { return false; } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * SIM card functions |    * SIM card functions | ||||||
|    */ |    */ | ||||||
|  |  | ||||||
|   virtual bool simUnlock(const char *pin) = 0; |   virtual bool simUnlock(const char *pin) { return false; } | ||||||
|   virtual String getSimCCID() = 0; |   virtual String getSimCCID() { return ""; } | ||||||
|   virtual String getIMEI() = 0; |   virtual String getIMEI() { return ""; } | ||||||
|   virtual String getOperator() = 0; |   virtual String getOperator() { return ""; } | ||||||
|  |  | ||||||
|  /* |  /* | ||||||
|   * Generic network functions |   * Generic network functions | ||||||
|   */ |   */ | ||||||
|  |  | ||||||
|   virtual int getSignalQuality() = 0; |   virtual int getSignalQuality() = 0; | ||||||
|  |   // NOTE:  this returns whether the modem is registered on the cellular or WiFi | ||||||
|  |   // network NOT whether GPRS or other internet connections are available | ||||||
|   virtual bool isNetworkConnected() = 0; |   virtual bool isNetworkConnected() = 0; | ||||||
|  |   virtual bool waitForNetwork(unsigned long timeout = 60000L) { | ||||||
|  |     for (unsigned long start = millis(); millis() - start < timeout; ) { | ||||||
|  |       if (isNetworkConnected()) { | ||||||
|  |         return true; | ||||||
|  |       } | ||||||
|  |       delay(250); | ||||||
|  |     } | ||||||
|  |     return false; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * WiFi functions |    * WiFi functions | ||||||
|    */ |    */ | ||||||
|  |  | ||||||
|   virtual bool networkConnect(const char* ssid, const char* pwd) = 0; |   virtual bool networkConnect(const char* ssid, const char* pwd) { return false; } | ||||||
|   virtual bool networkDisconnect() = 0; |   virtual bool networkDisconnect() { return false; } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * GPRS functions |    * GPRS functions | ||||||
|    */ |    */ | ||||||
|   virtual bool gprsConnect(const char* apn, const char* user = NULL, const char* pwd = NULL) = 0; |  | ||||||
|   virtual bool gprsDisconnect() = 0; |   virtual bool gprsConnect(const char* apn, const char* user = NULL, const char* pwd = NULL) { return false; } | ||||||
|   virtual bool isGprsConnected() = 0; |   virtual bool gprsDisconnect() { return false; } | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|    * IP Address functions |    * IP Address functions | ||||||
| @@ -276,12 +304,6 @@ public: | |||||||
|     return TinyGsmIpFromString(getLocalIP()); |     return TinyGsmIpFromString(getLocalIP()); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   /* |  | ||||||
|    * Messaging functions |  | ||||||
|    */ |  | ||||||
|  |  | ||||||
|   virtual bool sendSMS(const String& number, const String& text) = 0; |  | ||||||
|  |  | ||||||
| public: | public: | ||||||
|   Stream&       stream; |   Stream&       stream; | ||||||
| }; | }; | ||||||
|   | |||||||
| @@ -3,6 +3,12 @@ | |||||||
|  *  DO NOT USE THIS - this is just a compilation test! |  *  DO NOT USE THIS - this is just a compilation test! | ||||||
|  * |  * | ||||||
|  **************************************************************/ |  **************************************************************/ | ||||||
|  | // #define TINY_GSM_MODEM_SIM800  // Select for a SIM800, SIM900, or variant thereof | ||||||
|  | // #define TINY_GSM_MODEM_A6  // Select for a AI-Thinker A6 or A7 chip | ||||||
|  | // #define TINY_GSM_MODEM_M590  // Select for a Neoway M590 | ||||||
|  | // #define TINY_GSM_MODEM_UBLOX  // Select for most u-blox cellular modems | ||||||
|  | // #define TINY_GSM_MODEM_ESP8266  // Select for an ESP8266 using the DEFAULT AT COMMAND FIRMWARE | ||||||
|  | // #define TINY_GSM_MODEM_XBEE  // Select for Digi brand WiFi or Cellular XBee's | ||||||
|  |  | ||||||
| #include <TinyGsmClient.h> | #include <TinyGsmClient.h> | ||||||
|  |  | ||||||
| @@ -77,4 +83,3 @@ void loop() { | |||||||
|     modem.networkDisconnect(); |     modem.networkDisconnect(); | ||||||
|   #endif |   #endif | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user