You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

97 lines
4.8 KiB

8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
7 years ago
7 years ago
8 years ago
8 years ago
8 years ago
  1. ![TinyGSM logo](https://cdn.rawgit.com/vshymanskyy/TinyGSM/d18e93dc51fe988a0b175aac647185457ef640b5/extras/logo.svg)
  2. A small Arduino library for GSM modules, that just works.
  3. <!---
  4. [![GitHub download](https://img.shields.io/github/downloads/vshymanskyy/TinyGSM/total.svg)](https://github.com/vshymanskyy/TinyGSM/releases/latest)--->
  5. [![GitHub version](https://img.shields.io/github/release/vshymanskyy/TinyGSM.svg)](https://github.com/vshymanskyy/TinyGSM/releases/latest)
  6. [![Build status](https://img.shields.io/travis/vshymanskyy/TinyGSM.svg)](https://travis-ci.org/vshymanskyy/TinyGSM)
  7. [![GitHub issues](https://img.shields.io/github/issues/vshymanskyy/TinyGSM.svg)](https://github.com/vshymanskyy/TinyGSM/issues)
  8. [![GitHub wiki](https://img.shields.io/badge/Wiki-available-brightgreen.svg)](https://github.com/vshymanskyy/TinyGSM/wiki)
  9. [![GitHub stars](https://img.shields.io/github/stars/vshymanskyy/TinyGSM.svg)](https://github.com/vshymanskyy/TinyGSM/stargazers)
  10. [![License](https://img.shields.io/badge/license-LGPL3-blue.svg)](https://github.com/vshymanskyy/TinyGSM/blob/master/LICENSE)
  11. If you like **TinyGSM** - give it a star, or fork it and contribute!
  12. [![GitHub stars](https://img.shields.io/github/stars/vshymanskyy/TinyGSM.svg?style=social&label=Star)](https://github.com/vshymanskyy/TinyGSM/stargazers)
  13. [![GitHub forks](https://img.shields.io/github/forks/vshymanskyy/TinyGSM.svg?style=social&label=Fork)](https://github.com/vshymanskyy/TinyGSM/network)
  14. ### Arduino Client interface support
  15. This library is easy to integrate with lots of sketches, which use Ethernet or WiFi.
  16. Examples for **PubSubClient ([MQTT](http://mqtt.org/))**, **[Blynk](http://blynk.cc)**, **Web Client** and **File Download** are provided.
  17. ![examples](/extras/examples.png)
  18. ### TinyGSM is tiny
  19. The complete WebClient example for Arduino Uno (via Software Serial) takes little resources:
  20. ```
  21. Sketch uses 14094 bytes (43%) of program storage space. Maximum is 32256 bytes.
  22. Global variables use 625 bytes (30%) of dynamic memory, leaving 1423 bytes for local variables. Maximum is 2048 bytes.
  23. ```
  24. Arduino GSM library uses 15868 bytes (49%) of Flash and 1113 bytes (54%) of RAM in a similar scenario.
  25. TinyGSM also pulls data gently from the modem (whenever possible), so it can operate on very little RAM.
  26. **Now, you have more space for your experiments.**
  27. ### Supported modem models
  28. - [x] SIMCom SIM800 series (SIM800A, SIM800C, SIM800L, SIM800H, SIM808, SIM868)
  29. - [x] SIMCom SIM900 series (SIM900A, SIM900D, SIM908, SIM968)
  30. - [x] AI-Thinker A6, A6C, A7
  31. - [x] Neoway M590
  32. - [x] ESP8266 (AT commands interface, similar to GSM modems)
  33. ### Supported modules
  34. - [x] GPRSbee
  35. - [x] Microduino GSM
  36. - [x] Adafruit FONA (Mini Cellular GSM Breakout)
  37. - [x] Adafruit FONA 800/808 Shield
  38. More modems may be supported later:
  39. - [ ] Quectel M10, M95, UG95
  40. - [ ] SIMCom SIM5320, SIM5216
  41. - [ ] Telit GL865
  42. - [ ] ZTE MG2639
  43. Watch this repo for new updates! And of course, contributions are welcome ;)
  44. ## Getting Started
  45. 1. Using your phone:
  46. - Disable PIN code on the SIM card
  47. - Check your ballance
  48. - Check that APN,User,Pass are correct and you have internet
  49. 2. Ensure the SIM card is correctly inserted into the module
  50. 3. Provide a good, [stable power supply](https://github.com/vshymanskyy/TinyGSM/wiki/Powering-GSM-module) (up to 2A and specific voltage according to your module documentation)
  51. 4. Check if serial connection is working (Hardware Serial is recommended)
  52. Send an ```AT``` command using [this sketch](tools/AT_Debug/AT_Debug.ino)
  53. 5. Check if GSM antenna is attached
  54. ## Troubleshooting
  55. ### SoftwareSerial problems
  56. When using ```SoftwareSerial``` (on Uno, Nano, etc), the speed **115200** may not work.
  57. Try selecting **57600**, **38400**, or even lower - the one that works best for you.
  58. Be sure to set correct TX/RX pins in the sketch. Please note that not every Arduino pin can serve as TX or RX pin.
  59. **Read more about SoftSerial options and configuration [here](https://www.pjrc.com/teensy/td_libs_AltSoftSerial.html).**
  60. ### Diagnostics sketch
  61. Use this sketch to diagnose your SIM card and GPRS connection:
  62. File -> Examples -> TynyGSM -> tools -> [Diagnostics](https://github.com/vshymanskyy/TinyGSM/blob/master/tools/Diagnostics/Diagnostics.ino)
  63. ### Broken initial configuration
  64. Sometimes (especially if you played with AT comands), your module configuration may become invalid.
  65. This may result in problems such as:
  66. * Can't connect to the GPRS network
  67. * Can't connect to the server
  68. * Sent/recieved data contains invalid bytes
  69. * etc.
  70. To return module to **Factory Defaults**, use this sketch:
  71. File -> Examples -> TynyGSM -> tools -> [FactoryReset](https://github.com/vshymanskyy/TinyGSM/blob/master/tools/FactoryReset/FactoryReset.ino)
  72. __________
  73. ### License
  74. This project is released under
  75. The GNU Lesser General Public License (LGPL-3.0)