Módulo Bluetooth Low Energy HM-10: Guía Técnica Completa
La comunicación inalámbrica es un concepto apasionante en esta nueva era. La mayoría de dispositivos electrónicos modernos la usan de una u otra forma. Este artículo analiza el HM-10 y su papel vital en comunicación inalámbrica mediante módulo Bluetooth de baja energía (BLE). Obtén toda la información necesaria para entender el HM-10 y sus componentes.
1. Configuración de Patillas del HM-10
El diseño emplea CC2540 o CC2541 Bluetooth SOC (System on Chip) Bluetooth Low Energy (BLE).
Configuración de patillas HM-10
El módulo HM-10 tiene 34 patillas, de las cuales solo 4 son necesarias para establecer comunicación.
| Patilla | Nombre | Descripción |
|---|---|---|
| 1 | UART_TX | Interfaz UART - Transmitir |
| 2 | UART_RX | Interfaz UART - Recibir |
| 3 | UART_CTS | Interfaz UART |
| 4 | UART_RTS | Interfaz UART |
| 5-10 | NC | Sin conexión |
| 11 | RESET | Reset si bajo durante 100 ms |
| 12 | VCC | 3,3 V |
| 13-14 | GND | Tierra |
| 15 | USB_D- | Interfaz USB |
| 16-19 | NC | Sin conexión |
| 20 | USB_D+ | Interfaz USB |
| 21-22 | GND | Tierra |
| 23 | PIO0 | Tecla del sistema |
| 24 | PIO1 | LED del sistema |
| 25-34 | PIO2-11 | Líneas programables entrada/salida |
La tabla ilustra cada patilla y su función.
Existen dos versiones: HM10C y HM-10S.
2. Características del Módulo HM-10
- Sin límite de bytes al enviar y recibir.
- Consumo Bluetooth Low Energy (chip BLE).
- Versión Bluetooth: V4.0.
- Frecuencia de trabajo: banda ISM 2,4 GHz.
- Consumo 50-200 µA en modo sleep.
- 12 pines GPIO (Entrada/Salida de propósito general).
- Interfaz Serie UART y USB de velocidad completa.
- Temporizador de sleep 32 kHz con captura.
- Programación serie en circuito (In-Circuit Serial Programming) 128 KB o 256 KB.
- 8 KB SRAM (Memoria estática de acceso aleatorio).
- Alcance largo: espacio abierto hasta 100 m.
- Tamaño portátil.
Módulo Bluetooth fácilmente portable
2.1 Especificaciones del Módulo HM-10
- Voltaje de operación del MÓDULO: 2,0 V – 3,6 V.
- Funciona a bajo voltaje.
- Consumo de batería de respaldo: 235 µA.
- Nivel de entrada RF: 10 dBm.
- Voltaje máximo: +3,9 V.
- Temperaturas de operación: -40 °C a +85 °C.
- Descarga electrostática: 750 V.
Los módulos HM-11, HM-01 a HM-09 también pueden usarse en lugar del HM-10.
Módulo Bluetooth HC-08
3. ¿Dónde Podemos Usar el MÓDULO HM-10?
- Comunicaciones inalámbricas de corta distancia (≤ 100 m).
- Dispositivos móviles por bajo consumo.
- Proyectos de bajo coste (módulo barato).
- Comunicación UART para conectar a controladores/procesadores (ej. Arduino).
Otras aplicaciones:
- Robótica
- Dongles USB
- Servidores
- Equipos médicos
- Equipamiento deportivo y de ocio
- Periféricos de computadora
Oxímetro que usa un módulo Bluetooth
4. Cómo Usar el MÓDULO HM-10
La conexión serie UART facilita emparejar el módulo con Arduino. Si hay problemas al integrar con Arduino o Raspberry Pi, consulta la hoja de datos (datasheet) del HM-10.
Sensor HM-10 en una placa base
Es vital asegurar que tu módulo HM-10 sea genuino antes de usarlo en un proyecto.
Para evitar módulos clonados, verifica que el tuyo tenga el oscilador de cristal de 32 kHz. De lo contrario, necesitarás cambiar el firmware del módulo mediante descarga de firmware para módulo clonado. Sin eso, no podrás acceder al módulo con comandos AT ni emparejarlo con smartphone.
Los módulos BLE pueden comunicarse con otros dispositivos BLE (ej. dispositivo Android, dos HM-10). La comunicación es posible mediante UART serie y totalmente personalizable con conjuntos de comandos AT.
El módulo es una breakout board para Bluetooth CC2541 que incluye regulador de 3,3 V. Nota: al usar Arduino 5 V, el pin RX del HM-10 sigue a 3,3 V; es necesario convertir el pin TX del Arduino a 3,3 V.
4.1 Componentes Necesarios
- Controlador Bluetooth Arduino
- Módulo Bluetooth HM-10
- Resistencias (1 kΩ, 470 Ω)
- Cables de conexión (FTDI)
- Arduino IDE
- App Android - BLE Scanner (HM-10 Module)
4.2 Diagrama de Circuito
Imagen de circuito HM-10
Fuente: https://www.youtube.com/watch?v=geSEbu6mj2Q
4.3 Configuración Módulo Arduino + Comando AT
Para ejecutar comandos AT, abre Arduino en tu PC y selecciona el puerto USB correcto. Abre el monitor serie y confirma baud rate por defecto 9600. Escribe AT+NAME? (sin espacios). Debería mostrar OK+NAME: HMSoft. Ya puedes comunicar con Bluetooth 4.0 LE.
4.4 Envío y Recepción de Datos entre 2 HM-10
Usa comando AT AT+ADDR? para consultar dirección MAC original. La salida será como 20C38FF61DA1 (cada HM-10 BLE tiene dirección única). Para emparejar 2 HM-10 usa comandos AT+CON[param1] y AT+ROLE[param1].
4.5 Cableado HM-10 BLE 4.0 con Arduino
Interfaz del controlador Bluetooth Arduino con el módulo:
| HM-10 | Arduino |
|---|---|
| HM-10 TX | D2 |
| HM-10 RX | D3 |
| GND | GND |
| VCC | 3,3 V |
Puedes usar puerto serie software o hardware para programar Arduino UNO. En nuestro ejemplo usamos software serial.
Controlador Bluetooth Arduino interfaz con HM-10
Fuente: https://www.youtube.com/watch?v=Xt5e10B4Eq0&t=13s
Código para controlar LED usando controlador Bluetooth Arduino y Bluetooth Low Energy:
#include <SoftwareSerial.h>
SoftwareSerial HM10(2, 3); // RX = 2, TX = 3
char appData;
String inData = "";
void setup() {
Serial.begin(9600);
Serial.println("HM10 serial started at 9600");
HM10.begin(9600);
pinMode(13, OUTPUT);
digitalWrite(13, LOW);
}
void loop() {
HM10.listen();
while (HM10.available() > 0) {
appData = HM10.read();
inData = String(appData);
Serial.write(appData);
}
if (Serial.available()) {
delay(10);
HM10.write(Serial.read());
}
if (inData == "F") {
Serial.println("LED OFF");
digitalWrite(13, LOW);
delay(500);
}
if (inData == "N") {
Serial.println("LED ON");
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
delay(500);
}
}
4.6 App Escáner BLE Android
Para usar dispositivo Android con módulo BLE, descarga BLE Scanner para móvil. Enlace.
Inicia app, concede permisos Bluetooth y ubicación. Escanea dispositivos; el Bluetooth LE 4.0 aparecerá bajo MLT-BT05. Código de emparejamiento: 123456789. Conecta y listo.
Conexión lista: clic en MLT-BT05 para más opciones → Custom Service. Opciones R, W, N. Para test, clic W para enviar 1 o 0 y manipular LED con tu Android.
5. Diferencias del HM-10 BLE con Otros Módulos
La diferencia significativa es la versión Bluetooth. Los ajustes de fábrica contienen todas las características Bluetooth 4.0, permitiendo transmitir hasta 24 Mbps con bajo consumo. Comparado con Bluetooth 2/2.1 (ej. HC-05), el HM-10 rinde mejor.
Módulo HC-05
Fuente: https://freesvg.org/1554744332
6. Conclusión
Hemos examinado extensamente las características del módulo HM-10. Ahora es fácil integrar Arduino en su configuración por defecto. Con una base y unos componentes más, puedes realizar tu proyecto sin complicaciones. Para más información, consultas o compra de componentes, contáctanos.
Tecnología Industrial
- Guía Profunda de Máquinas de Corte por Plasma CNC: Características, Beneficios y Aplicaciones
- Máquinas de Alta Velocidad: Características Clave e Impacto Industrial
- Dominando el Rectificado de Rodillos de Goma: Guía Profesional para Calidad Superficial Superior
- Bombas de agua de corriente continua: guía completa para uso doméstico e industrial
- Fundamentos del pistón: guía completa para ingenieros y entusiastas
- Desbloqueando UID: Una Serie de Tres Partes sobre Historia, Mandato y Futuro
- Domine Fishbowl Manufacturing: Atajos Esenciales para el Módulo de Orden de Fabricación
- Módulo BOM de Fishbowl: Atajos Esenciales para Producción Rápida
- Domine el Grupo de Módulos de Manufactura: Lista de Materiales y Gestión de Órdenes
- Lenguaje de programación C: Visión general completa
- C#: Visión General del Lenguaje de Programación Moderno de Microsoft