Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use GSM SIM800L: Examples, Pinouts, and Specs

Image of GSM SIM800L
Cirkit Designer LogoDesign with GSM SIM800L in Cirkit Designer

Introduction

The GSM SIM800L is a compact and cost-effective GSM/GPRS module that enables communication over mobile networks. It allows devices to send and receive SMS, make voice calls, and connect to the internet using GPRS. With its small size and versatile functionality, the SIM800L is widely used in IoT projects, remote monitoring systems, and embedded applications requiring cellular connectivity.

Explore Projects Built with GSM SIM800L

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino UNO and SIM800L GSM Module for Wireless Communication with LM2596 Power Regulation
Image of theft: A project utilizing GSM SIM800L in a practical application
This circuit features an Arduino UNO microcontroller interfaced with a SIM 800L GSM module for communication purposes. The SIM 800L is powered by an LM2596 step-down module, which provides the necessary voltage regulation. The Arduino communicates with the SIM 800L via digital pins D2 and D3 for RX and TX respectively.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO and SIM800L SMS Communication System
Image of GSM MODULE: A project utilizing GSM SIM800L in a practical application
This circuit consists of an Arduino UNO connected to a SIM 800L GSM module. The Arduino UNO communicates with the SIM 800L module via software serial to send and receive SMS messages, with the Arduino providing power and ground connections to the GSM module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO and Sim800L GSM Module-Based Battery-Powered Smart Light Control System
Image of smoke detector: A project utilizing GSM SIM800L in a practical application
This circuit integrates an Arduino UNO with a SIM800L GSM module, a photo diode light sensor, a relay, and an LED. The Arduino controls the relay and LED based on input from the light sensor and communicates with the SIM800L for GSM functionalities. Power is supplied by a lithium-ion battery, with a rocker switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO and SIM800L SMS Communication System
Image of GSM MODULE: A project utilizing GSM SIM800L in a practical application
This circuit integrates an Arduino UNO with a SIM 800L module to enable SMS communication. The Arduino controls the SIM 800L module via software serial communication, allowing it to send and receive SMS messages based on commands received from the serial monitor.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with GSM SIM800L

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of theft: A project utilizing GSM SIM800L in a practical application
Arduino UNO and SIM800L GSM Module for Wireless Communication with LM2596 Power Regulation
This circuit features an Arduino UNO microcontroller interfaced with a SIM 800L GSM module for communication purposes. The SIM 800L is powered by an LM2596 step-down module, which provides the necessary voltage regulation. The Arduino communicates with the SIM 800L via digital pins D2 and D3 for RX and TX respectively.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of GSM MODULE: A project utilizing GSM SIM800L in a practical application
Arduino UNO and SIM800L SMS Communication System
This circuit consists of an Arduino UNO connected to a SIM 800L GSM module. The Arduino UNO communicates with the SIM 800L module via software serial to send and receive SMS messages, with the Arduino providing power and ground connections to the GSM module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of smoke detector: A project utilizing GSM SIM800L in a practical application
Arduino UNO and Sim800L GSM Module-Based Battery-Powered Smart Light Control System
This circuit integrates an Arduino UNO with a SIM800L GSM module, a photo diode light sensor, a relay, and an LED. The Arduino controls the relay and LED based on input from the light sensor and communicates with the SIM800L for GSM functionalities. Power is supplied by a lithium-ion battery, with a rocker switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of GSM MODULE: A project utilizing GSM SIM800L in a practical application
Arduino UNO and SIM800L SMS Communication System
This circuit integrates an Arduino UNO with a SIM 800L module to enable SMS communication. The Arduino controls the SIM 800L module via software serial communication, allowing it to send and receive SMS messages based on commands received from the serial monitor.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • IoT devices for remote data transmission
  • Home automation systems
  • GPS tracking and vehicle monitoring
  • SMS-based control systems
  • Emergency alert systems
  • Wireless internet connectivity for embedded systems

Technical Specifications

Key Technical Details

  • Operating Voltage: 3.4V to 4.4V (recommended: 4.0V)
  • Operating Current: 20mA (idle), up to 2A (peak during transmission)
  • Frequency Bands: Quad-band 850/900/1800/1900 MHz
  • Communication Protocols: GSM, GPRS (Class 12)
  • Data Rates: GPRS - Up to 85.6 kbps
  • SIM Card Support: Micro SIM
  • Antenna Interface: External antenna via IPX connector
  • Operating Temperature: -40°C to +85°C
  • Dimensions: 25mm x 23mm x 3mm

Pin Configuration and Descriptions

The SIM800L module typically has 12 pins. Below is the pinout and description:

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 connection
4 RXD UART Receive pin (connect to TX of microcontroller)
5 TXD UART Transmit pin (connect to RX of microcontroller)
6 RST Reset pin (active low, pull low 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 calls)
10 MIC- Microphone negative input (for voice calls)
11 SPK+ Speaker positive output (for voice calls)
12 SPK- Speaker negative output (for voice calls)

