Problema con SIM900 +Arduino UNO

Hola buenas,
Resulta que estoy intentando conectar el módulo SIM900, y cuando voy a probar que todo funcione correctamente enviándole un simple comando AT... me devuelve números en lugar de OK.
No he visto que esto le este pasando a mas gente asi que no se como arreglarlo.
Para cualquier comando que introduzca devuelve números. He probado a introducir el comando con el pin pero no encuentra la red (según el parpadeo del led). No se si podría ser la sim que estoy utilizando, utilizo la misma que en mi móvil, y antes he probado a conectarme solo a redes 2G para ver si había señal, y sí la hay. Se trata de una sim de Yoigo. No entiendo por que puede ser, adjunto las imagenes que he tomado.

Si no lo soluciono probaré a cambiar la sim, o devolverlo y pedir otro. Gracias

¿Y el código? Porque en la imagen no se ve código que mande ningún comando.

Se lo he pasado a traves del serial, escribiendo. le he puesto at y me salen esos numeros, ahora he probado a hacerlo de otra manera y me devuelve lo siguiente:


He probado todos los fragmentos de código que he encontrado para hacer que funcione lo básico... pero no hay manera no entiendo que puede estar pasando, se supone que ese código debería permitirme comunicarme con el módulo... de la siguiente manera:

Hola:

Estás usando:

Serial.println("READY");

Prueba con sin el ln.

Serial.print("READY");

Si sigue de bobo pues prueba con este otro.

Serial.write("READY");

Nos cuentas.

Más información de formatos.

Otra cosa, es que formato recibe los datos.

Que tengas buen día.

He probado con todos en ambos: Serial y SIM900. Obtengo la misma salida con todos, print, println y write... la unica diferencia es que el ln cambia de linea (evidentemente)...
No se si no reconoce los caracteres que me devuelve, quizas sean letras chinas, aunque no deberia puesto que los comandos son universales y las respuestas deberian serlo tambien...
Estoy atascado :frowning:

Pavloo, por favor lee las normas del foro y postea el código que estas usando,
No NOS sirve una captura de pantalla que tu ves y nosotros no o debemos ir a un programa para ampliarla.

Usa etiquetas para postear el código. Mira otros hilos o mejor las normas.

Al margen de esto, estas seguro que el SIM900 responde a 19200?

Algo mas y este es el problema a juzgar por las imagenes que publicas, esta MAL ALIMENTADO.
No que esten invertidos los cables, eso no lo veo y supongo que esta bien pero debes usar una fuente externa que provea 5V 2A. Manten GND entre SIM900 y Arduino.

No puedes alimentarlo con Arduino.

¿Los baudios de Arduino son los mismos que el SIM900?

Revísalo por si acaso.

Empecemos de cero:
¿Como tienes el switch del SIM900? está al lado de la antena. Prueba a ponerlo en 0 y 1 y conecta los cables al SIM a los pines 0 y 1. En el arduino déjalos en 7 y 8.
Veo que en el setup tienes un "at". Cámbialo por esto

SIM900.println("AT");

Si siguen apareciendo cosas raras, cambia las lineas Begin a 9600 para probar. Y también al monitor

Y nos vas contando

Saludos

Pero mira la foto @bosoft lo alimenta con el Arduino. Como en otro hilo, es posible que reciba algunas respuestas pero en general deberia alimentarlo bien.

sisi, lo se, pero para hacer un AT hay mas que suficiente. Otra cosa es poner el SIM900 a funcionar

Hay que ver cual es el error que le hace salir números o símbolos en el monitor. Y para ello no hace falta ni insertar la tarjeta SIM

Saludos

Bueno.. ya veremos cual es el error.

Actualizo mi situación.
Disculpad por las capturas y por las formas, soy nuevo en esto, ya habia utilizado arduino antes pero nunca escribí en el foro :slight_smile: .

Probé otros baudios, no funcionaba. Las minúsculas y mayúsculas también probé y obtenía la misma respuesta. Nunca detectaba una red y en ocasiones si escribía un comando muy largo se reconocía alguna letra china en la respuesta. También probé distintas formas de alimentar el circuito, cambiando la fuente por otra de mas voltaje, poniéndosela al sim900 en lugar de al arduino... nada. El switch también estaba en su lugar, los jumpers tambien...

En fin devolví el producto y me compré un SIM800L, mas económico, mas nuevo, mejores reviews... Utilizando el mismo código pero con 9600 baudio (ya que es el del sim800L) funciona perfectamente, con la misma tarjeta sim y todo. Problema resuelto. Muchas gracias a todos los que leísteis o respondisteis. No esperaba respuestas tan rápido, muy útil. Gracias otra vez :smiley:

código:

#include <SoftwareSerial.h>

SoftwareSerial SIM(10, 11);
char data;

void setup()
{
  Serial.begin(9600);
  SIM.begin(9600);
  Serial.println("READY");
  delay(3000);
}

void loop()
{
  if (SIM.available() > 0) {
    data = SIM.read();
    Serial.print(data);
  }
  if (Serial.available() > 0) {
    data = Serial.read();
    SIM.print(data);
  }
}

circuito :


alguna prueba :slight_smile: :

imagen_2021-03-11_122031.png

imagen_2021-03-11_122031.png

Buenas:

Saludos.

Moderador:

Doble posteo. Hilo cerrado. Quedas advertido @pavloo por tu doble posteo, foro inglés y este foro.
La proxima recibirás un baneo.

Gracias Metanconta.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.