O Wio Terminal é um disposito IoT “All in One” fabricado pela Seeed Studio, uma empresa sediada na China que desenvolve e fabrica soluções e hardware para projetos de IoT e o público maker em geral.
“All in One” significa isso mesmo: tudo em um, ou seja, o Wio Terminal possui conexão wifi, tela LCD e vários sensores embutidos, o que permite a criação de interessantes projetos de Internet das Coisas ou projetos de automação residencial, por exemplo.
Dispositivos IoT já fazem parte do dia-a-dia de muitas pessoas, como por exemplo na utilização de lâmpadas e interruptores “inteligentes”.
Equipamentos como o Wio Terminal permitem que você crie a automação do seu jeito, com os sensores que você precisa, e com uma interface sob medida para você.
Neste post vamos ver um pouco do hardware e exemplo de configuração e uso do Wio Terminal, gentilmente cedido pela Seeed Studio para os nossos testes.
O que é o Wio Terminal
O Wio Terminal é um dispositivo com microcontrolador ATSAMD51 ARM Cortex-4MF e que pode ser utilizado com MicroPython ou IDE Arduino. Possui conectividade wireless (2.4GHz e 5 GHz), tela LCD de 2.4″ com resolução de 240×320 pixels e clock de 120MHz (podendo chegar a 200MHz).
Com relação a memória, ele possui 4MB de memória Flash e 192KB de RAM, espaço suficiente para sofisticados projetos de IoT (Internet of Things ou Internet das Coisas).
E complementando o item de conectividade, ele possui também conexão bluetooth que suporta BLE 5.0, deixando os seus projetos ainda mais interessantes.
Conexões e mais sobre o hardware
Falamos de microcontrolador, memória, conectividade.. mas o Wio Terminal tem muito mais: acelerômetro, microfone, speaker (“alto-falante”), slot para cartão micro SD, sensor de luminosidade, um “mini joystick”, 3 botões configuráveis, emissor infravermelho (IR) e conector de 40 pinos compatível com Raspberry Pi.
Confira na imagem abaixo:
Isso quer dizer que você pode não apenas usar os vários sensores embutidos no aparelho, mas também conectar o equipamento com outros módulos, sensores e atuadores usando a GPIO.
E falando em conexão externa, o Wio suporta as interfaces SPI, I2C, I2S, UART, tem conversor analógico digital (ADC) e digital analógico (DAC) e portas com função PWM.
Dois conectores Grove permitem que você use inúmeros dispositivos Grove da Seeed junto com o Wio Terminal.
O sistema Grove simplifica bastante o processo de montagem de projetos eletrônicos, pois usa um esquema de cabos “padrão” para interligação de componentes, dispensando a soldagem dos mesmos. É praticamente um sistema “plug-and-play”: você encaixa os sensores e módulos e o resto é programação. Para quem não conhece, vale a pena dar uma olhada.
Programando o Wio Terminal com IDE Arduino
Como dissemos anteriormente, você pode usar o Wio com MicroPython ou IDE Arduino. Neste post, vamos mostrar como programá-lo usando a IDE.
Para ligar o Wio Terminal, basta conectar o cabo USB tipo C (fornecido com o aparelho) e conectá-lo ao computador.
Na lateral, temos uma chave de três posições, onde a posição superior é OFF (desligado), na parte central temos a posição ON (Ligado) e na inferior o RESET, para reiniciar o aparelho:
Deixe a chave na posição ON e entre na IDE do Arduino. No menu Arquivo -> Preferências, coloque a seguinte URL no campo URLs Adicionais para Gerenciadores de Placas:
https://files.seeedstudio.com/arduino/package_seeeduino_boards_index.json
Sua tela deve ficar assim:
Agora vamos instalar as placas na IDE. Acesse o menu Ferramentas -> Placa -> Gerenciador de Placas.
Dentro do Gerenciador de Placas, digite Wio Terminal na parte superior. Procure por Seeed SAMD Boards e clique em seguida em Instalar:
Por fim, basta selecionar a placa Seeeduino Wio Terminal no menu Ferramentas -> Placa:
Feito isso, agora é só carregar o seu programa para a placa.
Testamos o aparelho com o bom e velho Blink. O programa abaixo é o mesmo que você encontra nos exemplos da IDE Arduino, e não é necessária nenhuma alteração para usar com o Wio:
//Programa: Blink led Wio Terminal //Alteracoes e adaptacoes: Arduino e Cia //Baseado no programa de exemplo da IDE Arduino void setup() { //Inicializa o pino digital LED_BUILTIN como saida pinMode(LED_BUILTIN, OUTPUT); } void loop() { //Liga o led digitalWrite(LED_BUILTIN, HIGH); //Aguarda 1 segundo delay(1000); //Desliga o led digitalWrite(LED_BUILTIN, LOW); //Aguarda 1 segundo e reinicia o processo delay(1000); }
Carregue o programa e você verá o led onboard (azul) piscar em intervalos de 1 segundo:
Como você pode ver pelas imagens deste post, nem só de “Blink” vive o Wio Terminal, e na biblioteca de exemplos do dispositivo você encontra programas para utilização do display LCD com gráficos e textos, com bons exemplos como esse daqui:
No próximo post sobre o Wio vamos explorar mais suas funcionalidades e usar os sensores embutidos exibindo os dados em um ambiente gráfico. Até lá!
Gostou? Confira outros posts sobre IoT aqui mesmo no Arduino e Cia!