# Modulo bluetooth hc-06



## eneko166 (Mar 11, 2012)

Me he comprado un modulo Hc06 y queria saber si es posible conectarlo a un 16f84 (es el pic con el que mas familiarizado estoy), de no ser asi, por que? Si me pudierais enviar el modo de programarlo (lo que he visto en internet no me ha servido de gran ayuda), y la conexion con el microcontrolador... muchas gracias gente. saludos.
Pd: quizas esta otra pregunta es mas de pelicula que otra cosa pero bueno, odio quedarme con la duda, es posible enviar imagenes de una camara cmos, por bluetooth a un dispositivo con android (pongamos un movil por ejemplo) a tiempo real??


----------



## cfede1984 (May 5, 2012)

Hola, sabes donde conseguir el modulo HC-05 o HC-06 en Argentina? 
Saludos,

Federico


----------



## Moyano Jonathan (May 6, 2012)

> Hola, sabes donde conseguir el modulo HC-05 o HC-06 en Argentina?
> Saludos,
> 
> Federico



Lo venden en mercado libre o lo podés comprar a china a través de Ebay.

Saludos !


----------



## xmatrix (May 6, 2012)

claro que si se puede usar amigo  , ya que dicho mudulo implementa una coneccion uart y esta la soporta tu pic no de manera nativa pero con ccs podras emular dicho puerto y establecer conexion bidireccional


----------



## josexremix65 (Oct 16, 2013)

Tengo pensado usar un HC-06 para un proyecto, tengo una laptop con bluetooth instalado, seria posible emparejar el modulo con la pc? y de ser posible, como comunicaria el pic y la pc mediante un programa en VB6? muchas gracias.


----------



## StrySG (Oct 17, 2013)

Depende que HC-06 tengas,
Si es el HC-06 esclavo la pc y el módulo se podrán emparejar sin problemas, ahora si es el HC-06 maestro me temo que no será posible hasta donde yo se.

Primero sugiero que revises la documentación del módulo y envíes comandos AT del uc al HC-06. Esos los encontrarás en la hoja de datos del HC-06 o en este documento:
HC-0305 serail module AT commamd set 201104 revised.pdf
No tengo el link pero búsca un poco ese documento  lo encontrarás.
Verás que es muy sencillo emparejar el HC-06 o HC-05 con otro módulo bletooth o PC, se resume en configurar la comunicación vía comandos AT, y establecer la contraseña de emparejamiento tanto en la PC como en el HC-06.


----------



## josexremix65 (Oct 18, 2013)

Muchas gracias, la cosa es que tengo un sistema que funciona mediante comunicacion serial, pic y pc, funciona muy bien, en la pc uso VB 2010, queria saber si podria adaptarlo al bluetooth con un HC-06 o mejor un 05 para que sea esclavo, se pueden comunicar serial de esa manera? gracias.


----------



## BKAR (Oct 18, 2013)

si ya tienes un *sistema* en VB--> solo has que funcione el mismo sistema, pero con el COM generado por el Computador para comunicarse exclusivamente con el HC-06, esto lo haces en la configuracion del bluetooh desde windows, agregas un puerto COM.. y estableces la PC como saliente(, la PC como host.. quien inicia la comunicacion).. ya que el HC-06 es esclavo(aunq depende de la version del linvor), y si tuvieras el HC-05, podrias hacerlo en modo host.. pero el HC-05 debe buscar al Computador..
de todas maneras, generas un COM en el computador..y a partir de ahi es como si comunicaras con un cable serial.. pic - pc


----------



## Mushito (Jul 5, 2017)

No logro configurar mi modulo HC 06, he probado muchisimos tutoriales de la web. Tal vez será por los niveles de voltaje TTL  y a 3.3 de bluetooth
Por favor ayudenme (el moderador me envió a usar el buscador, no importa que tan viejo sea el tema, por favor no lo cierren, no lo bloqueen)


----------



## Scooter (Jul 5, 2017)

Con los datos que das, ningún dato, no se te puede ayudar
Ya te he dicho que los niveles no son, porque va perfectamente con 5V

