Professional Documents
Culture Documents
Sim900A Gsm/Gprs Modem With PCB Antenna Uart Interface. (RKI-1644)
Sim900A Gsm/Gprs Modem With PCB Antenna Uart Interface. (RKI-1644)
[RKI-1644]
USER MANUAL
ROBOKITS INDIA
(www.Robokits.co.in)
http://www.robokits.co.in
http://www.robokitsworld.com Page 1
Description:
The GSM/GPRS Modem uses SIM900A based Dual band
900/1800MHz GSM / GPRS modem. It can be connected to a
microcontroller UART using TTL levels. It accepts external voltage
5VDC 2A as input.
Features
• Accept commands from microcontroller UART
• Works 5VDC regulated power supply
• PCB antenna external
• Small size
• Can do basic functions which can be done via normal
phone like calling, send sms, access data through
GPRS etc.
• Plug and play device
http://www.robokits.co.in
http://www.robokitsworld.com Page 2
Schematic diagram:
http://www.robokits.co.in
http://www.robokitsworld.com Page 3
Replace the following items in the code:
• Phone number, don't forget add the country code
• Replace the Access Point Name
• Replace the Pachube API Key with your personal ones
assigned To your account at cosm.com
Resource Code:
#include <SoftwareSerial.h>
#include <String.h>
SoftwareSerial mySerial(2,3);
void setup()
delay(500);
void loop()
http://www.robokits.co.in
http://www.robokitsworld.com Page 4
//if you input 't' in the terminal, the program will execute
SendTextMessage(), it will show how to send a sms message,
if (Serial.available())
switch(Serial.read())
case 't':
SendTextMessage();
break;
case 'd':
DialVoiceCall();
break;
case 'h':
SubmitHttpRequest();
break;
case 's':
http://www.robokits.co.in
http://www.robokitsworld.com Page 5
Send2Pachube();
break;
if (mySerial.available())
Serial.write(mySerial.read());
///SendTextMessage()
void SendTextMessage()
delay(100);
delay(100);
http://www.robokits.co.in
http://www.robokitsworld.com Page 6
mySerial.println("Hello world!");//the content of the message
delay(100);
delay(100);
mySerial.println();
///DialVoiceCall
void DialVoiceCall()
delay(100);
mySerial.println();
///SubmitHttpRequest()
http://www.robokits.co.in
http://www.robokitsworld.com Page 7
///this function is submit a http request
void SubmitHttpRequest()
mySerial.println("AT+CSQ");
delay(100);
mySerial.println("AT+CGATT?");
delay(100);
ShowSerialData();
mySerial.println("AT+SAPBR=3,1,\"CONTYPE\",\"GPRS\"");//se
tting the SAPBR, the connection type is using gprs
delay(1000);
ShowSerialData();
http://www.robokits.co.in
http://www.robokitsworld.com Page 8
mySerial.println("AT+SAPBR=3,1,\"APN\",\"CMNET\"");//settin
g the APN, the second need you fill in your local apn server
delay(4000);
ShowSerialData();
delay(2000);
ShowSerialData();
delay(2000);
ShowSerialData();
mySerial.println("AT+HTTPPARA=\"URL\",\"www.google.com.h
k\"");// setting the httppara, the second parameter is the
website you want to access
delay(1000);
ShowSerialData();
http://www.robokits.co.in
http://www.robokitsworld.com Page 9
mySerial.println("AT+HTTPACTION=0");//submit the request
//while (!mySerial.available());
ShowSerialData();
delay (300);
ShowSerialData();
mySerial.println("");
delay(100);
///send2Pachube()///
void Send2Pachube()
http://www.robokits.co.in
http://www.robokitsworld.com Page 10
{
mySerial.println("AT+CGATT?");
delay(1000);
ShowSerialData();
delay(1000);
ShowSerialData();
delay(3000);
ShowSerialData();
delay(2000);
ShowSerialData();
mySerial.println("AT+CIPSPRT=0");
delay(3000);
http://www.robokits.co.in
http://www.robokitsworld.com Page 11
ShowSerialData();
mySerial.println("AT+CIPSTART=\"tcp\",\"api.cosm.com\",\"80
81\"");//start up the connection
delay(2000);
ShowSerialData();
delay(4000);
ShowSerialData();
http://www.robokits.co.in
http://www.robokitsworld.com Page 12
mySerial.print("{\"method\": \"put\",\"resource\":
\"/feeds/42742/\",\"params\"");//here is the feed you apply
from pachube
delay(500);
ShowSerialData();
delay(500);
ShowSerialData();
mySerial.print(" \"_cXwr5LE8qW4a296O-
cDwOUvfddFer5pGmaRigPsiO0");//pachubeapikey
delay(500);
ShowSerialData();
mySerial.print("jEB9OjK-W6vej56j9ItaSlIac-
hgbQjxExuveD95yc8BttXc");//pachubeapikey
delay(500);
ShowSerialData();
http://www.robokits.co.in
http://www.robokitsworld.com Page 13
mySerial.print("Z7_seZqLVjeCOmNbEXUva45t6FL8AxOcuNSsQS\
"},\"body\":");
delay(500);
ShowSerialData();
delay(500);
ShowSerialData();
delay(500);
ShowSerialData();
delay(500);
ShowSerialData();
http://www.robokits.co.in
http://www.robokitsworld.com Page 14
delay(500);
ShowSerialData();
delay(500);
ShowSerialData();
mySerial.println((char)26);//sending
mySerial.println();
ShowSerialData();
delay(100);
ShowSerialData();
void ShowSerialData()
http://www.robokits.co.in
http://www.robokitsworld.com Page 15
{
while(mySerial.available()!=0)
Serial.write(mySerial.read());
http://www.robokits.co.in
http://www.robokitsworld.com Page 16