Ks0254 keyestudio Sim800c Shield: Difference between revisions

From Keyestudio Wiki
Jump to navigation Jump to search
No edit summary
 
(12 intermediate revisions by the same user not shown)
Line 11: Line 11:


<br>
<br>
==Specifications==
==Specifications==
* Power Supply <Vin>: 7-12V
* Power Supply <Vin>: 7-12V
Line 33: Line 32:
* Weight: 26g
* Weight: 26g
* Antenna length: 180mm
* Antenna length: 180mm
<br>[[File:图片1- ks0254.png|600px|frameless|thumb]]<br>
<br>[[File:图片1- ks0254.png|700px|frameless|thumb]]<br>


<br>
<br>
==PINOUT==
==PINOUT==
<br>[[File:KS0254 PINOUT.jpg|800px|frameless|thumb]]<br>
<br>[[File:KS0254 PINOUT.jpg|800px|frameless|thumb]]<br>
Line 41: Line 41:
<br>
<br>
==Test Code==
==Test Code==
Below is an example code.<br>
[https://drive.google.com/open?id=1u9Jrkv3jfkR9pSCzgjZI4CIA0JESgJH3 Click here] to download the libraries.<br>
[https://drive.google.com/open?id=1O81GsGh-GNUxSWq5bpeqcuwfHsbpECsN Click here] to download the code <br>
Or you can directly copy and paste the code below to [http://wiki.keyestudio.com/index.php/How_to_Download_Arduino_IDE Arduino IDE].<br>


1)For default serial ports RXD(D0) and TXD(D1): call up
<pre>
<pre>
#include <sim800cmd.h>
************************************************
//initialize the library instance
//fundebug is an application callback function,when someone is calling.
Sim800Cmd sim800demo(fundebug);
 
//the setup routine runs once when you press reset:
void setup()
void setup()
{
{
    //initialize the digital pin as an output.
  pinMode(13, OUTPUT);  
    pinMode(13,OUTPUT);
  pinMode(9, OUTPUT); //D9 is SIM900 turn on pin
    //initialize SIM800H,return 1 when initialize success.
  digitalWrite(9,HIGH);
    while((sim800demo.sim800init()) == 0);
  delay(1000);
  digitalWrite(9,LOW);
  delay(15000);
  Serial.begin(9600);
}
}
 
//the loop routine runs over and over again forever:
void loop()
void loop()
{
{
   //Signal strength
   Serial.print("ATD15812345678;\r");//15812345678 your dialing phone number
   unsigned char csq = 0;
   delay(100000);
   //To obtain the signal strength, return 1 when obtain success.
//  Serial.println("ATH");
if( sim800demo.callReadCSQ(&csq) )
   delay(200000);
{
}
    //Make Voice Call
</pre>
    sim800demo.dialTelephoneNumber("15912345678;");// enter the phone you need to call
 
    while(1);
'''How to Use'''
 
1.Burn the above code onto keyestudio V4.0 board, stack shield on it, and connect SIM card(support 2G internet), Ethernet cable and earphone to shield.<br>
 
2.Connect the jumper caps of shield to D0 and D1. DIP switch is dialed to EXTERN end, V4.0 board and shield are provided with power, alternatively, dial to ARDUINO end to supply power for V4.0 board which also provides power for shield.<br>
 
3.The PWR LED of V4.0 board stays on, long press“To Start” button, then release button when the STA LED is always on and NET LED flashes.<br>
4.Wait for 1 or 2 minutes and dial number 15912345678, after connection, you could call up by earphone or cellphone.<br>
 
<br>[[File:KS0254 SIM800C.jpg|600px|frameless|thumb]]<br>
 
 
2)For default serial ports RXD(D0) and TXD(D1): Send message
<pre>
************************************************
  void sendMeg()
  {
  Serial.println("AT");
  delay(2000);
  Serial.println("AT+CMGF=1");
  delay(2000);
  Serial.println("AT+CMGS=\"15812345678\"");//modify into your own number
  delay(2000);
  Serial.print("ABCDEFGHIJKLMN\r\n");//fill in content
  delay(2000);
  Serial.write(0x1A);
  }
  }
digitalWrite(13,HIGH);//turn the LED on by making the voltage HIGH
void setup() {
delay(500);
  // put your setup code here, to run once:
digitalWrite(13,LOW);//turn the LED off by making the voltage LOW
  Serial.begin(9600);
delay(500);
}
}
   
void loop() {
//application callback function
  // put your main code here, to run repeatedly:
void fundebug(void)
  delay(15*1000);
  sendMeg();
}
 
************************************************
</pre>
 
Code to Note:
1.Serial.println("AT+CMGS=\"15812345678\"");//modify into your own number
2.Serial.print("ABCDEFGHIJKLMN\r\n");//fill in content
 
'''How to Use'''
 
1. Burn the above code onto keyestudio V4.0 board, stack shield on it, and connect SIM card(support 2G internet), Ethernet cable to shield.<br>
 
2. Connect the jumper caps of shield to D0 and D1. DIP switch is dialed to EXTERN end, V4.0 board and shield are provided with power, alternatively, dial to ARDUINO end to supply power for V4.0 board which also provides power for shield.<br>
 
3. The PWR LED of V4.0 board stays on. Long press “To Start” button, then release button if the STA LED is always on and NET LED flashes.<br>
 
4.Wait for a while, the cellphone will receiver the message from SIM900<br>
 
<br>[[File:09然485345.png|300px|frameless|thumb]]<br>
 
 
3)For adding serial ports RXD(D6) and TXD(D7): call up
<pre>
************************************************
#include <SoftwareSerial.h>
SoftwareSerial SIM900(6, 7); // define serial port PIN
void SIM900_Start()
{
  digitalWrite(9, HIGH);
  delay(2000);
  digitalWrite(9, LOW);
  delay(5000);
}
void Call_Phone()
{
  SIM900.println("ATD15812345678;"); // the numbers behind ATD is your phone number to dial.
  delay(100);
  SIM900.println("ATD15812345678;");
  delay(30000);            // wait for 30 seconds...
  SIM900.println("ATH");  // hang up
}
void setup()
{
  pinMode(9, OUTPUT);
  SIM900.begin(19200);  //set baud rate   
  SIM900_Start();  
  delay(20000);  // wait for SIM900 to work
}
void loop()
{
{
  Call_Phone();
  do
  { 
  }
  while(1);
}
}
************************************************
</pre>
</pre>


<br>
<span style="color: red">'''Code to Note:'''</span>  <br>
'''1.''' Before compile the code, do remember to add the necessary libraries inside the libraries directory of Arduino IDE.<br>
Download the libraries from below link:<br>
https://drive.google.com/open?id=1u9Jrkv3jfkR9pSCzgjZI4CIA0JESgJH3
<br>
'''2.''' In the code '''sim800demo.dialTelephoneNumber("15912345678;")''', here you can change the phone number you want to dial.


<br>
'''How to Use'''
'''Note:''' As for arduino IDE 1.0 and subsequent versions, WProgram.h has been renamed Arduino.h, so this program requires arduino IDE 1.0 or later version to compile successfully.
 
In the use of library functions, since the received serial data is too large, so it needs to change the original Arduino serial cache buffer more larger. <br>
1.Burn the above code onto keyestudio V4.0 board, stack shield on it, and connect SIM card(support 2G internet), Ethernet cable and earphone to shield.<br>
'''<span style="color: red;">There are two methods as below:</span> '''<br>
 
'''1.'''unzip the hardware.zip, if your Arduino compiler is below 1.5.5 version, cut the HardwareSerial.cpp file into Arduino\hardware\arduino\cores\arduino, overwrite the original file.If it is higher than 1.5.5 version, cut the HardwareSerial.hfile into Arduino\hardware\arduino\sam\cores\ arduino,overwrite the original file.<br>
2.Connect the jumper caps of shield to D6 and D7. DIP switch is dialed to EXTERN end, V4.0 board and shield are provided with power, alternatively, dial to ARDUINO end to supply power for V4.0 board which also provides power for shield.<br>
'''2.'''If your Arduino compiler is below 1.5.5 version, open the HardwareSerial.cpp file inside the Arduino\hardware\arduino\cores\arduino, modify the # define SERIAL_BUFFER_SIZE 64 as # define SERIAL_BUFFER_SIZE 140. If it is higher than 1.5.5 version, then open HardwareSerial.h file, doing the same modification.<br>
 
3.The PWR LED of V4.0 board stays on. Long press “To Start” button, then release button if the STA LED is always on and NET LED flashes.<br>
4.Wait for 1 or 2 minutes and dial number 15912345678, after connection, you could call up by earphone or cellphone. <br>




