26 de dezembro de 2013

Wifi no RPi

A ligação wireless à rede traz a vantagem da mobilidade do RPi.
Do utilizador que deseja um media center e não tem ethernet na sala ao programador que quer controlar um robot remotamente e sem fios, esta é uma adição que promete resolver alguns problemas.

Este guia parte do princípio que o utilizador já tem uma ligação de internet por fio.



A primeira coisa a fazer é conectar o módulo de Wifi. É recomendado, mas não obrigatório, o uso de um HUB alimentado para alimentar o módulo e evitar que seja o RPi a fazê-lo. Isto ajuda a prolonga a vida do RPi.

A maior parte dos chipsets dos adaptadores Wireless não tem os drivers pre-carregados na distribuição Raspbian que usamos neste blog. Não sei se o adaptador recomendado pela fundação do RPi já tem o driver instalado no Raspbian pois usei um que tinha por casa. Na maior parte dos casos deve ser preciso instalar os drivers, pelo que iremos cobrir isso de seguida.

Em primeiro lugar identificamos o chipset do adaptador. O comando seguinte irá listar os dispositivos que estão conectados por USB ao RPi.

pi@raspberrypi ~ $ lsusb

Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 001 Device 005: ID 0bda:8189 Realtek Semiconductor Corp. RTL8187B Wireless 802.11g 54Mbps Network Adapter
Bus 001 Device 006: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB

Na minha lista o dispositivo relevante é o número 5:
Realtek Semiconductor Corp. RTL8187B Wireless 802.11g 54Mbps Network Adapter

Cujo chipset se dá pelo nome de RTL8187B.

Durante a minha pesquisa descobri que se deveria agora usar os seguintes comandos

apt-get update

para actualizar a base de dados da distribuição e

apt-cache search RTL8187B

para descobrir qual o driver a instalar para este chipset. Também descobri que RTL8187B é um nome demasiado específico, e que se deveria procurar apenas RTL818.

O que deveria aparecer seria:
Firmware-realtek – Binary firmware for Realtek wired and wireless network adapters

Que no meu caso não apareceu, mas com outras configurações e/ou com outros chipsets é possível que apareçam as informações que desejamos.
Passando à frente, iremos baixar e instalar os drivers sugeridos pela pesquisa na base de dados com o seguinte comando:

sudo apt-get install firmware-realtek

E com o comando seguinte verificamos que temos de facto o módulo instalado:

lsmod

que no meu caso devolve, entre outras coisas:
Module               Size          Used by
rtl8187                51043      0

E se o módulo for mostrado na tabela gerada estará instalado no vosso sistema. Claro que é preciso adaptar o nome do chipset ao utilizado, mas os passos serão iguais aos que aqui estão documentados.

Para configurar a ligação propriamente dita será preciso ter o nome do SSID que pode ser encontrado numa etiqueta do router ou no nome original da ligação sem fios difundida pelo router (ver num portátil por exemplo), e da password WEP/WPA que também se encontra na etiqueta do router, ou que foi mudada na última configuração do acesso à rede.

O ficheiro que devemos alterar para ter acesso wireless à internet no RPi será acedido com o comando

sudo nano /etc/network/interfaces

e o conteúdo que deve ser colocado nesse ficheiro (apagar o que existia previamente) será

auto lo

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
auto wlan0

iface wlan0 inet dhcp
        wpa-ssid "nome do SSID"
        wpa-psk "pass WEP/WPA"

E para não haver dúvidas, as aspas são para ficar, substituam apenas nome do SSID e pass WEP/WPA pelo que é preciso.

Finalmente reiniciem o serviço de rede com

sudo /etc/init.d/networking restart

e desliguem o cabo de rede.

Nota: Quem tiver port-forwarding configurado para o RPi tome atenção que o ip interno será diferente, porque com fio é um, sem fio é outro, logo, é preciso reconfigurar o port-forwarding para poder usar este sistema.

O Ardepi deseja as boas festas.

Sources:
http://www.raspberryshake.com/raspberry-pi-wireless-network-setup/
http://learn.adafruit.com/adafruits-raspberry-pi-lesson-3-network-setup/setting-up-wifi-with-occidentalis

Sem comentários: