Configuración del módulo bluetooth HC-06 usando comandos AT Deja un comentario

En este tutorial explicaremos como configurar nuestro módulo HC-06, Aprenderemos como cambiar la velocidad de transmisión, el nombre y código de vinculación de nuestro hc-06 entre otras cosas.

Este tutorial solo se aplica al HC-06, para el HC-05 la configuración es diferente.

EL modulo Bluetooth HC-06 viene configurado de fábrica como Esclavo y no se lo puede cambiar, pero otras características si las podemos configurar usando comandos AT, estas caracterizas vienen por defecto con valores predeterminados que  se muestran a continuación:

– Nombre por defeco: “linvor” o “HC-06”

– Código de emparejamiento por defecto: 1234

– La velocidad por defecto (baud rate): 9600

EL Modulo HC-06 tiene dos estados los cuales es importante conocer:

Modo AT (Desconectado):

– Entra a este modo tan pronto alimentas el modulo, y cuando no se ha establecido una conexión bluetooth con ningún otro dispositivo
– EL LED del módulo está parpadeando (frecuencia de parpadeo del LED es de 102ms)
– En este modo es cuando se debe enviar los comandos AT en caso se quiera configurar, si se envían otros datos diferente a los comandos AT el HC-06 los ignorará.

Modo Conectado

  

– Entra a este modo cunado se establece una conexión con otro dispositivo bluetooth.

– El LED permanece prendido sin parpadear

– Todos los datos que se ingresen al HC-06 por el Pin RX se trasmiten por bluetooth al dispositivo conectado, y los datos recibidos se devuelven por el pin TX. La comunicación es transparente

– En este Modo el HC-06 no puede interpretar los comandos AT

     

Entendido lo anterior vamos realizamos las conexiones para configurar el HC-06.

Se puede hacer un programa en Arduino que haga toda la configuración, pero nosotros lo haremos manualmente desde la PC, esto lo podemos hacer de dos formas:

Hacer la comunicación entre la PC y el módulo de forma indirecta a través de un Arduino:

Comandos AT con Arduino

Las conexiones serían las siguientes:

Comandos AT HC-06 con Arduino

Ahora es necesario compilar y cargar el siguiente sketch que hemos preparado, que como vemos lee el Monitor Serial de nuestro IDE y se lo envía serialmente hacia los pines RXD y TXD de nuestro módulo HC-06.

#include <SoftwareSerial.h>   // Incluimos la librería  SoftwareSerial  
SoftwareSerial BT(10,11);    // Definimos los pines RX y TX del Arduino conectados al Bluetooth
 
void setup()
{
  BT.begin(9600);       // Inicializamos el puerto serie BT que hemos creado
  Serial.begin(9600);   // Inicializamos  el puerto serie  
}
 
void loop()
{
  if(BT.available())    // Si llega un dato por el puerto BT se envía al monitor serial
  {
    Serial.write(BT.read());
  }
 
  if(Serial.available())  // Si llega un dato por el monitor serial se envía al puerto BT
  {
     BT.write(Serial.read());
  }
}

Hacer la comunicación entre la PC y el módulo de forma Directa usando un conversor USB-Serial:

  

Comandos AT HC-06 con USB to Serial TTL

Las conexiones serían las siguientes:

Comandos AT HC-06 con PL2303

Como se observa los datos le llegan directamente desde la PC a través del módulo USB a Serial, para esto se pueden usar cualquier modelo de conversor como el CP2102 y PL2303 pero también se puede hacer a través de un módulo MAX232 en caso tengan un puerto físico serial en su PC

Configurando nuestro Módulo HC-06

En nuestro ejemplo usaremos un conversor USB serial PL2303 que se ha instalado como puerto serial  COM5, por lo que antes de abrir el Monitor serial, en nuestro IDE Arduino debemos escoger dicho Puerto.

Es bueno recordar que para enviar los comandos AT nuestro HC-06 debe estar en Modo AT esto significa sin conexión bluetooth con otro dispositivo o verificar que LED del HC-06 esté parpadeando.

Una vez hecho las configuraciones y conexión correspondientes, abrimos el Monitor serial del IDE de Arduino, pero puedes usar cualquier otro monitor serial si lo deseas.

En la parte inferior debemos escoger “No hay fin de línea”  y la velocidad “9600 baud” (la velocidad por defecto de nuestro HC-06, si se lo ha cambiado poner la velocidad correspondiente)

Monitor Serial IDE Arduino

Echo esto Podemos empezar a enviar los comandos AT a nuestro Bluetooth

Test de comunicación

Lo primero es comprobar si nuestro bluetooth responde a los comandos AT

Enviar: AT

Recibe: OK

Si recibimos como respuesta un OK entonces podemos continuar, sino verificar las conexiones o los pasos anteriores.

Cambiar nombre de nuestro módulo HC-06


Por defecto nuestro módulo bluetooth se llama “HC-06” o “Linvor” esto se puede cambiar con el siguiente comando AT

Enviar: AT+NAME   Ejm: AT+NAMERobot

Respuesta: OKsetname

El nombre puede ser de hasta 20 caracteres como máximo

Cambiar Código de Vinculación

Por defecto viene con el código de vinculación (Pin) “1234”, para cambiarlo hay que enviar el siguiente comando AT

Enviar: AT+PIN   Ejm: AT+PIN1465

Respuesta: OKsetPIN

Configurar la velocidad de comunicación:


La velocidad por defecto es de 9600 baudios, para cambiarlo se hace uso del siguiente comando AT:

Enviar: AT+BAUD

Respuesta: OK

Donde equivale a una velocidad de  , los valores pueden ser:

Numero—baudrate

1 ———1200

2 ———2400

3 ———4800

4 ———9600

5 ———19200

6 ———38400

7 ———57600

8 ———115200

Ejemplo:

Enviar: AT+BAUD3

Respuesta: OK4800

Nota: Después de cambiar la velocidad, para continuar enviando comando AT, hay que hacerlo con la nueva velocidad, para eso si se está usando un conversor USB serial tan solo hay que cambiar la velocidad en el monitor Serial (parte inferior); pero si está enviando los comandos AT a través de una Arduino es necesario volver a programar y cargar un nuevo sketch con la nueva velocidad.

Otros comandos AT de utilidad:

  

Obtener la versión del firmware:

Enviar: AT+VERSION

Respuesta: OK<Versión>   Ejm: OKLinvor1.8

Configuración de Paridad (solo configurable para versiones V1.5 o superiores)

Sin Paridad (Este es el valor por defecto)

Enviar: AT+PN

Respuesta: OK NONE

Paridad Impar

Enviar: AT+PO

Respuesta: OK ODD

Paridad Par

Enviar: AT+PE

Respuesta: OK EVEN

En la siguiente imagen podemos ver la secuencia de datos recibidos por el monitor serial en el mismo orden en que se listaron los comandos AT:

Salida del Monitor Serial despues de enviar comandos AT

Tutoriales Relacionados

Tutorial Básico de Uso del Módulo Bluetooth HC-06 y HC-05

Configuración del módulo bluetooth HC-05 usando comandos AT

Instalación Del IDE Arduino

Deja una respuesta

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Enviar Whatsapp
Hola 👋
¿En qué podemos ayudarte?