Bluetooth HC-05 não envia e recebe dados

Pessoal,

Estou fazendo testes com o módulo bluetooth HC-05. Quando ligo o módulo na alimentação (após ter transferido o sketch para o Arduino), ele pisca ininterruptamente. Consigo conectar ele via bluetooth no meu celular, então o módulo pisca mais lento, aprox. 1 vez a cada 2 segundos. O problema é que ele não recebe os dados do celular...

Estou usando este código abaixo e o programa "S2 Terminal" sugerido neste video: Experiencia Arduino + Bluetooth + Android - parte 3/3 - YouTube

void setup()

{
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
Serial.begin(9600);

}

void loop()
{
char c = Serial.read();
if (c== '1') digitalWrite(13, HIGH);
if (c== '2') digitalWrite(12, HIGH);
if (c== '3') digitalWrite(11, HIGH);

if (c== 'A') digitalWrite(13, LOW);
if (c== 'B') digitalWrite(12, LOW);
if (c== 'C') digitalWrite(11, LOW);
delay(1000);
}

Obrigado!

void loop()
{
char c = Serial.read();
if (c== '1') digitalWrite(13, HIGH);
if (c== '2') digitalWrite(12, HIGH);
if (c== '3') digitalWrite(11, HIGH);

if (c== 'A') digitalWrite(13, LOW);
if (c== 'B') digitalWrite(12, LOW);
if (c== 'C') digitalWrite(11, LOW);
delay(1000);
}

O teu problema deve ser do Android mas pra já tens uma falha neste código, como sabes que tens algo pra ler no buffer da serial.Devias estar a verificar se tens algo usando um if(serail.available() >0)
Mesmo assim da forma que tens devia funcionar porque se não tiveres nada para ler no buffer a função Serial.read() devolve -1 e esta não entra em nenhum dos ifs que tens.
Antes de usares o Bluetooth porque não testas apenas com a consola da porta Serie na IDE e escreves os valores para veres o resultado?
Assim quando tiveres a funcionar mudas depois para o Bluetooth com a certeza que o teu problema agora nao é no codigo.
Verifica ou tenta trocar os pinos de RX e TX.

Testei esse exemplo e consigo receber o texto no celular, mas não consigo enviar nada. Será que o módulo está em modo Master? Mas pelo que sei, o HC-05 é Master-Slave...

Funcionou com este código...

#include <SoftwareSerial.h>

#define Reset 4
#define LED 13
SoftwareSerial BTserial(2,3);

int count=0; // counter for buffer array
String buffer; // buffer array for data recieve over serial port

void setup() {
// initialize the digital pin as an output.
pinMode(LED, OUTPUT);
pinMode(Reset, OUTPUT);
Serial.begin(9600);
BTserial.begin(9600);
digitalWrite(Reset, LOW);
digitalWrite(LED, LOW);
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);

}

// the loop routine runs over and over again forever:
void loop() {

readBT();
count = 0; // set counter of while loop to zero
buffer = ""; // clear all index of array with command NULL
writeBT();

}

void readBT(){

int i = 0;
while (BTserial.available()) // if date from softwareserial Bt module
{
if(BTserial.available() >0) // reading data into char array
{
count++;
char c = BTserial.read();
if (c== '1') digitalWrite(13, HIGH);
if (c== '2') digitalWrite(12, HIGH);
if (c== '3') digitalWrite(11, HIGH);

if (c== '4') digitalWrite(13, LOW);
if (c== '5') digitalWrite(12, LOW);
if (c== '6') digitalWrite(11, LOW);

buffer += c;
}
}
Serial.print(buffer);
}

void writeBT(){

if (Serial.available()) // if data on hardwareserial port PC or notebook

BTserial.write(Serial.read()); // write it to the BT module
}