Envío SMS SIM808 v1.1 Hardware serial

Hola, buenas tardes…

Tengo una duda sobre la el envío de un SMS usando hardware serial (0,1) (Sé que el código no corresponde), he intentado armar algún código de varias fuentes, pero no sé cómo hacerlo para echar a andar la placa, funciona mediante AT (llamadas), pero por código no he podido hacerla funcionar…

¿En que estoy mal? (partiendo por softwaresarial), podrían ayudarme, gracias.

#include <SoftwareSerial.h>

SoftwareSerial mySerial(7, 8);

void setup()
{
mySerial.begin(19200);  //Default serial port setting for the GPRS modem is 19200bps 8-N-1
mySerial.print("\r");
delay(1000);                    //Wait for a second while the modem sends an "OK"
mySerial.print("AT+CMGF=1\r");    //Because we want to send the SMS in text mode
delay(1000);

//mySerial.print("AT+CSCA=\"+919032055002\"\r");  //Setting for the SMS Message center number,  
//delay(1000);                                  //uncomment only if required and replace with
//the message center number obtained from
//your GSM service provider.
//Note that when specifying a tring of characters
// " is entered as \"

mySerial.print("AT+CMGS=\"+9184460xxxx\"\r");    //Start accepting the text for the message
//to be sent to the number specified.
//Replace this number with the target mobile number.
delay(1000);
mySerial.print("Hello,Elecrow!\r");   //The text for the message
delay(1000);
mySerial.write(0x1A);  //Equivalent to sending Ctrl+Z 
}

void loop()
{
//We just want to send the SMS only once, so there is nothing in this loop.
//If we put the code for SMS here, it will be sent again and again and cost us a lot.
}

Además He estado haciendo pruebas con mi módulo SIM808 y GPS, pero siempre con el chip de la empresa telefónica con saldo completo, mi consulta es ¿Necesito el plan de datos para utilizar el GPS? o simplemente necesito activar la placa celular con los respectivos comandos AT…