bluetooth

Estimados he adquirido el modulo bluetooth hc-06, y lo he conectado a un arduino mega.

Pero tengo problemas a la hora de enviar un comando a través del celular, sí puedo recibir (al celular) mensajes del bluetooth, pero no enviar:

Tengo conectado el tx y el rx en 14 y 15 (de hecho probé al revés y tampoco tuve suerte)

Hice este code para hacer un test:

#include <SoftwareSerial.h>
SoftwareSerial Bluetooth(14, 15); // RX, TX
char cmd; // the data received
 
void setup() {
  Bluetooth.begin(9600);
  Serial.begin(9600);
  Serial.println("Waiting for command...");
  Bluetooth.println("Press a or b for msg");
}
 
void loop() {
  if (Bluetooth.available()){ //wait for data received
    cmd=Bluetooth.read();
    if(cmd=='a'){  
      Serial.println("U press 1!");
      Bluetooth.println("U press 1!");
    }
    else if(cmd=='b'){
       Serial.println("U press 0!");
       Bluetooth.println("U press 0!");
    }
    else{} 
  }
}

Repito ese mensaje si me aparece en el celular, pero al enviar “a” o “b” no sucede nada.

Espero puedan ayudarme

Todo lo que envías desde el arduino al celular es recibido pero nada es recibido en el arduino.

Prueba de este modo, no es muy diferente pero veamos que ocurre

#include <SoftwareSerial.h>
SoftwareSerial Bluetooth(14, 15); // RX, TX
char cmd; // the data received
 
void setup() {
  Bluetooth.begin(9600);
  Serial.begin(9600);
  Serial.println("Waiting for command...");
  Bluetooth.println("Press a or b for msg");
}
 
void loop() {

  if (Bluetooth.available()>0){ //wait for data received
      cmd = Bluetooth.read();
      Serial.println("Recibido : " + String(cmd));
  }
  
  switch(cmd) {
     case 'a': Serial.println("U press 1!");
               Bluetooth.println("U press 1!");
               break;

     case 'b': Serial.println("U press 0!");
               Bluetooth.println("U press 0!");
               break;
     default:  cmd = 0;
               break;
  }
}

Lo arreglé, ya que a lon pines 14 y 15 les corresponde el tx3 y rx3 ocupe serial3 y todo anda perfecto.

Saludos.

Gracias por tu respuesta

Ahh fantastico porque nunca dijiste que usabas un MEGA.

Porque no te das una vuelta por las normas del foro y lees como se debe presentar un problema. Digo para que si te ocurre algo la próxima recuerdes que nosotros no podemos adivinar. Si vemos un código con SoftwareSerial suponemos que usas un android que no tiene mas que un puerto Serie. Con MEGA y DUE tienes 4.

Me alegro que lo resolvieras pero ten presente esta recomendación.