Como conectar bluetooth HC-05, Arduino y diadema MindWave NeuroSky

Primera parte “Conexión para configurar modulo HC-05”

En este primer post, como indica el titulo, vamos a aprender a configurar nuestro modulo HC-05 mediante la placa Arduino y más adelante conectarlo a la diadema  MindWave Móvil de NeuroSky.

Para comenzar con la configuración del modulo mediante el Arduino, (en este ejemplo utilizaremos la placa Arduino UNO),  es necesario conectar previamente el circuito mostrado a continuación:

Conexion HC-05 a Arduino*El modulo de bluetooth HC-05 soporta los voltajes de entrada de 3.3 y 5V.

Una vez armado el circuito hay que cargar el “Sketch” que nos permitirá entrar al modo de configuración del HC-05, conocido como modo AT, mediante el IDE de Arduino. El Sketch se  puedes descargar de Dropbox

Cuando se tenga cargado con éxito el Sketch y el circuito armado procedemos a meter el HC-05 en modo AT (sin apagar o desconectar el Arduino de la Pc-Usb), para esto solo es necesario desconectar  el cable de voltaje (VCC) de la placa Arduino un momento y volverlo a conectar, notaremos además que el led del bluetooth prenderá  y se apagara cada dos segundos aproximadamente. Si todo sale bien abriremos en el IDE de Arduino /herramientas/monitor serial, modificamos los valores de velocidad a “9600 baud” y a “Ambos Nl y CR”, en este momento observaremos en la pantalla que dice: “Enter AT commands:” , si nosotros mandamos el comando AT, nos debe responder OK. AT Segunda parte “Configuración del modulo HC-05”

Ahora si podemos comenzar con la configuración del dispositivo HC-05. Los siguientes son los comandos básicos que debemos saber para configurar nuestro dispositivo bluetooth:

Saber el nombre del modulo.                                                                                      AT+NAME?

Cambiar el nombre, en el ejemplo siguiente se cambia por “MINOMBRE”.          AT+NAME= MINOMBRE

Un dato muy importante el HC-05 funciona como esclavo y maestro.

  • Como esclavo: espera que desde otro dispositivo nos conectemos.
  • Como maestro: el HC-05 se conecta a otro dispositivo.

Saber cómo está configurado con el comando: AT+ROLE?

  • Si nos contesta “0” esta en modo esclavo.
  • Si nos contesta “1” esta en modo maestro.

Por defecto viene en modo esclavo.

  • Cambiarlo al modo esclavo: Comando:AT+ROLE=0
  • Cambiarlo al modo maestro: Comando:AT+ROLE=1

Saber la contraseña del HC-05 Comando: AT+PSWD?                                      Por defecto suele venir la “1234” o la “0000”.

Muestra la configuración con la placa Arduino, por defecto viene configurado a una velocidad de 9600. Comando: AT+UART?

Tercera parte “Configuración del modulo HC-05 para la conexión a la diadema MindWave”

Para conectar el modulo bluetooth a la diadema MindWave de Neurosky es necesario saber la dirección mac de nuestra diadema MindWave NeuroSky, por lo cual debemos conectarla a algún dispositivo el cual puede ser una computadora  o un celular.

Para revisar la dirección en windows 7 podemos irnos a inicio/dispositivos e impresoras, nos debe aparecer el dispositivo, este debió haber sido agregado anteriormente, en caso contrario es necesario irse a inicio/agregar dispositivo bluetooth y seleccionar la diadema. MAC MindWave Para la versión mindwave movile la dirección aparece en hexadecimal. En este ejemplo aparece como 20:68:9d:c2:24:46 la cual depurándola queda como “20689DC22446”. MAC MindWave1En este momento retomaremos comandos vistos en la segunda parte de este tutorial.  Lo primero es proceder a configurar el modulo Bluetooth como modo maestro, ya que en esta ocasión ocupamos que el HC-05 se conecta a otro dispositivo (en este caso ocupamos que se conecte a la diadema), entramos al IDE de Arduino con el Sketch, (proporcionado en la segunda parte de este documento), previamente cargado y a continuación introduciremos los siguientes comandos:

Comando: AT+UART=57600,0,0 // Cambiamos la velocidad a la que opera el modulo, originalmente lo teníamos a 9600 y lo cambiamos a 57600.

Para la conexión de nuestra diadema al HC-05, prestar atención a los siguientes pasos: Configuramos el modulo HC-05 como modo maestro Comando: AT+ROLE=1

Cambiamos la contraseña para que se puedan conectar, para este caso de la diadema Mindwave es necesario que la contraseña sea (0000). AT+PSWD=0000

Preparamos el modulo para que se conecte a una dirección especifica,

  • //0 = Dirección especifica de dispositivo.
  • //1 = A cualquier dispositivo que se encuentre dispobible.

Para este caso será a una dirección específica. Comando: AT+CMODE=0 Se conecta el bluetooth a la dirección Mac del esclavo, los ceros a la izquierda se omiten. La dirección MAC, como se menciono anteriormente, viene en un valor hexadecimal el cual se depuro quedando en este ejemplo como “20689DC22446” y se debe introducir en el formato ####,##,!!!!!!.Para este ejemplo queda de la siguiente manera: Comando: AT+BIND=2068,9D,C22446.

Ahora viene una parte en la que debemos prestar mucha atención vamos a ejecutar los siguientes comandos en el siguiente orden :

  • Comando: AT+INIT\R\N Initialize SPP(Can’t repeatedly initialize)
  • Comando: AT+IAC=9E8B33\R\N INQUIERE GENERAL INQUIERE ACCESS CODE
  • Comando: AT+CLASS=0\R\N INQUIERE ALL DEVICES TYPES
  • Comando: AT+INQM=1,9,48\R\N INQUIRE MODE: RSSI , MAX NUMBER 9, TIMEOUT 48
  • Comando:AT+INQ\R\N INQUIERE Todo debe marcarnos OK.
  • Después de esto podremos emparentar nuestros  dispositivos mediante el siguiente comando: AT+PAIR= 2068,9D,C22446
  • Por último introducimos el siguiente comando para terminar de conectar los dispositivos. Comando: AT+LINK=2068,9D,C22446

Si les marca algún error en estos comandos pueden consultar el siguiente manual en linea, (comandos pagina 25).

OK Ahora desconectamos el cable de key y reiniciamos el modulo.

Cuarta parte “Conexión HC-05 mediante a Arduino a diadema MindWave NeuroSky”

Una vez configurado el modulo de bluetooth hay que realizar la siguiente conexión. diagrama_bbPara este ejemplo es necesario cargar el Sketch proporcionado por la compañía de NeuroSky para este ejemplo disponible en la pagina oficial de NeuroSky o disponible en Dropbox.

Una vez conectado y cargado el Sketch solo queda prender la diadema MindWave y a probarla, el bluetooth se conectara automáticamente a la diadema, en caso contrario dejamos presionado hacia arriba por tres segundos.

Aquí les dejo el vídeo de la diadema funcionando.

Agradecimientos: Información base: BotScience

Código y conexión: Hazim Bitar (techbitar)

Comunicación: Jose Antonio Luceño Castilla

Material del apoyo: Data Sheet HC-05

Andrés Sabas por apoyo en conexiones y código. @Sabasacustico

 

28 opiniones en “Como conectar bluetooth HC-05, Arduino y diadema MindWave NeuroSky”

  1. Hello Monica,
    I am student of Computer Engineering from India, I want to learn about Neurosky further, can you help me to go with the starting steps? I will prefer to go with English language as I don’t understand Spanish. If you are not comfortable with English Language, then let me know I will use translator.

  2. disculpa cuando llegas a esta parte:
    Ahora viene una parte en la que debemos prestar mucha atención vamos a ejecutar los siguientes comandos en el siguiente orden :

    Comando: AT+INIT\R\N Initialize SPP(Can’t repeatedly initialize)
    Comando: AT+IAC=9E8B33\R\N INQUIERE GENERAL INQUIERE ACCESS CODE
    Comando: AT+CLASS=0\R\N INQUIERE ALL DEVICES TYPES
    Comando: AT+INQM=1,9,48\R\N INQUIRE MODE: RSSI , MAX NUMBER 9, TIMEOUT 48
    Comando:AT+INQ\R\N INQUIERE Todo debe marcarnos OK.
    Después de esto podremos emparentar nuestros dispositivos mediante el siguiente comando: AT+PAIR= 2068,9D,C22446
    Por último introducimos el siguiente comando para terminar de conectar los dispositivos. Comando: AT+LINK=2068,9D,C22446

    en los comandos: Comando: AT+INIT\R\N se agrega esto? (\R\N ) por que despues de esto el modulo inicia y ya no responde al monitor serial

    gracias de antemano

    1. Cuando colocas el comando: AT+INIT\r\n si te responde OK? Cuando colocas solamente AT \r\n te responde OK? Cuando colocas solamente AT te responde OK? Si no te responde agregando a los comando: “\r\n” tu modulo no es HC-05

      1. en cualquier comando si agrego (\r\n) me marca error:(0), sin embargo la primera vez que pregunte por el nombre al dispositivo me marcaba que era hc-05, y todo al parecer esta normal hast que llego a este comando: Comando:AT+INQ\R\N INQUIERE
        si me responde ok e inmediatamente sale de los comandos AT, esto me lo indica el led el cual deja de parpadear a una frecuencia baja,

        1. Si al agregar a cualquier comando AT “\r\n” marca error:(0), entonces no es un HC-05, es un HC-06 esa version de firmware no responde a comandos AT con “\r\n”

    2. Hola Ricardo, yo tambien estoy en ese dilema, no se si pudiste solucionar el problema y si me podrias ayudar,de antemano muchas gracias. Saludos

  3. hola, cambie el nombre de mi hc-05 y ahora no lo encuentro por bluethoot, pero sigue funcionando la comunicacion con comandos AT, me puede ayudar?

  4. Hola quiero comprar una diadema.
    habia visto la emotiv epoc primero, pero hoy viendo tu video he conocido esta otra marca.

    ¿Tu que la tienes en mano, que tal funciona, cual te parece mejor entre esta y la emotiv epoc?

    Muchas gracias bendiciones 🙂

  5. Lo siento, estoy usando un traductor

    Mi MindWave móvil devuelve este:

    Atención: 0
    Meditación: 0

    Hice la misma configuración de la guía de aprendizaje, que puede ser?

  6. Hola, buenos días Kaia, te felicito por tu hobbie.
    Tengo una pregunta, tengo un arduino uno y un módulo HC-05, pero las conexiones son diferentes en los extremos (el texto) y soy menos que novato en esto, pues me confunde que tengan las siguientes etiquetas:STATE RXD TXR DNG VCC WAKEUP.
    Mi pregunta, en este caso ¿WAKEUP es lo mismo que KEY? .
    Gracias por la ayuda 🙂

  7. Gracias por la excelente guía para este tipo de proyectos, muy bien.
    Pero tengo una pregunta como haces para controlar el error que aparece cuando envia datos el MindWave al arduino uno, utilizando la librería SoftwareSerial.h y brain.
    ERROR checksum
    ERROR packet too long 170

    Gracias

  8. Saludos. por favor me podrias ayudar. me gustaria adquirir una diadema mindwave para realizar alguna aplicacion. pero tengo varias dudas. no dispongo de un arduino. pero dispongo de un modulo hc05, un atmega 164pa y un usb-ttl para comunicacion serial. Trabajo en software codevision. es casi el mismo software de ATMEL. la pregunta, me bastara estos materiales para realizar alguna aplicacion como la que has demostrado en tu video encendiendo los leds o necesitare algun otro dispositivo. muchas gracias por tu ayuda.

  9. una pregunta se descargaron los datos 4,5 y 25 de personas se sacaron las gráficas pero en ciertas partes de la gráfica se corta y vuelve enviar datos.

  10. Hola espero puedas ayudarme todo va bien hasta que llego aqui

    Comando:AT+INQ\R\N INQUIERE Todo debe marcarnos OK.—> aquí el led empieza a parpadear a una frecuencia alta y ya no me deja hacer nada en el monitor serial y por consiguiente no me deja emparentar.

    Después de esto podremos emparentar nuestros dispositivos mediante el siguiente comando: AT+PAIR= 2068,9D,C22446 —-> aquí me dice error (0) y por consiguiente no me deja terminar la configuracion podras ayudarme.

    Y también mi bluetooth estoy segura que si es HC-05 y no me acepta los comandos r\n\ pero si me acepta todo hasta el INQ

  11. Hola, lo primero agradecerte el tutorial la verdad me ha servido de mucho, y lo segundo queria comentarte que ya he realizado el ejemplo, y lo que no entiendo es como haces para que el MindWave Mobile envie datos a 57600 baudios, ya que el bluetooth si lo configuras a esa velocidad con los comandos AT pero el casco no, y de fábrica viene configurado a 9600 baudios, gracias, espero tu respuesta saludos.
    ALVARO.

  12. y tambien no entiendo porque trabajas a 57600 baudios y si se podria a 9600 con el mismo codigo aparte de mi duda de como haces para configurar el casco a 57600 baudios ya que de fabrica viene a 9600

  13. Hola amigos tengo un problema será que alguien me podría ayudar tengo una app que hizo en app inventor y utilizo un modulo hc-05 y funciona digamos que bien pero quiero que cuando el se desconecta por que se alejo del celular y se vuelva a acercar se conecte automaticamente sin tener que ir a conectarlo manual buscando el dispositivo si alguien me puede ayudar les agradezco este es mi correo: julroj07@hotmail.com
    gracias

  14. Hola tengo un problema en la 3º parte de la explicación. Cuando hay que poner el comando AT+INIT\R\N no recibo contestación e inmediatamente se sale de la comunicación ya que el módulo bluetooth vuelve a parpadear a mayor frecuencia. No se a qué se puede deber.

    Saludos

  15. Hola, tengo un ZS-040 y no tiene el boton, e intentado de todas maneras pero no puedo ingresar a los comandos AT, si me podrian ayudar por favor, muchas gracias

  16. Hola.
    Muy buen tutorial.
    Tengo el Mindwave, pero no es la version movil.
    Este viene con un dongle RF USB para conectarlo a la PC.
    El dongle dejo de funcionar y me es dificil conseguir otro.
    Quisiera utilizar un módulo RF apropiado para este, sin que esto implique el desarmar el Mindwave (evitar cambiar su módulo RF).
    Este turorial mustra la conexion mindwave-Dongle-Arduino:
    http://developer.neurosky.com/docs/doku.php?id=arduino_tutorial

    Saludos,

  17. Buenas tardes!! Me ha encantado lo que decis en el artículo y, además, creo que la pagina es muy interesante. Me encanta mejorar mi casa para que cada vez sea más eficiente. De todas formas, os aconsejo tener precaución con los dispositivos que instalen para ahorrar energía, pues hay algunos que pueden suponer un riesgo eléctrico para el hogar. No obstante, si cumplen con las garantía europeas seguró que están genial. Besos!!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *