SIM800L no conecta

Estoy tratando de utilizar este modulo para mandar mensajes, pero no estoy pudiendo hacerlo. Tengo bien la tensión, y una fuente que entrega 2a, pero cuando trato de mandar un SMS me da error 325, el cual no lo encuentro.

AT+CCID
89543421118999312105
+CREG: 0,2
+CSQ: 23,0
AT+CMGS="+5491130050483"

+CMS ERROR: 325

Alguien puede tener alguna idea?
Gracias

Hi,
Adjunto link del mannual que tiene una tabla de los errores.
https://www.elecrow.com/wiki/images/2/20/SIM800_Series_AT_Command_Manual_V1.09.pdf

Subí el código que estás usando y vemos cuál puede ser el error porque las causas del error 325 pueden ser varias.

Subo el codigo, y gracias!
void setup() {
  Serial.begin(9600);
  // Serial2.begin(9600);
  Serial2.begin(9600, SERIAL_8N1, 17, 16);
  delay(3000);
  test_sim800_module();
  send_SMS();

}

void loop() {
  updateSerial();

}


void test_sim800_module()
{
  Serial2.println("AT");
  updateSerial();
  Serial.println();
  Serial2.println("AT+CSQ");
  updateSerial();
  Serial2.println("AT+CCID");
  updateSerial();
  Serial2.println("AT+CREG?");
  updateSerial();
  Serial2.println("ATI");
  updateSerial();
  Serial2.println("AT+CBC");
  updateSerial();
  Serial2.println("AT+CMGF=1"); // Configuring TEXT mode
  updateSerial();
  Serial2.println("AT+CNMI=2,2,0,0,0\r");
  updateSerial();
  Serial2.println("AT+CMEE=1");
  updateSerial();
  Serial2.println("AT+CSCA=\"+541151740050\"");
  delay(400);
  Serial2.write(26);
  updateSerial();


}


void updateSerial()
{
  delay(1500);
  while (Serial.available())
  {
    Serial2.write(Serial.read());//Forward what Serial received to Software Serial Port
  }
  while (Serial2.available())
  {
    Serial.write(Serial2.read());//Forward what Software Serial received to Serial Port
  }
}


void send_SMS()
{
  Serial2.println("AT+CMGF=1\r"); // Configuring TEXT mode
  updateSerial();
  Serial2.println("AT+CSCA=\"+541151740050\"");
  Serial2.write(26);
  delay(400);
  updateSerial();
  Serial2.println("AT+CMGS=\"+5491130050483\"");//change ZZ with country code and xxxxxxxxxxx with phone number to sms
  Serial2.write(26);
  delay(400);
  updateSerial();
  Serial2.print("Circuit Digest"); //text content
  updateSerial();
  Serial.println();
  Serial.println("Message Sent");
  Serial2.write(26);
}

type or paste code here

@ alemori intenta siempre que presentes un problema dar la mayor información posible.
Solo vienes con lo que no te funciona y no has dicho que Arduino estas usando.
Es importante porque parece que estas usando un MEGA ya que leo en el código Serial2 pero también leo en tu código esto

Serial2.begin(9600, SERIAL_8N1, 17, 16);

En Arduino Mega no tiene sentido el 17, 16 y si en un ESP32.

Con inicializarlo como

Serial2.begin(9600);

Es suficiente.

Ahora si se trata de un ESP32 tmb deberías decirlo y este tema debe ir a otra sección y en ese caso la inicialización es correcta.

Disculpa. Paso el código que utilizo con arduino uno. El mismo problema lo tengo con un esp32, por eso los pines. Creo que el problema esta focalizado en la registración, no se porque motivo no me registra el SIM en el prestador. Puedo mandar mensajes con el celular con ese SIM, sin problemas. Compre un SIM800C para ver si el problema es la placa, pero leo muchos problemas con esa placa, lamentablemente en argentina es la unica que puedo conseguir.

#include <SoftwareSerial.h>

SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2
//Begin serial communication with Arduino and Arduino IDE (Serial Monitor)
void setup()
{
  Serial.begin(9600);

  //Begin serial communication with Arduino and SIM800L
  mySerial.begin(9600);
  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 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
  }
}
void loop()
{
  delay(1000);
  updateSerial();
}

Por favor, si haces algo con UNO di, uso UNO y si usas ESP32, di uso ESP32.
Tenemos que estar adivinando.

Yo no haría ningun proyecton con SIM800 o SIM900 estan obsoletos. Solo los venden en latinoamerica para quien no sabe. Funcionan solo con SMS y nada mas.
Creo que si usas Personal ni siquiera conectan (hablo de Argentina).
Pide una 3G o 4G a Aliexpress. No tengas dudas, te va a llegar. Si no te saldrá barata pero al menos tu proyecto funcionará varios años.

Necesito solo GPRS, y el modulo funciona, lamentablemente todavía tengo que sortear estas dificultades. Probare en otro foro. Gracias

Olvidate de poder usar datos (GPRS) porque creo que ya no queda ninguna localidad de Argentina con cobertura 2G.
SMS y llamadas funcionan igual pero datos ya no.

Saludos