==Example Use==
* 1) Upload the code to UNO R3 board then stack the shield onto UNO R3.
* 2) Connect the SIM card (2G network), antenna and headphone with mic head to the shield.
* 3) Connect the jumper cap to the D0 D1, and slide the switch to EXTERN side.
* 4) Power on the UNO R3 board and shield, you should see the PWR led is normally on.
* 5) Long press the To Start button, if STA light is on and NET light flashes, release the button.
* 6) Wait for 1-2 minutes, it will call the number set well. After the phone is connected, you can speak through the headphone.


<br>[[File:KS0254 SIM800C.jpg|600px|frameless|thumb]]<br>
<br>
<br>


Line 119: Line 181:
<br>
<br>
==Resources ==
==Resources ==
'''Download the PDF:'''<br>
https://drive.google.com/open?id=19HsvMjCASyCPpUQKPDnxhaCXgJU7_WrV


'''Download the code:'''<br>
'''Download the code and libraries:'''<br>
https://drive.google.com/open?id=1O81GsGh-GNUxSWq5bpeqcuwfHsbpECsN
 
'''Download all the libraries:''' <br>
https://drive.google.com/open?id=1u9Jrkv3jfkR9pSCzgjZI4CIA0JESgJH3


https://fs.keyestudio.com/KS0254


<br>
<br>


==Get One Now ==
==Get One Now ==
*'''Official Website:'''  http://www.keyestudio.com/ks0254.html
*[https://www.keyestudio.com/keyestudio-sim800c-shield-for-arduino-uno-r3-and-mega-2560-gprs-gsm-p0306.html   '''Official Website'''] 


*[https://www.aliexpress.com/store/product/Keyestudio-SIM800C-Shield-for-Arduino-UNO-R3-and-Mega-2560-GPRS-GSM/1452162_32830468111.html?spm=2114.12010612.8148356.28.3e4b276fmFnCXj  '''Shop on Aliexpress''']
*[https://www.aliexpress.com/store/product/Keyestudio-SIM800C-Shield-for-Arduino-UNO-R3-and-Mega-2560-GPRS-GSM/1452162_32830468111.html?spm=2114.12010612.8148356.28.3e4b276fmFnCXj  '''Shop on Aliexpress''']


*[https://www.ebay.com/itm/Keyestudio-GPRS-SIM800C-GSM-Module-DTMF-Development-Board-for-Arduino/132763216691?hash=item1ee94deb33:g:iPYAAOSw8lhbWy~x  '''Shop on eBay''']
*[https://www.ebay.com/itm/Keyestudio-GPRS-SIM800C-GSM-Module-DTMF-Development-Board-for-Arduino/132763216691?hash=item1ee94deb33:g:iPYAAOSw8lhbWy~x  '''Shop on eBay''']
*[https://www.amazon.com/dp/B07B2G3YFB    '''Shop on amazon''']




  [[Category: Shield]]
  [[Category: Shield]]

Latest revision as of 14:14, 6 January 2021

keyestudio Sim800c Shield


Introduction

This is a GPRS/GSM expansion board for Arduino.
The shield supports the frequency of EGSM 900MHz /DCS 1800MHz and GSM850 MHz /PCS 1900MHz, integrated with GPRS, DTMF and other functions.
It also supports DTMF. When enable the DTMF function, get the character feedback converted from the pressed button during the call, which can be used for remote control.
It is controlled by the AT command, you can directly start the function through the computer serial port and Arduino motherboard.
The SIM800C GPRS shield has a built-in SIM800H chip from SIMCom, with good stability.


Specifications

  • Power Supply <Vin>: 7-12V
  • Low power consumption: 0.7mA current in sleep mode
  • Low battery consumption (100mA @ 7V-GSM mode)
  • GSM 850/900/1800/1900MHz
  • GPRS multi-slot class 1 ~ 12
  • GPRS mobile station class B
  • GSM phase 2/2 + standard
  • Class 4 (2W @ 850/900 MHz)
  • Class 1 (1W @ 1800 / 1900MHz)
  • Controlling via AT command
  • USB /Arduino control switch
  • Serial baud rate self-adaption
  • Support DTMF
  • LED indicator for power supply status, network status and operating mode.


Technical Details

  • Dimensions: 77mm x 52mm x 27mm
  • Weight: 26g
  • Antenna length: 180mm


thumb


PINOUT


thumb


Test Code

1)For default serial ports RXD(D0) and TXD(D1): call up

************************************************
void setup()
{
  pinMode(13, OUTPUT);   
  pinMode(9, OUTPUT); //D9 is SIM900 turn on pin
  digitalWrite(9,HIGH);
  delay(1000);
  digitalWrite(9,LOW);
  delay(15000);
  Serial.begin(9600);
}
 
void loop()
{
  Serial.print("ATD15812345678;\r");//15812345678 your dialing phone number
  delay(100000);
//  Serial.println("ATH");
  delay(200000);
}

How to Use

1.Burn the above code onto keyestudio V4.0 board, stack shield on it, and connect SIM card(support 2G internet), Ethernet cable and earphone to shield.

2.Connect the jumper caps of shield to D0 and D1. DIP switch is dialed to EXTERN end, V4.0 board and shield are provided with power, alternatively, dial to ARDUINO end to supply power for V4.0 board which also provides power for shield.

3.The PWR LED of V4.0 board stays on, long press“To Start” button, then release button when the STA LED is always on and NET LED flashes.
4.Wait for 1 or 2 minutes and dial number 15912345678, after connection, you could call up by earphone or cellphone.


thumb


2)For default serial ports RXD(D0) and TXD(D1): Send message

************************************************
  void sendMeg()
  {
  Serial.println("AT");
  delay(2000);
  Serial.println("AT+CMGF=1");
  delay(2000);
  Serial.println("AT+CMGS=\"15812345678\"");//modify into your own number
  delay(2000);
  Serial.print("ABCDEFGHIJKLMN\r\n");//fill in content
  delay(2000);
  Serial.write(0x1A);  
 }
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
}
void loop() {
  // put your main code here, to run repeatedly:
  delay(15*1000);
  sendMeg();
}

************************************************

Code to Note: 1.Serial.println("AT+CMGS=\"15812345678\"");//modify into your own number 2.Serial.print("ABCDEFGHIJKLMN\r\n");//fill in content

How to Use

1. Burn the above code onto keyestudio V4.0 board, stack shield on it, and connect SIM card(support 2G internet), Ethernet cable to shield.

2. Connect the jumper caps of shield to D0 and D1. DIP switch is dialed to EXTERN end, V4.0 board and shield are provided with power, alternatively, dial to ARDUINO end to supply power for V4.0 board which also provides power for shield.

3. The PWR LED of V4.0 board stays on. Long press “To Start” button, then release button if the STA LED is always on and NET LED flashes.

4.Wait for a while, the cellphone will receiver the message from SIM900


thumb


3)For adding serial ports RXD(D6) and TXD(D7): call up

************************************************
#include <SoftwareSerial.h>
SoftwareSerial SIM900(6, 7); // define serial port PIN
void SIM900_Start()
{
  digitalWrite(9, HIGH);
  delay(2000);
  digitalWrite(9, LOW);
  delay(5000);
}
void Call_Phone()
{
  SIM900.println("ATD15812345678;"); // the numbers behind ATD is your phone number to dial.
  delay(100);
  SIM900.println("ATD15812345678;");
  delay(30000);            // wait for 30 seconds...
  SIM900.println("ATH");   // hang up
}
void setup()
{
  pinMode(9, OUTPUT); 
  SIM900.begin(19200);   //set baud rate    
  SIM900_Start();  
  delay(20000);  // wait for SIM900 to work 
}
void loop()
{
  Call_Phone();
  do
  {   
  }
  while(1);
}
************************************************


How to Use

1.Burn the above code onto keyestudio V4.0 board, stack shield on it, and connect SIM card(support 2G internet), Ethernet cable and earphone to shield.

2.Connect the jumper caps of shield to D6 and D7. DIP switch is dialed to EXTERN end, V4.0 board and shield are provided with power, alternatively, dial to ARDUINO end to supply power for V4.0 board which also provides power for shield.

3.The PWR LED of V4.0 board stays on. Long press “To Start” button, then release button if the STA LED is always on and NET LED flashes.
4.Wait for 1 or 2 minutes and dial number 15912345678, after connection, you could call up by earphone or cellphone.



Package Includes

  • Keyestudio SIM800C Shield *1pcs
  • Antenna line *1pcs


thumb


Resources

Download the code and libraries:

https://fs.keyestudio.com/KS0254


Get One Now