Conectar dos Arduinos mediante Bluetooth

Hace mucho tiempo que quería escribir esta entrada pero no ha sido hasta ahora, con los dos moDuinos montados y con soporte para bluetooth, que no me he decidido a hacerlo, y eso que es algo realmente sencillo.

Primero tenemos que tener en cuenta que para comunicar dos Arduinos mediante bluetooth es necesario tener un modulo bluetooth esclavo y otro maestro, no sirven dos esclavos ni dos maestros, hace falta uno de cada ya que es el maestro quien inicia el emparejamiento con el primer esclavo que encuentre, después lo memoriza y se conecta siempre a él. Una vez realizado el emparejamiento podrán comunicarse bidireccionalmente mandando y recibiendo datos.

Debemos recordar que para que ambos Arduinos se conecten deberán tener configurada la misma contraseña y velocidad de transmisión, en las respectivas entradas superiores se explica como se configuran los módulos.

En el siguiente ejemplo, el moDuino1 envía por el puerto serial 2, al que esta conectado el modulo bluetooth, el caracter ‘1’ cada 5 segundos. Entonces el moDuino2 lee el caracter que interpreta como un true y enciende un led durante medio segundo.

10 ideas en “Conectar dos Arduinos mediante Bluetooth

  1. Buen dia, soy estudiante de Ingenieria de Software y me gustaria poder comunicar dos arduinos por medio de bluetooth. He estado investigando, pero aun me quedan algunas dudas.. Usaste el mismo modulo (HC-05 o HC-06) y despues los configuraste como maestro y esclavo? Que me recomiendas que use?
    Si me pudieras apoyar a aclarar esas dudas, te lo agradeceria bastante
    Saludos!

    1. Hola,
      Use dos módulos HC-06, uno esclavo y otro maestro (con pulsador de reseteo).
      El HC-06 puede funcionar de ambas formas pero el que tuve no supe usarlo, no parece funcionar con los comandos AT estándar.

      Tienes mas info sobre esos módulos en el blog, tanto como configurarlos, emparejarlos, pasar datos, etc.

      Saludos.

    2. Entonces como fue que los configuraste? o lo pediste al proveedor directamente con esa configuración?

  2. Buenas, me gustaría saber como hacer si yo por ejemplo quiero conectar el módulo maestro a un módulo esclavo ESPECÍFICO. La idea es si se puede tener un módulo maestro y VARIOS esclavos, identificándolos por una dirección MAC y conectándose a cada uno con alguna función.. Desde ya, muchas gracias.

    1. La teoría es que puedes tener varios esclavos y un maestro que indicándole la dirección MAC se conecte al esclavo correspondiente.

      Pero como digo eso es la teoría, el modulo maestro configurable que tuve (un HC06) nunca me funciono así que no puedo confirmartelo.

      Depende de lo que quieras hacer igual te sea mejor tener varios módulos RF que transmitan y reciban datos, todos los Arduinos leen los datos pero si no son para ellos los descartan.
      Seria la misma idea que una red con Hubs (no Switch).

      Saludos!

    1. Puedes enviar un ping entre módulos y comprobar el tiempo de inicio y de fin necesario desde que se envía la consulta hasta que se recibe una respuesta, si a 1m le cuesta X y a 7m le cuesta X+Y pues de ese modo puedes saber la distancia aproximada.
      Si lo quieres hacer bien puedes usar un modulo GPS en cada Arduino, aunque con comunicación bluetooth no tiene sentido pues el alcance máximo se encuentra en unos 10m, que debe ser el margen de error del GPS, con comunicaciones RF podría tener algo de sentido.

  3. Hola necesito su ayuda, me gustaria hacer esto pero que el arduino maestro midiera la temperatura, y si por ejemplo hace 20 grados o menos mandara un 1 al otro arduino y si es igual o mayor de 25 mande un 0 estaria bien que tubiera unos pulsadores para poder fijar la temperatura pero tampoco seria esencial ya que con el ide lo podria modificar

    y elarduino esclavo al recibir un 1 o el 0 encienda o apague un rele, es para tener la habitacion de mi hija siempre calentita,

    soy nuevo en esto de arduino y no tengo ni idea de programar de ahi que pida ayuda.

    pd: el arduino maestro llevaria un lcd 1602 para ver la temperatura.

    muchas gracias por su tiempo, un saludo

    1. Hola,

      No necesitas dos Arduinos ni bluetooth, usa un Arduino con un relé y un sensor de temperatura, todo colocado en la habitación, así te sera mas sencillo y la funcionalidad es la misma.

      Saludos.

Escriba aquí su comentario