Modo de comando AT del módulo Bluetooth HC-05 y HC-06

ACTUALIZADO el 18 de julio: ahora puede ingresar al modo AT de HC-05 usando una placa Arduino, (arduino uno usado en este tutorial)

ACTUALIZADO el 7 de julio: tuve la oportunidad de probar un módulo HC06. Esta guía ahora cubre también el módulo HC-06. :)

Tener múltiples módulos bluetooth con el mismo nombre puede ser confuso. A veces puede requerir cambiar la configuración predeterminada, como la velocidad en baudios o la función maestro / esclavo del módulo. Esta guía muestra cómo ingresar al modo de comando AT del módulo Bluetooth HC05 / HC-06 con la ayuda del convertidor USB a TTL. Alternativamente para HC-05, puede usar una placa arduino.

Requisitos:

1.Módulo Bluetooth HC-05 / HC-06 con placa de conexión.

2. Convertidor USB a TTL: utilicé el convertidor PL2303HX usb a ttl. Cualquier otro convertidor de usb a ttl también lo hará./Arduino board, arduino uno utilizado en este tutorial, otras placas deberían funcionar.

3. Arduino IDE / Tera Term: se puede descargar desde aquí o si no desea descargar arduino, descargue Tera Term desde aquí.

Paso 1: identificación de su módulo

Lo primero que debe hacer es identificar su módulo. Puede ser HC05 o HC06. Ambos módulos tienen la misma funcionalidad, excepto el pinout. Además, HC05 puede actuar como maestro y esclavo, mientras que HC06 funciona solo como esclavo. Es difícil diferenciar entre los dos solo viendo. Una forma probable sería revisar la parte posterior del tablero de conexiones. Si tiene "JY-MCU" escrito en la parte posterior, probablemente sea un HC06. El mío tiene escrito "ZS-040" y es un HC05. Y el módulo HC06 que probé tenía un letrero bluetooth detrás con tres huellas de pcb (consulte la figura 2). Para confirmar la identidad del dispositivo, puede encender el módulo, buscar un nuevo dispositivo en su PC o dispositivo móvil y buscar HC05 o HC06 en la lista de dispositivos encontrados.

Paso 2: Pinout e ingresar al modo AT

PINS: los pines que se encuentran en el tablero de conexiones son,

CLAVE: Este pin debe ser elevado para ingresar al modo AT.
VCC: el rango indicado es de 3.6 a 6 voltios. Para estar más seguro, debe conectarlo a 3.3 voltios.
GND: tierra.
RXD: pin de entrada en serie.
TXD Pin de salida en serie.
ESTADO: Puede o no estar conectado a ningún pin. Supuestamente emite el estado de la conexión Bluetooth. Este pin no será necesario.

Algunos de los paneles de conexión tienen un pin EN o incluso un pin WAKE UP en lugar del pin KEY. Ninguno de ellos parece estar conectado a ningún pin del módulo. Pero eso no importa porque no los necesitaríamos de todos modos.

Una vez que identificó el módulo, ahora es el momento de ingresar al modo AT.
Para HC05: conecte el pin Rx del módulo Bluetooth al pin Tx del convertidor USB a TTL y el pin Tx de Bluetooth al pin Rx del convertidor. También conecte su tierra pero no conecte el Vcc todavía. Primero tendrás que acortar el pin de la llave con el Vcc. Conecte el pin de la llave y Vcc juntos en la placa de pruebas, o de cualquier otra manera. Después de que todos los otros pines estén conectados, conecte Vcc del módulo bt a USB a Vcc del convertidor TTL. Ahora el led del módulo parpadeará a intervalos de 2 segundos. Eso significa que ha entrado en el modo AT. Si el LED parpadea más rápido, no se ingresó al modo AT. Desconecte Vcc, verifique su circuito e intente nuevamente. Si no funciona, existe la posibilidad de que su pin KEY del módulo no esté realmente soldado a la KEY del chip principal, es decir, el pin 34. Puede verificar eso con la ayuda de multímetro.

Si usa un arduino uno, conecte el pin Rx del módulo Bluetooth al pin 11 de Arduino Uno (supuestamente el mismo para arduino mega), y el pin Tx de Bluetooth al pin 10 de Arduino. También conecte el pin de la llave del módulo al pin 9 de arduino y tierra a tierra, pero aún no conecte el Vcc. Primero debe encender el arduino y luego conectar Vcc como lo hizo en el caso del convertidor USB a TTL.

