1. El Octavo Bit
  2. / Arduino
  3. / Proyectos para Arduino
  4. / Tutorial básico de uso del módulo bluetooth HC-06 en Arduino

Tutorial básico de uso del módulo bluetooth HC-06 en Arduino

| Actualizado:
Comentarios: 0

Tutorial básico de uso del módulo bluetooth HC-06 en Arduino
Tutorial básico de uso del módulo bluetooth HC-06 en Arduino

El objetivo de este tutorial es poder añadir un módulo bluetooth a nuestra placa de Arduino y poder comunicarnos con un teléfono móvil Android a través de una aplicación. Primero veremos cómo conectarlo al móvil y después, cómo configurar el módulo HC-06.

Conectar el módulo HC-06 con un móvil Android.

Conexión del módulo HC-06 con un móvil Android.

El módulo HC-06 se caracteriza por tener 4 pines:

  • VCC, es el pin de alimentación, cable rojo.
  • GND, va conectado al pin GND de la placa de Arduino, cable negro.
  • TX, pin para transmisión de los datos, cable verde.
  • RX, pin para recepción de datos, cable naranja.

Código básico para conectar nuestro módulo y utilizar el monitor serie de Arduino:

void setup(){
  Serial.begin(9600); // según el manual viene configurado de serie a 9600
}

void loop(){
  if (Serial.available()){
    char dato=Serial.read();
    Serial.print("Dato recibido: ");
    Serial.println(dato);
  }
}

En la placas de Arduino los pines digitales 0 (RX) y 1 (TX) son compartidos con el USB, por lo tanto, hay que tener en cuenta que no deberá estar conectado el módulo de bluetooth, o nos dará problemas al subir el sketch a la placa.

Para poder comunicar el móvil con el módulo de bluetooth utilizaremos la aplicación Arduino bluetooth controller, que podemos conseguir en Google Play.

Aplicación bluetooht controller para utilizar con el dispositivo móvil.

El primer paso, sería emparejar el dispositivo móvil Android con el módulo. Para ello, es necesario activar el bluetooth en el móvil y buscar el dispositivo para vincularlo con el móvil. Entonces, nos pedirá una contraseña que por defecto es 1234 y el nombre del dispositivo HC-06.

Ejecutamos la aplicación Arduino Bluetooh Controller que hemos instalado y conectamos en modo terminal. Escribimos algún texto y lo enviamos. Debería de aparecer en el monitor serie de la placa Arduino y el dispositivo debería avisarnos de que los datos se han recibido.

Conectar el módulo HC-06 utilizando la librería SoftwareSerial.

En el código anterior hemos utilizado los pines digitales 0 y 1, pero si preferimos utilizar otros para no perder la conexión con el PC lo podemos hacer utilizando la librería SoftwareSerial.

Conexión del módulo HC-06 utilizando la librería SoftwareSerial.

Código:

#include "SoftwareSerial.h"
SoftwareSerial BT(4,2); // RX, TX recorder que se cruzan

void setup(){
  Serial.begin(9600);
  BT.begin(9600);
}

void loop(){
  if (BT.available()){
    Serial.write(BT.read());  // Si llega un dato por el puerto BT se envía al monitor serie
  }
  if(Serial.available()) {
    BT.write(Serial.read()); // si llega un dato por el monitor serie se envía al puerto BT
  }
}

En la primera línea incluimos la librería SoftwareSerial.h y con la instrucción SofwareSerial le indicamos qué pines vamos a utilizar para la comunicación con el módulo.

En la función setup iniciamos la comunicación con el monitor serie y con el puerto BT.

En la función loop tenemos dos if, el primero comprueba si tenemos comunicación a través del puerto BT (que proviene del móvil) y envía los datos al monitor serie, mientras que el segundo if, comprueba si la comunicación proviene del monitor serie y envía los datos al móvil.

Cambiar la configuración del módulo HC-06.

Para cambiar la configuración que viene por defecto utilizaremos el esquema de montaje anterior y el siguiente código:

#include "SoftwareSerial.h"
SoftwareSerial BT(4,2); // RX, TX

void setup(){
  Serial.begin(9600);
  Serial.println("Enter AT commands:");
  BT.begin(9600);
}

void loop(){
  if (BT.available())
    Serial.write(BT.read());
       
  if (Serial.available()){
    String S = GetLine();
    BT.println(S); // Si no responde el Bluetooth quitar salto de linea, cambiar por BT.print(S);
    Serial.println("---> " + S);
  }
}

String GetLine(){
  String S = "" ;
  if (Serial.available()){
    char c = Serial.read(); ;
    while (c != '\n'){
      S = S + c ;
      delay(25) ;
      c = Serial.read();
    }
    return( S ) ;
  }
}

Lo primero que debemos averiguar es la versión para saber la sintaxis de los comandos. El comando para obtener la versión del firmware es AT+VERSION todo en mayúsculas y sin espacios, debe ser introducido a través de la ventana serial de Arduino y con la opción de nueva línea seleccionada.

Captura de pantalla con la orden AT+VERSION

Conociendo la versión de nuestro módulo, podemos saber qué sintaxis utilizar. En mi caso la versión es la 3.0

Lista de comandos para la versión 1.8:

  • AT –> Prueba comunicación de comandos
  • AT AT+NAMEmibluetooth –> Cambia el nombre del módulo por «mibluetooth»
  • AT+PIN0000 –> Modifica la contraseña por 0000, la contraseña por defecto es 1234
  • AT+BAUD4 –> Selecciona la velocidad de conexión, el 4 corresponde a 9600 bps.

Lista de comandos para la versión 3.0:

  • AT –> Prueba comunicación de comandos
  • AT AT+NAME:mibluetooth –> Cambia el nombre del módulo por «mibluetooth»
  • AT+PSWD:»0000″ –> Modifica la contraseña por 0000
  • AT+UART:9600,0,0 –> Selecciona la velocidad de conexión
Captura de pantalla con los comando para cambiar el nombre y la contraseña del modulo HC-06

Artículos que te pueden interesar

Sonido con Arduino. Zumbador

Sonido con Arduino. Zumbador

| Actualizado:
Comentarios: 0

En este post vamos a aprender a generar sonidos con Arduino. Utilizaremos una señal eléctrica para hacer vibrar la membrana del zumbador. Contenido 1 Sonido con Arduino 2 Generar sonido con un zumbador 3 Sonido controlado por un potenciómetro 4…

Módulo bluetooth HC-06 con Arduino
Tutorial básico de uso del módulo bluetooth HC-06 en Arduino

Tutorial básico de uso del módulo bluetooth HC-06 en Arduino

| Actualizado:
Comentarios: 0

El objetivo de este tutorial es poder añadir un módulo bluetooth a nuestra placa de Arduino y poder comunicarnos con un teléfono móvil Android a través de una aplicación. Primero veremos cómo conectarlo al móvil y después, cómo configurar el…

Display de 4 dígitos y 7 segmentos
Funcionamiento del display de 4 dígitos y 7 segmentos con Arduino

Funcionamiento del display de 4 dígitos y 7 segmentos con Arduino

| Actualizado:
Comentarios: 0

Para mostrar más información, como la hora o la temperatura, necesitamos un display de más dígitos o conectar varios display de un solo dígito. En este tutorial veremos cómo conectar un display de 4 dígitos a Arduino. Contenido 1 Esquema…

Salidas analógicas en Arduino
Salidas analógicas en Arduino. Intensidad lumínica.

Salidas analógicas en Arduino. Intensidad lumínica.

| Actualizado:
Comentarios: 0

El objetivo de este proyecto es regular la intensidad de un led usando las salidas que soportan PWM y que corresponden a los pines digitales con el símbolo "~". En primer lugar, cambiaremos la intensidad de un solo led. Seguidamente,…

Comentarios - 0

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *