Description
TTGO T-Call V1.4 ESP32 Board with SIM800L GSM/GPRS
Development board with dual-core ESP32, SIM800L cellular modem, Wi-Fi and Bluetooth. The SIM800L supports quad-band 2G GSM/GPRS (850/900/1800/1900MHz) as listed. This is not a 4G/LTE modem. Confirm that a compatible 2G service is available from your local operator before buying.
Specifications stated in the listing
- ESP32 dual-core Xtensa LX6, 32-bit, 240MHz
- Flash: 4MB; PSRAM: 8MB; SRAM: 520KB (listed)
- Modem: SIM800L quad-band GSM/GPRS
- Wi-Fi 802.11 b/g/n; Bluetooth 4.2 BR/EDR and BLE (listed)
- USB-C 5V/1A; JST 1.25mm LiPo connector, 3.7–4.2V
- Integrated IP5306 charging circuit, 500mA as listed
- Dimensions: approximately 75 × 29 × 8mm; weight: approximately 12g
- Nano-SIM required; antenna is included/required as listed—verify package contents
Cellular transmission draws high current peaks. Use a suitable battery or power source, observe battery polarity, and connect the GSM antenna before powering the modem. Do not operate the transmitter without an antenna. Check current 2G network availability and SIM activation with your operator.
Arduino SMS example
The example sends a text to a placeholder phone number. Replace the number and message with your own, and do not share personal credentials or numbers publicly.
#include <TinyGsmClient.h>
#define MODEM_RST 5
#define MODEM_PWRKEY 4
#define MODEM_POWER_ON 23
#define MODEM_TX 27
#define MODEM_RX 26
#define I2C_SDA 21
#define I2C_SCL 22
#define SerialMon Serial
#define SerialAT Serial1
#define TINY_GSM_MODEM_SIM800
#define TINY_GSM_DEBUG SerialMon
TinyGsm modem(SerialAT);
void setup() {
// Initialisation de la console
SerialMon.begin(115200);
delay(10);
SerialMon.println("Initialisation...");
// Mise sous tension du modem
pinMode(MODEM_PWRKEY, OUTPUT);
pinMode(MODEM_POWER_ON, OUTPUT);
digitalWrite(MODEM_PWRKEY, HIGH);
digitalWrite(MODEM_POWER_ON, HIGH);
delay(1000);
digitalWrite(MODEM_PWRKEY, LOW);
delay(1000);
// Initialisation UART du modem
SerialAT.begin(9600, SERIAL_8N1, MODEM_RX, MODEM_TX);
delay(3000);
// Initialisation du modem
SerialMon.println("Initialisation du modem...");
modem.restart();
String modemInfo = modem.getModemInfo();
SerialMon.print("Modem: ");
SerialMon.println(modemInfo);
// Vérification de la carte SIM
if (!modem.waitForNetwork()) {
SerialMon.println("❌ Pas de réseau !");
return;
}
SerialMon.println("✅ Réseau détecté");
// Envoi du SMS
String smsMessage = "Hello from TTGO T-Call!";
String phoneNumber = "+212600000000"; // Remplacez par votre numéro
SerialMon.print("Envoi du SMS vers ");
SerialMon.println(phoneNumber);
if (modem.sendSMS(phoneNumber, smsMessage)) {
SerialMon.println("✅ SMS envoyé avec succès !");
} else {
SerialMon.println("❌ Échec de l’envoi du SMS");
}
}
void loop() {
// Rien à faire ici
}
The Arduino code block above is reproduced unchanged from the source.










