Primeiras impressões da Beaglebone Black

- por Sergio Prado

Categorias: Beaglebone Black, Hardware Tags: , ,

Um tempo atrás, antes da Beaglebone Black ser lançada oficialmente, escrevi um artigo introdutório sobre ela.

Mas não aguentei esperar a Texas começar a vender a Beaglebone Black pela TI eStore, e acabei comprando a minha na LojaMundi.

O serviço do pessoal da LojaMundi é bem legal, minha placa chegou em 3 dias. No momento eles estão vendendo a placa por R$249,00. Para quem estiver interessado, este é o link.

Mas vamos ao que interessa!

Você pode se conectar à Beaglebone Black e utilizá-la de duas formas: como um PC comum e acessando remotamente via USB.

BEAGLEBONE BLACK COMO UM PC

Para usá-la como um PC, você vai precisar de uma fonte de 5V/1A, monitor, cabo micro HDMI, teclado e mouse USB. Como a BBB tem apenas uma porta USB, talvez você precise também de um HUB USB.

A Beaglebone Black já vem com a distribuição Angstrom instalada de fábrica na eMMC. É só ligar e esperar a mágica acontecer!

O Angstrom me pareceu bem estável e otimizado para a Beaglebone Black. Com o tempo de boot em torno de 1 minuto, ele usa o systemd como mecanismo de inicialização e interface gráfica baseada no Gnome 2, incluindo algumas aplicações como o gedit, GIMP e Chromium.

bbb-angstrom

Bug alert! No primeiro teste, o teclado conectado à porta USB não funcionou. Pesquisando nos fóruns descobri que até este momento a porta USB da Beaglebone Black esta sem suporte à hotplug. Ligando o teclado antes de ligar a placa resolveu o problema. Durante o processo de boot, o teclado é identificado normalmente.

Usá-la como um PC não deve ser o caso de uso mais comum da Beaglebone Black. Para trabalhar com ela, tudo o que você precisa é de um cabo USB!

BEAGLEBONE BLACK PELA USB

A porta USB OTG da Beaglebone Black tem três finalidades principais:

  1. Alimentar a placa.
  2. Prover uma interface de dispositivo de armazenamento.
  3. Prover uma conexão de rede (via RNDIS).

Ao plugar o cabo USB, você conseguirá acessar a Beaglebone como um drive no seu PC, possibilitando acessar por exemplo a documentação da placa:

$ tree -L 1 /media/sprado/BEAGLEBONE/
/media/sprado/BEAGLEBONE/
├── App
├── autorun.inf
├── Docs
├── Drivers
├── LICENSE.txt
├── MLO
├── README.md
├── START.htm
├── u-boot.img
└── uEnv.txt

Automaticamente, também será criada uma conexão Ethernet no seu PC, possibilitando acessar a Beaglebone Black pela rede. Sua máquina vai receber o endereço IP 192.168.7.1, e você poderá acessar a Beaglebone Black através do endereço IP 192.168.7.2, usando por exemplo SSH (usuário root e sem senha):

$ ssh root@192.168.7.2
root@192.168.7.2's password: 
root@beaglebone:~# cat /proc/version 
Linux version 3.8.6 (koen@rrMBP) (gcc version 4.7.3 20130205 (prerelease) (Linaro GCC 4.7-2013.02-01) ) #1 SMP Sat Apr 13 09:10:52 CEST 2013

Seguindo o padrão da antiga Beaglebone, ela vem com um servidor web implementado em node.js, servindo algumas páginas web com a documentação do projeto:

bbb-web

Uma IDE de desenvolvimento chamada Cloud9 também esta disponível, rodando direto do navegador, e possibilitando implementar aplicações para a Beaglebone Black em node.js. Esta IDE pode ser acessada na porta 3000:

bbb-cloud9

O Gateone, um emulador de terminal e cliente SSH que também roda direto do navegador web, esta disponível na porta 443:

bbb-gateone

À propósito, o Gateone não estava funcionando na imagem do Angstrom que veio de fábrica instalada na eMMC. Foi necessário atualizar a distribuição para a última versão. Vamos ver como fazer isso?

ATUALIZANDO O ANGSTROM

O processo é simples. Você vai precisar de um cartão micro SD de no mínimo 4G, baixar a imagem do Angstrom, gravar no cartão e iniciar a placa com este cartão.

Baixe a última imagem do Angstrom deste link e grave no cartão SD. No momento em que escrevo este artigo, a última imagem é a 2013.06.20.

$ wget https://s3.amazonaws.com/angstrom/demo/beaglebone/BBB-eMMC-flasher-2013.06.20.img.xz
$ unxz BBB-eMMC-flasher-2013.06.20.img.xz
$ sudo dd if=BBB-eMMC-flasher-2013.06.20.img of=/dev/sdX bs=1M

Não esqueça de trocar no comando acima /dev/sdX pelo nome do arquivo de dispositivo do seu cartão SD.

Coloque o cartão na placa, ligue e espere. Os leds ficarão piscando durante o processo de gravação, que pode levar de 30 a 60 minutos. Quando a gravação terminar, os leds vão parar de piscar e ficarão acesos. Tire o cartão, reinicie a placa e teste.

Obs: Por padrão, a placa sempre inicia pela eMMC. O U-Boot instalado na eMMC irá verificar na inicialização se existe um cartão SD conectado, e então iniciar pelo cartão. Portanto, todo o processo de inicialização pelo cartão deve ser automático. Mas se você tiver dificuldades em fazer a placa iniciar pelo cartão SD para realizar este processo de gravação, ligue a placa com o botão “User Boot” pressionado, até que os 4 leds fiquem acesos. Este botão encontra-se próximo ao conector do cartão SD.

CONCORRENTE DA RASPBERRY PI?

Para começo de conversa, as duas placas tem originalmente propósitos diferentes. A Raspberry Pi foi projetada para ser um computador de baixo custo, enquanto que a Beaglebone Black é uma ferramenta de prototipagem rápida e desenvolvimento de projetos eletrônicos. Mas como você consegue também prototipar com a Raspberry Pi, e usar a Beaglebone Black como um computador, os casos de uso acabam se sobrepondo, principalmente porque os custos das duas placas são bem parecidos.

De qualquer forma, a Beaglebone Black esta muito mais preparada para ser utilizada em projetos eletrônicos, por dois principais motivos: hardware 100% open source e quantidade maior de interfaces de I/O.

Enquanto que a Raspberry Pi fornece apenas um conector de 26 pinos com algumas interfaces de I/O (GPIO, I2C, SPI e UART), a Beaglebone Black oferece dois conectores de expansão de 46 pinos cada, totalizando 92 pinos de I/O, com muitos GPIOs, I2C, SPI, UART, LCD, ADC, MMC, etc!

OUTRAS DISTRIBUIÇÕES

O Angstrom me pareceu bem rápido e estável, e deve ser a escolha padrão se você quiser um SO para desenvolver um projeto com a Beaglebone Black. Outra possível escolha é o Ubuntu. Testei a versão 12.04 com interface LXDE, e sua performance ficou aceitável, comparada ao Angstrom.

Existem ainda outras distribuições disponíveis para ela, incluindo o Android, Gentoo e ArchLinux. Uma lista completa de sistemas operacionais suportados estão disponíveis aqui.

E você, já comprou a Beaglebone Black? Quais são suas impressoẽs?

Um abraço!

Sergio Prado

Faça um Comentário

Navegue
Creative Commons Este trabalho de Sergio Prado é licenciado pelo
Creative Commons BY-NC-SA 3.0.