Para HC06: simplemente conecte la Rx del módulo a la Tx del convertidor usb-ttl y la Tx del módulo. Conecte tierra y Vcc. El módulo está en modo AT. No lo vi venir, ¿verdad? : P Resulta que el módulo HC06 está configurado permanentemente para ser esclavo y siempre está en modo AT cuando no está emparejado con ningún otro dispositivo. Por lo tanto, no hay parpadeo del LED de confirmación de que esté en modo AT como lo ha hecho HC05. Simplemente encienda el módulo y pase los comandos AT para modificar la configuración predeterminada.

Resumen de la conexión:

HC05 USB a TTL Arduino
Vcc Vcc Vcc
Rx Tx pin 11
Tx Rx pin 10
Gnd Gnd Gnd
Clave Vcc pin 9

HC06 USB a TTL

Vcc Vcc
Rx Tx
Tx Rx
Gnd Gnd

Paso 3: si el pin clave no está presente o no está conectado

Solo para HC05 : como se indicó anteriormente, algunos modelos de la placa de conexión no tienen el pin de la llave, sino que tienen un pin EN (habilitar) o un pin WAKE UP que puede o no estar conectado a cualquier pin al igual que el pin STATE. En ese caso, tendrá que soldar un cable al pin 34 del módulo bt. Soldé un encabezado macho al mío, pero si no puedes soldar o no quieres, puedes sostener un cable (el extremo puntiagudo de un cable de puente macho a macho sería conveniente) mientras conectas el Vcc a 5 voltios. Una vez que el módulo bt está en modo AT, puede liberar el cable.

HC06 no requiere pasador de llave.

Paso 4: Configuración de la conexión

Para HC05:

Una vez que el módulo esté en modo AT, abra arduino. Vaya a herramientas> puerto serie> seleccione el puerto com al que está conectado su convertidor USB a TTL (para averiguarlo, vaya al administrador de dispositivos de su PC> puertos (COM y LPT)). Ahora abra el monitor en serie. El módulo bt ahora se está comunicando a una velocidad en baudios de 38400. Por lo tanto, cambie la velocidad en baudios a 38400 en la esquina inferior derecha del monitor en serie. También cambie "sin final de línea" a "NL y CR" que se encuentra justo al lado de la velocidad en baudios.

Si no tiene Arduino IDE, descargue el término Tera (que es un excelente emaluador de terminal). Término abierto de Tera. Se abrirá una ventana emergente, seleccione Serie y elija el puerto de comunicación al que está conectado el convertidor usb a ttl. Presione ok y se establecerá una conexión. Ahora vaya a configuración> puerto serie> establezca la velocidad en baudios en 38400. Después de configurar la velocidad en baudios vaya a configuración> terminal> cambie la nueva línea a CR + LF desde el menú desplegable. También marque la casilla de eco local en nueva línea. Ahora la configuración está completa.

Si utiliza la placa arduino (UNO / MEGA), copie y pegue el siguiente código, que es solo una modificación del ejemplo de Software Serial incluido en los ejemplos de arduino.

//////////////////////////////////////////////////// //////////////////////////////////////////////////// ////////////////

#incluir

SoftwareSerial mySerial (10, 11); // RX, TX

configuración nula () {

Serial.begin (9600);

pinMode (9, SALIDA); digitalWrite (9, ALTO);

Serial.println ("Ingrese los comandos AT:");

mySerial.begin (38400);

}

bucle vacío ()

{

if (mySerial.available ())

Serial.write (mySerial.read ());

if (Serial.available ())

mySerial.write (Serial.read ());

}

//////////////////////////////////////////////////// //////////////////////////////////////////////////// /////////////////////

Cargue el código en la placa arduino, una vez que se carga el código, abra el monitor en serie, cambie "sin final de línea" a "NL y CR" en la parte inferior, ciérrelo y desconecte la placa arduino del usb. Ahora vuelva a conectar arduino a usb, conecte vcc del módulo bluetooth a arduino de 5 voltios y abra el monitor en serie. El led del módulo debe parpadear a intervalos de 2 segundos. Eso significa que ha entrado en el modo AT. Ahora está listo para ingresar comandos AT.

Para HC06:

Ahora hay un pequeño inconveniente para HC06, no espera ningún carácter de terminación para cada entrada de comando AT. En cambio, actúa con el personaje que ingresaste después de un segundo. Por lo tanto, si no puede completar una entrada de comando en un segundo, se ignorará. Debido a este comportamiento, puede ser extremadamente difícil realizar la configuración de entrada manual utilizando el software Hyper-terminal de Windows. Se debe utilizar un software de terminal que permita el envío por lotes de varios caracteres. Encontré que Arduino funciona bien. Por otro lado, si usa el término Tera, debe escribir los comandos AT en un bloc de notas, luego copiarlo y pegarlo en el término Tera. Al hacer clic derecho en la consola de términos de Tera, se pegará automáticamente la línea copiada y se ejecutará de inmediato.

