Módulos Bluetooth da Anaren – AIR for WICED

AIR for WICED

Se você precisa de comunicação Bluetooth Low Energy no seu produto, a linha AIR for WICED da Anaren é uma excelente opção a ser considerada. Com ela é fácil desenvolver a solução como um todo, tanto o firmware para o módulo quanto o aplicativo para smartphone/tablet.

 

 

Sobre a Anaren

 

Logotipo da Anaren
Figura 1 - Logotipo da Anaren

 

A Anaren é uma empresa americana de componentes eletrônicos voltada para aplicações em micro-ondas e radiofrequência. Ela é dividida em dois grupos, um dedicado a prover soluções para a área militar e aeronáutica e outro focado no mercado consumidor.

 

Um dos destaques em seus produtos é a linha AIR (Anaren Integrated Radio). Esta linha se divide em 4 segmentos, todos eles compostos por módulos de rádio:

  • AIR for Proprietary RF: módulos de rádio não processados. Provê soluções configuráveis de protocolo e de frequência de operação;
  • AIR for Zigbee: módulos ZigBee microcontrolados;
  • AIR for WICED: módulos BLE (Bluetooth Low Energy). É o que iremos apresentar neste artigo;
  • AIR for Wireless Audio: módulos voltados para aplicações em áudio sem fio.

 

 

Os módulos AIR for WICED

 

A Anaren fabrica dois módulos para a linha AIR for WICED: o A20737A e o A20737C. A diferença entre eles é que o A20737A contém antena integrada no próprio módulo e o A20737C contém um conector padrão U.FL para antena externa.

 

Os módulos da Anaren
Figura 2 - Os módulos da Anaren

 

Ambos são baseados no chipset Broadcom BCM20737.

 

Algumas características desses dois módulos:

  • Alimentação de 1.7V a 3.6V (pode ser alimentado por uma bateria CR2032 de lítio);
  • Temperatura de operação industrial (-40°C a +85°C);
  • Processador de 32 bits integrado (ARM Cortex M3);
  • EEPROM integrada de 512 kbits;
  • Até 3dBm de potência de saída, sensibilidade de -94dBm;
  • Interfaces para periféricos: SPI, I2C, PWM, UART, GPIO;
  • Conversor AD de 10 bits;
  • Dimensões reduzidas: 11 mm x 13 mm x 2,5 mm.

 

 

O Kit de Desenvolvimento

 

A Anaren tem um kit bem interessante para iniciar o desenvolvimento: é o A20737A-MSDK1.

 

O kit de desenvolvimento A20737A-MSDK1
Figura 3 - O kit de desenvolvimento A20737A-MSDK1

 

O kit contém, entre outras coisas:

  • Porta USB para alimentação e para gravar o firmware;
  • Buzzer;
  • LED de três cores (RGB);
  • Sensor de temperatura infravermelho;
  • Acelerômetro;
  • Magnetômetro;
  • Joystick;
  • Transmissor/receptor de infravermelho;
  • Expansor de GPIO;
  • Suporte para bateria CR2032.

 

O kit A20737A-MSDK1 em detalhes
Figura 4 - O kit A20737A-MSDK1 em detalhes

 

A grande diversidade de periféricos facilita o aprendizado e prototipação dos mais variados tipos de aplicação.

 

 

O Ambiente de Desenvolvimento

 

Como todo módulo baseado em chipset IoT da Broadcom, o A20737A/C é compatível com o ambiente de desenvolvimento WICED.

 

WICED significa Wireless Internet Connectivity for Embedded Devices. É uma linha que foi criada com o intuito de ser “aberta”, sem necessidade de assinar um NDA (Non-Disclosure Agreement) por parte do cliente para se ter acesso à informação (datasheets, SDK, etc...).

 

O ambiente de desenvolvimento WICED (WICED SDK) é caracterizado pelo uso de ferramentas/bibliotecas livres e de código aberto, como o Eclipse, GCC, FreeRTOS, porém com opção de uso de bibliotecas comerciais caso desejado.

 

WICED SDK
Figura 5 - WICED SDK

 

Com o WICED SDK você desenvolve o firmware que roda no módulo. A linguagem utilizada é C: você tem um bom controle do que acontece no firmware, porém o ciclo de desenvolvimento é mais demorado.

 

Visando facilitar e agilizar o desenvolvimento, a Anaren criou o Atmosphere!

 

 

O Atmosphere

 

O Atmosphere é um ambiente de desenvolvimento baseado na Web e permite prototipar rapidamente uma solução que usa Bluetooth Low Energy. Você precisa apenas se cadastrar no site da Anaren para criar seus projetos. Não tem custo algum. E uma das grandes vantagens dele é que você desenvolve a solução como um todo: o firmware do módulo e o aplicativo para smartphone/tablet.

 

O Atmosphere
Figura 6 - O Atmosphere

 

O Atmosphere é composto de duas áreas, uma à esquerda e outra à direita.

 

A área da esquerda é a área onde se desenvolve a parte lógica da aplicação como um todo (firmware + aplicativo para smartphone/tablet). Nela você monta um diagrama de blocos com a lógica a ser obedecida. Blocos podem representar diversas coisas: uma leitura de um pino (GPIO) que está ligado a um push-button, uma saída PWM que está ligada a um buzzer. Blocos também podem representar tarefas, elementos lógicos, laços, etc. Há ainda as conexões entre os blocos, que representam eventos e ações, como por exemplo um clique de botão acionar um LED.

 

O diagrama de blocos
Figura 7 – O diagrama de blocos

 

O interessante do uso do diagrama de blocos é que você não precisa ter conhecimentos avançados de desenvolvimento de software nem das bibliotecas utilizadas para desenvolver a aplicação: basta arrastar os blocos certos e elaborar a lógica que você deseja. Mas se quiser (e se precisar), você pode também editar o código fonte: há outra aba que mostra parcialmente o código que será gerado.

 

 O código fonte gerado
Figura 8 - O código fonte gerado

 

Já a área da direita é a área onde você cria a interface do aplicativo para smartphone/tablet.

 

A interface do aplicativo para smartphone/tabled
Figura 9 - A interface do aplicativo para smartphone/tabled

 

Nela você arrasta elementos gráficos como imagens, botões, sliders, texto, barras de progresso, etc. Cada elemento gráfico é representado também no diagrama de blocos, de forma que você consegue mudar o estado dos elementos através da lógica estabelecida no diagrama de blocos. E o contrário também vale, você pode usar um elemento gráfico para acionar/controlar algo via diagrama de blocos.

 

Dois exemplos simples: você pode usar um campo de texto para mostrar uma temperatura, e pode usar um botão para acionar um pino do módulo (GPIO).

 

 

Compilando e gravando

 

Uma vez pronta a aplicação, é só compilar e embarcar no módulo.

 

O Atmosphere tem um menu que permite compilar o projeto (Project/Build). Uma vez compilado, os binários ficam disponíveis dentro do sistema da Anaren. Mas como fazer para gravar?

 

A Anaren disponibiliza um aplicativo chamado Atmosphere Programmer para este fim. Existem versões para Windows, Mac OSX e Linux. Este aplicativo solicita a sua conta na Anaren e baixa automaticamente o binário gerado na compilação do Atmosphere na hora da gravação.

 

Atmosphere Programmer
Figura 10 - Atmosphere Programmer

 

No caso de estar usando o kit de desenvolvimento, a gravação se dá através da porta USB, que no final das contas é representada no sistema operacional por uma porta serial.

 

 

Testando

 

E o aplicativo para smartphone/tablet? A Anaren tem, tanto para Android quanto para iOS, um aplicativo container que carrega a interface que você desenvolveu no Atmosphere. Basta que você use a sua conta da Anaren durante a inicialização do mesmo.

 

