The SIM800C is a quad-band GSM/GPRS module made by SIMCom. It allows microcontrollers like NodeMCU ESP8266/ Arduino uno/Nano,... to connect to mobile networks to make calls, send SMS, or access the internet (GPRS data).
Feature | Details |
---|---|
GSM Bands | 850/900/1800/1900 MHz (works almost worldwide) |
Network Services | Voice, SMS, GPRS (Internet) |
Supply Voltage | 3.4V – 4.4V (recommended 4.0V) |
Interfaces | UART (Serial Communication), Audio, I2C, GPIO |
AT Commands | Used for controlling the module |
Data Speed (GPRS) | Up to 85.6 kbps (download) / 42.8 kbps (upload) |
Size | Very small (17.6 × 15.7 × 2.3 mm) |
How It Works (Basics)
Connect SIM800C to NodeMCU via UART (Serial).
Use AT commands to:
Check network
Make calls
Send and receive SMS
Connect to the internet via GPRS
Simple NodeMCU + SIM800C Code Example (Send SMS
#include <SoftwareSerial.h>
SoftwareSerial sim800(5, 4); // (RX, TX)
void setup() {
Serial.begin(9600);
sim800.begin(9600);
Serial.println("Sending SMS...");
sim800.println("AT");
delay(100);
sim800.println("AT+CMGF=1"); // Set SMS to Text Mode
delay(100);
sim800.println("AT+CMGS=\"+1234567890\""); // Replace with your phone number
delay(100);
sim800.print("Hello from NodeMCU!");
delay(100);
sim800.write(26); // ASCII code of CTRL+Z to send SMS
}
void loop() {
// Nothing to do here
}