Supongo que habrás cruzado TX y RX


----------



## Mushito (Jul 5, 2017)

Si, con arduino nano, el tutorial del profe garcia, otros tutoriales que usan el monitor serie de arduino como hiperterminal (uso windows7 de mi laptop) con comandos AT. Probé con el modulo HC05 y HC06 con difernetes velocidades de transmision y nada.
Hoy probaré conectarme por los pines 1 y 2 de arduino UNO, para descartar las librerias de serial para evitar usar con otros pines. Estoy usando los modulos chinos que ya vienen soldados a las pcbs azules con sus respectivos pines para insertar al proto.d


----------



## Mushito (Jul 7, 2017)

Ya probé con un conversor USB a serial TTL a nivel 3.3v con hyperterminal y Termite3.3 a distintas velocidades y nada


----------



## D@rkbytes (Jul 7, 2017)

Yo he usado este tipo de adaptador con los HC-05 y funciona muy bien.
*Adaptador de niveles I2C bidireccional*


----------



## Nuyel (Jul 8, 2017)

Había pensado en probar con el UNO peeeero, yo tengo el modulo sin adaptador de nivel ya que lo uso con microcontroladores a 3,3V, así que mejor le paré antes de quemar algo.

¿Sí cruzaste las líneas adecuadamente (TX<=>RX)?
Si conectaste TX-TX y RX-RX no funcionará, debes cruzarlas.

¿Conectaste Key a VDD al mismo tiempo que la alimentación? eso da la configuración predeterminada a 38400bauds

¿verificaste la versión del modulo para el terminador?
el HC-05 requiere el terminador de retorno y fin de línea (en termite elijes Append CR-LF)el HC-06 no usa terminador (elijes Append nothing).

Esto es con mi HC-05 conectada a una LaunchPad directamente mediante el UART del debug.


NOTA: las líneas el UART del Arduino están etiquetadas para el ATMEGA de este, en caso de querer emplear los pines 0 y 1 para configurar el modulo, para el UNO recomendaría remover el chip, la otra opción simplemente poner los dos pines como entradas digitales, en este caso como la serigrafía es para el chip las líneas de la comunicación ya están cruzadas por lo que debes conectar TX a TX y RX a RX en paralelo como lo sería a la leyenda del Arduino, esto solo se hace para usar el puerto serie del Arduino desde la computadora, para que el ATmega programado tome control del bluetooth cruzas las líneas nuevamente.


----------



## Mushito (Jul 17, 2017)

No funciona, 
Como podría flashear, es decir ponerle otro firmware.
Alguien lo hizo?

Que pasa sí a su Rx del HC06 se conecta a pulsos de 5v? Se quema?


----------



## Scooter (Jul 17, 2017)

Yo siempre los he usado con 5V.
Es que soy así se salvaje.

Si tienes duda pon una resistencia


----------



## Mushito (Jul 18, 2017)

No funciona, he probado con muchos tutoriales y vídeo tutoriales y nada. Por eso pienso que se quemó, aun que el celular lo reconoce. Me falta probar cargando el firmware.


----------



## Scooter (Jul 18, 2017)

Si se empareja yo me atrevería a afirmar que si que va.


----------



## Nuyel (Jul 18, 2017)

Si viene solo el módulo se daña, pero la mayoría viene soldado en el adaptador que incluye las protecciones, yo uso el modulo solo ya que la LauchPad es a 3,3~3,6V.

Hay un tutorial de como flashearlo con el software de CSR y el puerto paralelo (debe ser nativo) la otra es adquirir el programador, pero igual hicieron un emulador y el código fuente está para la LaunchPad Stellaris, creo que hicieron las correcciones para usarlo en la Tiva C también. No recuerdo dónde estaba la información pero si he probado en la LaunchPad, para el software de CSR debes registrarte en su sitio de desarrolladores.


----------



## Mushito (Jul 24, 2017)

mmm ya voy consiguiendo mas info, lo hare por LPT1

https://translate.google.com/transl...th-module-parallel-spi-interface/&prev=search

https://translate.google.com/transl...6/bluetooth-module-firmware-dump/&prev=search

