bclose

Módulo BlueTooth HC-06

Algunos conceptos básicos de BlueTooth
tienda online prometec

Objetivos

 

 
    • Presentar los conceptos básicos del BlueTooth.
    • Presentar los comandos AT.
    • Introducir el modulo BlueTooth HC-06.
    • Presentar un programa básico de comunicación, entre un teléfono externo y un Arduino mediante el modulo Bluetoth.
 

Material requerido.

 

 

Imagen de Arduino UNO Arduino UNO o equivalente
imagen frontal Un módulo BlueTooth HC-06
conexiones Algunos cables de protoboard, preferiblemente Dupont macho/hembra

 

Las redes BlueTooth

Logo BlueTooth

Pocos de los que estén leyendo estas líneas, no tendrán un teléfono móvil en el bolsillo, y muy probablemente será del tipo Smartphone, que incluirán un sistema operativo como Android o Apple IOS equipados con Wifi y Bluetooth.

Por eso la posibilidad de integrar conexión WIFI o BlueTooth en nuestros proyectos, nos abre unas posibilidades inmensas. Poder controlar nuestros proyectos desde el propio móvil, bien con WIFI o bien con BlueTooth, es algo muy interesante para controlar montajes de diferentes tipos.

En las sesiones previas, vimos cómo usar el móvil conectado a la red local para gobernar múltiples salidas digitales, y en próximas sesiones veremos cómo usar el WIFI como sistema de control desde nuestros teléfonos.

Pero como los grandes viajes deben empezar con pequeños pasitos, vamos a dedicar un par de capítulos al BlueTooth, para ver de qué posibilidades disponemos, como configurarlos y demás. De modo que seamos capaces de integrar el BlueTooth con nuestros Arduinos.

Y para ello empezaremos hablando un poco, de que es el BlueTooth y de cómo funciona, así como unos pocos conceptos básicos claves, para poderlo usar con garantías de éxito.

Para empezar diremos que los dispositivos BlueTooth pueden actuar como Masters o como Slaves (Amos o esclavos).

La diferencia es que un BlueTooth Slave solo puede conectarse a un master y a nadie más, en cambio un master BlueTooth, puede conectarse a varios Slaves o permitir que ellos se conecten y recibir y solicitar información de todos ellos, arbitrando las transferencias de información ( Hasta un máximo de 7 Slaves)

nodos Bluetooth

Cada uno de los dispositivos que se identifican vía BlueTooth presentan una dirección única de 48 bits y además un nombre de dispositivo que nos sirva para identificarlo cómodamente a los humanos. Por eso cuando configuras tu móvil puedes especificar n nombre propio que será el que mostraras a los demás cuando busquen tu teléfono en la inmediaciones.

La dirección propia también se puede identificar pero lógicamente, es un poco menos cómoda y tiene menos utilidad. Tampoco es raro establecer un protocolo IP sobre transporte BlueTooth, con lo que además de su identificación interna BlueTooth (Equivalente al MAC Ethernet) dispondrá de una dirección IP para conectarse a Internet.

Por eso puedes conectarte vía Bluetooth a tu PC, por ejemplo, y a través de el conectarte a internet.

Así pues un nodo BlueTooth puede ser Master o Slave y dispone de una dirección única, así como de un nombre para identificarse y muy habitualmente también incluye un PIN de conexión o número de identificación que debe teclearse para ganar acceso al mismo.

Como el BlueTooth lo desarrolló Nokia para conectar teléfonos móviles, a otros dispositivos como auriculares, micrófonos o conexiones al audio del coche, existe un procedimiento definido que se llama Pairing (o emparejamiento) que vincula a dos dispositivos Bluetooth.

Cuando vinculas dos dispositivos BT, se inicia un proceso en el que ellos se identifican por nombre y dirección interna y se solicitan la clave PIN para autorizar la conexión.

Si el emparejamiento se realiza con éxito, ambos nodos suelen guardar la identificación del otro y cuando se encuentran cerca se vuelven a vincular sin necesidad de intervención manual. Por eso el CD de tu coche reconoce el móvil de tu bolsillo en cuanto te subes y puedes reproducir la música que tienes en tu Smartphone.

 
  • Aunque para que tu BlueTooth pueda enviar o recibir música, debe aceptar otra norma posterior llamada Advanced Audio Distribution Profile (A2DP) y que en caso de ser algún sistema antiguo te impedirá la reproducción.
 

Naturalmente, a lo largo de los años la norma ha ido variando y existen varias versiones de la misma, con compatibilidad siempre con las versiones anteriores que se diferencian en la distancia que pueden alcanzar (entre 50 y 100 metros, teóricamente y sin obstáculos) además de la velocidad de transferencia.

 

Módulos BlueTooth disponibles para Arduino

 

Hace ya un tiempo que disponemos de módulos BlueTooth sencillos y económicos, que resultan muy prácticos para todo esto, y en esta sesión, vamos a empezar viendo cuales tenemos disponibles y como trabajar con ellos.

Los más frecuentes en el mercado son los módulos HC-06 y HC-05 que si hacéis una búsqueda por eBay o similares veréis que se consiguen por poco dinero, y están disponibles independientes o en modo SHIELD y para zocalo XBEE (ya hablaremos).

Hay bastante confusión en la red acerca de cómo diferenciar uno de otro y en muchas ocasiones sobre las prestaciones de unos y otros. Vamos a ver si podemos aclarar un poco el tema.

Lo primero es que el hardware de ambos modulos es el mismo. No hay diferencia hardware, pero el software que incorporan es diferente

 
  • De hecho, parece que es posible reprogramar uno para covertirlo en el otro, aunque el procedimiento es aparentemente bastante pesado.
 

Ademas el modulo de conexión se monta sobre un soporte que a su vez puede presentar diferencias notables según el fabricante y las conexiones que realice, pero por lo que he podido comprobar con un par de modulos de los que dispongo, hay una diferencia obvia, el numero de pines del modulo montado.

Dispositivos bluetooth

 

El modelo HC-06 dispone de 4 pines, en lugar de los 6 que incluye el modelo HC-05, pero hay además importantes diferencias de funcionalidad y de manejo que hace que merezca la pena dedicar una sesión a cada modelo.

Basicamente el modelo HC-06 solo puede actuar como esclavo y además dispone de un juego reducido de instrucciones a las que atiende, mientras que el modelo HC-05 puede actuar  como master o como Slave y acepta un número mayor de órdenes de configuración.

En esta sesión vamos a usar el modelo HC-06, pero antes necesitamos hablar de la cuestión de los comandos AT.

 

Los comandos AT

 

En la época heroica, para enviar mensajes (de texto exclusivamente, por supuesto) de un ordenador a otro, usabas las líneas o puertas serie. Muy al estilo de la comunicación que hoy tu Arduino hace con tu PC a través del USB.

El interface no era USB sino RS232, que aunque físicamente diferente, comunicaban vía serie dos puntos próximos hasta un máximo, de digamos, unos 100 metros.

Pero cuando querías enviar información a otro equipo situado en una oficina remota de tu empresa,  la única posibilidad era utilizar las líneas telefónicas, mediante un adaptador  diabólico, que se llamaba Modem.

La idea básica, era codificar el 0 binario con un tono grave de audio (que se pudiera enviar por la línea de teléfono) y los unos binarios como un tono agudo.

Así con la sucesión más o menos rápida de tonos graves y agudos por la línea telefónica se podían enviar un mensaje binario codificado en frecuencia de audio, de un punto a otro.

 
  • La palabra Modem, que tal vez hayáis oído, deriva del apocope de MODulador DEModulador, y si veis pelis de los años 80 y primeros 90 eran esos chismes que hacían los ruiditos típicos de audio, asociados a la informática.
 

Naturalmente, las líneas telefónicas eran analógicas, lo que implicaba una cantidad indecente de ruido térmico, que aumentaba exponencialmente con la distancia, obligando a disminuir la velocidad en función del ruido que te encontraras y a retransmitir una y otra vez el mensaje hasta que conseguías que llegara correctamente (algo que rara vez pasaba a la primera)

 
  • La velocidad de los módems empezaron sobre los 300 baudios o bits por segundos y fueron aumentando con la revolución tecnológica hasta 1.200, 2.400, 9.600 y que yo sepa los últimos que se comercializaron con el ese nombre fueron de 56.000 baudios. (Compara esos 56k de máximo con las redes de cable modernas de 100 Mbps, casi 1.800 veces más rápidas)
 

Por eso, los módems necesitaban una especie de comandos, que nos permitiera modificar la velocidad según necesitáramos, léase bajarla, cuando el ruido impedía una comunicación fiable y ya de paso modificar algún que otro parámetro sobre la marcha.

Y como el RS232 solo disponía de dos hilos de comunicaciones, no había más remedio que  incorporar una orden de atención que significara que a continuación venia una orden de programación del modem, que no debía ser transmitida al otro extremo.

Es decir que las ordenes eran del tipo “AT+Orden”, donde AT era el comando especificado de atención. En un santiamén todos los  módems y demás máquinas de comunicación serie empezaron a aceptar este tipo de órdenes, y al conjunto de ellas se llamó comandos AT, por extensión.

Con el tiempo, mucho del hardware sencillo que se comunica con otros equipos vía una humilde puerta serie, siguen aceptando ordenes AT para configurarlos y este es el caso de los módulos BlueTooth HC-05, HC-06 y otros pequeños dispositivos que veremos en el futuro.

 

Conexión del BlueTooth HC-06 al Arduino

 

Pues es cantidad de fácil. Fíjate que el modulo tiene rotulado el nombre de los pines, y simplemente conectar tensión y GND al módulo y después conectamos Txd y Rxd a los pines digitales 2 y 4 respectivamente de tu Arduino. Eso es todo

Eszquema de protoboard
 
  • Como el modulo HC-06 funciona a 3,3 V hay bastante controversia en internet respecto a  si debemos o no, poner divisores de tensión para acceder a los pines del módulo con Arduino. Por las pruebas que he hecho no parece necesario y no veo ninguna razón para que a largo plazo deban surgir problemas, por lo que yo conecto directamente los pines al Arduino.
 

Fijaros que al hacer esta conexión, el LED del módulo HC-06, parpadea continuamente. Esto indica que no está pareado o vinculado.

Cuando conectes algo al módulo, esta luz se quedará fija y es la forma de saber si hay conexión o no.

 

El programa de control

 

Como el modulo BlueTooth es básicamente un nodo BT conectado a un interface serie, podríamos en principio conectar los pines RX y Tx a los equivalentes de Arduino en los pines 0 y 1 digitales, sin más que cruzarlos (BT Tx  a Arduino Rx y BT Rx a Aduano Tx) y de hecho muchos ejemplos en Internet utilizan este esquema y se comunican con el BT mediante las familiares instrucciones de Serial.print ().

Sin embargo, prefiero desaconsejar hacerlo así, porque los pines 0 y 1 se utilizan en la comunicación serie de Arduino con el PC a través del USB y por tanto, si los usamos para comunicar con el modulo BT, perderíamos la conexión con el PC.

Por ello prefiero destinar otro par de pines cualesquiera a la transmisión, aunque para ello tenemos que importar una librería que habilite la comunicación serie con otros pines como es la librería SoftwareSerial.

Para ello importamos la librería que viene de serie en el IDE y creamos un nuevo objeto serie llamado BT1 conectado a los pines 4 y 2:

#include <SoftwareSerial.h>
SoftwareSerial BT1(4,2); // RX, TX

Y después, podemos usar BT1 exactamente igual a como usamos Serial.

Vamos a escribir un programa para comunicarnos con el modulo BT que simplemente lee lo que se escribe en la puerta BT1 y si hay algo lo manda a la consola Serial.

A su vez si hay algo en la consola, lee una línea con GetLine() y finaliza con intro  antes de enviar la línea completa al BT1

 
  • El motivo es, que el modulo HC-06, a diferencia del HC-05, no espera un terminador de línea como \n, si no que salta por tiempo, lo que nos fuerza a escribir muy deprisa los comandos largos y resulta incómodo..
  • Si no escribimos el comando completo a tiempo, simplemente lo ignorará y ni siquiera dará error. Por eso prefiero mandar comandos completos directamente y no carácter a carácter.
 

El programa queda algo así: Prog_70_1

#include <SoftwareSerial.h>
SoftwareSerial BT1(4,2); // RX, TX recorder que se cruzan

void setup()
   {
       Serial.begin(9600);
       Serial.println("Enter AT commands:");
       BT1.begin(9600);
   }

void loop()
   {
       if (BT1.available())
           Serial.write(BT1.read());
       
       if (Serial.available())
          {  String S = GetLine();
             BT1.print(S);
             Serial.println("---> " + S);
          }
}

String GetLine()
   {   String S = "" ;
       if (Serial.available())
          {    char c = Serial.read(); ;
                while ( c != '\n')            //Hasta que el caracter sea intro
                  {     S = S + c ;
                        delay(25) ;
                        c = Serial.read();
                  }
                return( S + '\n') ;
          }
   }

Según el manual el modulo HC-06 viene de serie configurado a 9600 y por eso usamos

BT1.begin(9600);

Si por cualquier motivo, no consigues establecer comunicación con el modulo BT, vete cambiando la velocidad hasta que veas que hay conexión.

Fíjate ahora, en el modulo, verás una luz roja parpadeando. Eso significa que el modulo está listo para vincularse a un dispositivo BlueTooth o para aceptar comandos AT, el modulo HC-06 no necesita nada mas para entrar en modo de aceptar comandos AT.

 
  • De hecho siempre que veas la luz parpadeando significa que el modulo no retransmitirá los comandos AT, sino que los interpretara como ordenes internas.
  • Pero si realizas una conexión (y la luz roja se queda fija, ignorará los comandos AT y los transferirá sin más.
 

Si no te has vinculado aún, y la luz roja parpadea, ya podemos enviar comandos AT. Veamos algún ejemplo.

 
  • Con el HC-06 es necesario que en el  Monitor Serial seleccionemos “Sin ajuste de línea”.
  • Si usamos el HC-05, por el contrario, tendremos que seleccionar “Ambos NL & CR”.
 

El primero y más básico es enviar (siempre en mayúsculas) un simple AT desde la consola. Se supone que debería responder con OK, pero en mi caso y con mi modulo no es así. Y si vuestro caso es el mismo deberéis probar con más comandos.

AT+VERSION, Requiere la versión del Firmware

AT+NAMEXXX, Programa el nombre que queremos presentar cuando alguien nos busque:

AT+NAMEPROMETEC

AT+BAUDX, Fija la velocidad de comunicación entre el modulo y la consola según a la siguiente tabla:

1 configura        1200bps
2 configura        2400bps
3 configura        4800bps
4 configura        9600bps (Default)
5 configura        19200bps
6 configura        38400bps
7 configura        57600bps
8 configura        115200bps

Ejemplo: AT+BAUD7 configura la comunicación a 57600 baudios

AT+PINXXXX, configura el número de identificación personal, que se requerirá para establecer la vinculación

AT+PIN4516, establece 4516 como PIN

En caso de que probando varios de estos comandos, no obtuvierais respuesta, o vierais caracteres extraños en la consola, probad con otras velocidades hasta conseguir una que funcione. Probad diferentes velocidades en la línea:

BT1.begin(9600);

Y me temo que parece no haber más comandos disponibles para un módulo HC-06 y desde luego no dispone de los comandos de interrogación de los que si dispones su hermano mayor HC-05.

 

Probando la conexión con el modulo HC-06

 

Una vez volcado el programa anterior a nuestro Arduino, con una velocidad de comunicación correcta con el modulo vamos a probar a enviar y recibir información desde y hacia, un teléfono  móvil.

Para ello voy a utilizar un teléfono Android y un programa Android llamado Bluetooth SPP, pero en realidad servirá cualquier terminal BT.

 
  • Debo indicar que no he sido capaz de vincular este módulo a mi Iphone 4S, porque este insiste en que no existe nada en los alrededores con lo que vincularse y en cambio mi viejo HTC Android 2.1 lo ve a la primera y sin problemas.
 

Lo primero es confirmar que el LED del módulo BT parpadea, indicando que está en modo AT o esperando vinculación con otro dispositivo. Después asegúrate de que el BlueTooth del teléfono está activo y por último, dependiendo del programa que uses como terminal, pídele que busque dispositivos BT en los alrededores y vincúlate al que encuentres.

Si todo va bien ya podrás enviar y recibir mensajes de texto entre tu móvil y Arduino en ambas direcciones.

Aquí os dejo un pequeño mini video con el resultado:

 

Resumen de la sesión

 

 
    • Hemos presentado algunos conceptos básicos del mundo Bluettoth y su relación con Arduino.
    • Vimos lo que son los comandos AT y de donde provienen, asi como algunos de ellos que sirven para programar el modulo HC-06.
    • Empezamos viendo algunasd diferencias entre el HC-05 y el HC-06.
    • Escribimos un programa básico para comunicar un teléfono Bluetooth con Arduino mediante un programa de terminal BlueTooth.
 
 
 

 

 

 

 

(259) Comments

    • Antoniomusico

    Para los que no hayan logrado recibir respuesta del módulo HC-06 les sugiero que prueben a cambiar en la ventana del Monitor Serial donde pone “Sin ajuste de línea” a “Ambos NL & CR”. Después de toda una tarde dándome calimonazos con la cabeza en la pared ESTO ha sido lo que me ha permitido comunicarme con el HC-06 🙂
    Espero que os sirva. Saludos desde Granada

    • Hola Antonio, hablo de memoria pero juraría que es al revés, “Sin ajuste de línea” para el HC-06 y “Ambos NL & CR” para el HC-05.

    • Sebastian

    Hola, primero debo decir que este es uno de los mejores tutoriales que hay en la red acerca de estos temas, felicidades y gracias. sin embargo, me quedaron varias dudas por un proyecto que tengo en mente:
    1) ¿Como puedo conectar dos módulos entre si?
    2) ¿Es posible conectar dos HC-06 a un único HC-05?
    3) ¿Los módulos pueden conectarse entre si sin necesidad de un arduino?
    4) ¿Es posible conectar un HC-05 a un smartphone (conexión master-master) para que reciba y entregue información?
    5) ¿Por medio de comandos AT es posible decirle al modulo que una vez encendido se conecte automáticamente (si esta disponible) a otro modulo?
    Gracias otra vez por este gran tutorial, espero pronta respuesta. Un abrazo

    • Hola Sebastián, a ver si puedo responderte a todo:
      1) Necesitas tener al menos un maestro, así que necesitas al menos un HC-05.
      2) Si es posible conectar varios esclavos a un maestro.
      3) En principio (me parece) que con que tengan corriente se conectarían, pero necesitas los pines Rx y Tx para que intercambien datos.
      4) Me parece que solo pueden conectarse esclavos a un maestro, pero puedes entregar y recibir información de esa forma.
      5) Sí, puedes hacer que en cuanto el esclavo detecte al maestro se conecte él inmediatamente.

      A ver si te sirve. Perdón por la tardanza y un abrazo.

  • Hola!!
    Tengo el módulo HC06 pero no consigo que me funcione, se queda parpadeando contantemente.
    Tengo igual el esquema y el código y nada. Lo curioso es que el móvil al buscarlo lo encuentra (no con el nombre que le pongas, si no con la dirección MAC) y reconoce la contraseña que le pongas y lo deja vinculado.
    Pero a la hora de reconocer comandos AT, no responde a nada, la velocidad correcta es 9600 he probado con otras y no va bien pues sale caracteres raros.
    Otra curiosidad que me surge es que en el esquema indicas que Tx va al pin 4 y Rx al pin 2 pero en el código que grabas al arduino vienen al revés??
    Saludos

    • Buenos días, las conexiones del HC-06 y el Arduino se cruzan, es decir el Tx del uno se conecta al Rx del otro, y o mismo con el otro pin. La parte de la comunicación, recuerda que tienes que seleccionar sin ajuste de línea en el monitor serie. Un saludo.

    • Hola Leanospa,

      Que puedas ver tu modulo HC es buena señal. pero si despues no consigues comunicar es con un 95% de probabilidad un problema de comunicacion: cables, velocidad,etc…

  • Hola
    Sigo los pasos acordes al proceso y las conexiones con mi modulo HC_06, cargo el programa al arduino uno, y en monitor serie lo unico que me sale es Enter AT commands:, escribo cualquier comando AT pero no logro configurar mi modulo y, al escribir solo AT, no recibo la respuesta OK.
    Por que se me presenta este problema?
    Muchas gracias

    • Hola Leonardi, puede ser que tengas la velocidad del HC-06 y la del puerto serie a diferentes baudios. También recuerda que en el monitor serie tienes que seleccionar “Sin ajuste de línea”. Un saludo.

      • Hola Iván!!
        Gracias por tu aclaración del cruce, la verdad es que viendo otros esquemas también están cruzados… pero mosquea al ver que no responde ni a un simple AT y ya te pones a dudar de cualquier cosa.
        Veo que no soy el único que tiene este mismo problema, el monitor serie esta puesto como dices “sin ajuste de linea”.
        Estropeado consideró que no está pues lo reconocen, se vincula y acepta la contraseña. Otro detalle curioso es que no reconozca el nombre que le pongo al dispositivo en el código que grabo y sólo vea su Mac.
        Ya sólo me lleva a pensar si será cosa de la versión del sistema Windows que tengo el 10 y el IDE de arduino la última que hay a fecha de hoy.
        Por supuesto el proyecto de coche con Bluetooth tampoco me funciona.
        Una faena no saber que puede ser… casualidad!!, creo que no, no se.

  • Hola, muy bueno el tuto! Me sale todo correctamente y he visto que este módulo va con Bluetooth v2.0, menos eficiente que los BLE v4.0. Si me compro uno con la especificación BLE 4.0, ¿La programación implementada en este tutorial me serviría igual o tendría que hacer unan implementación diferente? Gracias!

    • Hola Guillermo, la programación te serviría, pero puede ser que cambien algunos comandos AT, como ocurre con el HC-05 y HC-06. SAquí tienes una prueba con el HC-08 https://www.prometec.net/bluetooth-le/ Un saludo.

    • Luis

    Buenas, una consulta, alguien sabe si es posible conectar un módulo bluetooth con auriculares. Estoy haciendo un proyecto en el que necesito que ambos se conecten para que una persona pueda escuchar por el auricular una señal de alerta.

    • Hola Luis, y con qué reproducirías la señal? Con otro Arduino?

    • Adan

    Buenas, sería posible tomar la salida de audio de la televisión (pequeña señal) y pasarle a traves del arduino para enviarla por bluetooth a unos auriculares bluetooth que tengo para tener unos auriculares inalámbricos via bluetooth?

    • No veo mayor inconveniente, pero tienes que usar algun odulo bluetooth que te permita manejar el sonido (A2P creo recordar) porque con los modulos habituales d enuestra pagina no podras

    • Limbus

    Hola,

    Tengo el problemas desde la app no logro enviar ningun mensaje, pero anda bien desde cuando envio texto desde la consola del Serial, veo que a muchos les pasa, alguien ya logro resolver el problema.

    Slds,

    • Hola Limbus, prueba con alguna otra aplicación por si acaso. Por ejemplo puedes usar como ejemplo esta que utilizamos para controlar coches teledirigidos a ver si eres capaz de recibir los caracteres del teléfono https://www.prometec.net/coche-bluetooth/

    • V

    hola estoy haciendo un carro a control remoto con el bluetooth, pero cuando lo conecto a la computadora el bt funciona bien, pero cuando lo conecto con pilas no funciona el bt sugerencias?

    • Hola Victor, ¿cuántas pilas usas? ¿Se enciende el LED del bluetooth?

    • Rodrigo

    Hola,

    hago exactamente las mismas conexiones que tú y con tu mismo código consigo que al escribir desde la el monitor serie me llegue el mensaje a la aplicación Bluetooth que propones pero no a la inversa (cuando escribo en la aplicación nunca llega, de hecho, nunca entra en la sentencia if (BT1.available()).

    ¿Puedes echarme un cable?
    Gracias!

    • Hola Rodrigo, te aseguro que tenemos los programas y conexiones probados por lo que te recominedo que insistas porque no deberia haber problemas con esa conexion

      En cuanto a la sentencia if (BT1.available()), La idea basica es que si hay algo en el buffer de entrada de BT1 o del Serial, esta funcion devuelve true. Es decir sabe si hay algo esperando a aleerse o no y cuando encuentre que si que hay algo entra en el if y lee lo que corresponda

  • Hola amigos.
    Estoy haciendo un proyecto con un amigo y queremos conectar el arduino a la pantalla de una computadora pero no se que aplicación utilizar para que la pc me lea lo que le envió con el teléfono.
    la idea del proyecto es hacer un aviso para el menú de un restaurante que se pueda cambiar todos los días…

  • Hola eh cambiado a cada velocidad de baudios posibles desde el 1 al 8 pero consigo que se reconfigure sus caracteristicas de fabrica

  • Hola tengo un problema, eh configurado y enlazado mi placa hc-06 pero a la hora de enviar un valor del celular a la placa ese valor no lo recibe, a pesar de estar probando con varias aplicaciones Bluetooth no consigo recibir ningún datos a mi puerto serial. Tambiem eh probado configurar otro puerto serial de mi arduino uno pero tampoco consigo recibir ningún dato. Hay algun modo de resolverlo ?

    • Hola Arturo, EMpieza con algo sencillo como comunicar con el modulo HC-06 desde tu arduino y cuando veas que envias y recibes pasa a enviar y recibir mensajes al cellular ¿Vale?

  • Buenas gente. Necesito ayuda no encuentro nada a mi problema. Tengo un hc-06 ya vincule el módulo a mi cel todo perfecto. Pero el caso es que yo quiero que cuando me vincule automáticamente con el módulo mandé una señal al pin 12 como encender un led.Pude con unas app que descargue. pero mi idea es que sin app cuando se vinculen prenda un LED sin que yo tenga que sacar el cel del bolsillo. Bueno muchas gracias.saludo.

    • Hola Hugo, Pues la verdad es que no se cómo se podría hacer, porque aunque estén vinculados hasta que no los conectas no intercambian información, al menos hasta donde yo sé. ¿Para qué lo necesitas? Un saludo.

    • Castillo

    hola , disculapa ya se conecte el bluethoot al celular pero me podrias mandar el url de la app estoy utilizando unas y no me deja enviar ni recivir informacion desde el monitor serie del programa de arduino

    • Hola! Creo que fue esta la que utilizamos en su momento, pero si buscas en Google Play arduino bluetooth te debería servir cualquiera de ellos. Un saludo!

  • Hola buenas tardes.
    Tengo un HC-06 y quiero obtener la dirección MAC de este para vincularlo a un HC-05 maestro.
    Quiero ver si alguien sabe un comando AT para obtener la dirección, yo eh probado con el comando “AT+ADDR” pero no me devuelve nada o en dado caso como la puedo obtener de otra manera.
    Gracias

    • Hola Rodrigo, Prueba con AT+CIPAPMAC o AT+CIPSTA

    • Gera

    Buena noche, estoy tratando de hacer un código para HC-10 y arduino con iPhone…. pero el arduino no recibe la información del teléfono, pero si envió información desde el puerto serial, el teléfono si lo recibe…. tendrán algún típ para que me funcione?

    • Hola Gera, si ya consigues enviar pero no recibir tiene toda la pinta de ser un problema de cables o alguna confusion sencilla en el programa

      • hola buen dia

        Es lo contario, no puedo enviar pero si recibo.

  • Buenos dias,

    Estamos realizando un proyecto con unos compañeros de un carro controlado por via bluetooth, conectamos todo como debe ser y codificamos el arduino dejando el Bluetooth desconectado, pero al momento de enlazar mi celular con el modulo no se conecta quisiera saber si alguien nos pueden colaborar, el modulo que estamos usando es el HC-05.

    Gracias

    • Hola Jhonatan, en teoría sólo con alimentar el módulo ya deberías poder vincularlo al teléfono. La contraseña por defecto suele ser 1234. Los teléfonos de apple suelen dar problemas porque no son compatibles con la tecnología bluetooth 2.0 que utilizan estos módulos. Un saludo.

  • Pregunta, quería saber si este modulo sirve o tienen alguno que sirva, lo que neceisto es poder cambiar los GPIO según la información que reciba por bluetooth, básicamente poder prender y apagar un pin.

    • Hola Javier, claro que podrías. Puedes realizar cualquier acción que puedas hacer con un arduino normal, pero en función de lo que recibas del bluetooth, usando un case o un if por ejemplo. Un saludo.

  • hola amigos foreros:
    estoy haciendo un proyecto de tecnología con unos compañeros con arduino y no encontramos el modo de conectar 2 arduinos mediante bluetooth sin utilizar un pc o móvil. Agradeceríamos mucho si alguien nos puede ayudar.

    • Hola Yago, los módulos bluetooth suelen ser esclavos, aunque esto depende del firmware que tengan grabados en su microcontrolador. Los HC-06 pueden funcionar como maestro o como esclavo, cuando lo compras lo eliges para una cosa o la otra. Los hay con el HC-05 que permiten funcionar como ambos.

      Los módulos maestros HC-06 es que se conectan al primer esclavo que encuentren, lo memorizan y desde ese momento siempre se conectan a ese. Para que se conecten a otro hay que resetear su memoria (el modulo suele venir con un botón de reset), y así buscara de nuevo un esclavo al que conectarse.

      El HC-05 se conecta a los esclavos configurando su MAC, así que puedes elegir a que esclavo conectarse en caso de tener varios.

      En cuanto a la comunicación de uno a otro, debería funcionr como la comunicacións erie normal, como si fuera tu Arduino y el pc o al revés.

      • Gracias por tu ayuda Ivan pero no encontramos el botón para resetear el bluetooth. Hay algún otro modo de resetearlo?

        • Hola Yago, algunos módulos vienen sin el botón y tienes que resetearlos tocando los bornes donde debería ir el botón con un cable.

Give a Reply

WordPress Anti-Spam by WP-SpamShield