Hola a todos, estoy comenzando a programar en Arduino, es fascinante, estoy tratando de hacer un modulo que permita recibir y enviar mensajes SMS, y que al recibir un en particular active una salida, pero al parecer tengo un conflicto con la lectura AT del modulo A6, envio los comandos por el serial ( encender y apagar ) y funciona m pero envio el comando AT y no logro establecer contacto con el modulo A6, incluso coloque un flag para que me indique si entro pero nada, les dejo el codigo para ver si alguien me puede orientar en el error que estoy cometiendo. gracias.
#include <SoftwareSerial.h>
SoftwareSerial A6MODULE(2,3);
String Dato;
void setup()
{
pinMode(13, OUTPUT);
Serial.begin(9600);
Serial.println("Cambiando a 9600Bds");
A6MODULE.println("AT+IPR=9600");
A6MODULE.begin(9600);
delay(5000);
Serial.println("Módulo listo.");
// Envio de mensajes de texto
// Serial.println("Enviando AT...");
// A6MODULE.println("AT");
// delay(1000);
//
//Serial.println("Configurando modo texto AT+CMGF=1 "); //modo texto
//A6MODULE.println("AT+CMGF=1");
// delay(1000);
//
//Serial.println("Indicando de destino xxxxxx");
//A6MODULE.println("AT+CMGS=\"+56992977713\"");
//delay(3000);
//
// Serial.println("Cargando mensaje");
//A6MODULE.println("hola hermosa");
// delay(3000);
//
//Serial.println("Enviando...");
//A6MODULE.println(char(26));
// delay(2000);
}
void loop()
{
// Rele
String cadena = Serial.readStringUntil('\n');
cadena = cadena.substring(0, cadena.length()-1);
if(cadena == "encender")
{
digitalWrite(13, HIGH);
}
else if(cadena == "apagar")
{
digitalWrite(13, LOW);
}
// Modulo GPRS
while(A6MODULE.available()){
Serial.write(A6MODULE.read());
Serial.println("entro");
}
while(Serial.available()){
A6MODULE.write(Serial.read());
Serial.println("entro2");
}
}```