mirror of
				https://github.com/KevinMidboe/TinyGSM.git
				synced 2025-10-29 18:00:18 +00:00 
			
		
		
		
	Merge branch 'original'
This commit is contained in:
		| @@ -13,6 +13,8 @@ | ||||
| #define TINY_GSM_MODEM_SIM800 | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_SIM900 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
| // #define TINY_GSM_MODEM_BG96 | ||||
| // #define TINY_GSM_MODEM_A6 | ||||
| // #define TINY_GSM_MODEM_A7 | ||||
| // #define TINY_GSM_MODEM_M590 | ||||
| @@ -123,7 +125,8 @@ void loop() { | ||||
|   } | ||||
| #endif | ||||
|  | ||||
|   bool res; | ||||
|   bool res = modem.isGprsConnected(); | ||||
|   DBG("GPRS status:", res ? "connected" : "not connected"); | ||||
|  | ||||
|   String ccid = modem.getSimCCID(); | ||||
|   DBG("CCID:", ccid); | ||||
|   | ||||
| @@ -32,6 +32,8 @@ | ||||
| #define TINY_GSM_MODEM_SIM800 | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_SIM900 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
| // #define TINY_GSM_MODEM_BG96 | ||||
| // #define TINY_GSM_MODEM_A6 | ||||
| // #define TINY_GSM_MODEM_A7 | ||||
| // #define TINY_GSM_MODEM_M590 | ||||
|   | ||||
| @@ -17,6 +17,8 @@ | ||||
| #define TINY_GSM_MODEM_SIM800 | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_SIM900 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
| // #define TINY_GSM_MODEM_BG96 | ||||
| // #define TINY_GSM_MODEM_A6 | ||||
| // #define TINY_GSM_MODEM_A7 | ||||
| // #define TINY_GSM_MODEM_M590 | ||||
|   | ||||
| @@ -18,6 +18,8 @@ | ||||
| #define TINY_GSM_MODEM_SIM800 | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_SIM900 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
| // #define TINY_GSM_MODEM_BG96 | ||||
| // #define TINY_GSM_MODEM_A6 | ||||
| // #define TINY_GSM_MODEM_A7 | ||||
| // #define TINY_GSM_MODEM_M590 | ||||
|   | ||||
| @@ -10,7 +10,8 @@ | ||||
|  * TinyGSM Getting Started guide: | ||||
|  *   http://tiny.cc/tiny-gsm-readme | ||||
|  * | ||||
|  * SSL/TLS is currently supported only with SIM8xx series | ||||
|  * SSL/TLS is currently supported only with: SIM8xx, uBlox | ||||
|  * | ||||
|  * For more HTTP API examples, see ArduinoHttpClient library | ||||
|  * | ||||
|  **************************************************************/ | ||||
| @@ -18,6 +19,7 @@ | ||||
| // Select your modem: | ||||
| #define TINY_GSM_MODEM_SIM800 | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
|  | ||||
| // Increase RX buffer if needed | ||||
| //#define TINY_GSM_RX_BUFFER 512 | ||||
|   | ||||
| @@ -31,6 +31,8 @@ | ||||
| #define TINY_GSM_MODEM_SIM800 | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_SIM900 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
| // #define TINY_GSM_MODEM_BG96 | ||||
| // #define TINY_GSM_MODEM_A6 | ||||
| // #define TINY_GSM_MODEM_A7 | ||||
| // #define TINY_GSM_MODEM_M590 | ||||
| @@ -119,7 +121,14 @@ void setup() { | ||||
| boolean mqttConnect() { | ||||
|   SerialMon.print("Connecting to "); | ||||
|   SerialMon.print(broker); | ||||
|   if (!mqtt.connect("GsmClientTest")) { | ||||
|  | ||||
|   // Connect to MQTT Broker | ||||
|   boolean status = mqtt.connect("GsmClientTest"); | ||||
|  | ||||
|   // Or, if you want to authenticate MQTT: | ||||
|   //boolean status = mqtt.connect("GsmClientName", "mqtt_user", "mqtt_pass"); | ||||
|  | ||||
|   if (status == false) { | ||||
|     SerialMon.println(" fail"); | ||||
|     return false; | ||||
|   } | ||||
| @@ -131,9 +140,8 @@ boolean mqttConnect() { | ||||
|  | ||||
| void loop() { | ||||
|  | ||||
|   if (mqtt.connected()) { | ||||
|     mqtt.loop(); | ||||
|   } else { | ||||
|   if (!mqtt.connected()) { | ||||
|     SerialMon.println("=== MQTT NOT CONNECTED ==="); | ||||
|     // Reconnect every 10 seconds | ||||
|     unsigned long t = millis(); | ||||
|     if (t - lastReconnectAttempt > 10000L) { | ||||
| @@ -142,8 +150,11 @@ void loop() { | ||||
|         lastReconnectAttempt = 0; | ||||
|       } | ||||
|     } | ||||
|     delay(100); | ||||
|     return; | ||||
|   } | ||||
|  | ||||
|   mqtt.loop(); | ||||
| } | ||||
|  | ||||
| void mqttCallback(char* topic, byte* payload, unsigned int len) { | ||||
|   | ||||
| @@ -12,6 +12,8 @@ | ||||
| #define TINY_GSM_MODEM_SIM800 | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_SIM900 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
| // #define TINY_GSM_MODEM_BG96 | ||||
| // #define TINY_GSM_MODEM_A6 | ||||
| // #define TINY_GSM_MODEM_A7 | ||||
| // #define TINY_GSM_MODEM_M590 | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|   "name": "TinyGSM", | ||||
|   "version": "0.3.40", | ||||
|   "version": "0.3.50", | ||||
|   "description": "A small Arduino library for GPRS modules, that just works. Includes examples for Blynk, MQTT, File Download, and Web Client. Supports GSM modules with AT command interface: SIM800, SIM800A, SIM800C, SIM800L, SIM800H, SIM808, SIM868, SIM900, SIM900A, SIM900D, SIM908, SIM968, Quectel M95", | ||||
|   "keywords": "GSM, AT commands, AT, SIM800, SIM900, A6, A7, M590, ESP8266, SIM800A, SIM800C, SIM800L, SIM800H, SIM808, SIM868, SIM900A, SIM900D, SIM908, SIM968, M95", | ||||
|   "authors": | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| name=TinyGSM | ||||
| version=0.3.40 | ||||
| version=0.3.50 | ||||
| author=Volodymyr Shymanskyy | ||||
| maintainer=Volodymyr Shymanskyy | ||||
| sentence=A small Arduino library for GPRS modules, that just works. | ||||
|   | ||||
| @@ -49,7 +49,7 @@ class TinyGsmA6 | ||||
|  | ||||
| //============================================================================// | ||||
| //============================================================================// | ||||
| //                          The A6 Internal Client Class | ||||
| //                         The Internal A6 Client Class | ||||
| //============================================================================// | ||||
| //============================================================================// | ||||
|  | ||||
| @@ -120,6 +120,11 @@ public: | ||||
|     return write(&c, 1); | ||||
|   } | ||||
|  | ||||
|   virtual size_t write(const char *str) { | ||||
|     if (str == NULL) return 0; | ||||
|     return write((const uint8_t *)str, strlen(str)); | ||||
|   } | ||||
|  | ||||
|   virtual int available() { | ||||
|     TINY_GSM_YIELD(); | ||||
|     if (!rx.size() && sock_connected) { | ||||
|   | ||||
| @@ -50,7 +50,7 @@ class TinyGsmBG96 | ||||
|  | ||||
| //============================================================================// | ||||
| //============================================================================// | ||||
| //                         The BG96 Internal Client Class | ||||
| //                         The Internal BG96 Client Class | ||||
| //============================================================================// | ||||
| //============================================================================// | ||||
|  | ||||
| @@ -120,6 +120,11 @@ public: | ||||
|     return write(&c, 1); | ||||
|   } | ||||
|  | ||||
|   virtual size_t write(const char *str) { | ||||
|     if (str == NULL) return 0; | ||||
|     return write((const uint8_t *)str, strlen(str)); | ||||
|   } | ||||
|  | ||||
|   virtual int available() { | ||||
|     TINY_GSM_YIELD(); | ||||
|     if (!rx.size()) { | ||||
|   | ||||
| @@ -117,6 +117,11 @@ public: | ||||
|     return write(&c, 1); | ||||
|   } | ||||
|  | ||||
|   virtual size_t write(const char *str) { | ||||
|     if (str == NULL) return 0; | ||||
|     return write((const uint8_t *)str, strlen(str)); | ||||
|   } | ||||
|  | ||||
|   virtual int available() { | ||||
|     TINY_GSM_YIELD(); | ||||
|     if (!rx.size() && sock_connected) { | ||||
|   | ||||
| @@ -118,6 +118,11 @@ public: | ||||
|     return write(&c, 1); | ||||
|   } | ||||
|  | ||||
|   virtual size_t write(const char *str) { | ||||
|     if (str == NULL) return 0; | ||||
|     return write((const uint8_t *)str, strlen(str)); | ||||
|   } | ||||
|  | ||||
|   virtual int available() { | ||||
|     TINY_GSM_YIELD(); | ||||
|     if (!rx.size() && sock_connected) { | ||||
|   | ||||
| @@ -50,7 +50,7 @@ class TinyGsmSim800 | ||||
|  | ||||
| //============================================================================// | ||||
| //============================================================================// | ||||
| //                          The Sim800 Internal Client Class | ||||
| //                          The Internal SIM800 Client Class | ||||
| //============================================================================// | ||||
| //============================================================================// | ||||
|  | ||||
| @@ -121,6 +121,11 @@ public: | ||||
|     return write(&c, 1); | ||||
|   } | ||||
|  | ||||
|   virtual size_t write(const char *str) { | ||||
|     if (str == NULL) return 0; | ||||
|     return write((const uint8_t *)str, strlen(str)); | ||||
|   } | ||||
|  | ||||
|   virtual int available() { | ||||
|     TINY_GSM_YIELD(); | ||||
|     if (!rx.size() && sock_connected) { | ||||
| @@ -337,6 +342,7 @@ public: | ||||
|       return false; | ||||
|     } | ||||
|     //Enable Local Time Stamp for getting network time | ||||
|     // TODO: Find a better place for this | ||||
|     sendAT(GF("+CLTS=1")); | ||||
|     if (waitResponse(10000L) != 1) { | ||||
|       return false; | ||||
|   | ||||
| @@ -118,6 +118,11 @@ public: | ||||
|     return write(&c, 1); | ||||
|   } | ||||
|  | ||||
|   virtual size_t write(const char *str) { | ||||
|     if (str == NULL) return 0; | ||||
|     return write((const uint8_t *)str, strlen(str)); | ||||
|   } | ||||
|  | ||||
|   virtual int available() { | ||||
|     TINY_GSM_YIELD(); | ||||
|     if (!rx.size() && sock_connected) { | ||||
|   | ||||
| @@ -136,6 +136,11 @@ public: | ||||
|     return write(&c, 1); | ||||
|   } | ||||
|  | ||||
|   virtual size_t write(const char *str) { | ||||
|     if (str == NULL) return 0; | ||||
|     return write((const uint8_t *)str, strlen(str)); | ||||
|   } | ||||
|  | ||||
|   virtual int available() { | ||||
|     TINY_GSM_YIELD(); | ||||
|     return at->stream.available(); | ||||
|   | ||||
| @@ -12,6 +12,8 @@ | ||||
| #define TINY_GSM_MODEM_SIM800 | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_SIM900 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
| // #define TINY_GSM_MODEM_BG96 | ||||
| // #define TINY_GSM_MODEM_A6 | ||||
| // #define TINY_GSM_MODEM_A7 | ||||
| // #define TINY_GSM_MODEM_M590 | ||||
|   | ||||
| @@ -14,6 +14,7 @@ | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_SIM900 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
| // #define TINY_GSM_MODEM_BG96 | ||||
| // #define TINY_GSM_MODEM_A6 | ||||
| // #define TINY_GSM_MODEM_A7 | ||||
| // #define TINY_GSM_MODEM_M590 | ||||
| @@ -56,6 +57,7 @@ const char resource[] = "/TinyGSM/logo.txt"; | ||||
| const int  port = 80; | ||||
| TinyGsmClient client(modem); | ||||
|  | ||||
| // For SSL: | ||||
| //const int  port = 443; | ||||
| //TinyGsmClientSecure client(modem); | ||||
|  | ||||
| @@ -155,7 +157,7 @@ void loop() { | ||||
|   while (client.connected() && millis() - timeout < 10000L) { | ||||
|     while (client.available()) { | ||||
|       char c = client.read(); | ||||
|       SerialMon.print(c); | ||||
|       //SerialMon.print(c); | ||||
|       bytesReceived += 1; | ||||
|       timeout = millis(); | ||||
|     } | ||||
|   | ||||
| @@ -13,6 +13,8 @@ | ||||
| #define TINY_GSM_MODEM_SIM800 | ||||
| // #define TINY_GSM_MODEM_SIM808 | ||||
| // #define TINY_GSM_MODEM_SIM900 | ||||
| // #define TINY_GSM_MODEM_UBLOX | ||||
| // #define TINY_GSM_MODEM_BG96 | ||||
| // #define TINY_GSM_MODEM_A6 | ||||
| // #define TINY_GSM_MODEM_A7 | ||||
| // #define TINY_GSM_MODEM_M590 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user