diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index 72063f1..ef24062 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -22,7 +22,7 @@ with your board before submitting any issues. Main processor board: Modem: -TinyGSM version: +TinyGSM version: Code: ### Scenario, steps to reproduce diff --git a/README.md b/README.md index 4ab951a..59bc900 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ TinyGSM also pulls data gently from the modem (whenever possible), so it can ope - Neoway M590 - u-blox 2G, 3G, 4G, and LTE Cat1 Cellular Modems (many modules including LEON-G100, LISA-U2xx, SARA-G3xx, SARA-U2xx, TOBY-L2xx, LARA-R2xx, MPCI-L2xx) - u-blox LTE-M Modems (SARA-R4xx, SARA-N4xx, _but NOT SARA-N2xx_) -- Sequans Monarch LTE Cat M1/NB1 +- Sequans Monarch LTE Cat M1/NB1 (VZM20Q) - Quectel BG96 - Quectel M95 - Quectel MC60 ***(alpha)*** @@ -83,26 +83,29 @@ Watch this repo for new updates! And of course, contributions are welcome ;) - SIM800, u-Blox, XBee _cellular_, ESP8266, and Sequans Monarch - Note: only some device models or firmware revisions have this feature (SIM8xx R14.18, A7, etc.) - Not yet supported on: - - Quectel modems, SIM7000, SIM5360/5320/7100/7500/7600 + - Quectel modems, SIM7000, SIM5360/5320, SIM7100/7500/7600 - Not possible on: - - SIM900, A6/A7, M560, XBee _WiFi_ + - SIM900, A6/A7, Neoway M590, XBee _WiFi_ **USSD** - Sending USSD requests and decoding 7,8,16-bit responses - Supported on: - - SIM800/SIM900, SIM7000 - - Not yet supported on: - - Quectel modems, SIM5360/5320/7100/7500/7600, XBee + - All SIMCom modems, Quectel modems, most u-blox + - Not possible on: + - XBee, u-blox SARA R4/N4, ESP8266 (obviously) **SMS** - Only _sending_ SMS is supported, not receiving - - Supported on: - - SIM800/SIM900, SIM7000, XBee - - Not yet supported on: - - Quectel modems, SIM5360/5320/7100/7500/7600 + - Supported on all cellular modules **Voice Calls** -- Only Supported on SIM800 and A6/A7/A20 +- Supported on: + - SIM800/SIM900, A6/A7, Quectel modems, u-blox +- Not yet supported on: + - SIM7000, SIM5360/5320/7100, SIM7500/7600/7800, VZM20Q (Monarch) +- Not possible on: + - XBee (any type), u-blox SARA R4/N4, Neoway M590, ESP8266 (obviously) +- Functions: - Dial, hangup - Receiving calls - Incoming event (RING) @@ -111,9 +114,9 @@ Watch this repo for new updates! And of course, contributions are welcome ;) **Location** - GPS/GNSS - - SIM808 and SIM7000 only + - SIM808, SIM7000, SIM7500/7600/7800 only - GSM location service - - SIM800, SIM and SIM7000 only + - SIM800, SIM7000, Quectel, u-blox **Credits** - Primary Authors/Contributors: diff --git a/library.json b/library.json index d16cda6..b529261 100644 --- a/library.json +++ b/library.json @@ -1,6 +1,6 @@ { "name": "TinyGSM", - "version": "0.9.19", + "version": "0.10.0", "description": "A small Arduino library for GPRS modules, that just works. Includes examples for Blynk, MQTT, File Download, and Web Client. Supports many GSM, LTE, and WiFi modules with AT command interfaces.", "keywords": "GSM, AT commands, AT, SIM800, SIM900, A6, A7, M590, ESP8266, SIM7000, SIM800A, SIM800C, SIM800L, SIM800H, SIM808, SIM868, SIM900A, SIM900D, SIM908, SIM968, M95, MC60, MC60E, BG96, ublox, Quectel, SIMCOM, AI Thinker, LTE, LTE-M", "authors": diff --git a/library.properties b/library.properties index aa8f193..fcfd3fb 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=TinyGSM -version=0.9.19 +version=0.10.0 author=Volodymyr Shymanskyy maintainer=Volodymyr Shymanskyy sentence=A small Arduino library for GPRS modules, that just works. diff --git a/src/TinyGsmClientBG96.h b/src/TinyGsmClientBG96.h index dad31cb..a255037 100644 --- a/src/TinyGsmClientBG96.h +++ b/src/TinyGsmClientBG96.h @@ -113,7 +113,7 @@ class TinyGsmBG96 public: - virtual int connect(const char *host, uint16_t port, int timeout_s) { + int connect(const char* host, uint16_t port, int timeout_s) { stop(); TINY_GSM_YIELD(); rx.clear(); diff --git a/src/TinyGsmClientM95.h b/src/TinyGsmClientM95.h index d983775..5954a31 100644 --- a/src/TinyGsmClientM95.h +++ b/src/TinyGsmClientM95.h @@ -114,7 +114,7 @@ class TinyGsmM95 public: - virtual int connect(const char *host, uint16_t port, int timeout_s) { + int connect(const char* host, uint16_t port, int timeout_s) { stop(); TINY_GSM_YIELD(); rx.clear(); diff --git a/src/TinyGsmClientMC60.h b/src/TinyGsmClientMC60.h index 9681153..ecb1fd3 100644 --- a/src/TinyGsmClientMC60.h +++ b/src/TinyGsmClientMC60.h @@ -116,7 +116,7 @@ class TinyGsmMC60 public: - virtual int connect(const char *host, uint16_t port, int timeout_s) { + int connect(const char* host, uint16_t port, int timeout_s) { stop(); TINY_GSM_YIELD(); rx.clear(); diff --git a/src/TinyGsmCommon.h b/src/TinyGsmCommon.h index 0f97f33..99a3edf 100644 --- a/src/TinyGsmCommon.h +++ b/src/TinyGsmCommon.h @@ -10,7 +10,7 @@ #define SRC_TINYGSMCOMMON_H_ // The current library version number -#define TINYGSM_VERSION "0.9.19" +#define TINYGSM_VERSION "0.10.0" #if defined(SPARK) || defined(PARTICLE) #include "Particle.h" @@ -118,6 +118,7 @@ uint32_t TinyGsmAutoBaud(T& SerialAT, uint32_t minimum = 9600, } } } + SerialAT.begin(minimum); return 0; } diff --git a/tools/Diagnostics/Diagnostics.ino b/tools/Diagnostics/Diagnostics.ino index 962043c..c44aa48 100644 --- a/tools/Diagnostics/Diagnostics.ino +++ b/tools/Diagnostics/Diagnostics.ino @@ -48,7 +48,7 @@ #define TINY_GSM_RX_BUFFER 1024 // See all AT commands, if wanted -//#define DUMP_AT_COMMANDS +// #define DUMP_AT_COMMANDS // Define the serial console for debug prints, if needed #define TINY_GSM_DEBUG SerialMon @@ -58,10 +58,10 @@ #define GSM_AUTOBAUD_MAX 115200 // Add a reception delay - may be needed for a fast processor at a slow baud rate -//#define TINY_GSM_YIELD() { delay(2); } +// #define TINY_GSM_YIELD() { delay(2); } // Uncomment this if you want to use SSL -//#define USE_SSL +// #define USE_SSL #define TINY_GSM_USE_GPRS true #define TINY_GSM_USE_WIFI false @@ -236,8 +236,8 @@ void loop() { client.find("\r\n\r\n"); // Read data - unsigned long timeout = millis(); - unsigned long bytesReceived = 0; + uint32_t timeout = millis(); + uint32_t bytesReceived = 0; while (client.connected() && millis() - timeout < 10000L) { while (client.available()) { char c = client.read(); diff --git a/tools/test_build/test_build.ino b/tools/test_build/test_build.ino index 1f8d80b..e5b0db7 100644 --- a/tools/test_build/test_build.ino +++ b/tools/test_build/test_build.ino @@ -3,7 +3,7 @@ * DO NOT USE THIS - this is just a compilation test! * **************************************************************/ -// #define TINY_GSM_MODEM_SIM800 +#define TINY_GSM_MODEM_SIM800 #include @@ -20,13 +20,12 @@ char resource[] = "something"; void setup() { Serial.begin(115200); delay(3000); - modem.restart(); } void loop() { // Test the basic functions - modem.init(); + // modem.init(); modem.begin(); modem.setBaud(115200); modem.testAT(); @@ -62,7 +61,7 @@ void loop() { modem.gprsConnect("YourAPN", "", ""); #endif #if defined(TINY_GSM_MODEM_HAS_WIFI) - modem.networkConnect("YourSSID", "YourPWD"); + modem.networkConnect("YourSSID", "YourWiFiPass"); modem.waitForNetwork(); #endif