Sin importar si lo quieres para monitorear tu casa desde lejos o activar el sistema aspersor en tu jardín con una llamada perdida, entonces el módulo SIM800L GSM/GPRS puede servir como un sólido punto de lanzamiento.

El módulo SIM800L GSM/GPRS es una versión pequeña de un modem GSM que puede ser usado en una variedad de proyectos IOT, puedes usar este dispositivo para hacer casi la mayoría de cosas que hace un teléfono celular, tales como enviar mensajes de SMS, hacer llamadas telefónicas, conectarse a internet con GPRS y mucho más.

Encima de todo eso, el módulo soporta redes de Quad band GSM/GPRS, significa que funciona en casi en todo el mundo.

Descripcion general del Hardware

En el Corazón del este módulo hay un chip para celular de Simcom, los rangos de operación de voltaje del chip es 3.4 a 4.4 volts, haciéndolo un especial candidato para la alimentación directa de una batería lipo, esto la hace especial para proyectos embebidos con limitado espacio.

Todos los pines de datos necesarios del chip SIM800L GSM se rompan a los 0.1 encabezados de tonos, incluyendo los pines requeridos para la comunicación con el microcontrolador sobre el puerto UART.El modulo soporta baudios en rangos de 1200 bps a 115200 y características automáticas de detección de baudios.

 El módulo requiere una antena externa para conectar a la red.

Así que el MSI mantiene una distancia del módulo de la antena usualmente lleva con una antena helicoidal que puede ser soldada a la tarjea Esta también tiene un conector y UFL si tu deseas mantener la antena en una distancia alejada de la tarjeta.

Hay una conexión de Sim en el reverso una micro simcard de 2 g funcionara perfectamente. La manera correcta para inserte la SIM Card es típicamente colocar en la superficie de donde conecta.

Características

Incluso aunque este módulo es increíblemente pequeño solo 1 pulgada cuadrada posee un sorprendente número de características, Algunas de ella son las siguientes

  • Soporta Quad-band: GSM850, EGSM900, DCS1800 y PCS1900
  • Conexión sobre cualquier red global GSM con cualquier tarjeta SIM  2G
  • Hace un recibidor de llamadas de voz usando un speaker externo de 8 ohms y un micrófono electrolítico
  • Envía y recibe mensajes de voz
  • Envía y recibe datos de GPRS (TCP/IP, HTTP, etc.)
  • Escanea y recibe transmisiones de radio modulación fm
  • Transmisor de Poder:
    • Clase 4 (2W) para GSM850
    • Clase 1 (1W) para   DCS1800
  • Conjunto de  Serials-basados en Comandos AT
  • Conectores FL para la antena celular
  • Acepta tarjeta micro sim

Indicadores del estado del led

El módulo SIM800L tiene un LED que indica el estado de la red celular este parpadeara en diferentes periodos dependiendo del estado en que este este

Parpadea cada 1 segundo gif

Este chip está corriendo, pero no ha hecho conexión conexión con la red celular

Parpadea cada 2 segundos gif

Los datos de conexión de datos GPRS solicitados está activo

Parpadea cada 3 segundos gif

El módulo ha hecho contacto con la red celular y puede enviar y recibir mensajes de voz.

Eligiendo una antena

El módulo SIM800L requiere de una antena externa para conectarse a la red, así que elegir la antena correcta es importante, hay dos opciones disponibles.

La primera es una antena helicoidal que viene con un módulo y puede ser conectada directamente al pcb. Esta antena es muy útil para espacios muy pequeños, pero cuidado que puede enfrentar dificultades estableciendo una conexión, particularmente si tu proyecto es en interiores.

Otra opción es la antena de 3dBi GSM antena con un UFL para un adaptador SMA, la cual puede ser usada de forma online por menos de 3 dólares, puedes ajustar la antena dentro de un pequeño conector UFL situado en la esquina izquierda del módulo. Este tipo de antena provee una mejor función e incluso le permite a su modulo situarse dentro de una caja de metal tanto así la antena de salida.

Consumo de energía

Uno de las partes mas importantes de tener un modulo SIM800L funcionando es alimentando eso con bastante energía.

El SIM800L, dependiendo de su estado puede ser relativamente un dispositivo con falta de energía. La máxima corriente del módulo es de 2 amperes aproximadamente (especialmente en una explosión de transmisión). Eso no se nota mucho usualmente, aunque puede necesitar rodeando los 216 miliamperio. Durante llamadas telefónicas or 80mA durante redes de transmisión está la tabla del datasheet.  

Seleccionando una fuente de alimentación

Por qué el módulo sim800l tiene carencias por encima del regulador de voltaje debemos seleccionar una fuente de alimentación capaz de alimentar el sim 800l dentro de un rango de 3.4 volts a 4.4v, pero es preferible usar 4 volts. También la fuente de alimentación debe  al menos  ser capaz de suplir 2 amperes, de otra forma puede resetearse repetidamente.

Aquí te dejo algunas opciones que puedes considerar

Batería Li-Po

Una de las ventajas de las lipo baterías es que tienen un rango de voltaje de 3.7 a 4.2 perfecto para una sim 800l.Cualquier lipo batería con una capacidad de 1,2 amperes debería funcionar o elevar su trabajo así que estas baterías pueden resistir altos picos de corrientes de 2A manteniendo un voltaje accesible.

Convertidor reductor DC DC

Recomendamos usar un convertidor reductor de CC-CC de 2 A, como el LM2596, con el voltaje de salida establecido en 4,0 V (voltaje ideal). Estos son muy superiores a los módulos reguladores de voltaje lineales en términos de eficiencia.

Pines de salida de módulo SIM800l GSM.

El módulo SIM800L tiene 12 pines en total. El siguiente es el pinout:

NET: pin donde puedes soldar la antena helicoidal que viene con los pines.

VCC: es el pin de la fuente de alimentación. Tenga en cuenta que el chip SIM800L tiene un rango de voltaje operativo de 3,4 V a 4,4 V, por lo que conectar este módulo a la salida de 5 V de Arduino probablemente dañará el módulo. ¡Ni siquiera funciona con 3,3 V! Utilice una batería Li-Po o un convertidor reductor de CC-CC en su lugar.

RST (Reset): es el pin de reinicio. Si tiene el módulo en un espacio absolutamente malo, tire de este pin hacia bajo durante 100 ms para realizar un restablecimiento completo.

RxD (Receiver): este pin se utiliza para enviar comandos al módulo. Este pin es de transmisión automática, por lo que la velocidad en baudios a la que envía el comando “AT” después del reinicio es la velocidad en baudios utilizada.

TxD (Transmitter) : este pin transmite datos desde el módulo al microcontrolador.

GND : es el pin de tierra.

RING pin: es el indicador de sonido. Este es básicamente el pin de ‘interrupción de salida’ del módulo. Por defecto, es ALTO y se puede configurar para que sea BAJO cuando se recibe una llamada o un SMS.

DTR : pin controla el modo de suspensión. Tirando de él ALTO hace que el módulo entre en modo de suspensión, deshabilitando la comunicación en serie. Tirando de él BAJO durante aproximadamente 50 ms activará el módulo.

MIC±  : es una entrada de micrófono diferencial. Puede conectar un micrófono electro externo a estos dos pines directamente.

.SPK± : es una interfaz de altavoz diferencial. Puede conectar un altavoz a estos dos pines directamente.

Conexiones de un módulo GSM SIM800L a un Arduino

Ahora que está familiarizado con el módulo SIM800L, ¡es hora de conectarlo a Arduino!

  • Para comenzar, conecte la antena al módulo e inserte una tarjeta micro SIM en el zócalo.
  • A continuación, conecte el pin Tx del módulo al pin digital #3 de Arduino, ya que nos comunicaremos con el módulo a través del software UART.

No podemos conectar el pin Rx del módulo directamente al pin digital de Arduino porque Arduino UNO tiene un nivel lógico de 5V y el módulo SIM800L tiene un nivel lógico de 3.3V. En pocas palabras, el pin Rx del módulo SIM800L no es tolerante a 5V. Por lo tanto, la señal Tx del Arduino debe reducirse a 3,3 V.

Existen numerosas formas de lograr esto, pero la más simple es usar un divisor de resistencia. Una resistencia de 10K entre SIM800L’s Rx y Arduino D2, y una resistencia de 20K entre SIM800L’s Rx y GND, funcionará bien.

Lo único que queda por hacer es conectar la fuente de alimentación al módulo. Hemos incluido dos diagramas de cableado diferentes para mostrarle cómo se hace.