Tela inicial do aplicativo para smartphone/tablet
Figura 11 - Tela inicial do aplicativo para smartphone/tablet

 

Uma vez carregado o aplicativo para smartphone/tablet, basta estabelecer uma conexão BLE com o módulo para que se possa usá-lo.

 

A Anaren tem um projeto “demo” para testar o kit, onde boa parte de seus periféricos pode ser usada. Dessa forma fica mais fácil aprender se baseando no que já existe pronto.

 

Neste projeto temos as seguintes interfaces gráficas:

  • Uma bússola que mostra o norte magnético baseado em medições do magnetômetro;
  • Um nível de bolha que mostra informações com base no acelerômetro;
  • Um joystick gráfico que representa o estado do joystick do kit;
  • Três sliders para controlar a intensidades das cores vermelha, verde e azul de um LED RGB;
  • Um campo para mostrar a temperatura medida do sensor infravermelho.

 

Projeto "demo" no smartphone
Figura 12 - Projeto "demo" no smartphone

 

O projeto “demo”, bem como diversos outros projetos, pode ser carregado através do menu Help/Sample Projects do Atmosphere.

 

 

Saindo da prototipação e entrando em desenvolvimento final

 

Convenhamos, rodar a aplicação do smartphone/tablet dentro de um aplicativo container da Anaren, onde é necessária uma conta da Anaren e acesso à Internet, serve para prototipação, mas não é uma boa ideia para um produto.

 

Por isso, a Anaren permite que você baixe o código fonte da sua aplicação para smartphone/tablet. Isso pode ser feito através do menu Project/Download App Source. O código fonte é compatível com Android e iOS: é um projeto do PhoneGap.

 

Código fonte do aplicativo para smartphone/tablet
Figura 13 - Código fonte do aplicativo para smartphone/tablet

 

Você também pode baixar o código fonte em C do firmware, que é compatível com a plataforma WICED. Após descompactado (vem num arquivo zip), você pode inclui-lo no projeto do Eclipse que vem com o WICED SDK e trabalhar diretamente nele, tendo controle absoluto do que está acontecendo “por baixo dos panos”..

 

 

Conclusão

 

A solução da Anaren para Bluetooth Low Energy tem como principais características:

  • Um módulo BLE processado com diversas interfaces para periféricos;
  • Um kit de desenvolvimento com diversos periféricos para serem testados;
  • Um ambiente de desenvolvimento completo, onde você pode desenvolver tanto o firmware para o módulo quanto o aplicativo para smartphone/tablet;
  • A flexibilidade de se poder trabalhar com o WICED SDK e ter o controle completo do firmware.

 

 

Referências

 

Anaren: https://www.anaren.com/

Linha AIR for WICED: https://www.anaren.com/air/products/air-for-wiced-smart

Atmosphere: https://atmosphere.anaren.com/

Atmosphere IDE: https://atmosphere.anaren.com/developer/

Atmosphere Forum: https://atmosphere.anaren.com/forum

Atmosphere Wiki: https://atmosphere.anaren.com/wiki/Main_Page

Vídeos: https://atmosphere.anaren.com/video-library

 

(*) esse post foi patrocinado pela MACNICA

NEWSLETTER

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Obrigado! Sua inscrição foi um sucesso.

Ops, algo deu errado. Por favor tente novamente.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

3
Deixe um comentário

avatar
 
2 Comment threads
1 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
3 Comment authors
Denis NevesTiago César BusattaDaniel Alves Grillo Recent comment authors
  Notificações  
recentes antigos mais votados
Notificar
Denis Neves
Visitante
Denis Neves

Esse módulo não possui Homologação ANATEL, existem outras opções de BLE homologados muito mais interessantes.

Daniel Alves Grillo
Visitante
oengenheiro

Já é homologado pela Anatel?

Tiago César Busatta
Visitante
Tiago César Busatta

Não, ainda não é homologado.