Tabla de contenido:

OldMan y Bluetooth: 5 pasos
OldMan y Bluetooth: 5 pasos

Video: OldMan y Bluetooth: 5 pasos

Video: OldMan y Bluetooth: 5 pasos
Video: Guy Reaches Running Speed of 23.5 MPH 2024, Noviembre
Anonim
OldMan y Bluetooth
OldMan y Bluetooth
OldMan y Bluetooth
OldMan y Bluetooth
OldMan y Bluetooth
OldMan y Bluetooth
OldMan y Bluetooth
OldMan y Bluetooth

Actualización de abril de 2020, gracias a un comentario de un lector, Krasla, ahora puedo entrar en modo de comando con JDY-31s.

Voy a intentar participar en el concurso Sensor.

Entonces, este Lazy Old Geek (L. O. G.) acaba de completar un proyecto de GPS:

www.instructables.com/id/Old-Man-and-the-Arduino-GPS/

y estaba pensando en formas de comunicarse con el GPS. Bueno, tenía algunos módulos Bluetooth viejos por ahí y decidí ver si podía hacerlos funcionar. Ahora bien, estos fueron los módulos Bluetooth HC-05 / HC-06 que pude haber ordenado que funcionaron pero no muy bien.

Así que investigué mucho en Internet. Uno de los mejores recursos que encontré fue Martyn Currey:

www.martyncurrey.com/hc-05-zg-b23090w-bluetooth-2-0-edr-modules/#more-5681

Paso 1: Prueba de Bluetooth

Prueba de Bluetooth 2
Prueba de Bluetooth 2
Prueba de Bluetooth 2
Prueba de Bluetooth 2
Prueba de Bluetooth 2
Prueba de Bluetooth 2

Bien, el siguiente paso es hablar con Bluetooth. Así que tengo un teléfono inteligente Android y probé una aplicación llamada B-BLE. No pude hacer que funcionara. Luego probé "Terminal Bluetooth". Esto funcionó.

Procedimiento Smartphone

Vaya a Google Playstore e instale el terminal Bluetooth.

Configure HC-06 con Seeduino (o CP2102) y conéctelo a la PC, abra el terminal serial Arduino.

En el teléfono inteligente, haga clic en Configuración, busque Bluetooth, haga clic en emparejar nuevo dispositivo. Si es la primera vez que se conecta, debería ver algo similar a esto:

00:12:09:27:18:94

Esta es la dirección MAC del HC-06s. Haz click en eso

Si no es la primera vez, mostrará el nombre de Bluetooth, por ejemplo, my2BT, haga clic en él. Ver imagen

Te pedirá Contraseña, las que tengo son 1234. (Si tienes acceso de comando puedes cambiar la Contraseña). Ver imagen.

En el teléfono inteligente, abra la aplicación Terminal Bluetooth. Debería abrirse con la pantalla de Dispositivos emparejados, vea la imagen, Seleccione el nombre de BT, (my2BT).

Por cierto, aquí es donde el LED parpadeante del módulo BT debería cambiar a fijo.

Debería mostrarse la pantalla Terminal. Ver imagen

Donde dice "Ingresar comando ASCII", escriba algo para enviar a la PC. Luego toque (Enviar ASCII) (tengo algunos de los BTN programados).

Los datos ingresados deben aparecer en la Terminal Serial Arduino de la PC. Ver imagen

Para enviar desde la PC, (lo cambié a (NT y CR) en el cuadro de comando, escriba lo que desea enviar y luego haga clic en (Enviar). Debería aparecer en la pantalla del Terminal Bluetooth, vea la imagen anterior

¡Sí, nos estamos comunicando!

Paso 3: Mi problema

Mi problema
Mi problema
Mi problema
Mi problema
Mi problema
Mi problema

Como mencioné antes, estos módulos están diseñados para entrada de 5V y señales de 3.3v. Para mí, esto es lo peor de ambos mundos. La forma correcta de usar esto es con un Arduino de 5V, luego convierta los niveles TX y RX a los correctos. Algunas personas usan divisores de resistencia. Ahora creo que mi Seeduino, incluso en modo 5V, emite señales de 3.3V, pero otros Arduinos no.

Ahora uso principalmente dispositivos de 3.3V como Adafruit Feather M4 Express. El M4 Express no tiene alimentación de 5V, entonces, ¿cómo puedo usar estos módulos? Una forma es usar el módulo HC-06 sin base, pero es más difícil trabajar con ellos. Lo que decidí hacer fue convertir mis módulos BT solo a 3.3V. Eso es lo que indica el gran 3 amarillo.

Con un poco de ayuda de Internet, se me ocurrió un par de versiones esquemáticas del módulo JY-MCU BT ver imagen y las puse en Eagle Cadsoft, ver zip.

TECHNOBABBLE: El BTI BCM es el Bluetooth y el resto es la placa base. Desafortunadamente, existen muchas placas base diferentes. Algunos no tienen el diodo B1, otros tienen un mosFET de canal P para habilitar el dispositivo. Pero en este caso los principales problemas son B1 y el regulador de 3.3V. Con una entrada de 3.3V, no obtendría 3.3V para el HC-06.

Así que puenteé el pin de entrada VCC (5V) al 3.3V en el pin 12 del módulo. Ahora creo que eso es todo lo que se necesita, pero también quité el regulador (XC6206P332, pero podría ser de otro tipo). Desde un punto de vista técnico, no creo que sea una buena idea básicamente acortar la entrada y salida de un regulador. No voy a explicar esto con mayor detalle ya que cada placa base puede ser diferente. Vea el cable amarillo en la imagen.

Así que ahora estos módulos funcionarán en sistemas de 3.3V.

Paso 4: Adaptador en serie

Adaptador de serie
Adaptador de serie
Adaptador de serie
Adaptador de serie
Adaptador de serie
Adaptador de serie

Entonces, en lugar de usar un Arduino en la PC, también puede usar un convertidor USB-serial. Los viejos Arduino usaban el FTDI232 pero son caros, así que solía usar convertidores seriales USB PL2303. Pero como no pude encontrar un controlador para los modelos más antiguos de Windows 10, comencé a usar CP2102s. Ahora, nuevamente, el problema es que los pines de salida tienen 5 V (que vienen directamente del conector USB). Y hay muchas variedades. De todos modos, generalmente los modifico para 3.3v y los sueldo en un encabezado femenino para que funcione con muchos de mis proyectos de Instructables. Ahora también agregué un regulador de 3.3v (creo que L4931C33) Ver imagen. La mayoría de los circuitos integrados de conversión tienen una salida de 3,3 V, pero creo que la mayoría están limitados a unos 50 mA. De hecho, para hablar con el HC-06, 50 mA es suficiente.

De acuerdo, estos se pueden conectar al HC-06 de la siguiente manera:

BT CP2102

Gnd Gnd

3,3 V 3,3 V

Rx Tx

Tx Rx

Ver imagen

Conecte el CP2102 a la PC USB. Ahora Arduino Serial Terminal no es el más fácil de usar, así que probé Tera Term y Putty, pero no funcionaron muy bien y no pude averiguar cómo configurarlo sin final de línea, así que sigo usando Arduino. Funciona bien.

Paso 5: JDY-30/31 Bluetooth

JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth

Por lo tanto, si busca HC-06 en eBay, será más difícil encontrarlos y, en su lugar, a menudo obtendrá JDY-30. Entonces, como parecían ser más baratos, compré un par en Aliexpress. Se supone que son compatibles.

Algunas personas y proveedores afirman que JDY-30 y JDY-31 son iguales. No estoy muy seguro.

De todos modos, los que obtuve parecen ser compatibles con pines y el mío vino en una placa base similar a la HC-06.

Pruebas: Actualización de abril de 2020: gracias a un comentario de Krasla, ahora puedo conectarme a mi JDY-31 en modo comando. El consejo principal fue que el comando "AT" no obtiene una respuesta, pero otros comandos como "AT + VERSION" funcionan bien. Y necesita agregar CR + LF. Curiosamente, no pude hacer que esto funcione con Tera Term o Putty, pero funciona con Arduino Serial Monitor.

De todos modos, decidí probar esto con Bluetooth. Usando la misma configuración que el HC-06 pude conectarme con Bluetooth a 9600 baudios.

Nuevamente, la primera vez que se empareja, el nombre del dispositivo será una dirección MAC, pero una vez emparejado, el nombre de Bluetooth es: JDY-31-SPP. Funciona bien.

Así que también encontré otro BT llamado JDY-31, Ver fotos. Lo que me gusta de ellos es que tienen agujeros para un cabezal macho sin necesidad de una placa base. Ver fotos. Así que pedí un par de estos.

Esa es mi experiencia hasta ahora con los módulos Bluetooth.

Recomendado: