I have purchased an arduino uno rev 3 http://arduino.cc/en/Main/arduinoBoardUno and a icomsat v1.0 sim900 http://iteadstudio.com/store/images/produce/Shield/IComSat/icomsat_DS1.2.pdf i am trying to send an sms using this.

Have you connected an external power supply to the Uno board? The IComSat SIM900 requires 9V/2A power supply and will not work with the Uno board just connected to the USB. Also, you need to set the Tx to pin 4 and Rx to pin 5.

Also, there is a small switch with UART_Port/DBG_Port options - you need to set that to UART_Port

Once the above is done correctly, you should be able to read the SMS on your SIM Card using the below mentioned example code.

I got the same problem.The status light on sim 900 is green all the time so does PWR, the net light on every 3 second.I am not sure if it is registed, when I trid the code following #include <NewSoftSerial.h>

I bought a similar shield from seeedstudio and followed the instructions on their wiki. I got it to work by sending it AT-commands (which this shield apparently accepts too), but have not tried the SMS/GSM specific library, which I assume is just a wrapper for the AT commands.

BTW: If your Arduino is connected (or will be connected) via USB to the computer, then the USB is using 1 & 2, and the shield uses two digital pins via the Serial library.

To that effect, starting with Arduino 1.0, you should try the SoftwareSerial.h library that is built-into the distribution.

Finally, I found (via some google searches and confirmed this) that when using the SoftwareSerial (or NewSoftwareSerial) library to communicate, you should reduce the shield's baud rate. I do this across each interface to keep consistent with the following on startup:

i am using sim900 library the sms library , softwareserial ,wire.h and a rtc( real time clock ) library . i just read in the library example that if the ram is getting full the program would keep on restarting. my code is also acting wierd ,but my memory usage shows aboout 17kb from 30kb. although i think there is some conflict between the Sim900 and wire.h library . because the program would keep on restarting at wire.begin() when i use the wire.h library only. any solutions? I2C protocol may be causing a problem someone said to me, makes sense because sim900 also said it uses something like that , but dont know how .

ok,yea its 328 based UNO and it say "Binary sketch size: 17,542 bytes (of a 32,256 byte maximum)" when compiled. is it the RAM as referred in the library, isn't it Rom usage . and if it isn't RAM , how do i know how much i've used.

There is a playground page that might be of interest: http://playground.arduino.cc/Code/AvailableMemory

There are three kinds of memory on the Arduino - Flash, where the code is stored, SRAM, where variables and literals are stored, along with the stack and heap, and EEPROM, where persistent data can be stored.

There is nothing that reports the amount of SRAM used, because it changes as the program runs. As local variables are created, the heap grows. As functions are called, the stack grows. The grow toward each other. When they meet, bad things happen.