En el primer diagrama, se conecta una batería Li-Po de 1200 mAh

Y en el segundo diagrama, se conecta un convertidor reductor CC-CC LM2596.

Advertencias:

Debe tener mucho cuidado de no desconectar GND antes que VCC y conectar siempre GND antes que VCC. De lo contrario, el módulo puede usar los pines seriales de bajo voltaje como tierra, causando daños al módulo.

Además, asegúrese de que su circuito y Arduino compartan un terreno común.

Prueba de comandos AT

Para enviar comandos AT y comunicarnos con el módulo SIM800L, usaremos el Monitor Serial. El siguiente boceto permitirá que Arduino se comunique con el módulo SIM800L a través del monitor serie. Antes de continuar con el análisis detallado del código, conecte su Arduino a la PC, compile el siguiente código y cárguelo en Arduino.

Una vez que abra el Serial Monitor, asegúrese de que la opción ‘Both NL and CR’ esté seleccionada.

#include <SoftwareSerial.h>

//crear un objeto software serial para comunicar con SIM800L
SoftwareSerial mySerial(3, 2); //los pines del SIM800L Tx & Rx se conectan  a los pines de  Arduino #3 y #2.

void setup()
{
  //comienza la comunicación con Arduino IDE y con el monitor serial de Arduino IDE.
  Serial.begin(9600);
  
  // Comienza la comunicación con Arduino y el Módulo SIM800L
  mySerial.begin(9600);

  Serial.println("Initializing...");
  delay(1000);

  mySerial.println("AT"); //una vez las pruebas estén bien regresará un OK
  updateSerial();
  mySerial.println("AT+CSQ"); //Prueba de señal de calidad, el rango de valores es de 0-31, 31 es lo adecuado
  updateSerial();
  mySerial.println("AT+CCID"); // Lea la información de la SIM para confirmar si la SIM está conectada
  updateSerial();
  mySerial.println("AT+CREG?"); // Comprueba si se ha registrado en la red
  updateSerial();
}

void loop()
{
  updateSerial();
}

void updateSerial()
{
  delay(500);
  while (Serial.available()) 
  {
    mySerial.write(Serial.read());//Reenvía lo recibido en serie al puerto serie del software
  }
  while(mySerial.available()) 
  {
    Serial.write(mySerial.read());//Reenvía el software serial recibido al puerto serial
  }

Una vez que haya cargado el ejemplo, abra el monitor en serie a una velocidad de transmisión de 9600 baudios. Debería ver el resultado a continuación en el monitor en serie.

Explicación del código:

El ejemplo comienza incluyendo el Software Serial.h de la librería e inicializando el Software Serial objeto con los pines de Arduino a los que se conectan los Tx y Rx del módulo SIM800L.

#include <SoftwareSerial.h>

//Crear un objeto llamado software serial con el cual se conecta el módulo SIM800L
SoftwareSerial mySerial(3, 2); //SIM800L Tx y Rx se conectan a los pines #3 y #2  de Arduino

En la función de configuración, iniciamos un enlace de comunicación en serie entre el Arduino, el IDE de Arduino y el módulo SIM800L a una velocidad de transmisión de 9600 baudios.
//realizamos una comunicación serial con Arduino IDE y el Monitor Serial.
Serial.begin(9600);

//Comienza la comunicación serial con Arduino y el módulo SIM800L
mySerial.begin(9600);

Ahora que hemos establecido una conexión básica, intentaremos comunicarnos con el módulo SIM800L mediante el envío de comandos AT.

AT: este es el comando AT más básico. También inicializa el Auto-bauder. Si todo va bien, envía el mensaje OK, indicándote que te está entendiendo correctamente. Luego puede enviar algunos comandos para consultar el módulo y obtener información al respecto.

AT+CSQ – Comprueba la ‘Intensidad de la señal’. El primer número en la respuesta de salida es la intensidad de la señal en dB. Debería ser más de 5. Cuanto más alto, mejor. ¡Tenga en cuenta que la intensidad de esta señal depende de su antena y ubicación!

AT+CCID – Comprueba si la tarjeta SIM es válida o no y envía el número de la tarjeta SIM.

AT+CREG – Comprueba si está registrado en la red o no. El segundo número en la respuesta de salida debe ser 1 o 5. 1 indica que está registrado en una red doméstica y 5 indica una red itinerante. Cualquier número que no sea estos dos indica que no está registrado en ninguna red.

mySerial.println("AT"); //Una vez que la prueba sea exitosa regresara un ok
updateSerial();
mySerial.println("AT+CSQ"); //Señala el rango de valores de 0 a 31, 31 es el mejor valor.
updateSerial();
mySerial.println("AT+CCID"); //lee la información de la SIM para confirmar si la SIM está conectada
updateSerial();
mySerial.println("AT+CREG?"); //comprueba que este registrado en la red 
updateSerial();

En el Void loop, llamamos a una función personalizada updateSerial()que espera continuamente cualquier entrada del monitor serie y la envía al módulo SIM800L a través del pin D2 (el RX del módulo). También lee continuamente el pin D3 (el TX del módulo) para ver si hay una respuesta del módulo SIM800L.void updateSerial()

{
  delay(500);
  while (Serial.available()) 
  {
    mySerial.write(Serial.read());//Reenvía lo recibido en serie al puerto serie del software
  }
  while(mySerial.available()) 
  {
    Serial.write(mySerial.read());//Reenvía el software serial al puerto serial 
}

intente enviar diferentes comandos AT

Ahora puede enviar comandos como los siguientes a través del monitor serie para obtener más información sobre su conexión de red y el estado de la batería:

ATI: devuelve el nombre y la revisión del módulo.

¿AT+COPS? – Comprueba a qué red está conectado.

¿AT+COPS=? – Devuelve la lista de operadores presentes en la red.

AT+CBC : devuelve el estado de la batería Li-Po. El segundo número es el nivel de batería (en nuestro caso es 93%) y el tercer número es el voltaje real en mV (en nuestro caso 3.877 V).

Código Arduino – Envío de un SMS

Pasemos a lo interesante. Programemos nuestro Arduino para enviar un SMS. Antes de probar el boceto, deberá ingresar el número de teléfono al que desea enviar un SMS. Busque la cadena resaltada ZZxxxxxxxxxxxx y reemplace ZZ con el código del condado y xxxxxxxxxx con el número de dígitos de tu teléfono.

#include <SoftwareSerial.h>

//Crea el objeto software serial para comunicarse con SIM800L
SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2

void setup()
{
  //comienza la comunicacion serial con Arduino y Arduino IDE (Serial Monitor)
  Serial.begin(9600);
  
  //comienza la comunicacion serial con Arduino y SIM800L
  mySerial.begin(9600);

  Serial.println("Initializing..."); 
  delay(1000);

  mySerial.println("AT"); //una vez que las pruebas están hechas exitosamente, regresará un OK
  updateSerial();

 mySerial.println("AT+CMGF=1"); // Configurando modo texto
 updateSerial();
mySerial.println("AT+CMGS=\"+ZZxxxxxxxxxx\"");//cambia ZZ  código del país y xxxxxxxxxxx con el número de teléfono a sms
  updateSerial();
  mySerial.print("Last Minute Engineers | lastminuteengineers.com"); //contenido del texto
  updateSerial();
  mySerial.write(26);
}

void loop()
{
}

void updateSerial()
{
  delay(500);
  while (Serial.available()) 
  {
    mySerial.write(Serial.read());//reenvía lo que software  Serial ha recibido al puerto Serial 
  }
  while(mySerial.available()) 
  {
    Serial.write(mySerial.read());//reenvía lo que Software Serial hrecibido al puerto Serial. 
  }
}

La pantalla de abajo mostrará el envío del SMS desde el SIM800L GSM

Explicacion del Código:

El ejemplo es parecido al primer ejemplo excepto por el fragmento de código de abajo. Una vez la conexión es establecida, enviamos los siguientes comandos AT.

AT+CMGF=1 – selecciona el formato de mensaje SMS como texto. El formato por defecto es Protocolo Data Unit PDU.

AT+CMGS=+ ZZxxxxxxxxxx –Envía un SMS a número telefónico especifico después de este comando AT cualquier mensaje de texto seguido por Ctrl+z el carácter es tratado como SMS. Ctrl+z’ es en realidad un carácter no imprimible número 26 que se describe como ‘sustituto’ en la tabla ASCII. Por lo tanto, necesitamos enviar 26 (0x1A) al final del comando.

mySerial.println("AT+CMGF=1"); // Configura el modo de texto
updateSerial();
mySerial.println("AT+CMGS=\"+ZZxxxxxxxxxx\"");//cambia ZZ con el Código de tu país y xxxxxxxxxxx con el número de teléfono SMS.
updateSerial();
mySerial.print("Last Minute Engineers | lastminuteengineers.com"); //text content
updateSerial();
mySerial.write(26);

El void Loop se mantiene vacío porque queremos enviar el SMS solo una vez. Si quieres enviar un SMS más veces, sólo presionas llave  RESET sobre tu Arduino.

Código Arduino – Leyendo un SMS

Ahora vamos a programar nuestro Arduino para leer mensajes entrantes, Este ejemplo puede ser muy útil cuando necesites realizar una acción como encender y apagar luces, habilitar sistemas de ventiladores, aspersores etc., cuando recibas un mensaje especifico.

#include <SoftwareSerial.h>

//Crear el objeto software serial para comunicar con SIM800L

SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx se conecta a los pines de  Arduino #3 y #2

void setup()

{

  //Comienza la comunicacion serial con Arduino y Arduino IDE (Serial Monitor)

  Serial.begin(9600);

  //Comienza la comunicacion serial con Arduino y SIM800L

  mySerial.begin(9600);

  Serial.println(“Initializing…”);

  delay(1000);

  mySerial.println(“AT”); //una vez que las pruebas son exitosas regresará un ok.

  mySerial.println(“AT+CMGF=1”); // Configurando modo texto

  updateSerial();

  mySerial.println(“AT+CNMI=1,2,0,0,0”); //decide como se deben manejar los mensajes recién llegados

  updateSerial();

}

void loop()

{

  updateSerial();

}

void updateSerial()

{

  delay(500);

  while (Serial.available())

  {

    mySerial.write(Serial.read());//reenvía lo recibido en seria al puerto serial

  }

  while(mySerial.available())

  {

    Serial.write(mySerial.read());//reenvía lo que software serial recibió al puerto serial.

  }

}

Una vez enviado el SMS al módulo SIM800L GSM, verás la siguiente salida en el monitor serial

Como puede ver, la respuesta de salida comienza con +CMT: todos los campos de la respuesta están separados por comas, donde el primer campo es el número de teléfono y el segundo campo es el nombre de la persona que envía el SMS. El tercer campo es una marca de tiempo, mientras que el cuarto campo es el mensaje real.

Explicación del código:

El boceto es casi igual que el primer boceto excepto por el fragmento de código a continuación. Una vez establecida la conexión, enviamos los siguientes comandos AT:

AT+CMGF=1: selecciona el formato del mensaje SMS como texto. El formato predeterminado es Unidad de datos de protocolo (PDU)

AT+CNMI=1,2,0,0,0: especifica cómo deben manejarse los mensajes SMS entrantes. De esta forma, puede decirle al módulo SIM800L que reenvíe los mensajes SMS entrantes directamente a la PC o que los guarde en el almacenamiento de mensajes y luego informe a la PC sobre sus ubicaciones en el almacenamiento de mensajes.

mySerial.println("AT+CMGF=1"); // Configuracion modo TEXTO
updateSerial();
mySerial.println("AT+CNMI=1,2,0,0,0"); // Decide como se deben manejar los mensajes recién llegados 
updateSerial();

Nota esta vez mantenemos el loop vacío mientras sondeamos los mensajes SMS entrantes.

Expansión del software Arduino Tamaño del búfer en serie

Si su mensaje es lo suficientemente extenso como el anterior, probablemente lo recibirá con algunos caracteres faltantes. Esto no se debe a un código defectuoso, sino a que el ‘Búfer de recepción en serie del software’ se está llenando por completo, descartando los caracteres restantes.

La solución más sencilla es aumentar el tamaño del búfer SoftwareSerial a 256 bytes desde el tamaño predeterminado de 64 bytes.

En una PC con Windows, vaya a C:\Archivos de programa (x86) > Arduino > hardware > Arduino > avr > bibliotecas > SoftwareSerial (> src para la versión más nueva de Arduino IDE). Abra SoftwareSerial.h y cambie esta línea:

// RX tamaño buffer 
#define _SS_MAX_RX_BUFF 64
a
// RX buffer size
#define _SS_MAX_RX_BUFF 256

Salve el archivo y pruebe el sketch otra vez.

Haciendo una llamada

Ahora vamos a programar Arduino para hacer una llamada. Este ejemplo puede ser muy útil Cuando tú quieras que tu Arduino haga una llamada de Auxilio en caso de una emergencia como la temperatura esta excedida o si alguien entra a tu casa.

Antes de probar este ejemplo, necesitaras colocar el número que quieras llamar, busque la cadena resaltada ZZxxxxxxxxxx y reemplace ZZ con el código del país y xxxxxxxxxx con los dígitos del número telefónico.

#include <SoftwareSerial.h>

//Crea el objeto software serial para comunicarse con la SIM800L
SoftwareSerial mySerial(3, 2); // Los pines de la SIM800L Tx & Rx se conectaran a los pines de Arduino #3 & #2

void setup()
{
  //comienza la comunicación serial con Arduino y Arduino IDE (Serial Monitor)
  Serial.begin(9600);
  
  //Comienza la comunicacion serial con Arduino y SIM800L
  mySerial.begin(9600);

  Serial.println("Initializing..."); 
  delay(1000);

  mySerial.println("AT"); //una vez que las pruebas son exitosas regresará un OK 
  updateSerial();
  
 mySerial.println("ATD+ +ZZxxxxxxxxxx;"); //  cambia ZZ con el codigo del paiz  y xxxxxxxxxxx con el numero de dígitos de el telefono 
  updateSerial();
  delay(20000); // espera por 20 segundos ...
  mySerial.println("ATH"); //cuelga
  updateSerial();
}

void loop()
{
}

void updateSerial()
{
  delay(500);
  while (Serial.available()) 
  {
    mySerial.write(Serial.read());//reenvía lo que ha recibido el puerto del software serial 
  }
  while(mySerial.available()) 
  {
    Serial.write(mySerial.read());//reenvía el software serial recibido al puerto serial 
  }
}

El siguiente pantallazo muestra la llamada hecha desde el módulo SIM800L GSM

Los siguientes comandos AT son usados para hacer una llamada.

ATD+ +ZZxxxxxxxxxx; – digita un numero especifico no olvides el semicolon; al final del comando.

ATH –cuelga la llamada.

mySerial.println("ATD+ +ZZxxxxxxxxxx;"); //  cambia ZZ con el codigo y  xxxxxxxxxxx con el numero de dígitos del telefono
updateSerial();
delay(20000); // espera por 20 segundos...
mySerial.println("ATH"); //cuelga
updateSerial();

Recibiendo una llamada

Ningún código especial es requerido para recibir llamadas, solo tienes que mantenerte escuchando el módulo SIM800L. puedes encontrar este ejemplo muy útil Cuando tu necesites llevar a cabo una acción cuando sea recibida la llamada desde un numero especifico.

#include <SoftwareSerial.h>

//Crear objeto software para comunicarse con SIM800L
SoftwareSerial mySerial(3, 2); //Los pines del SIM800L Tx & Rx son  conectados a los pines de Arduino #3 & #2

void setup()
{
  //Comienza la comunicacion serial con Arduino y Arduino IDE (Monitor Serial)
  Serial.begin(9600);
  
  //Comineza la comunicacion serial con Arduino y SIM800L
  mySerial.begin(9600);

  Serial.println("Initializing..."); 
}

void loop()
{
  updateSerial();
}

void updateSerial()
{
  delay(500);
  while (Serial.available()) 
  {
    mySerial.write(Serial.read());//Reenvía lo que Serial recibió al puerto del Software Serial.
  }
  while(mySerial.available()) 
  {
    Serial.write(mySerial.read());//reenvía lo que el software serial recibió al puerto serial
  }
}

La siguiente salida en el monitor serial muestra la llamada recibida por el módulo Sim 800L GSM

Como puede ver, las llamadas entrantes generalmente se representan con “RING” en el monitor de serie, seguido del número de teléfono y el identificador de llamadas. Los siguientes comandos AT se pueden utilizar para aceptar o colgar la llamada:

ATA: acepta una llamada entrante.

ATH – Cuelga la llamada. Al colgar la llamada entrante nos sale NO CARRIER en el monitor serie indicando que no se ha podido conectar la llamada.

https://lastminuteengineers.com/sim800l-gsm-module-arduino-tutorial/