Mudanças entre as edições de "2ª Noite do Mini PC: Dojo com BeagleBone Black"

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
(Criou página com 'Para quem curte hardware hacking, o Beaglebone Black é o mais forte concorrente do Raspberry Pi. Não é tão popular, porque é bem mais novo (lançado em abril de 2013)...')
 
 
(12 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 1: Linha 1:
  +
[[Arquivo:Beagle-dojo-1-800x600.jpg|260px|thumb|right|[[BeagleBone Black]] com seus '''92''' pinos para hardware hacking! Para facilitar a experimentação, fizemos uma base com parte de uma caixa de DVD e fixamos o BeagleBone Black com espaçadores de nylon e o breadboard com seu próprio adesivo.]]
Para quem curte hardware hacking, o [[Beaglebone Black]] é o mais forte concorrente do Raspberry Pi. Não é tão popular, porque é bem mais novo (lançado em abril de 2013), é um pouco mais caro (USD 45 nos EUA) mas tem uma configuração muito melhor, 2 GB de memória flash embutida e muito mais pinos GPIO disponíveis.
 
   
  +
[[Arquivo:Beagle-dojo-2-800x600.jpg|260px|thumb|right| O circuito do dojo: um display de 7 segmentos, um resistor de 1KΩ e um potênciômetro de 10KΩ. Em vez de pinos, o BeagleBone tem furos, facilitando ainda mais a conexão com breadboards.]]
Nesta 4ª feira no [[Turing Clube]], a partir de 19:30, vamos fazer um Coding Dojo de hardware hacking, na linha do [[Dojo com Arduino]], para experimentar coletivamente e interativamente o Beaglebone Black.
 
  +
 
Para quem curte hardware hacking, o [[BeagleBone Black]] é o mais forte concorrente do [[Raspberry Pi]]. Não é tão popular, porque é bem mais novo (lançado em abril de 2013), é um pouco mais caro (USD 45 nos EUA) mas tem uma configuração muito melhor, 2 GB de memória flash embutida com GNU/Linux pré-instalado, interface de programação via Web com JavaScript e Node.js, e muito mais pinos GPIO disponíveis.
  +
 
Nesta 4ª feira no [[Turing Clube]], a partir de 19:30, vamos fazer um Coding Dojo de hardware hacking, na linha do [[Dojo Arduino]], para experimentar coletivamente e interativamente o Beaglebone Black.
  +
  +
Para quem não conhece, um [[Coding Dojo]] é uma forma interativa de
  +
conhecer uma nova linguagem ou API. Hoje vamos explorar a API de
  +
programação dos pinos de E/S genéricos (GPIO) do BeagleBone Black. Faremos algo parecido com o que fizemos no [[Dojo com pcDuino]] na [http://tosconf.lhc.net.br/ Tosconf 2013].
  +
  +
Não tem pré-requisito para participar, é só aparecer no Garoa!
  +
  +
  +
== O que rolou ==
  +
  +
Não rolou um Coding Dojo conforme planejado: ficamos cerca de 2h explorando o ambiente e a API do BeagleBone Black até começar a ter uma idéia de como implementar o código do dojo.
  +
  +
Aprendemos um pouco de [http://beagleboard.org/Support/BoneScript BoneScript], a API para programar o BeagleBone em JavaScript.
  +
  +
Com isso conseguimos implementar o código da animação do display de 7 segmentos. O código ficou bem mais complicado que as variantes Arduino (C++) e pcDuino (Python) porque a bonescript obriga a fazer tudo de modo assíncrono com callbacks.
  +
  +
O código está aqui: [https://github.com/garoa/beaglebone/blob/master/anima.js anima.js]
  +
  +
O próximo passo é aprender a fazer o mesmo com Python.
  +
  +
  +
  +
== [http://learn.adafruit.com/beaglebone-black-installing-operating-systems/overview Upgrade do sistema (Angstrom eMMC Flasher)] ==
  +
Para instalar uma versão mais recente do sistema é necessário um cartão microSD com pelo menos 4GB de capacidade.
  +
O download da imagem mais recente para a BeagleBoneBlack pode ser feito [http://beagleboard.org/latest-images Angstrom Distribution (BeagleBone Black)]
  +
  +
Após o download do arquivo BBB-eMMC-flasher-2013.06.20.img.xz , extraia-o com:
  +
$ unxz BBB-eMMC-flasher-2013.06.20.img.xz
  +
  +
Conecte o seu cartão microSD, e verifique o seu identificador com o comando dmesg. O último dispositivo da lista deve ser ele (nome parecido com sdb, sdc...)
  +
Exemplo de output do dmesg:
  +
$ dmesg
  +
...
  +
[41601.458902] scsi 15:0:0:0: Direct-Access Flash Disk PQ: 0 ANSI: 2
  +
[41601.459692] sd 15:0:0:0: Attached scsi generic sg4 type 0
  +
[41601.460763] sd 15:0:0:0: [sde] 493568 512-byte logical blocks: (252 MB/241 MiB)
  +
[41601.461254] sd 15:0:0:0: [sde] Write Protect is off
  +
...
  +
  +
Transfira a imagem para o cartão (Atenção, esse comando irá sobreescrever todo o conteúdo do cartão. Certifique-se de indicar o device correto!):
  +
$ sudo dd bs=1M if=BBB-eMMC-flasher-2013.06.20.img of=/dev/sdX ; sync
  +
(sendo sdX o dispositivo verificado com o dmesg).
  +
  +
* Após isso, com a beaglebone desligada, insira o cartão microSD.
  +
* Pressione o botão "User Boot" [[http://learn.adafruit.com/system/assets/assets/000/008/680/medium800/BeagleBoneBlack.jpeg?1369065340 (é o botão mais próximo ao slot do cartão microSD)].
  +
* Com o botão pressionado, energize a placa (tanto faz se pelo USB ou com uma fonte de alimentação própria).
  +
* Os quatro LEDs deverão se acender ao mesmo tempo. Quando isso ocorrer, você pode soltar o botão.
  +
  +
O processo de flashing é demorado (pelo menos 30 minutos) e consome muita energia. Não ligue o cabo ethernet ou dispositivos USB.
  +
  +
* Quando o processo inteiro for concluído, os quatro LEDs ficarão acesos ininterruptamente. Quando isso ocorrer, demova a alimentação, o cartão e então energize a placa novamente.
  +
  +
[[Categoria:Mini PC]][[Categoria:Eventos]]

Edição atual tal como às 18h52min de 16 de outubro de 2013

BeagleBone Black com seus 92 pinos para hardware hacking! Para facilitar a experimentação, fizemos uma base com parte de uma caixa de DVD e fixamos o BeagleBone Black com espaçadores de nylon e o breadboard com seu próprio adesivo.
O circuito do dojo: um display de 7 segmentos, um resistor de 1KΩ e um potênciômetro de 10KΩ. Em vez de pinos, o BeagleBone tem furos, facilitando ainda mais a conexão com breadboards.

Para quem curte hardware hacking, o BeagleBone Black é o mais forte concorrente do Raspberry Pi. Não é tão popular, porque é bem mais novo (lançado em abril de 2013), é um pouco mais caro (USD 45 nos EUA) mas tem uma configuração muito melhor, 2 GB de memória flash embutida com GNU/Linux pré-instalado, interface de programação via Web com JavaScript e Node.js, e muito mais pinos GPIO disponíveis.

Nesta 4ª feira no Turing Clube, a partir de 19:30, vamos fazer um Coding Dojo de hardware hacking, na linha do Dojo Arduino, para experimentar coletivamente e interativamente o Beaglebone Black.

Para quem não conhece, um Coding Dojo é uma forma interativa de conhecer uma nova linguagem ou API. Hoje vamos explorar a API de programação dos pinos de E/S genéricos (GPIO) do BeagleBone Black. Faremos algo parecido com o que fizemos no Dojo com pcDuino na Tosconf 2013.

Não tem pré-requisito para participar, é só aparecer no Garoa!


O que rolou

Não rolou um Coding Dojo conforme planejado: ficamos cerca de 2h explorando o ambiente e a API do BeagleBone Black até começar a ter uma idéia de como implementar o código do dojo.

Aprendemos um pouco de BoneScript, a API para programar o BeagleBone em JavaScript.

Com isso conseguimos implementar o código da animação do display de 7 segmentos. O código ficou bem mais complicado que as variantes Arduino (C++) e pcDuino (Python) porque a bonescript obriga a fazer tudo de modo assíncrono com callbacks.

O código está aqui: anima.js

O próximo passo é aprender a fazer o mesmo com Python.


Upgrade do sistema (Angstrom eMMC Flasher)

Para instalar uma versão mais recente do sistema é necessário um cartão microSD com pelo menos 4GB de capacidade. O download da imagem mais recente para a BeagleBoneBlack pode ser feito Angstrom Distribution (BeagleBone Black)

Após o download do arquivo BBB-eMMC-flasher-2013.06.20.img.xz , extraia-o com:

$ unxz BBB-eMMC-flasher-2013.06.20.img.xz

Conecte o seu cartão microSD, e verifique o seu identificador com o comando dmesg. O último dispositivo da lista deve ser ele (nome parecido com sdb, sdc...) Exemplo de output do dmesg:

$ dmesg
...
[41601.458902] scsi 15:0:0:0: Direct-Access              Flash Disk            PQ: 0 ANSI: 2
[41601.459692] sd 15:0:0:0: Attached scsi generic sg4 type 0
[41601.460763] sd 15:0:0:0: [sde] 493568 512-byte logical blocks: (252 MB/241 MiB)
[41601.461254] sd 15:0:0:0: [sde] Write Protect is off
...

Transfira a imagem para o cartão (Atenção, esse comando irá sobreescrever todo o conteúdo do cartão. Certifique-se de indicar o device correto!):

$ sudo dd bs=1M if=BBB-eMMC-flasher-2013.06.20.img of=/dev/sdX ; sync
(sendo sdX o dispositivo verificado com o dmesg).
  • Após isso, com a beaglebone desligada, insira o cartão microSD.
  • Pressione o botão "User Boot" [(é o botão mais próximo ao slot do cartão microSD).
  • Com o botão pressionado, energize a placa (tanto faz se pelo USB ou com uma fonte de alimentação própria).
  • Os quatro LEDs deverão se acender ao mesmo tempo. Quando isso ocorrer, você pode soltar o botão.

O processo de flashing é demorado (pelo menos 30 minutos) e consome muita energia. Não ligue o cabo ethernet ou dispositivos USB.

  • Quando o processo inteiro for concluído, os quatro LEDs ficarão acesos ininterruptamente. Quando isso ocorrer, demova a alimentação, o cartão e então energize a placa novamente.