Me falta el archivo del firmware....

Sera posible editarlo con un editor de notas antes de cargarlo?


----------



## miborbolla (Jul 25, 2017)

Hola Mushito, creo que la "mejor" forma de saber que tu modulo hc-06 esta en buenas condiciones es la siguiente:

En tu modulo HC-06 vas puentear los pines RX y TX, con la finalidad de hacer un "eco"; esto es que todo lo que reciba el modulo por Bluetooth y de acuse por el pin TX se replique o regrese automáticamente al origen vía RX y por tanto al originario de la transmisión; de ahí que se llame un eco o echo.

Obviamente también requieres de alimentar el modulo HC-06 con su respectiva fuente de alimentación (3.3 volts).

Ya que comentas que tu celular lo reconoce, puedes usar en él algún software de "Terminal" (Android Terminal Emulator por ejemplo) y conectarte al Modulo HC-06  vía bluetooth (9600 bps y usando la contraseña "123"), una vez lograda la conexión, desde el software del Terminal deberías apreciar que todo lo que escribes se ve replicado (con ECO o repetido), si logras esto quiere decir que tu modulo funciona bien...si no lo logras quiere decir que tu modulo esta dañado en algún pin; ya sea el TX o el RX...esto es así de simple.

Esta prueba obviamente aplica usando una laptop con modulo Bluetooth  incluso una tableta.

Ojala comentes que lograste al respecto, ya que esta prueba es vital antes de pretender cualquier cosa.

Saludos


----------



## Mushito (Jul 27, 2017)

Gracias por responder.
Vi varios vídeos, que cuando pide contraseña para acceder ingresan el password por defecto, que es 1234 y luego el LED del módulo Bluetooth parpadea mas lento, eso no sucede con mi módulo y eso me hace sospechar del firmware ya que desde que lo compré no funcionó así áunque en el celular diga "conectado"


----------



## Scooter (Jul 28, 2017)

Eso es normal por completo.
Al emparejarlos deja de parpadear un momento y luego sigue. Como no serás haciendo nada con él se queda parpadeando hasta que alguien lo use.
Cuando pongas un programa y se establezca la conexión, entonces deja de parpadear.


----------



## Mushito (Jul 28, 2017)

Scooter dijo:


> Al emparejarlos deja de parpadear un momento



Pero ese momento no ocurre en mi caso, es normal?


----------



## Scooter (Jul 28, 2017)

¿No has dicho que cambia el ritmo del parpadeo? Pues eso


----------



## Mushito (Jul 28, 2017)

no cambia en mi modulo


----------



## Mushito (Jul 31, 2017)

miborbolla dijo:


> En tu modulo HC-06 vas puentear los pines RX y TX, con la finalidad de hacer un "eco"; esto es que todo lo que reciba el modulo por Bluetooth y de acuse por el pin TX se replique o regrese automáticamente al origen vía RX y por tanto al originario de la transmisión; de ahí que se llame un eco o echo.
> 
> Saludos



Logré hacer la prueba como dijiste, lo hice con BlueTooth Serial Controller y funcionó.

Entonces caben las siguientes interrogantes...
Por que no funciono directamente con comandos AT y arduino?
Porque no funciono con divisor de Tension?
Nesecito adaptador de nivel con compuertas logicas CMOS?

Gracias miborbolla


----------



## miborbolla (Jul 31, 2017)

Mushito dijo:


> Logré hacer la prueba como dijiste, lo hice con BlueTooth Serial Controller y funcionó.
> 
> Entonces caben las siguientes interrogantes...
> Por que no funciono directamente con comandos AT y arduino?
> ...



Vi que cuentas con un convertidor usb-serie ttl, pues ahora haremos exactamente lo mismo que hiciste con el modulo HC-06;  en tu convertidor usb-serie vas puentar tx con rx y desde el hyperteminal haces la prueba del "echo" para comprobar que tu usb-serial esta en buenas condiciones.

