Em um mundo cada vez mais digital e conectado como o de hoje, torna cada vez mais popular o uso de sistemas embarcados, seja com o crescente uso de smartphone ou o aumento de tecnologias como computadores de bordo em veículos. Assim esta área da computação vem ganhando força e mercado o que torna importante o surgimento desenvolvedores para este modelo computacional.
Porem para o desenvolvimento nestas área as vezes são necessárias (ou pelo menos vantajoso) a utilização e algumas ferramentas, entre elas uma de grande importância e utilidade é o uso de plataformas de desenvolvimento que simulam ambientes embarcados, como alguns computadores de placa única, ou sigle-board computer (SBC).
Neste post darei uma introdução de como se utilizar um dessas plataformas, que neste caso será a PandaBoard, darei uma leve introdução sobre este SBC e também sobre algumas versões do sistema operacional ubuntu, e como utiliza-lo na Panda.
Pandaboard
Primeiramente vamos falar um pouco sobre a PandaBoard (http://pandaboard.org/), ela é kit de desemvolvimento ARM, um SBC equipada com um processador OMAP4430 (um dual core com 1GHz) em sua versão básica, e um OMAP4460 (tambem dual core mas com 1.2GHz) na versão ES, ela conta com 1Gb de memoria ram ddr2 e varias portas de I/O, que podem serem usadas em diferentes desenvolvimentos. Elas são: Slot de expanção LCD, HDI 1.3, porta saida DVI, placa de rede 802.11b/g/n, Bluetooth 2.1 + EDR, rádio FM, GPS, Ethernet 10/100, portas USB 2.0 Host, porta USB 2.0 OTG, RS-232 (serial), camera conector, porta JTAG, áudio estéreo E/S;
Além disso ele contem um conector de expansão genérica, que suporta vários interface diferentes como GPMC, DSS, ETM,McSPI, USB e etc. A Panda também contem um leitor de cartão SD, porem este sera usado para o boot do sistema operacional, similar ao HD nos computadores normal.
Iniciando boot
Como como disse o boot da Pandaboard se dá através de um cartão SD, para isto e necessário que ele esteja configurado para o boot, e com os arquivos do SO. Em resumo a placa necessita de arquivos para boot, o MLO (o primeiro a ser acessado pode ser considerado o arquivo de arranque), o u-boot (um bootloader, gerenciador de inicialização para sistemas embarcados), o boot.scrip (scrip usado pelo u-boot) e a kernel da imagem (normalmente com o nome de uImage), porem a vários modos de criar e configurar estes arquivos, e estes modos mudam para cada versão do Sistema Operacional no qual deseja instalar na placa. Neste post ensinaremos a instalar duas versões diferentes do ubuntu, a ubuntu desktop, server e em um próximo post ensinaremos a instalar a versão ubuntu-core.
Instalando ubuntu server e desktop
Ubuntu desktop
Esta e a versão mais popular o ubuntu, ela que encontramos normalmente instalada em desktops e podemos fazer seu download facilmente através do site (http://www.ubuntu.com/download/desktop) sua vantagem sobre as outras versões é a sua interface gráfica, que faz com que seu uso seja simples podendo ser facilmente utilizada por um usuário leigo em linux, porem o uso interface cria uma necessidade maior de processamento, tornando esta versão do ubuntu a mais “pesada”.
Ubuntu Server
O Ubuntu Server e uma versão criada para servidores, ela não conta com uma interface gráfica, o que já esta versão mais “leve” que a ubuntu desktop, seu e feito totalmente através de comando no shell, por isto ela não e recomendada para usuários leigos em linux
Instalando SO na placa
O processo de configuração SD para que estas duas versões ubuntu rodem na PandaBoard são muito simples e similares, já que a omappedia disponibilizou arquivos para criação destas imagens (através de uma imagem pré-instalada) ubuntu em seu site. sendo assim a única coisa necessária é baixar a imagen de sua preferencia através dos links:
cdimage.ubuntu.com/releases/12.04/release/ubuntu-12.04-preinstalled-desktop-armhf+omap4.img.gz (para ubuntu desktop).
cdimage.ubuntu.com/releases/12.04/release/ubuntu-12.04-preinstalled-server-armhf+omap4.img.gz (para ubuntu server).
após o download só necessário o seguinte comando para configuração do cartão:
[code]>$ zcat ./ubuntu-12.04-preinstalled-desktop-armhf+omap4.img.gz |sudo dd bs=4M of=/dev/sdb [/code]
[code]>$ sudo sync[/code]
pronto agora o cartão já esta pronto para ser usando na placa, coloque ele na placa e ligue em um TV com o cabo HDI, alem de conectar um teclado usb, se tudo tiver ocorrido de modo certo os dois leds da placa ira acender e você ira ver o processo de instalação do SO na tela da TV, esta parte e simples, só e necessário seguir os passos que aparecerem na tela, similar a instalação no PC usando um cd.
Após a instalação você terá um sistema operacional pronto a ser utilizado, porem ainda é necessário instalar os pacotes da OMAP para que tudo que funcione perfeitamente, para preparar para instalação faça os seguintes comando no terminal to ubuntu em funcionamento na placa:
[code]>$ sudo su -[/code]
[code]# export http_proxy=<o seu proxy aqui se vc tiver>[/code]
[code]# export https_proxy=<o seu proxy aqui se vc tiver> [/code]
[code]# add-apt-repository ppa:tiomap-dev/release[/code]
E faça a atualização do ubuntu segundo os comando a seguir, alem da instalação do pacotes ubuntu-omap4:
[code]>$ sudo apt-get updade[/code]
[code]>$ sudo apt-get dist-upgrade[/code]
[code]>$ sudo apt-get install ubuntu-omap4-extras[/code]
E reincie a panda, após inicias de novo sera nescessario modificar o arquivo boot.script, fazendo a seguinte modificação, onde esta “vram=40M mem=456M@0x80000000 mem=512M@0xA0000000” troque por “mem=1G@0x80000000”.
Um exemplo de como ficaria o arquivo é:
fatload mmc 0:1 0x80000000 uImage
fatload mmc 0:1 0x81600000 uInitrd
setenv bootargs ro elevator=noop console=ttyO2,115200n8 mem=1G@0x80000000 root=/dev/mmcblk0p2 fixrtc splash
bootm 0x80000000 0x81600000
Apos isto faça o seguinte comando:
[code]>$ sudo /usr/sbin/flash-kernel –update-bootloader[/code]
Pronto seu ubuntu está configurado e em perfeito funcionamento!
No próximo tópico irei tratar de como instalar e configurar o ubuntu-core na Panda Board;
Para ir para o próximo post clique aqui