Los módulos de bluetooth HC-05 y HC-06 son módulos muy populares para aplicaciones con microcontroladores PIC y Arduino.
Se trata de dispositivos económicos y que habitualmente se venden en un formato que permite insertarlos en un protoboard y cablearlo directamente a cualquier microcontrolador, incluso sin realizar soldaduras. En esta entrada del blog vamos a explicar un poco del funcionamiento de estos módulos y como configurarlos. También abordaremos las diferencias entre el HC-05 y el HC-06.
En la foto de portada del artículo vemos de izquierda a derecha: los módulos HC-05 y HC-06 en formato amigable para protoboard y un módulo HC-05 en formato compatible con zócalos para Xbee (módulo bluetooth bee).
Módulo Bluetooth HC-05
El módulo de bluetooth HC-05 es el que ofrece una mejor relación de precio y características, ya que es un módulo Maestro-Esclavo, quiere decir que además de recibir conexiones desde una PC o tablet, también es capaz de generar conexiones hacia otros dispositivos bluetooth. Esto nos permite por ejemplo, conectar dos módulos de bluetooth y formar una conexión punto a punto para transmitir datos entre dos microcontroladores o dispositivos. En otro artículo posterior veremos como configurar dos módulos HC-05 para que se enlacen entre ellos y podamos transmitir información de un punto a otro.

El HC-05 tiene un modo de comandos AT que debe activarse mediante un estado alto en el PIN34 mientras se enciende (o se resetea) el módulo. En las versiones para protoboard este pin viene marcado como “Key”. Una vez que estamos en el modo de comandos AT, podemos configurar el módulo bluetooth y cambiar parámetros como el nombre del dispositivo, password, modo maestro/esclavo, etc.
Para comunicarnos con el módulo y configurarlo, es necesario tener acceso al módulo mediante una interfaz serial. Podemos usar un arduino con un par de cables (aprovechando el puente USB-Serial del Arduino), un kit para XBee o un simple MAX3232 en el puerto serie de la PC. Para este artículo estaremos usando un módulo Bluetooth Bee Pro que comercializamos en nuestra tienda web, así como una interfaz USB-Serial con socket Xbee “Foca” que también vendemos. Este es el hardware que utilizamos en nuestro taller, pero también es posible hacer los ensayos con el módulo HC-05 suelt0 o en formato para insertar en el protoboard sin mayor problema.

Diferencias HC-05 vs HC-06 y como identificarlos
Muchas personas y tiendas en internet venden el HC-06 y HC-05 como un mismo módulo, muchas veces uno pide un HC-05 y terminan vendiéndoles un HC-06. Esto se debe a que esencialmente el hardware es el mismo para ambos módulos. La única diferencia real es el firmware que viene cargado de fábrica. De hecho, si tenemos paciencia, podemos convertir un HC-06 a un HC-05 nosotros mismos con solamente cambiar el firmware de los módulos, pero quedas advertido: ¡Hay que construir la interfaz de programación!
Existen unos módulos aptos para insertarse en el protoboard que nos permiten una fácil identificación del módulo soldado antes de comprar. En estos módulos, los HC-05 normalmente tienen dos pines extra (además de TX, RX, VCC, GND) etiquetado como “Key” y “State”. El pin “key” es necesario para entrar al modo de comandos AT en el módulo HC-05 (pin 34) y por lo tanto, solo se instala cuando el módulo de bluetooth a bordo es un HC-05. También podemos identificar si se trata de un HC-05 por la forma en que se identifican con otros dispositivos bluetooth: El HC-05 se identifica como “HC-05”, mientras que el HC-06 se identifica como “Linvor” o “HC-06”.