El objetivo de esta prueba es comprobar que en tu PC todo esta bien. Ahora bien, si logras tener el echo desde el hyperterminal entonces ya estamos a un pelo de pasar al ultimo punto, recuerda que desde el hyperterminal debes configurar el puerto a 9600 bps, 8 bits, paridad "ninguna", bits de parada 1 y control de flujo "ninguno".








Deberás tener como respuesta en el Hyperterminal, que todo lo que tecleas aparece en la pantalla.

Si hasta aquí todo va con éxito, entonces solo te resta lo siguiente:


Conectar entre si, los pines de GND o negativos de tus respectivos modulos.
Conectar TX del modulo HC-06 al RX del convertidor USB-Serial
Conectar RX del modulo HC-06 al TX del convertidor USB-Serial.
Alimentar con 3.3 volts el modulo HC-06.

Con esta conexión, lo que resta es abrir el *Hyperterminal* en tu PC y desde tu celular el *BlueTooth Serial Controller*, con las configuraciones de las pruebas anteriores y comprobar que lo que tecleas en el Hyperterminal se ve reflejado en el BlueTooth Serial Controller y viceversa.

Yo espero que con lo comentado logres con éxito tu propósito y despeje todas las dudas que tienes para poder pasar con mas confianza a conectar un microcontrolador o lo que consideres; si hasta aquí todo funciono bien, ya podrás desde el Hyperterminal dar comandos AT y ver reflejada su respectiva respuesta.

Saludos y espero tus comentarios.


----------



## Mushito (Ago 1, 2017)

Estoy con el software "Tera Term VT" configurado según mencionaste. y .....
recibe caracteres extraños desde el celular.

Que podría ser?
Nivel Lógico TTL? de 3.3v a 5V?


Como puedo saber a que velocidad  bps que envía el celular?

Con mi laptop envío algo y mi celular recibe ruido (caracteres extraños)
y mi celular se desconecta del dispositivo con frecuencia.


----------



## miborbolla (Ago 1, 2017)

Mushito dijo:


> Estoy con el software "Tera Term VT" configurado según mencionaste. y .....
> recibe caracteres extraños desde el celular.
> 
> Que podría ser?
> ...



No lo comentaste, pero supongo que la prueba de "eco" de tu usb-serial funciono ok.

Si es así, confirmarlo por favor, para ir descartando cosas.

Si todo funciono OK, quiere decir que  ya el hardward esta bien (no hay problemas de energía o de niveles TTL) , solo es problema de software (velocidad BPS.)

Tal como tienes conectado tu USB-Serial con tu HC-06, para saber que configuración tiene este ultimo; debes configurar con un jumper que lleve el pin 34 de tu modulo a "High Level" (3.3 V) para que el modulo HC-06 entre en modo AT. Observa la anotación al respecto de este pin que dice:

*PIN 34*

_Mode switch input. If it is input low level, the module is at paired or communication mode. If
it’s input high level, the module will enter to AT mode. Even though the module is at
communication, the module can enter to the AT mode if PIN34 is input high level. Then it will
go back to the communication mode if PIN34 is input low level again. _

*Aca te dejo el Link del Manual*

Manual de los modulos HC.

*Nota Importantisima.- Hay unos modulos que no requieren de este "Jumper" en el PIN 34, quizas sea tu caso, pero tampoco has compartido fotos de lo que tienes y esto podria a ser erratico si no hablamos del mismo modulo exactamente.
*
Ya que lleves a nivel alto el pin 34 del modulo, observa que debes encender el modulo con el pin 34 en alto ya de otra forma entra en modo "comunicación", entonces desde la PC podrás ejecutar comandos AT, obvio lo primero que debes hacer es teclear AT y enter, entiendase que debes terminar los comandos AT con los caracteres de ENTER y retorno de carro.

*Command structure: all command should end up with “\r\n” (Hex: 0X0D X0A) as the terminator. *

Así que asegúrate que desde el Hyperterminal o el software de terminal envié el "enter" y "nueva linea" ya que si no lo haces...el modulo nunca te dará una respuesta.

Mi estimado Mushito, te pido por favor seas un poco mas descriptivo en tus pruebas para que te podamos asistir de mejor manera.

Saludos


----------



## Mushito (Ago 1, 2017)