Usage Instructions

How to Use the SIM800L in a Circuit

  1. Power Supply:

    • Use a stable power supply capable of providing 4.0V and at least 2A peak current.
    • A low dropout (LDO) voltage regulator or a DC-DC converter is recommended to step down from 5V or higher.
    • Add decoupling capacitors (e.g., 100µF and 0.1µF) near the VCC pin to stabilize the power supply.
  2. Antenna Connection:

    • Connect an external GSM antenna to the IPX connector for reliable signal reception.
    • Ensure the antenna is placed away from noise sources to avoid interference.
  3. Microcontroller Interface:

    • Connect the RXD and TXD pins of the SIM800L to the TX and RX pins of the microcontroller, respectively.
    • Use a level shifter or resistor divider if the microcontroller operates at 5V logic levels, as the SIM800L uses 3.3V logic.
  4. SIM Card Installation:

    • Insert a micro SIM card into the SIM card slot. Ensure the card is activated and has sufficient balance or data plan.
  5. Reset and Sleep Control:

    • Use the RST pin to reset the module if needed. Pull it low for at least 100ms to trigger a reset.
    • Use the DTR pin to enable sleep mode for power-saving applications.

Example: Connecting SIM800L to Arduino UNO

Below is an example of how to send an SMS using the SIM800L module and Arduino UNO:

Circuit Connections

  • SIM800L RXD → Arduino TX (Pin 1)
  • SIM800L TXD → Arduino RX (Pin 0)
  • SIM800L VCC → External 4.0V power supply
  • SIM800L GND → Arduino GND and power supply GND

Code Example

#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 with PC
  SIM800L.begin(9600); // For communication with SIM800L

  // Wait for the module to initialize
  delay(1000);
  Serial.println("Initializing SIM800L...");

  // Send AT command to check communication
  SIM800L.println("AT");
  delay(1000);
  if (SIM800L.available()) {
    Serial.println("SIM800L is ready!");
  } else {
    Serial.println("No response from SIM800L.");
  }

  // Send SMS
  sendSMS("+1234567890", "Hello from SIM800L!");
}

void loop() {
  // Nothing to do in the loop
}

void sendSMS(String phoneNumber, String message) {
  // Set SMS mode to text
  SIM800L.println("AT+CMGF=1");
  delay(1000);

  // Set recipient phone number
  SIM800L.print("AT+CMGS=\"");
  SIM800L.print(phoneNumber);
  SIM800L.println("\"");
  delay(1000);

  // Send the message
  SIM800L.print(message);
  delay(1000);

  // End the message with Ctrl+Z (ASCII 26)
  SIM800L.write(26);
  delay(5000);

  Serial.println("SMS sent!");
}

Important Considerations and Best Practices

  • Ensure the power supply is stable and capable of handling the module's peak current requirements.
  • Use proper decoupling capacitors to minimize voltage fluctuations.
  • Place the antenna in a location with good GSM signal strength.
  • Avoid using the Arduino's hardware serial (pins 0 and 1) for both debugging and SIM800L communication simultaneously. Use SoftwareSerial for flexibility.
  • Handle the module carefully to avoid damage to the SIM card slot or antenna connector.

Troubleshooting and FAQs

Common Issues and Solutions

  1. No Response from the Module:

    • Check the power supply voltage and current. Ensure it meets the module's requirements.
    • Verify the RXD and TXD connections between the module and microcontroller.
    • Ensure the SIM card is properly inserted and activated.
  2. Module Keeps Restarting:

    • This is often caused by insufficient power supply. Use a power source capable of providing at least 2A peak current.
    • Add decoupling capacitors near the VCC pin.
  3. No Network Connection:

    • Check the antenna connection and ensure it is securely attached.
    • Verify that the SIM card has network coverage and is not locked with a PIN.
    • Use the AT+CSQ command to check signal strength (values above 10 are acceptable).
  4. Unable to Send SMS or Make Calls:

    • Ensure the SIM card has sufficient balance or an active data plan.
    • Verify the phone number format (e.g., include the country code).
    • Check for any errors in the AT command responses.

FAQs

  • Q: Can the SIM800L work with a 5V power supply?
    A: No, the SIM800L requires a power supply between 3.4V and 4.4V. Use a voltage regulator to step down from 5V.

  • Q: How do I check the module's firmware version?
    A: Use the AT+GMR command to retrieve the firmware version.

  • Q: Can the SIM800L connect to the internet?
    A: Yes, the SIM800L supports GPRS for internet connectivity. Use AT commands like AT+SAPBR and AT+HTTP for HTTP requests.

  • Q: What is the maximum distance for reliable communication?
    A: The SIM800L's range depends on the GSM network coverage in your area. It can work anywhere with a GSM signal.