Interfaz de configuración de comandos AT en HC-05
El puerto serie en modo de configuración para el HC-05 debe configurarse de la siguiente manera: 34800 bps, 8 bits de datos, Sin paridad, Sin control de flujo. Para entrar al modo de comandos AT seguimos los siguientes pasos:
- Poner a estado alto en el pin 34 (PIO11)
- Conectar la alimentación del módulo (o resetearlo de preferencia)
- Enviar un comando AT\r\n para comprobar que estemos en modo de comando AT.
La siguiente lista es una compilación de los comandos que consideramos importantes
- AT\r\n Comando de prueba, debe responder con OK\r\n
- AT+ROLE=1\r\n Comando para colocar el módulo en modo Maestro (Master)
- AT+ROLE=0\r\n Comando para colocar el módulo en modo Esclavo (Slave)
- AT+VERSION?\r\n Obtener la versión del firmware
- AT+UART=115200,1,2\r\n Configurar el modo de funcionamiento del puerto serie en “modo puente”
- AT+PIO=10,1\r\n Colocar el pin de IO de propósito general a nivel alto
Existen otros comandos AT que están documentados en la hoja de datos que proveen nuestros amigos de iTeadStudio. Podemos encontrar la hoja de datos (datasheet) del HC-05 en la siguiente dirección:
http://biblioteca.geekfactory.mx/Bluetooth_Bee_Pro/datasheet_hc-05.pdf
Es importante notar que al módulo HC-05 no le agradan los caracteres \r o \n sueltos al finalizar un comando. Siempre debemos mandarle \r\n para finalizar cada comando, por lo que debemos configurar nuestro programa de terminal serial para que siempre envíe \r\n al final de cada linea. Si utilizamos el “Monitor Serial” del IDE de arduino hay que configurarlo de la siguiente forma:

Interfaz de configuración de comandos AT en HC-06
El HC-06 tiene un firmware distinto y también un funcionamiento distinto en cuanto a su modo de configuración. Para poder configurar el HC-06 es necesario que este NO este emparejado ni siendo usado por ningun dispositivo. De igual forma que el HC-05 es necesario conectarlo a la PC y usar un programa de terminal para darle instrucciones de configuración (Comandos AT), aunque también podemos escribir un programa de arduino o en un microcontrolador para configurarlo.
Para conectarlo con la PC utilizamos un adaptador USB serial como se muestra en la foto:

El módulo HC-06 acepta un set muy básico de comandos (algo raros por cierto), que permite pocas configuraciones, pero que sin duda será util para personalizar este económico módulo y configurarlo para satisfacer las necesidades de la aplicación.
Los comandos que soporta son:
- Prueba de funcionamiento:
- Configurar el Baudrate:
- Configurar el Nombre de dispositivo Bluetooth:
- Configurar el código PIN de emparejamiento:
- Obtener la version del firmware:
Si ya hemos trabajado con comandos AT observaremos que los comandos estan lejos del estándar, lo más obvio es que:
- No es necesario finalizar el comando con \r\n, pero si es necesario ingresar los comandos con todos los caracteres seguidos sin pausas. NO hay necesidad de dar “enter” para finalizar un comando. El modulo tiene un Temporizador que hace necesario introducir el comando de una sola vez, sin pausas entre los caracteres.
- Por lo anterior, si utilizamos un emulador de terminal hay que pegarlos en leste y no escribirlos uno a uno con el teclado. También podemos usar el “monitor serial” de Arduino configurado como se muestra en la imágen más arriba en este artículo.
- Hay que tener cuidado de introducir TODAS LAS LETRAS DEL COMANDO en MAYUSCULAS, ya que de lo contrario, no funcionarán.
- Las respuestas no parecen respuestas estándar a comandos AT.
Conexión básica con Arduino
Las conexiones para realizar con arduino son bastante sencillas. Solamente requerimos colocar como mínimo la alimentación y conectar los pines de transmisión y recepción serial (TX y RX). Hay que recordar que en este caso los pines se debe conectar cruzados TX Bluetooth -> RX de Arduino y RX Bluetooth -> TX de Arduino. La siguiente imagen muestra las conexiones básicas para que funcione el módulo:
En este caso estamos utilizando el hardware de UART, por lo que la comunicación con la PC no será posible. Para poder utilizar la UART para comunicarse con la PC mediante USB, es necesario utilizar un UART emulado por software, de manera que los pines de comunicación con el módulo bluetooth queden en pines distintos.
El código para la comunicación a través del bluetooth es idéntico al que utilizaríamos para comunicarnos con la PC vía USB. El siguiente ejemplo permite encender o apagar el led de la tarjeta arduino mediante el módulo bluetooth. El código funciona de la siguiente manera:
- Al envíar el caracter E, se pone en estado alto la salida del pin 13
- Al enviar el caracter A, se pone en estado lógico bajo la salida del pin 13
/************************* https://geekfactory.mx *******************************
*
* Sketch de prueba para modulos de bluetooth HC-05 y HC-06. Este programa puede
* controlar el led de la tarjeta arduino a través de la conexión bluetooth. El
* programa puede ampliarse para controlar una mayor cantiad de salidas.
*
* ESTE SKETCH USA EL PUERTO SERIE (UART), MISMO QUE ES UTILIZADO PARA
* LA COMUNICACIÓN USB. EL USO DE BLUETOOTH O USB ES MUTUAMENTE EXCLUSIVO
* (NO SE PUEDEN USAR AMBOS AL MISMO TIEMPO).
*
* PARA USAR LA CONEXIÓN USB Y BLUETOOTH AL MISMO TIEMPO ES NECESARIO EMULAR UNA
* UART POR SOFTWARE.
*
* El funcionamiento es sencillo:
*
* Enviar un caracter 'A' para encender el led
* Enviar un caracter 'a' para apagar el led
*
*/
char rxChar; // Variable para recibir datos del puerto serie
int ledpin = 13; // Pin donde se encuentra conectado el led (pin 13)
// Configurar el arduino
void setup()
{
// Pin 13 como salida
pinMode(ledpin, OUTPUT);
// Comunicación serie a 9600 baudios
Serial.begin(9600);
}
// Ciclo infinito, programa principal
void loop()
{
// Si hay datos disponibles en el buffer
if( Serial.available() )
{
// Leer un byte y colocarlo en variable
rxChar = Serial.read();
// Procesar comando de un solo byte
if( rxChar == 'A' )
{
digitalWrite(ledpin, HIGH);
Serial.println("ON");
}
else if ( rxChar == 'a' )
{
digitalWrite(ledpin, LOW);
Serial.println("OFF");
}
}
// Podemos hacer otras cosas aquí
delay(100);
}Conclusión
Como podemos observar, los módulos HC-05 y HC-06 son bastante sencillos de configurar para usarse con el microcontrolador de nuestra preferencia. El HC-06 es el modelo más sencillo, presentando menos opciones para su configuración, pero siendo bastante util y económico para conectar nuestros dispositivos con microcontroladores a la PC, tablets, celulares, etc. El HC-05 por otra parte, nos permite hacer algunas cosas que su hermano menor no permite, como enlaces punto a punto entre dos módulos y también teniendo un juego de comandos más completo y un poco más “formal”, con algunas características interesantes como el control de pines de GPIO.
Ambos módulos son excelentes para proyectos escolares, de investigación e incluso para su integración en equipos o prototipos en el campo profesional, sin embargo, hay poca documentación formal. Esperamos que este artículo sea de utilidad para comprender mejor el funcionamiento y la configuración inicial.









