Módulo Bluetooth AT-09 com Arduino

Introdução

Quando pensamos em conectar nossos projetos Arduino sem fio com o celular, por exemplo controlar um robô móvel, a primeira coisa que pensamos é em usar Bluetooth. Existem alguns módulos bem famosos como HC-05/06 que são usados para fazer esse tipo de conexão. Porém com a evolução do padrão Bluetooth outros módulos foram sendo lançados como por exemplo a AT-09 que é um módulo que já trabalha com Bluetooth versão 4.0 e BLE com praticamente o mesmo preço dos seu antecessores. Nesse post vamos conhecer alguns detalhes do módulo AT-09 e fazer alguns experimentos com ele.

Recursos do AT-09

O módulo AT-09 é um módulo Bluetooth com interface UART/Serial semelhante aos populares HC-05/06 mas que tem como diferencial o fato de usar um SoC System Texas Instruments CC2540 ou CC2541 BLE  4.0 (Bluetooth-Low-Energy). O Bluetooth BLE e o Bluetooth clássico geralmente são utilizadas para finalidades bem diferentes. O BLE é utilizado em casos onde a troca de dados é baixa, dessa forma o módulo pode constantemente entrar em modo IDLE (Sleep) economizando energia.

Figura 1: Modulo AT-09.

Na imagem abaixo temos um pequeno comparativo entre os módulos HC-05/06 e o AT-09.

Figura 2: Comparativo entre os módulos Bluetooth.

Note que tanto HC-05/06 quanto o AT-09 podem trabalhar nos modos Slave ou Master mas os dois tipos de módulos não conseguem se conectar entre si. Os módulos HC-05/06 suportam autenticação através de um PIN, mas alguns modelos baseados no HM-10, como é o caso do AT-09, não suportam essa função.

Configuração do módulo 

Nesse primeiro momento vamos configurar um nome familiar para reconhecermos nosso módulo quando fizermos a busca de dispositivos Bluetooth. Neste post usei o Arduino Nano mas você pode usar em qualquer placa Arduino.

Componentes Necessários

Montando o Projeto

A montagem deste projeto, pode ser feita seguindo a ordem dos fios mostrada na imagem abaixo.

Figura 3: Montagem do circuito.

Na montagem cabem algumas observações. 

Note que a montagem tem o pino de reset curto-circuitado com o ground, isso é feito para que utilizemos somente o módulo de interface usb-serial presente na placa para trocar mensagens com o módulo bluetooth.

O módulo AT-09 pode ser alimentado com tensões de 3.6 – 6V, mas os pinos de comunicação funcionam com nível de 3.3V não tolerante a 5V, então usamos um divisor resistivo no pino RX do módulo para que não receba 5V do Arduino.

Conectando o Arduino no Computador 

Conecte o Arduino ao computador e abra a Arduino IDE e depois o Monitor Serial. Certifique-se que as opções NL e CR estão selecionadas.

Figura 4: Serial Monitor.

Envie o comando at para checar a conexão com o módulo. Se ele estiver conectado corretamente e não estiver trocando dados com nenhum outro dispositivo Bluetooth ele deve retornar uma resposta “OK”.

Para saber ou alterar o nome do módulo use o comando digite at+name.(Obs: Ao trocar o nome não é necessário usar espaço depois do comando).

                   

Figura 5: Alterando o nome do módulo.

Verifique se o seu módulo está em modo Slave ou Master utilizando o comando at+role. Será retornado um valor 0 se o módulo estiver em modo Slave e 1 para Master. Para trocar de modo use o comando acompanhado do modo. Ex at+role1 para modo Master

Figura 6: Obtendo o status do modo de operação.

Opcionalmente você poderá redefinir o módulo para configurações de fábrica com os comandos at+default e at+renew.

Experimento – Troca de dados com Smartphone 

Nesse exemplo vamos fazer algumas trocas de dados entre o Arduino e um celular. O Arduino irá enviar retorno da função millis() e poderá receber um comando para controlar o Led conectado ao pino 13. Vale a pena destacar que o módulo deve está configurado para o modo Slave.

Componentes Necessários

Montando o Projeto

A montagem deste projeto, pode ser feita seguindo a ordem dos fios mostrada na imagem abaixo.

Figura 7: Montagem do circuito.

Programando

Segue abaixo o código para esse exemplo.

Colocando para Funcionar

Nesse Post faremos os testes utilizando um celular Android e o aplicativo BLE Scanner da Bluepixel Technologies. 

Figura 8: BLE Scanner.

Tendo o aplicativo instalado e aberto e o Bluetooth do seu celular ativado, procure o dispositivo pelo nome que você escolheu no tópico anterior ou MLT-BT05. Neste caso o nome do meu dispositivo é “MeuDispositivoBLE”.

Figura 9: Lista de dispositivos BLE detectados.

Clique em custom service e ative as notificações. Observe que o campo value é alimentado com dados recebidos do Arduino via Bluetooth.

Figura 10: Recebendo dados via Bluetooth.

Pressione write value para enviar uma mensagem para o Arduino. No código usamos caracter ‘1’ para ativar e ‘0’ desativar o led.

Figura 11: Enviado comandos via Bluetooth.

Bom por hoje é tudo, aguardo você no próximo post. Qualquer dúvida ou sugestão deixe registrado no campo de comentários. Se interessou pelo módulo AT-09? Visite o site da loja e adquira o seu módulo AT-09 hoje mesmo.

Yure Albuquerque

Graduando em Tecnologia Mecatrônica Industrial. Tenho experiência com Arduino e Raspberry Pi. Atualmente experimentando novas tecnologias como ESP32 e compartilhando no blog da Smart Kits.

Post navigation

2 Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Usando Múltiplos Sensores de Distância Laser VL53L0X

Como Usar o Módulo MP3 Player JQ6500-16P

Boas práticas com placas de desenvolvimento