Criando uma imagem do Ubuntu 14.04 para BeagleBone Black
Instalando o Ubuntu 14.04 na beaglebone black pode trazer algumas facilidades para o desenvolvimento em geral.
São mais de 50 mil pacotes prontos para serem instalados via apt-get.
Outra facilidade é que as versões das bibliotecas são as mesmas do Ubuntu Desktop, para o desenvolvedor testar diferentes builds de um mesmo software em hardwares sem precisar compilar também as bibliotecas do sistema é uma verdadeira mão roda, economia de tempo e dinheiro.
BeagleBone Black com Ubuntu, debug na UART0 usando Buspirate |
Comandos no Ubuntu PC
No ubuntu desktop instalar os pacotes para desenvolvimento
$ apt-get install dosfstools git-core kpartx u-boot-tools wget parte
baixar do git os scripts para geração da imagem
$ git clone https://github.com/RobertCNelson/omap-image-builder
criar o rootfs do Ubuntu Console usando os scripts
$ cd omap-image-builder
$ ./RootStock-NG.sh -c rcn-ee_console_ubuntu_stable_armhf
criar a imagem do cartão SD para gravar do eMMC
$ cd deploy/ubuntu-14.04-console-armhf-2014-07-09
$ ./setup_sdcard.sh –img-1gb sdcard-ubuntu –dtb beaglebone –beagleboard.org-production –bbb-flasher –boot_label BBB_BONE –rootfs_label BBB_FLASHER –offline
# No Ubuntu Desktop habilite o roteamento da internet via USB, assim a Beablebone Black poderá instalar pacotes remoto diretamente via apt-get.
$ sysctl -w net.ipv4.ip_forward=1
$ iptables -t nat -A POSTROUTING -j MASQUERADE
# Ligar a beaglebone com o botão S2 pressionado junto com o SD preparado. Durante a cópia dos arquivos os leds D1,2,3,4 ficaram piscando como um barra de progresso. Ao fim do processo ficaram os quatro leds acessos. Então é só reiniciar sem o cartão SD e esperar na média 2 minutos para fazer login pelo ssh em 192.168.7.2 login=ubuntu senha=temppwd.
$ ssh ubuntu@192.168.7.2
Comandos no SSH da BeagleBone Black
# editar a configuração da rede usb
route add default gw 192.168.7.1
$ sudo nano /etc/rc.local
# adicionar configuração do dns ao final do boot.
echo "nameserver 8.8.8.8" > /etc/resolv.conf
# reiniciar a beaglebone para entrar com a nova configuração de rede, que agora tem gateway e DNS.
# atualizar a lista de pacotes
$ apt-get update
$ apt-get dist-upgrade
# Até esse ponto estão usados 451mb e livres 1.2gb
# instalar outros pacotes
$ apt-get install -y aptitude mc ipython device-tree-compiler
# talvez instalar os pacotes para transformar a Beaglebone Black em desktop
$ apt-get install network-manager xrdp lxde strace firefox
# pacotes de suporte para Adafruit BBIO
$ apt-get install -y build-essential python-dev python-setuptools python-pip python-smbus
# instalar Adafruit BBIO
$pip install Adafruit_BBIO
# desligar HDMI para liberar mais pinos de I/O
echo optargs=quiet capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN >> /boot/uEnv.txt
# depois de tudo pronto é fácil criar um instalador / replicador do sistema usando:
$ /opt/scripts/tools/eMMC/beaglebone-black-make-microSD-flasher-from-eMMC.sh