CONTENIDO ►
Cómo conectar el módulo Bluetooth al Arduino Uno, para poder controlar el dispositivo vía bluetooth desde un smartphone android. Este módulo permite la comunicación bidireccional a través de bluetooth, es decir, no sólo se puede controlar el Arduino, sino también recibir datos del dispositivo. Presentaremos el diagrama de cableado de HC-05 y HC-06 y daremos ejemplos de programas junto con aplicaciones para smartphones.
Para esta actividad necesitaremos:
- Arduino Uno / Arduino Nano / Arduino Mega
- módulo Bluetooth HC-05;
- módulo Bluetooth HC-06;
- LED y resistencia de 220 Ohm;
- protoboard, cables de conexion;
- libreria SoftwareSerial.h
Módulo Bluetooth HC-05 y HC-06 datasheet, pinout
Ambos dispositivos se basan en un chip CSR BC417 que admite señales de radio Bluetooth de hasta 3 Mbps. En la propia placa módulo HC-05 y módulo HC-06 hay una antena de vía en forma de serpiente, que proporciona un alcance de comunicación de hasta 10 metros. La principal ventaja es que es resistente a las interferencias de banda ancha, lo que significa que varios aparatos pueden comunicarse entre sí sin molestarse.

Características Modulo HC-06 o HC-05:
- Alimentación: 3.3 – 6 V
- Protocolo Bluetooth: v1.1 / 2.0.
- Frecuencia: banda ISM de 2,4 GHz
- Potencia de transmisión: menos de 4dBm, Clase 2
- Ratio asíncronos: 2.1Mbps ( Max) / 160 kbps
- Síncrono: 1Mbps / 1Mbps
- Perfiles de la ayuda: puerto serie Bluetooth (maestro y esclavo)
- Temperatura de trabajo: -5°C a 45°C
Cómo funciona la comunicación de Arduino a Android mediante Bluetooth? El programa para controlar el Arduino vía bluetooth desde un smartphone Android no difiere del sketch utilizado para controlar el Arduino desde un ordenador. En ambos casos, el Arduino Uno recibirá los datos mediante el protocolo UART (Universal Asynchronous Transceiver), el primer y más común protocolo físico de transferencia de datos en la actualidad.
Módulo Bluetooth Arduino HC-06 y HC-05

Ten en cuenta que si conectas cualquier módulo a los puertos TX y RX del Arduino, no podrás cargar código en la placa – obtendrás un error de que la placa no está disponible. Por eso usamos la librería SoftwareSerial.h. Tras instalar la aplicación en el smartphone y descargar el programa (puedes descargar los archivos en nuestra web), conecta el módulo bluetooth al Arduino Uno como se muestra en el diagrama anterior.
Programa para controlar Arduino vía Bluetooth
#include "SoftwareSerial.h" SoftwareSerial mySerial(2, 3); // TX, RX int val; void setup() { mySerial.begin(9600); pinMode(13, OUTPUT); } void loop() { if (mySerial.available()) { val = mySerial.read(); if (val == '1') {digitalWrite(13, HIGH);} if (val == '0') {digitalWrite(13, LOW);} } }
Explicación sketch controlar Arduino vía Bluetooth desde un teléfono:
- antes de emparejar los dispositivos, el LED del HC-05 parpadeará rápidamente;
- la aplicación sólo es apta para Android.
Como conectar y configurar modulo Bluetooth
Para emparejar tu smartphone con el módulo Bluetooth HC-06 y HC-05, ve a los ajustes del teléfono y activa el bluetooth. Tendrás activada la búsqueda de dispositivos y además del nombre HC-05 o HC-06, verás la dirección del dispositivo. Para conectarte tendrás que introducir una contraseña, normalmente «1234» o «0000». Sólo tienes que introducir la contraseña una vez, las conexiones posteriores se emparejarán automáticamente.
A continuación, abre la aplicación que has instalado en tu smartphone y pulsa en «Conectar Bluetooth». Se le presentará una lista de dispositivos con direcciones – seleccione el dispositivo deseado. Si el emparejamiento se realiza correctamente, el LED del módulo empezará a parpadear con menos frecuencia, aproximadamente una vez cada dos segundos. Ahora puedes encender remotamente el LED en el Arduino usando Bluetooth.

En el siguiente ejemplo, conectaremos dos LEDs al microcontrolador Arduino, según el diagrama publicado anteriormente. Y ahora podemos controlar el Arduino a través de la aplicación Android encendiendo y apagando los LEDs en la protoboard. Además de los números a través de la conexión Bluetooth también puede enviar comandos en forma de letras del alfabeto latino, el caso es importante – letras mayúsculas o minúsculas.
Programa Arduino para módulo Bluetooth HC-06 o HC-05
#include "SoftwareSerial.h" SoftwareSerial mySerial(2,3); int val; void setup() { mySerial.begin(9600); pinMode(12, OUTPUT); pinMode(10, OUTPUT); } void loop() { if (mySerial.available()) { val = mySerial.read(); if (val == '1') {digitalWrite(12, HIGH);} if (val == '0') {digitalWrite(12, LOW);} if (val == '2') {digitalWrite(10, HIGH);} if (val == '3') {digitalWrite(10, LOW);} } }
Explicación sketch Arduino para módulo Bluetooth HC-06 o HC-05:
- antes de emparejar los dispositivos, el LED del HC-05 parpadeará rápidamente;
- la librería SoftwareSerial.h permite implementar un puerto serie software en cualquier salida digital de Arduino.
Conclusión. Bluetooth Android es uno de los tipos de comunicación de corto alcance más populares hoy en día, utilizado por la mayoría de electrodomésticos y aparatos electrónicos: auriculares, teclados y ratones de ordenador y otros gadgets. En robótica, el módulo Bluetooth se utiliza para controlar varios dispositivos Arduino desde un teléfono Android o una tableta, como por ejemplo controlar un coche o un barco desde un smartphone.

Página muy interesante y muy útil para mí…me ha servido para programar el Bluetooth HC-06 con el Arduino Uno y a su vez mediante el programa de botones Mit App Inventors encender y apagar 7 led…