

The SIM800L is a compact and cost-effective GSM-GPRS module manufactured by SIM Com. It enables communication over mobile networks, allowing for voice calls, SMS, and data transmission via the General Packet Radio Service (GPRS). This module is widely used in IoT applications, remote monitoring, and control systems due to its small size, low power consumption, and versatile functionality.








| Parameter | Specification |
|---|---|
| Manufacturer | SIM Com |
| Part Number | SIM800L |
| Operating Voltage | 3.4V to 4.4V |
| Recommended Voltage | 4.0V |
| Power Consumption | Idle: ~1mA, Active: ~250mA, Peak: ~2A |
| Frequency Bands | Quad-band: 850/900/1800/1900 MHz |
| GPRS Connectivity | Class 12 |
| Data Transmission Speed | Up to 85.6 kbps |
| Communication Interface | UART (3.3V logic level) |
| Dimensions | 25mm x 23mm x 3mm |
| Operating Temperature | -40°C to +85°C |
The SIM800L module has 12 pins. Below is the pinout and description:
| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | NET | Network status LED (blinks to indicate GSM status) |
| 2 | VCC | Power supply input (3.4V to 4.4V, recommended 4.0V) |
| 3 | GND | Ground |
| 4 | RXD | UART Receive pin (3.3V logic level) |
| 5 | TXD | UART Transmit pin (3.3V logic level) |
| 6 | RST | Reset pin (active low, pull low for 100ms to reset the module) |
| 7 | VDD_EXT | External voltage output (not commonly used) |
| 8 | DTR | Data Terminal Ready (used for sleep mode control) |
| 9 | MIC+ | Microphone positive input (for voice communication) |
| 10 | MIC- | Microphone negative input (for voice communication) |
| 11 | SPK+ | Speaker positive output (for voice communication) |
| 12 | SPK- | Speaker negative output (for voice communication) |
Power Supply:
UART Communication:
Antenna:
SIM Card:
Reset:
Power On:
Below is an example code to send an SMS using the SIM800L module with an Arduino UNO:
#include <SoftwareSerial.h>
// Define RX and TX pins for SoftwareSerial
SoftwareSerial SIM800L(10, 11); // RX = Pin 10, TX = Pin 11
void setup() {
// Initialize serial communication
Serial.begin(9600); // For debugging
SIM800L.begin(9600); // For SIM800L communication
// Wait for the module to initialize
delay(1000);
Serial.println("Initializing SIM800L...");
// Send AT command to check communication
SIM800L.println("AT");
delay(1000);
while (SIM800L.available()) {
Serial.write(SIM800L.read());
}
// Set SMS text mode
SIM800L.println("AT+CMGF=1"); // Set SMS mode to text
delay(1000);
// Send SMS
SIM800L.println("AT+CMGS=\"+1234567890\""); // Replace with recipient's phone number
delay(1000);
SIM800L.println("Hello, this is a test SMS from SIM800L!"); // SMS content
delay(1000);
SIM800L.write(26); // Send Ctrl+Z to indicate end of message
delay(5000);
Serial.println("SMS sent!");
}
void loop() {
// No actions in loop
}
Module Not Powering On:
No Network Connection:
UART Communication Issues:
SMS Not Sending:
Q: Can the SIM800L module be powered with 5V?
A: No, the module requires a voltage between 3.4V and 4.4V. Use a step-down regulator if needed.
Q: How do I reduce power consumption?
A: Use the DTR pin to enable sleep mode when the module is idle.
Q: Can I use the SIM800L for GPS tracking?
A: No, the SIM800L does not have GPS functionality. Use a module like SIM808 for GPS.
Q: What is the maximum length of an SMS?
A: The maximum length is 160 characters for a single SMS. Longer messages are split into multiple SMS.
This concludes the documentation for the SIM800L GSM-GPRS module.