Estimado miborbolla:
Muchísimas gracias por tu brillante ayuda.
Mañana enviaré fotos, para ser más descriptivo. 

La prueba del eco USB TTL  funcionó por eso pasé al Psiguiente paso.

Cuándo logre  poner el módulo listo para configurar con comandos AT.  Con que velocidad pondré el terminal serial de mi laptop?
Existe alguna llave de velocidad que funciona?
Gracias, veo que revisas el foro por las noches.


----------



## Nuyel (Ago 2, 2017)

Te había comentado como funciona el modulo en su configuración predeterminada en mi respuesta, respecto a la velocidad de bauds del bluetooth realmente no importa mucho dado a que se realiza la transferencias por el rfcomm, en mi Lumia con Windows 10 no se programa al "Puerto serie", sino al endpoint del bluetooth y dado a que es un protocolo estandarizado el sistema lo gestiona, recuerda que en este punto es virtual el puerto, es saliendo del modulo que es importante configurar correctamente la velocidad.


----------



## Scooter (Ago 2, 2017)

Mushito dijo:


> Estimado miborbolla:
> Muchísimas gracias por tu brillante ayuda.
> Mañana enviaré fotos, para ser más descriptivo.
> 
> ...



Si es un HC06 9600 no necesita jumper
Si es un HC05 38400 creo. Si necesita jumper
¿Que es una llave de velocidad? Nunca he oído tal cosa


La velocidad *SI IMPORTA*, si no la pones bien *NO FUNCION*A. Los comandos AT se introducen por el puerto serie físico, nunca por el puerto serie bluetooth. Eso es de cajón por motivos de seguridad. Puedes cambiar el nombre y la clave, si lo haces en el cananl físico es que tienes acceso al módulo y "es tuyo", si lo haces por bluetooth puedes ser "uno que pasa por ahí"

Busca por internet, no veo a que viene tanto drama, ahora ni me acuerdo pero cuando busqué todo esto lo encontré con bastante rapidez, no era tan complicado.


----------



## Mushito (Ago 2, 2017)

Scooter dijo:


> Busca por internet, no veo a que viene tanto drama, ahora ni me acuerdo  pero cuando busqué todo esto lo encontré con bastante rapidez, no era  tan complicado.



No creas que no lo hice.

Es un problema cuando no funciona al primer intento, ni al enésimo  intento luego de haber consultado muchos tutoriales y video tutoriales,  no es un show o un drama.

Logré comunicar con la PC y android


----------



## Mushito (Ago 3, 2017)

Conecto KEY (de mi modulo HC 06) a 3.3V y no logro entrar a comandos AT, primero probé con el pin 34 y luego con el pin 26.

Tambien leí que el HC06 no necesita conectar el pin 34 a 3.3V
Tambien hice la prueba con un HC 05.

Envio AT y no recibo respuesta en la PC,


----------



## Scooter (Ago 5, 2017)

¿Que adaptador de niveles usas?
¿Cómo lo conectas?
El HC06 va a 9600 
El HC05 va a otra velocidad que ahora no recuerdo

El módulo hc06 ya lleva las conexiones que necesite, solo tienes que poner tx y rx


----------



## Mushito (Ago 10, 2017)

Estimado Scooter:

Logre conectar el modulo bluetooth con mi android y mi PC con el software "Tera Term VT"
directo del USB serial transformer.
Pero no recibe comandos AT


----------



## Scooter (Ago 11, 2017)

Para recibirlos tiene que estar sin conectar por el lado bluetooth.
Solo los recibe por el lado de la uart
solo los recibe cuando no está emparejado y parpadea el led.

Si has conseguido comunicar, resulta raro que no funcionen los comandos AT y el resto si.


----------



## Mushito (Ago 11, 2017)

Raricimo, efectivamente cerré todas las aplicaciones del android, cerré el puerto COM ademas de reset, y nada.

Logro controlar varios leds con la aplicacion de esta pagina.

https://www.engineersgarage.com/contribution/android-based-home-automation-system

Asi que pensé  que algo estaba haciendo mal y me propuse hacer lo siguiente para configurarlo.

