Olá pessoal, neste artigo iremos mostrar como instalar a tela TFT 3.5", com suporte a caneta, no Raspberry Pi. Utilizaremos a distro Raspbian Wheezy, baseada no Debian e indicada pela Raspberry Foundation, e um Raspberry Pi modelo B. Se você deseja instalar a tela em outra distribuição, basta verificar quais arquivos de configuração se equiparam aos utilizados no Raspbian.
Após instalação da tela, será feito um review falando de sua qualidade e se de fato vale comprar tal acessório.
O Display LCD TFT Touch 3.5" do Raspberry Pi foi fornecido pela FilipeFlop e você pode comprá-lo aqui.
A imagem abaixo mostra um Raspberry Pi B com a tela já instalada, porém não configurada:
Para configurar o dispositivo teremos de instalar alguns pacotes, e configurar alguns arquivos, mas nada complicado. Para a configuração destes arquivos no Raspberry, utilizarei o nano, pois já vem pré instalado no Raspbian, mas se você tem mais intimidade com o VIM, pode utilizá-lo sem problemas, após instalar.
Para iniciar o tutorial, você pode utilizar o cabo HDMI em uma TV e utilizar a interface gráfica do Raspbian, ou então acessar o dispositivo por SSH, se este tiver um cabo de rede plugado nele. Para descobrir o IP do seu Raspberry, basta executar o comando arp-scan
de uma máquina que está na mesma rede:
sudo arp-scan --localnet
Uma informação semelhante a esta deverá ser mostrada:
192.168.1.18 b8:27:eb:fc:bd:c3 Raspberry Pi Foundation
Então basta conectar no IP com SSH, sendo o que o usuário é pi e a senha é raspberry:
ssh pi@<ip do seu rasp>
Antes de começar, encaixe a tela nos pinos GPIO do Raspberry da seguinte forma:
Primeiramente, vamos atualizar o Raspbian:
sudo apt-get update; sudo apt-get upgrade -y
Após o fim do comando, reinicie o dispositivo:
sudo reboot
Depois do reboot, edite o arquivo /boot/config.txt:
sudo nano /boot/config.txt
e então adicionar a seguinte linha no fim do arquivo:
dtoverlay=piscreen,speed=16000000,rotate=90
O próximo passo será redirecionar o framebuffer, responsável por mostrar a imagem na tela do dispositivo, e fazer a calibração da tela para utilização da caneta. Primeiro, vamos editar o arquivo para desabilitar o framebuffer do HDMI:
sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf
Dentro do arquivo encontre a linha Option “fbdev” “/dev/fb0″ e comente o comando colocando um # no inicio da linha, que deverá ficar assim: #Option “fbdev” “/dev/fb0″
Antes de compilar/instalar o calibrador, precisamos primeiro baixar as suas dependências. Para fazer o download das dependências dos repositórios do Raspbian, basta executar o comando abaixo:
sudo apt-get install libtool libx11-dev xinput autoconf libx11-dev libxi-dev x11proto-input-dev -y
Com as dependências instaladas, podemos então baixar o código do calibrador com o git, compilar e instala-lo:
cd
git clone https://github.com/tias/xinput_calibrator
cd xinput_calibrator/
./autogen.sh
make
sudo make install
Com o software instalado, vamos agora ao script de calibração:
cd
wget http://ozzmaker.com/piscreen/xinput_calibrator_pointercal.sh
sudo mv ~/xinput_calibrator_pointercal.sh /etc/X11/Xsession.d/xinput_calibrator_pointercal.sh
Os comandos acima irão baixar o script de calibração e copiá-lo para o diretório onde será chamado pelo autostart do Raspbian. Para alterar o autostart, edite o arquivo:
sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
e adicione a linha abaixo no final do arquivo:
sudo /bin/sh /etc/X11/Xsession.d/xinput_calibrator_pointercal.sh
Neste ponto, você já pode testar o display com o comando abaixo:
FRAMEBUFFER=/dev/fb1 startx
O comando acima reinicia o Window Manager, mas agora trocando o framebuffer para o display. Após alguns segundos a imagem que estava no seu HDMI agora aparece no display:
Para fazer com que o display seja carregado ao ligar o Raspberry são necessários algumas outras alterações. Primeiro vamos alterar o inittab:
sudo nano /etc/inittab
Comente a linha 1:2345:respawn:/sbin/getty –noclear 38400 tty1, adicionando um # na frente da linha, e adicione outra linha, conforme abaixo:
#1:2345:respawn:/sbin/getty --noclear 38400 tty1
1:2345:respawn:/bin/login -f pi tty1 /dev/tty1 2>&1
Agora vamos editar o arquivo /etc/rc.local e adicionar a linha que inicia o startx com o framebuffer do display. O arquivo ficará como abaixo:
#
# By default this script does nothing.
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %sn" "$_IP"
fi
su -l pi -c “env FRAMEBUFFER=/dev/fb1 startx &”
exit 0
Agora basta reiniciar o dispositivo novamente com o comando:
sudo reboot
Após reiniciado, você verá a tela de calibração. Estando calibrado, ele abre a tela do Raspbian na tela:
Para utilizar o seu Raspbian com a caneta, você pode instalar um teclado virtual:
sudo apt-get install matchbox-keyboard
E para acessar o teclado, basta ir em Menu/Acessórios/Keyboard.
Review
Após fazer a calibragem inicial, pode-se notar que a tela funciona muito bem. Não é preciso muita força no “clique” para acessar os menus do Raspbian por exemplo. A tela funciona tanto com o dedo como com a caneta que vem com ela. Se você deseja fazer algum produto com o Raspberry, ou apenas gosta, não precisa de uma TV nele, esta tela é uma boa pedida. Mas, se você só usa o Raspberry para jogar emuladores, ou até como um desktop, então a tela não será muito uso para você.
Espero que todos tenham gostado! Esse tipo de gadget é bem interessante, pois nos permite ver aplicações diferentes de placas do estilo da Raspberry e aplicações diferentes daquelas que estamos acostumados. Não esqueça de se inscrever nas nossas redes sociais para ficar por dentro dos próximos posts!
Até mais!