Quad-band GSM (850/900/1800/1900 MHz)
Quad-band GSM (850/900/1800/1900 MHz)
Up to 85.6 kbps (GPRS)
1.5W (average)
-40C to +85C
-40C to +125C
5% to 95% (non-condensing)
UART, SPI, or I2C
24mm x 24mm
Applications
| The SIM900A GSM-GPRS Modem is suitable for a wide range of applications, including |
Industrial automation
Fleet management
Telematics
Remote monitoring and control
M2M communication
IoT devices
Smart energy management
Security systems
Conclusion
The SIM900A GSM-GPRS Modem is a reliable and feature-rich wireless communication module that provides a cost-effective solution for M2M and IoT applications. Its compact design, low power consumption, and ease of use make it an ideal choice for developers and engineers seeking to integrate wireless connectivity into their devices.
SIM900A GSM-GPRS Modem DocumentationOverviewThe SIM900A is a popular GSM-GPRS modem module that enables wireless communication over cellular networks. It supports quad-band GSM, GPRS, and EDGE technologies, making it a versatile and widely compatible component for IoT applications.Technical SpecificationsQuad-band GSM: 850/900/1800/1900 MHz
GPRS class 10, up to 85.6 kbps
EDGE class 10, up to 236.8 kbps
Supports SMS, voice calls, and data transmission
Operating voltage: 3.4-4.5 V
Interface: Serial UART (TTL)Code Examples### Example 1: Sending an SMS using the SIM900AIn this example, we'll demonstrate how to send an SMS using the SIM900A modem with an Arduino board.Arduino Code
```c++
#include <SoftwareSerial.h>#define SIM900A_RX 2 // RX pin of SIM900A connected to digital pin 2 of Arduino
#define SIM900A_TX 3 // TX pin of SIM900A connected to digital pin 3 of ArduinoSoftwareSerial sim900a(SIM900A_RX, SIM900A_TX);void setup() {
sim900a.begin(9600);
delay(1000);
sim900a.println("AT"); // Check for OK response
delay(500);
sim900a.println("AT+CMGF=1"); // Set SMS mode to text mode
delay(500);
sim900a.println("AT+CMGS=""+1234567890"""); // Set recipient's phone number
delay(500);
sim900a.println("Hello from SIM900A!"); // Send SMS message
delay(500);
sim900a.println((char)26); // Send Ctrl+Z to terminate message
}void loop() {
// Nothing to do here, SMS has been sent
}
```
Note: Replace `+1234567890` with the recipient's phone number.### Example 2: Connecting to the Internet using GPRSIn this example, we'll demonstrate how to connect to the Internet using the SIM900A modem with a Raspberry Pi board.Python Code
```python
import serial# Open the serial connection to the SIM900A
ser = serial.Serial('/dev/ttyUSB0', 9600, timeout=1)# Check for OK response
ser.write(b'AT
')
response = ser.readline()
if b'OK' not in response:
print("Error: SIM900A not responding")
exit()# Set GPRS mode
ser.write(b'AT+SGACT=1,1
')
response = ser.readline()
if b'OK' not in response:
print("Error: Failed to set GPRS mode")
exit()# Set APN (Access Point Name)
ser.write(b'AT+CSTT="your_apn_here"
')
response = ser.readline()
if b'OK' not in response:
print("Error: Failed to set APN")
exit()# Bring up the GPRS connection
ser.write(b'AT+CIICR
')
response = ser.readline()
if b'OK' not in response:
print("Error: Failed to bring up GPRS connection")
exit()print("Connected to the Internet using GPRS!")
```
Note: Replace `your_apn_here` with your carrier's APN. Consult your carrier's documentation for the correct APN.### Example 3: Making a Voice Call using the SIM900AIn this example, we'll demonstrate how to make a voice call using the SIM900A modem with an ESP32 board.Arduino Code
```c++
#include <WiFi.h>
#include <SoftwareSerial.h>#define SIM900A_RX 16 // RX pin of SIM900A connected to digital pin 16 of ESP32
#define SIM900A_TX 17 // TX pin of SIM900A connected to digital pin 17 of ESP32SoftwareSerial sim900a(SIM900A_RX, SIM900A_TX);void setup() {
Serial.begin(115200);
sim900a.begin(9600);
delay(1000);
sim900a.println("AT"); // Check for OK response
delay(500);
sim900a.println("ATD+1234567890;"); // Make a voice call to the specified number
delay(500);
}void loop() {
// Nothing to do here, call has been initiated
}
```
Note: Replace `+1234567890` with the recipient's phone number.Remember to consult the SIM900A datasheet and your board's documentation for specific pin connections and configuration requirements.