procedi a lo que estaba descrito y con el mismo programa de aqui:






Y NADAAAA


----------



## rcinstalaciones (Ago 11, 2017)

Sabes tengo exactamente el mismo modulo, puedo controlar led por medio de aplicaciones bajadas de Play Store y algunas creadas con AppInventor sin ningun problema, pero cuando trato de configurar el modulo por medio de comandos AT, para cambiar el nombre ya que quiero conectar varios modulos y todos vienen con el nombre de HC-06, no habido forma de hacerlo, puerto Com directo del Pc , puerto Com por medio de usb, con Arduino Uno, con Arduino Nano, usando algunos programas de la web, con puerto serial nativo del Arduino, con puerto Serial virtual, con divisor de tension, cambiando las velocidades de conexion, conectando la pata 34 a 3.3 v y nada de nada.-


----------



## Scooter (Ago 12, 2017)

Pues si que es raro, si.

Los comandos AT van en mayúsculas y sin espacios, lo cual resulta raro pero es así.
No es AT NAME PEPE 
Es ATNAMEPEPE

Ahora me lo acabo de inventar, no me acuerdo del comando

Y es por los pines rx tx a 9600 sin paridad 1 stop


----------



## Nuyel (Ago 12, 2017)

solo escribe AT si responde OK ya comenzamos con lo demas

Según por ahí dicen que no debe tener nada conectado por bluetooth para que entre en modo AY

Veré si puedo conseguir uno para probar, igual me servirá de algo tener el módulo con adaptador de nivel


----------



## rcinstalaciones (Ago 12, 2017)

Definitivamente creo que es un problema del firmware, e probado todas las conexiones con eco, conectando el TX con RX del equipo , puerto serial nativo del PC , puerto serial USB y puerto serial del Arduino con diferente programas tipo Hiperterminal y en todos tengo eco, en todos me retorna lo que envio, ademas use algunos programas de terminal bluetooth en el movil y e conectado el  HC-06 en modo eco y tambien obtengo respuesta, definitivamente creo que es problema de estos  equipos (me refiero a los que e comprado yo), ya que en otras ocasiones e recibidos modulos electronicos desde China con algunos detalles que e tenido que subsanar, incluso algunos que los pinout no corresponden.-


----------



## Nuyel (Ago 12, 2017)

¿El HC-06 lleva el mismo hardware que el HC-05? si me pudieras extraer el firmware para comprobarlo


----------



## rcinstalaciones (Ago 12, 2017)

Si efectivamente por lo que he leido es el mismo hardware solo cambia el firmware , dejame ubicar como le descargo el firmware a los modulos que tengo y te lo emvio


----------



## salvador33 (Ago 13, 2017)

Acordaros de que las conexiones de puerto rs232 va cruzado

Pc Tx a Rx del bluetooth 
Pc Rx a Tx del bluetooth


----------



## rcinstalaciones (Ago 13, 2017)

Si correcto e probado cruzado y directo por si venian cambiados


----------



## Mushito (Ago 14, 2017)

rcinstalaciones dijo:


> Si correcto e probado cruzado y directo por si venian cambiados



Me da gusto saber que no soy el unico que tiene ese problema


----------



## D@rkbytes (Ago 14, 2017)

Mushito dijo:


> Me da gusto saber que no soy el único que tiene ese problema.


A mi no me daría gusto.
El procedimiento de inicialización y configuración, no falla si se hace bien.
Y si falla en todos los aspectos, sería mejor comprar otro módulo.


----------



## rcinstalaciones (Ago 14, 2017)

Alguien sabe donde puedo obtener informacion para cambiar el firmware?


----------



## Nuyel (Ago 15, 2017)

Cambiar el firmware es fácil, también puedes hacerlo por puerto paralelo, pero debe ser nativo, recuerda que los adaptadores USB no sirven para eso.


----------



## Mushito (Ago 16, 2017)

y el firmware que extension tiene? como puedo conseguir un firmware que me nombre un bluetooth editable?


----------



## Nuyel (Ago 16, 2017)

Leíste toda la entrada?


----------

