naivxnaivet

GSM / SMS Module basic functions (Text , Receive) HARDWARE S

Nov 9th, 2019
246
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. char msg;
  2. char incomingByte;
  3. String inputString;
  4. const String number = "9275156419"; // number na itetext ng gsm module
  5.  
  6.  
  7.  
  8. int smsCounter = 0;
  9.  
  10. void setup() {
  11. Serial.begin(115200);
  12.  
  13. Serial3.begin(115200);
  14. SendSMS(number, "Hi ");
  15. ReceiveMessage(); // Function para makarecieve ng sms
  16.  
  17.  
  18.  
  19. }
  20.  
  21. void loop() {
  22. // put your main code here, to run repeatedly:
  23.  
  24.  
  25. //ReceiveMessage();
  26. if (Serial3.available()){
  27. delay(100); // ito yung condition kung may buffered data sa gsm module
  28. while(Serial3.available()){
  29. incomingByte = Serial3.read();// babasahin yung data at ilalagay sa inputString
  30. inputString += incomingByte;
  31. }
  32. delay(10);
  33. Serial.println(inputString);
  34. inputString.toUpperCase();
  35.  
  36. if (inputString.indexOf("STATUS") > -1 && smsCounter == 0){ // ito naman hahanap ng word na STATUS sa text ng user at kapag meron magsesend ng msg
  37. Serial.println("Received text from trusted number.");
  38. SendSMS(number, "I am GSM Module: ");
  39.  
  40. Serial3.println("AT+CMGF=1");
  41. delay(1000);
  42. Serial3.print("AT+CMGS=\"+63");
  43. Serial3.print(number);
  44. Serial3.print("\"\r");
  45. delay(1000);
  46. Serial3.print(".: \n");
  47. Serial3.print("asd");
  48. Serial3.print("\n");
  49. Serial3.print(".: \n");
  50. Serial3.print(".");
  51. delay(100);
  52. Serial3.print((char)26);
  53. delay(1000);
  54. smsCounter++;
  55. }
  56. inputString = "";
  57.  
  58. }
  59.  
  60.  
  61. }
  62.  
  63.  
  64.  
  65.  
  66. void SendSMS(String number, String msg){ // Ito ung function na magsesend ng SMS
  67. Serial3.println("AT+CMGF=1");
  68. delay(1000);
  69. Serial3.print("AT+CMGS=\"+63");
  70. Serial3.print(number);
  71. Serial3.print("\"\r");
  72. delay(1000);
  73. Serial3.print(msg);
  74. delay(100);
  75. Serial3.print((char)26);
  76. delay(1000);
  77. }
  78.  
  79. void DelSentSMS(){
  80. Serial3.print("AT+CMGDA=\"");
  81. Serial3.println("DEL SENT\"");
  82. delay(500);
  83. Serial.println( "All Sent Messages Deleted" );
  84. }
  85.  
  86. void DelReadSMS(){
  87. Serial3.print("AT+CMGDA=\"");
  88. Serial3.println("DEL READ\"");
  89. delay(500);
  90. Serial.println( "All Read Messages Deleted" );
  91. }
  92.  
  93. void ReceiveMessage(){
  94. Serial3.println("AT+CNMI=2,2,0,0,0 "); // AT Command to recieve a live SMS
  95. delay(1000);
  96. }
Advertisement
Add Comment
Please, Sign In to add comment