Go Down

Topic: ElecFreak 3G Shield SIM5215E no response (Read 141 times) previous topic - next topic

YIFANG

Nov 13, 2018, 03:38 pm Last Edit: Nov 15, 2018, 04:30 am by YIFANG
Hi, I recently purchased a 3G shield from Elecfreak on project to send SMS alerts with the use of Arduino UNO. Had tried the source code below but to no avail (nothing shows up when i run the serial monitor, or when i key in AT). :( Hope to seek some help. Gotten a trial code online as below:



#include <SoftwareSerial.h>
#include <String.h>
 
SoftwareSerial mySerial(7,8);
 
void setup()
{
  mySerial.begin(115200);               // the GPRS baud rate   
  Serial.begin(115200);    // the GPRS baud rate
  delay(500);
}
 
void loop()
{
  //after start up the program, you can using terminal to connect the serial of gprs shield,
  //if you input 't' in the terminal, the program will execute SendTextMessage(), it will show how to send a sms message,
  //if input 'd' in the terminal, it will execute DialVoiceCall(), etc.
 
  if (Serial.available())
    switch(Serial.read())
   {
     case 't':
       SendTextMessage();
       break;
     case 'd':
       DialVoiceCall();
       break;
     
   }
  if (mySerial.available())
    Serial.write(mySerial.read());
}
 
///SendTextMessage()
///this function is to send a sms message
void SendTextMessage()
{
  mySerial.print("AT+CMGF=1\r");    //Because we want to send the SMS in text mode
  delay(100);
  mySerial.println("AT + CMGS = \"+65xxxx\"");//send sms message, be careful need to add a country code before the cellphone number
  delay(100);
  mySerial.println("How are you ?");//the content of the message
  delay(100);
  mySerial.println((char)26);//the ASCII code of the ctrl+z is 26
  delay(100);
  mySerial.println();
}
 
///DialVoiceCall
///this function is to dial a voice call
void DialVoiceCall()
{
  mySerial.println("ATD+65xxxxxx;");//dial the number
  delay(100);
  mySerial.println();
}
 
void ShowSerialData()
{
  while(mySerial.available()!=0)
    Serial.write(mySerial.read());
}

Go Up