GSM problem

I'm trying to get my arduino GSM shield working with the example "Send SMS" code provided ( I fixed Gsm library ) . However, when I upload and compile the program, the serial monitor displays "SMS Messages Sender" and nothing else occurs.
Would greatly appreciate it if someone can tell me where I could have gone wrong.
**I'm currently using the Arduino Mega. I'm following the guide provided by the Arduino's website with the code part of the example that comes with the Arduino program. **
I am using both a USB cable and an external power supply. I have performed the jumper wire modification required for the Mega to work with the shield as well.

PLZ Help me ASAP

A couple things.

First, are you using the arduino gsm shield or are you using something else like the SIM900 GSM shield?

Assuming you are using the arduino shield it appears you are not getting a connection al all seeing you don't have the GSM initialized coming across your serial.

Does your Sim card have a PIN if so you will have to put that in?

You might want to add a couple serial prints in the while(not connected) loop just to see which part you are entering it (GSM ready or not)

If you are not using an arduino shield you can't use this example because most of them start up differently. (They aren't hard to figure out, I can help there a lot better)

I used this

No Pin in sim card

the code is
/*
SMS sender

This sketch, for the Arduino GSM shield,sends an SMS message
you enter in the serial monitor. Connect your Arduino with the
GSM shield and SIM card, open the serial monitor, and wait for
the "READY" message to appear in the monitor. Next, type a
message to send and press "return". Make sure the serial
monitor is set to send a newline when you press return.

Circuit:

  • GSM shield
  • SIM card that can send SMS

created 25 Feb 2012
by Tom Igoe

This example is in the public domain.

*/

// Include the GSM library
#include <GSM.h>

#define PINNUMBER ""

// initialize the library instance
GSM gsmAccess;
GSM_SMS sms;

void setup()
{
// initialize serial communications and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}

Serial.println("SMS Messages Sender");

// connection state
boolean notConnected = true;

// Start GSM shield
// If your SIM has PIN, pass it as a parameter of begin() in quotes
while(notConnected)
{
if(gsmAccess.begin(PINNUMBER)==GSM_READY)
notConnected = false;
else
{
Serial.println("Not connected");
delay(1000);
}
}

Serial.println("GSM initialized");
}

void loop()
{

Serial.print("Enter a mobile number: ");
char remoteNum[20]; // telephone number to send sms
readSerial(remoteNum);
Serial.println(remoteNum);

// sms text
Serial.print("Now, enter SMS content: ");
char txtMsg[200];
readSerial(txtMsg);
Serial.println("SENDING");
Serial.println();
Serial.println("Message:");
Serial.println(txtMsg);

// send the message
sms.beginSMS(remoteNum);
sms.print(txtMsg);
sms.endSMS();
Serial.println("\nCOMPLETE!\n");
}

/*
Read input serial
*/
int readSerial(char result[])
{
int i = 0;
while(1)
{
while (Serial.available() > 0)
{
char inChar = Serial.read();
if (inChar == '\n')
{
result = '\0';

  • Serial.flush();*
  • return 0;*
  • }*
  • if(inChar!='\r')*
  • {*
    _ result = inChar;_
    * i++;*
    * }*
    * }*
    * }*
    }

Hi, how did you fix the GSM library? Do you know how i can remove unused libraries from GSM library to gain SRAM (i don't use GPRS data transmit/receive)?
Thanks