Entonces, una vez que el módulo esté conectado al convertidor usb-ttl y encendido, abra arduino, seleccione el puerto usb-ttl com, configure la velocidad en baudios a 38400. No se deben aplicar otras configuraciones a diferencia de HC05. Y para Tera therm, seleccione el puerto com apropiado, vaya a configuración> puerto serie> establezca la velocidad en baudios a 38400, vaya a configuración> terminal> marque la casilla de eco local y todo está configurado.

Paso 5: Comandos AT

Para HC05: escriba "AT" (sin las comillas) en el monitor en serie y presione Intro. si aparece "OK", entonces todo está bien y el módulo está listo para tomar el comando. Ahora puede cambiar el nombre del módulo, recuperar la dirección o la versión o incluso restablecer la configuración de fábrica. Para ver el nombre predeterminado, escriba AT + NAME. Se le solicitará el nombre, por defecto es HC-05 o JY_MCU o algo así. Para cambiar el nombre simplemente escriba AT + NAME = su nombre deseado.

Aquí hay una nota importante, si el pin de la llave no es alto, es decir, no está conectado a Vcc mientras recibía comandos AT (si no soldaba el cable y lo soltó después de que el módulo ingresó al modo AT), ni siquiera mostrará el nombre predeterminado después de dar el comando correcto. Pero aún puede cambiar el nombre mediante el comando mencionado anteriormente. Para verificar si el nombre realmente ha cambiado, busque el dispositivo desde su PC / móvil. Aparecerá el nombre cambiado. Para cambiar la velocidad de transmisión, escriba AT + UART = velocidad de transmisión deseada. Salga enviando el comando AT + RESET.

Los comandos AT más útiles son

AT: Cierra la conexión.
AT + NAME: Ver nombre predeterminado
AT + ADDR: ver dirección predeterminada
VERSIÓN AT +: Ver versión
AT + UART: ver velocidad de transmisión
AT + ROLE: Vea el rol del módulo bt (1 = maestro / 0 = esclavo)
AT + RESET: restablecer y salir del modo AT
AT + ORGL: restaurar la configuración de fábrica
AT + PSWD: ver contraseña predeterminada

Se proporcionan comandos AT más detallados en el 1er pdf.

Para HC06: En el monitor serie arduino, escriba "AT" (sin las comillas) y presione Intro, "OK" confirmará el modo AT. A diferencia de HC05, no puede ver el nombre predeterminado o la velocidad en baudios. Solo puedes cambiarlos. Para cambiar el nombre, escriba AT + NAMEEDIRAME NAME, observe que no debe haber espacio entre el comando y el nombre. El módulo responderá OK a su nombre de conjunto. Por ejemplo, AT + NAMEPROTOTYPE establecerá el nombre en PROTOTYPE. Para cambiar la velocidad en baudios, escriba AT + BAUDX, donde X = 1 a 9.

1 juego a 1200bps
2 configurado a 2400bps
3 configurado a 4800bps
4 establecido en 9600bps (predeterminado)
5 establecido a 19200bps
6 configurado a 38400bps
7 configurado a 57600bps
8 configurado a 115200bps
por lo tanto, enviar AT + BAUD4 establecerá la velocidad en baudios a 9600.

Para Tera Term, escriba los comandos en otro lugar y péguelo en la consola haciendo clic derecho. No es necesario presionar enter. El comando se ejecutará de inmediato y se confirmará.

Los comandos HC 06 AT son limitados, todo lo que pude encontrar se da aquí.

AT: verifique la conexión
AT + NAME: cambia el nombre. No hay espacio entre el nombre y el comando.
AT + BAUD: cambia la velocidad de transmisión, x es el código de velocidad de transmisión, no hay espacio entre el comando y el código.
AT + PIN: cambiar pin, xxxx es el pin, nuevamente, no hay espacio.
VERSIÓN AT +

Más detalles en 2do pdf.

Archivos adjuntos

  • HC-0305 serail module AT commamd set 201104 revisado_2.pdf Descargar
  • EGBT-045MS-046S Manual del módulo Bluetooth rev 1r0.pdf Descargar

Artículos Relacionados