Hola amigos actualmente tengo un modulo de comunicación GSM sim800l he comprado dos, el primero que compre lo registre con TIGO estoy en Colombia (Barranquilla) me demoro en conectar pero después de dos días conecto y recibí mensajes y llamadas me funcionaba bien se conectaba a la red muy bien hasta que los desarme para unas pruebas y llevar lo a otro lugar y no se volvió a conectar de nuevo
el segundo lo registre con Movistar y lleva una semana que lo registre y no tengo señales que vaya a funcionar
ambos módulos cuando ejecuto el comando AT+CREG? me responde (0,2) tengo entendido que la respuesta deseada es (0,5) parece que el modulo no se conecta a ala red ya que la luz RED roja parpadea cada segundo y no se que comando o estrategia utilizar para que se conecte quisiera tener certeza y conocer el problema exacto ¿ podrían ayudarme?
este es el codigo que uso:
#include <SoftwareSerial.h>
//Create software serial object to communicate with SIM800L
SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2
void setup()
{
//Begin serial communication with Arduino and Arduino IDE (Serial Monitor)
Serial.begin(9600);
//Begin serial communication with Arduino and SIM800L
mySerial.begin(9600);
Serial.println("Initializing...");
delay(1000);
mySerial.println("AT"); //Once the handshake test is successful, it will back to OK
updateSerial();
mySerial.println("AT+CSQ"); //Signal quality test, value range is 0-31 , 31 is the best
updateSerial();
mySerial.println("AT+CCID"); //Read SIM information to confirm whether the SIM is plugged
updateSerial();
mySerial.println("AT+CREG?"); //Check whether it has registered in the network
updateSerial();
}
void loop()
{
updateSerial();
}
void updateSerial()
{
delay(500);
while (Serial.available())
{
mySerial.write(Serial.read());//Forward what Serial received to Software Serial Port
}
while(mySerial.available())
{
Serial.write(mySerial.read());//Forward what Software Serial received to Serial Port
}
}