microBox: acesso ao Arduino por uma shell no estilo do Linux

A biblioteca microBox coloca no Arduino uma shell com comandos no estilo Linux, acessível por meio do monitor serial.

Você já acessou uma shell Linux (ou Unix), com comandos como ls, echo e cat? A intenção da biblioteca microBox é oferecer um ambiente similar, aproveitando o mesmo visual (e um conjunto dos mesmos comandos) para oferecer uma interface interativa com o Arduino.

Com o ambiente da microBox, os recursos do Arduino ficam visíveis na forma de uma árvore de diretórios virtual, cujos arquivos você pode manipular ou consultar, com comandos como cat, cd, echo, exit, loadpar, ll, ls, savepar, watch e watchcsv (e outros que você mesmo inclua na biblioteca, que é expansível).

Na imagem acima você pode ver exemplos de comandos, incluindo (no final) as operações equivalentes a digitalRead, AnalogRead e pinMode. Há muitas outras.

A microBox inclui até confortos como histórico de comandos e completamento automático com Tab.

Os comandos digitados ficam armazenados em um histórico, a tecla Tab completa comandos e parâmetros, e modificações no ambiente podem ser gravadas na memória permanente EEPROM do Arduino. Existe também uma versão com suporte a módulos de rede local esp8266, com qual você passa a poder abrir uma sessão remota no seu Arduino, via rede.

O uso da microBox é uma daquelas situações em que pode ser mais conveniente optar por um terminal serial que não seja o fornecido pelo próprio Arduino, porque este é bastante limitado em termos de recursos e de capacidade de entrada em formatos controlados pelo programa do usuário. Alternativas como o PuTTY, TeraTerm ou os emuladores de terminal nativos do Linux e do OS X (rodando neles o programa screen e passando como parâmetro o dispositivo da porta serial do Arduino) darão resultados superiores.

A ideia de fazer um modo interativo serial para o Arduino ou outros microcontroladores não é nova: até eu, que estou nesta seara há menos de um ano, já fiz o meu (beeeem mais simples que o microBox), e uso para monitorar sensores e testar interfaces de módulos antes de começar a fazer programas para eles.

Já vi vários outros, bem mais especializados e complexos, frequentemente derivados do interessante software do Bus Pirate, com vários recursos avançados.

A microBox não é assim: a biblioteca implementa um sistema sem grandes recursos avançados, mas com foco na familiaridade do ambiente (ao menos para aqueles usuários previamente expostos a shells no estilo Unix).

A biblioteca microBox é código aberto de autoria de Sebastian Düll e está disponível para download pelos interessados.

Comentar

Dos leds ao Arduino, ESP8266 e mais

Aprenda eletrônica com as experiências de um geek veterano dos bits e bytes que nunca tinha soldado um led na vida, e resolveu narrar para você o que descobre enquanto explora esse universo – a partir da eletrônica básica, até chegar aos circuitos modernos.

Por Augusto Campos, autor do BR-Linux e Efetividade.net.

Recomendados

Livro recomendado


Artigos já disponíveis

Comunidade Arduino

O BR-Arduino é integrante da comunidade internacional de entusiastas do Arduino, mas não tem relação com os criadores e distribuidores do produto, nem com os detentores das marcas registradas.

Livros recomendados