Hola.
¿El HC-06 puede conectarse a un iPhone o iPad?
no
Puedo conectar dos o más móviles a un solo modulo hc-05.
Yo necesito conectar 100 dispositivos aproximadamente pero no se cuanto es lo máximo o como se modifica el protocolo Bluetooth, tengo entendido que se pueden conectar muchos dispositivos, pero el fabricante lo diseña solo para que se conecten de forma mínima de uno a uno y creo que la máxima cantidad son 8 dispositivos,
Cuantos dispositivos esclavos se pueden conectar con el maestro ? Esto para construir una red centralizada
Hola buen dia. Es solo uno por vez. Si deseas hacer una red inalámbrica tipo estrella, checla la hoja de datos del radio NRF24L01+ que vendemos en nuestra tienda virtual.
Saludos soy nuevo en arduino, me recomiendas comprar un hm-10 ? Que diferencias hay entre el hm10, hc08, 06 y 05 cual es el mejor? Saludos, tu sitio está genial para los vamos comenzando, gracias.
El modulo HM-10 es para iphone y los HC son para android
HM-10 es mucho mejor, mejor rango y la autoconexion es posible, si puedes compralo, es mucho superior al HC05 y 06, obviamente no es solo para iphone tambien para android solo cambia la version, es BT4.0 y el HC05 es BT2.0 es mucho inferior
Buenas tardes, tengo el modulo bluetooth hc_06 maestro, pero lo necesito como esclavo. Alguien me dice que podría hacer o una sugerencia.
Lei que se puede cambiar el firmware con el hc_05 eso seria muy util.
Por favor es muy importante, agradezco de ante mano a los colaboradores.
Gracias.
Buenas noches, tengo una grannnnn duda, hemos estado trabajando en un proyecto con arduino modulo bluetooth y muchas cosas mas, pero resulta que no tenemos la pieza correcta del Bluetooth el que tengo es un Sparkfun RN-42 que es de color rojo, y la verdad he probado de mil maneras para que este no quede como una compra inncesesaria ya que nos costo 31$, la opcion viable es que pedire la de este blog porque ya hize las pruebas con este bluetooth y todo bien, pero el problema es ese de Sparkfun, pienso es una perdida de tiempo y dinero, ya que he buscado y no encuentro nada parecido para que me saque de la duda
Una pregunta, ¿alguien sabe si el Hc-05 se puede utilizar como modulo de audio bluetooth?
Buenas noches, quisiera saber si saben por qué cuando hago el test de los comandos AT reconoce casi todos, es decir, si pongo AT me devuelve ok con AT +PSWD me devuelve la contraseña, sin embargo si pongo AT+NAME no hace absolutamente nada pero si intento cambiar el nombre si deja, la verdad no se que es y ya probé poniendo el signo de interrogación y nada. Gracias
Hola amigo, te agradecería y me dieras una luz con el siguiente problema: tengo un HC-05 conectado a un módulo GPS cuyo propósito es enviar los mensajes (NMEA) generados por este último hacia el computador; cuando emparejo mi computador con el HC-05, se crean dos puertos COM virtuales, uno de salida(COM4) y uno de entrada (COM5) de datos, supuestamente el puerto de salida (COM4) es el que permite que el software del computador (ArcGIS) pueda leer los mensajes que provienen del GPS, sin embargo cuando intento conectarme a ese puerto obtengo un mensaje de error. Lo curioso es que si utilizo el monitor serial de Arduino, se conecta sin problemas al puerto y puedo ver que está llegando información, pero si utilizo un programa diferente, el puerto deja de funcionar y se bloquea. Tanto el GPS como el HC-05 los configuré a 9600 baudios. Saludos y felicitaciones por el tutorial.
Buenas tardes Mauricio, me pregunto si ya pudiste realizar el envio de datos del gps por medio del bluetooth, en este momento estoy haciendo algo parecido y no he logrado realizar dicha conexion
hola necesito que puedan subir la foto de la conexion cargo la pagina pero nose puede ver…por favor de agradeceria mucho saludos
Buenas.. Yo tengo un problema. Por que no me da el nombre, ni el pass? tampoco me funciona BAUD..Me responde ok a AT y a VERSION. El Role y ADDR tambien me funcionan. Pero otras cosas no. Gracias y Saludos.
Tengo una duda. La verdad quiero mover dos motores con el arduino y tambien con bluetooth. Siendo sincero ya tengo el programa pero no puedo hacer que las me prendan unos leds como prueba. Podrias revisar mi codigo y ver que le falta para que de las senales? La aplicacion que uso es bluetooth rc control
#include
int bluetoothTx=1;
int bluetoothRx=0;
SoftwareSerial bluetooth(bluetoothTx,bluetoothRx);
char MANDO;
void setup(){
pinMode(13,OUTPUT);
pinMode(4,OUTPUT);//uno al motor 1 directa
pinMode(5,OUTPUT);//uno al motor 1 inversa
pinMode(6,OUTPUT);//uno al motor 2 directa
pinMode(7,OUTPUT);//uno al motor 2 inversa
Serial.begin(9600);
bluetooth.begin(9600);
Serial.println(“Conectado”);
}
void CCW_1(){
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
}
void CCW_2(){
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
}
void CW_1(){
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
}
void CW_2(){
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
}
void paro_mocte(){
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
}
void loop() {
if(bluetooth.available()){
MANDO=bluetooth.read();
bluetooth.print(MANDO);
Serial.print(MANDO);
if(MANDO>= ‘F’ && MANDO =’L’ && MANDO <='R'){
if(MANDO=='L'){
CCW_1();
CW_2();
}
if(MANDO=='R'){
CW_1();
CCW_2();
}
}
if(MANDO=='S'){
paro_mocte();
}
}
}
Buenas…cual es el articulo en el cual se va a ver como configurar dos modulos HC-05 para que se entrelacen entre ellos y puedan transmitir datos es que lo estoy ocupando para un proyecto..gracias y muy buen articulo..
Muy buen Articulo :) Gracias
Se agradece mucho tu comentario, saludos!
No sabes de que manera puedo amplificar el alcance de mi HC – 06
? saludos.
Me temo que no es posible hace mucho, tal vez debas utilizar otra tecnología como radios Xbee que también funcionan vía UART. También podrías probar con la siguiente modificación:
http://www.instructables.com/id/Increase-and-extend-the-range-of-a-USB-Bluetooth-d/
Muchas gracias, fue de utilidad.
Me alegra saberlo, saludos!
ERROR
En la línea 37 del código que aparece en esta página hace falta la comparación dentro del “if” .
if( Serial.available() ) que en realidad debería de llevar un mayor a 0.
es decir:
if( Serial.available() >0 )
Serial.available() viene devolviendo un valor falso o verdadero… no un valor numérico.
Saludos :)
Buenas tardes.
Serial.Available devuelve el número de bytes disponibles en el buffer serial. Las dos formas que mencionan son equivalentes dado que C y C++ consideran cualquier entero diferente de 0 como verdadero. El valor de serial.available solamente importa si queremos conocer con exactitud cuantos datos hay. Por ejemplo:
uint8_t i;
//Obtenemos el total de datos en buffer
uint8_t datos = Serial.available();
// Ciclo para leer y reenviar los datos
for(i=0; i<datos; i++)
Sin embargo parece poco práctico y conveniente de esta forma.
buen dia
intento hacer la comunicación entre dos placas de arduino UNO por medio de un BTBee hc-05, tengo la Xbee shield v1.1, como puedo configurar los hc-05 como maestro/esclavo? saludos
Los que tenéis el módulo con el pin EN y sin botón, para entrar en Modo AT debéis conectar un cable de la salida de 3,3V (arduino) al pin34 del módulo bluetooth. En mi caso el HC-05 viene con un plástico de protección, tan solo hace falta introducir un cable macho para que haga contacto con el pin. De esta manera no hacen falta pinzas ni soldaduras, se sostiene por si solo. Recordad también en cruzar los pines TX y RX. A parte de esto y la conexión a 5V no hacen falta más cables ni inicializar ningún pin en modo High.
Acto seguido de verificar la conexión y que estamos en modo AT se puede desconectar el pin34 del Voltaje y seguir operando.
Creo que es la solución más práctica de todas. Un Saludo
Hola , hice un proyecto con el H05 y Leonardo, pero no puedo conectar mi celular con el Bluetooth, lo sincronizo, ero nunca se establece la conexión, la configuración que uso es la misma que muestras, pero sin éxito. como puedo saber que esta fallando
Información bastante útil. Gracias por compartirla.
Buen día
Actualmente estoy haciendo un puente levadizo con dos secciones que se abren y cierran con dos motores de corriente continua y desde bluetooth controlo que cada seccion se abra o se cierre con un programa llamado APP INVENTOR (es el que permite crear la aplicacion en android, buen creo que tienes conocimiento de él) el lio es este, mi profesor quiere que yo controle las secciones del puente desde varios celulares, por ejemplo un celular abre la sección 1 del puente y el otro celular abre la sección dos, te quería preguntar, ¿es eso posible? ¿el modulo HC – 05 (con pulsador en mi caso) puede recibir la conexión de varios celulares para controlar mi programa en arduino?, agradezco infinitamente tu ayuda y tus tutoriales.
daniel tienes un link para ver tu proyecto?
Buenas tardes,
Siguiendo el tutorial he conectado el modulo HC-05 con arduino uno, pero al enviar los comandos en lugar de obtener como respuesta OK, salen una seria de caracteres como estos
Enter AT commands:
ϧ†…
Que estará pasando?
¿Has conseguido saber que es lo que estaba ocurriendo?
debes tener mal configurado los baudios en el monitor serial
Hola a todos, quiero conectar el HC5 al dsp30F4011 pero no encuentro los comandos para incluirlos en el programa.
Gracias de Antemano
en mi pais el modulo y la placa adaptadora vienen por separado sin soldar mi pregunta es si un arduino shield bluetooth esclavo me funcionaria igual que un modulo hc o6 esclavo
Hola, encontré muy interesante este tema pero tengo un problema, yo tengo un HC-05 pero no me hace nada, cuando está en modo AT y escribo en el monitor serial “AT” se supone que me debería responder “OK” pero no lo hace, cada vez que le escribo una orden no me responde ¿que podría estar mal? espero me puedan ayudar, saludos.
Hola, después de pelear toda una noche mi compañero y yo con el HC-05,tengo una duda… todo me funciona perfecto, pero al enviarle AT+NAME no me responde nada. Sin embargo, me deja cambiarle el nombre al dispositivo. Alguien sabe donde me estoy equivocando? Muchas gracias
creo que te falta este signo al final del NAME?
Amigo como puedo cambiar el Firmware de un HC 06 a un HC 05?
yo igual estoy en ese problema.
Pudiste solucionarlo????????????
alguien sabe el codigo de android para enviar datos al arduino por ejemplo escribir en el telefono hola y en la pantalla de arduino muestre esa cadena mandada por el telefono
prueba con una app que se llama blueterm.
Hola, Alguien sabe como utilizar el hc 05 para una comunicacion mastro esclavo con un pic 18f4550?
Es decir, que un solo pic resiva y transmita datos por medio del hc 05
Hola estimado amigo.
Te recomiendo que revises el siguiente artículo en la página de nuestros amigos de http://www.aquihayapuntes.com:
http://www.aquihayapuntes.com/indice-practicas-pic-en-c/bluetooth-hc-05.html?start=3
Si te puedo apoyar con algo, por favor indicame, ya que yo estoy preparando un articulo relacionado para nuestro blog.
Saludos.
Hola, Gracias por responder tan rápido.
Mira lo que intento hacer es que por medio de una terminal Bluetooth en Android (BlueTerm) enviar datos al pic 18f4550 y que según lo que envié, el pic realice una cierta actividad. después de realizar la actividad que me envié a la terminar Blueterm los resultados de lo que hizo.
Un ejemplo podria ser que yo controle un motor con Blueterm, envio las ordenes de arrancar el motor al pic, o de cambiar el giro, despues de que el pic realice esto entonces envia una respuesta a el Blueterm dándome las rpm, el consumo energetico, tiempo que tiene operando Etc Etc.
algo asi es lo que quiero hacer que UN SOLO PIC envie y reciva datos. y eso es con lo que estoy teniendo problemas
Pensé en usar un maestro y esclavo pero necesitaria 2 modlos Bluetooth y por consiguiente dos conexiones, 2 pic, 2 terminales Etc. Y la idea es utilizar solo uno.
Espero haberme explicado y no haberte agobiado con tanto texto.
En fin muchas gracias y espero tu repuesta.
Hola buenas, no os imaginais cuanto se agradece la información sobre el tema.
Estamos intentando conectar un modulo Xbee HC-06 con el mismo aspecto que mostráis aquí a la placa Arduino UNO, pero por lo que hemos visto, se requiere una especie de adaptador o una shield para anclar el modulo al Arduino y todo eso dispara el presupuesto.
Se podría conectar de otra forma directamente a la placa o mediante protoboard o no es posible? Desconocíamos la peculiaridad de los módulos XBee.
Gracias por adelantado!
Buenas tardes.
Quisiera comentarte que si es posible conectar
directo el bluetooth bee, aunque posiblemente deberás agregar algunos
cables soldados o conseguir los headers especiales para el módulo y el
resultado puede no ser tan agradable a la vista, ya que como habrás
visto los headers no so estándar.
Puedes usar la salida de 3.3V
del Arduino y un pin de GND para la alimentación del módulo. Por otra
parte, en el pin TX del Arduino que va a RX del módulo bluetooth deberás
agregar cuando menos un divisor resistivo que recorte los 5 volts del
pin a 3.3V que requieren los módulos de bluetooth. Para el pin RX del arduino que viene de TX del Bluetooth no hace falta poner nada, ya que el
arduino reconoce los 3.3V como estado “alto”.
Si no me he logrado explicar, con gusto puedes preguntar otra vez para ser más específico.
Hola buenas, muchas gracias por la respuesta.
Hemos realizado las conexiones como comentaste, nos hemos apañado con el divisor resistivo de TX Arduino a RX de Bluetooth, aunque midiendo tensiones este pin (TX Arduino) nos daba 4V no se muy bien por qué (el resto de pines si que nos dan 5V).
De todas formas de momento parece que OK.
Gracias de nuevo!
Hola:
Que bueno que funcionó :). Prueba con resistencias de 330 y 220 ohms. La de 330 debe ir conectada a tierra y la de 220 debe ir al pin TX de arduino. De esa forma el valor del voltaje debería rondar los 3 volts. El menor voltaje puede deberse a que están demandando mucha corriente del pin.
Saludos.
Hola de nuevo.
Si, seguramente sea eso, gracias por la sugerencia.
Aunque hemos conseguido conectar y vincular el módulo con dispositivos Android (nuestro proyecto tiene que ver con este tema) hemos probado ya con varios códigos de Arduino pero no conseguimos enviar comandos a través de este solo para probar si funciona.
Hemos probado con programas como BlueTerm o Bluetooth Terminal pero, aunque la app se conecta con el módulo, no recibimos respuesta de las órdenes que enviamos, incluso hemos elaborado una app en AppInventor. De momento solo buscamos encender un LED.
Los códigos de Arduino que hemos mirado parece ser que funcionan con los hc-06 y hc-05 más típicos (los adaptados a Arduino me refiero).
Pensábamos que el problema podía venir de los baudios (según explica en este enlace sobre las características del módulo el “4” corresponderia con 9600 y no el “1” como suele ser habitual: http://www.elecfreaks.com/wiki/index.php?title=Bluetooth_Bee#AT_command_set.28HC-06.29) pero hemos cambiado la configuración y sigue sin funcionar…
Eso sí podemos cambiar password y name perfectamente (baudios suponemos que también pero no podemos observarlo directamente claro).
Cómo podríamos testear nuestro módulo de alguna forma para saber si puede recibir y enviar datos (mejor aun en Android)?
Nos preocupa que este XBee pueda plantear diferencias con el resto.
Recuerdo conexiones (módulo/Arduino): GND a GND, VCC a 3,3V, DOUT (TX) a RX, DIN (RX) a TX.
Gracias de verdad por la ayuda, cuesta encontrar buena info y colaboración sobre el tema.
yo tengo ese mismo problema, al intentar mandar un caracter no lo reconoce el y por lo tanto no manda la orden, alguna ayuda??
Probad a cambiar los cables en el arduino, el de la entrada 0 por el 1 y el de la entrada 1 por el 0. Yo me volví loco y resulta que era eso, al intercambiar los cables ya pude recibir los carácteres en el smartphone.
Si os fijais en el esquema que hay más arriba de la conexión básica encontrareis que la salida rx del modulo bluetooth va conectada a la entrada marcada en la placa como TX (entrada 1), y el tx del bluetooth va conectado la entrada 0, que en la placa va marcada como RX. Quizás eso os haya inducido al error, como fue mi caso.
1saludo.
Ya está. Perdon las molestias.
Saludos!
¡Enhorabuena! ¿nos vas a contar por que no funcionaba?
Los baudios a los que estaba configurado y los que le pedíamos en el código Arduino no coincidan ahí la no transmisión de datos.
Saludos!
buenas tardes, com sería la configuración para enviar datos desde un arduino con modulo bluetooth hc-05 a una pc, es decir, desde el arduino con bluettoh, enviar caracteres al bloc de notas de una laptop que tiene un bluetooth interno, saludos.
Hola.
Si requiere importar los datos a algun programa, le recomiendo que instale un programa de emulación de terminal como hyperterminal (retirado de windows), realterm, termite, etc. Y copie y pegue los datos desplegados al programa de su elección. En este caso, deberá configurar el programa de terminal con los datos del puerto serie virtual creado cuando se conecta el bluetooth a la PC. Desde el arduino, puede usar Serial.println(valor); para imprimir en una nueva linea de texto cada nuevo dato.
Si tiene dudas, con gusto podemos elaborar más en el tema.
MI HC-O5 NO TIENE EL PIN KEY, DICE EN.
ES LO MISMO O SE OCUPA DIFERENTE.
Hola.
Normalmente si no se tiene el pin key quiere decir que el firmware cargado el el módulo de bluetooth es el de esclavo solamente, por esta razón no se conecta el pin Key. En este caso debe ceñirse a las recomendaciones para HC-06 de esta página, ya que muy probablemente tenga un HC-06 y no un HC-05.
Le recomiendo de cualquier forma que pruebe, no pierde nada con tratar de conectar como si fuera el pin key.
Saludos.
Disculpa tengo un HC-05 estaba trabajando normalmente con mi BT decidí hacer cambios a BT de velocidad menor a 2400 y al restablecer el modulo y querer hacer la config original solo me responde el comando AT demás para configurar me manda ERROR(0) que puedo hacer………….le agradeceré su ayuda…
pndts
¿Ya revisó que este mandado ambos “\r\n” al final de cada comando? Como menciona el artículo a estos módulos no les agrada otro fin de linea que no sea “\r\n”.
Hola estimado, muy buena infoo, le hago una consulta, si desea enviar por ejemplo una pagina web a un celular por bluetooth se puede con este modulo?
Gracias.
La información que se transfiere puede ser cualquiera, includo HTML para una página web. El problema es que va a requerir sofware especial en ambos lados (servidor y/o telefono/tablet) que este hablando sobre RFCOM y bluetooth, lo que posiblemente no es lo que busca, ya que seguramente no existe un software creado para este propósito (tendría que crearlo usted).
excelente amigo
Hola! Hace unos días compré un modulo supuestamente HC-06 con la tarjeta JY-MCU; he tratado varias configuraciones pero ni siquiera es posible encontrar el modulo con ningún dispositivo (PC, 3 celulares distintos); la verdad no se que hacer, estaré haciendo algo mal? para emparejar el dispositivo es necesario que solo esté alimentado o es necesario que tenga algún tipo de conexión?
Buenas tardes. Tengo el mismo problema con el hç06 master no logro vincularlo con ningún dispositivo celular ni PC. Solo logro que alguna vez lo vea. Pero nunca pude vincalarme.
¿Adqurió su módulo en nuestra tienda? Si es así por favor contáctenos para darle el soporte necesario y si se requiere enviarle un módulo nuevo. De lo contrario pruebe a contactar a su vendedor y lo siguiente: Revise sus conexiones de corriente y tierra al módulo. Compruebe que esta introduciendo las claves correctas a su módulo, lo más común es que sea: “1234” o “0000”. Si ya fue usado por alguien más es posible que ya hayan cambiado la clave y deba entrar en modo AT como se describe en el artículo y volver a asignar el PIN.
Estoy configurando un hc 05, al enviar “at” me responde O K. al cambiar el nombre ocurre de la misma manera responde OK y el nombre cambia, pero al tratar de enviar otros comandos la casilla de recepción queda recibiendo error (0) muchísimas veces hasta que se tilda y tengo que apagar el modulo. Tengo Windows 7 y un usb-serial profilic Manhattan. Gracias espero respuesta
Estimado Amigo Francisco.
¿Has comprobado si tu programa de emulación de terminal esta enviando ambos caracteres “\r\n”?. Esto me pasó si solo enviabas uno de estos dos caracteres de control. Debes enviarlos ambos para que el módulo acepte los comandos correctamente.
Espero tus comentarios, saludos.
sres recien estoy aprendiendo arduino Leonardo, alguien tiene algun link donde salga el diagrama con sensores y el programa se los agredecia mucho Alex Pinto