Los módulos Bluetooth HC-05 y HC-06 se han convertido en una de las soluciones más utilizadas para dotar de conectividad inalámbrica a proyectos con Arduino. Gracias a su versatilidad y precio asequible, estos dispositivos permiten establecer una comunicación sin cables con ordenadores, smartphones y otros dispositivos compatibles con Bluetooth.
Si buscas integrar estos módulos en tus proyectos, es fundamental conocer sus diferencias, su método de configuración y cómo se conectan correctamente con Arduino. En este artículo, exploraremos en detalle todo lo necesario para sacarles el máximo provecho.
¿Qué son los módulos Bluetooth HC-05 y HC-06?
Los módulos Bluetooth HC-05 y HC-06 son pequeños dispositivos electrónicos que permiten la comunicación inalámbrica a través del protocolo Bluetooth 2.0. Son ampliamente utilizados en proyectos de robótica, domótica y otros sistemas basados en microcontroladores.
Ambos módulos ofrecen funcionalidades similares, pero tienen una diferencia clave:
- HC-06: Solo funciona en modo esclavo, lo que significa que no puede iniciar una conexión, únicamente responder a solicitudes de dispositivos maestros.
- HC-05: Puede operar en modo maestro o modo esclavo, lo que le permite tanto iniciar como recibir conexiones Bluetooth.
Características técnicas
- Voltaje de operación: 3.3V – 5V.
- Frecuencia de transmisión: 2.45 GHz.
- Velocidad de comunicación: Configurable entre 1200 y 1382400 baudios.
- Distancia de alcance: Aproximadamente 10 metros sin obstáculos.
- Compatible con dispositivos Bluetooth estándar (PC, móviles, etc.).
Diferencias entre HC-05 y HC-06
Aunque ambos módulos lucen similares, presentan importantes diferencias funcionales:
Característica | HC-05 | HC-06 |
---|---|---|
Modo de operación | Maestro y esclavo | Solo esclavo |
Configuración | Más opciones mediante comandos AT | Opciones limitadas |
Botón de configuración | Sí | No |
Conexión del módulo Bluetooth con Arduino
Para utilizar estos módulos con Arduino, es esencial realizar la conexión correcta de los pines:
- VCC: Se conecta a 5V en la mayoría de los casos. Algunos modelos funcionan solo con 3.3V.
- GND: Se conecta a GND en Arduino.
- TX: Se conecta al pin RX de Arduino.
- RX: Se conecta al pin TX de Arduino. En algunos casos, se recomienda colocar un divisor de voltaje para prevenir daño por niveles de voltaje.
Cómo configurar el módulo Bluetooth con comandos AT
Para modificar los parámetros como el nombre del módulo, la contraseña o la velocidad de transmisión, debemos usar los comandos AT. El procedimiento varía según el módulo:
Modo AT en HC-06
El HC-06 entra automáticamente en modo AT cuando no está emparejado con otro dispositivo. Una vez conectado al Arduino, podemos enviar comandos desde el monitor serial.
Modo AT en HC-05
El HC-05 requiere que se mantenga pulsado su botón integrado al encender el módulo para entrar en modo AT. En este estado, el LED parpadea lentamente en lugar de hacerlo rápidamente.
Comandos AT más utilizados
- AT: Verifica si el módulo responde.
- AT+NAME=nombre: Cambia el nombre visible del módulo.
- AT+PSWD=clave: Modifica la clave de emparejamiento (por defecto es 1234).
- AT+UART=9600,0,0: Configura la velocidad de transmisión.
- AT+ROLE=0: Configura el módulo como esclavo (solo en HC-05).
- AT+ROLE=1: Configura el módulo como maestro (solo en HC-05).
Ejemplo de código para Arduino
Este código básico permite recibir y enviar datos entre Arduino y un dispositivo Bluetooth.
#include <SoftwareSerial.h> SoftwareSerial BT(10, 11); // RX, TX void setup() { Serial.begin(9600); BT.begin(9600); } void loop() { if (BT.available()) { Serial.write(BT.read()); } if (Serial.available()) { BT.write(Serial.read()); } }
Con este código, cualquier dato enviado desde un móvil o PC llegará al Arduino y se mostrará en el monitor serial. Del mismo modo, cualquier dato ingresado en el monitor serial será enviado al dispositivo Bluetooth.
Pruebas de comunicación con PC y smartphone
Para verificar que el módulo funciona correctamente, podemos emparejarlo con un PC o con un smartphone. En Windows, podemos utilizar programas como Hyperterminal o PuTTY, mientras que en Android hay aplicaciones como BlueTerm que permiten la comunicación vía Bluetooth.
Configurando el módulo como Maestro o Esclavo
Si usamos un HC-05 y queremos que se empareje automáticamente con otro módulo Bluetooth, debemos configurarlo en modo Maestro. Para ello, podemos usar estos comandos:
- AT+ROLE=1 → Activa el modo Maestro.
- AT+CMODE=0 → Configura conexión con un dispositivo específico.
- AT+BIND=xx:xx:xx:xx:xx:xx → Especifica la dirección del dispositivo esclavo.
Por otro lado, un módulo esclavo (HC-06 o HC-05 en modo esclavo) simplemente espera la conexión de un maestro.
Este artículo cubre de manera detallada todos los aspectos necesarios para el uso y configuración de los módulos Bluetooth HC-05 y HC-06 con Arduino. Desde sus diferencias técnicas hasta cómo establecer la comunicación con otros dispositivos, entender estas características permitirá aprovechar todas las capacidades de estos módulos en diferentes proyectos electrónicos.