update: Placa Wifi Ralink RT2561 funcionando no Debian / Ubuntu

wifi.jpg

UPDATE 29/08/2008: O Ubuntu Hardy Heron ( 8.04 ) já instala e configura por padrão as placas com o chipset RT2561. Portanto, recomendo fortemente que você faça um backup dos seus arquivos e instale o ubuntu mais novo do zero.

UPDATE 07/02/2008: Agora a empresa oferece um melhor suporte para os usuários de sistemas GNU/Linux.
Veja a página: http://www.ralinktech.com/ralink/Home/Support/Linux.html

Depois de contratar o provedor Wireless CPWare, aqui em Sorocaba, passei por grandes dificuldades com a placa que eles instalam, a RT2561. Eles inclusive só dão suporte se você for cliente da Microsoft. Rodei um bocado por aí entre fóruns e howtos, até conseguir fazê-la funcionar no Debian (etch e lenny), e também no Ubuntu edgy.

A questão é que o driver livre simplesmente não funciona. Então a única saída foi instalar o driver fornecido pela empresa.

Vou registrar aqui os passos básicos a serem dados, pois este driver também é cheio de truques e poréns.

Passos para a instalação:

Faça o download do driver:
wget http://www.ralinktech.com.tw/data/IS_Linux_STA_6x_D_1.1.1.0.tar.gz

Em seguida, descompacte:
tar xzf IS_Linux_STA_6x_D_1.1.1.0.tar.gz

Entre na pasta:
cd IS_Linux_STA_6x_D_1.1.1.0

Depois basta compilar o driver:
make

Você provavelmente precisará do pacote build-essential e os fontes do seu kernel.

Em seguida, instale o módulo:
sudo insmod rt61.ko

Depois, copie o firmware:

sudo mkdir -p /etc/Wireless/RT61STA/
sudo cp *.bin /etc/Wireless/RT61STA/
sudo cp *.dat /etc/Wireless/RT61STA/

Por último, adicione o driver livre à lista negra, para que ele não seja carregado:

sudo su
echo "blacklist rt61pci" >> /etc/modprobe.d/blacklist
exit

Agora vem a parte mais chata. Esse driver se comporta de maneira esquisita, sendo necessário ativar a interface ra0 criada por ele antes de sintonizar-se com algum Access Point ou ponto Ad-Hoc.

O NetworkManager presente no Debian e no Ubuntu, que é aquele ícone da bandeja que ajuda na conexão, usa o dbus para se comunicar com as interfaces de rede. Mas o driver proprietário da Ralink não trabalha bem com o dbus, e o jeito é desabilitar o applet, e fazer suas conexões na mão. Pelo menos só assim deu certo para mim.

Fiz um script de inicialização que funciona bem aqui para mim, mas se for usá-lo lembre-se de alterar os IPs, essid e adicionar WEP caso for necessário.

#!/bin/bash

PATH=/sbin:/bin

. /lib/lsb/init-functions

do_start () {
        log_action_msg "Iniciando rede wireless..."
        ifconfig ra0 up
        sleep 1
        iwconfig ra0 essid minharede
        sleep 1
        ifconfig ra0 192.168.0.2 netmask 255.255.255.0 up
        sleep 1
        route del default
        sleep 1
        route add default gw 192.168.0.1
        sleep 1
        echo "" > /etc/resolv.conf
        echo "nameserver 200.186.233.3" >> /etc/resolv.conf
        echo "nameserver 208.67.222.222" >> /etc/resolv.conf
}

do_stop () {
        log_action_msg "Parando rede wireless CPWARE..."
        route del default
        sleep 1
        echo "" >> /etc/resolv.conf
        ifconfig ra0 down
        sleep 1
        modprobe -r rt61
}

case "$1" in
  start)
        do_start
        ;;
  stop)
        do_stop
        ;;
  restart)
        do_stop
        do_start
        ;;
  *)
        echo "Uso: $0 start|stop|restart" >&2
        exit 3
        ;;
esac

Os sleep são necessários para o driver conseguir trabalhar corretamente, pois é necessário algum tempo entre um comando e outro.

Comentários

imagem de Willian

o essid é em maiusculo seria
iwconfig ra0 ESSID minharede

imagem de Márcio Nascimento

Olá. Fiz tudo direitinho, o script rodou sem problemas mas continuo sem acesso. Estou com uma suspeita que possa ser o essid... O que é exatemente esse essid? Atenciosamente, Márcio Nascimento.

imagem de Lourenzo Ferreira

Olá, Márcio!

essid é o nome da rede wireless, por exemplo linksys , default.
É sempre uma palavra curta, sem espaços ou acentos que é o nome da rede wireless à qual você quer se conectar.

Por exemplo, a minha rede aqui é a miniomni-2

Abraços

imagem de Lourenzo Ferreira

Olá, Willian

Na verdade, funciona em maiúsculo ou em minúsculo. Aqui sempre uso em minúsculo e funciona numa boa!

Valeu!

imagem de Antonio

Estou com este problema tb. Tenho pouco conhecimento em linux e queria saber em qual momento vou utilizar: "o pacote build-essential e os fontes do kernel".Pois quando tento compilar o driver seguindo os passos descritos da erro.

Obrigado

imagem de lourenzo

Olá!

O pacote build-essential traz o compilador, e algumas bibliotecas de sistema para que você possa instalar um programa a partir de seu código-fonte.

O código-fonte do kernel fornece os cabeçalhos necessários para compilar o driver - pois no GNU/Linux (e em outros *nix) os drivers são módulos do kernel.

Outra coisa é que este howto foi construído para Ubuntu 6.10 (edgy), que tinha um kernel mais antigo. Preciso refazer este artigo, utilizando as versões mais recentes do driver e do kernel linux.

Para eu te dar uma força:
Você usa Hardy Heron?
Qual o modelo da sua placa (veja com o comando sudo lspci ou sudo lshw?

Lourenzo Ferreira

imagem de FABIANO

Amigo estou precisando de um passo a passo: estou montando um servidor de arquivos e proxy com o debian lenny 5.1 mas não consigo instalar a placa ralink 2561st de maneira nenhuma, vi em varios site que o debian lenny já vem com os modulos dela por padrão só tem que instalar o firmware-ralink. Só que já instalei varias vezes e não aparece quando dou ifconfig nem wlan0 nem ra0 oque mais é preciso fazer outra coisa eu desmarquei todos os pacotes na instalação

Grato Fabiano

imagem de lourenzo

Olá!
Primeiramente agradeço a visita.

Creio que se desmarcar os pacotes, não vá funcionar por padrão. Instalá-los pode resolver a questão.

Caso contrário, tente usar o passo-a-passo deste artigo para compilar o driver na mão.

Lourenzo Ferreira

Comentar

Usando nome e URL
  • Endereços de páginas de internet e emails viram links automaticamente.
  • Tags HTML permitidas: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Quebras de linhas e parágrafos são feitos automaticamente.
  • [left]Conteúdo[/left] [right]Conteúdo[/right]
  • {{ url [|text] [|title] [|rel] [|target] }}
  • [edit] ..text.. [/edit]
  • Você pode citar outros comentários usando as tags [quote] .

Mais informações sobre as opções de formatação