Arquivos históricos do BR-Linux.org apresenta:

Ajustando teclado, mouse e wi-fi no Thinkpad R51

Notícia publicada por brain em agosto 22, 2004 08:38 PM | TrackBack


Na semana passada tive a oportunidade de instalar o Linux em um notebook IBM ThinkPad R51. Instalei o SUSE 9.1 Professional a partir de um DVD promocional da Novell, e não foi nenhuma surpresa perceber que a instalação foi simples, e praticamente todos os recursos do equipamento foram reconhecidos e configurados automaticamente. A única exceção foi a placa wireless embutida no equipamento, uma Intel Wireless 2200BG para Linux, para a qual até já existe um driver livre em fase inicial de desenvolvimento, mas ainda longe de ser incluído no configurador automático da distribuição.

Exceto pela placa wireless, a configuração automática foi perfeita, e este breve relato está sendo redigido em um Thinkpad usando a configuração default do SUSE 9.1, exceto por três itens: a configuração de um driver alternativo para que o touchpad abaixo do teclado possa funcionar como um botão de scroll do mouse (que este modelo de notebook não inclui), a reconfiguração das teclas 'back' e 'forward', posicionadas junto às setas do teclado, para funções mais úteis, e a configuração de uma placa wireless PCMCIA Motorola WN825G. Como estas alterações podem ser do interesse de outros usuários, uma breve descrição delas pode ser encontrada abaixo.

Há uma quarta alteração: a inclusão do wallpaper acima, que é uma ligeira personalização para o BR-Linux de uma arte original de Marian Cerman. Se você usa Linux no seu notebook, está convidado a fazer o download - na versão de 1024x768 ou de 800x600.


Touchpad avançado com o driver Synaptics

O SUSE reconheceu e configurou corretamente tanto o mouse em estilo joystick incluído entre as teclas do notebook, quanto o touchpad localizado abaixo do teclado. Entretanto, embora tudo funcionasse corretamente, senti falta de um botão de scroll - este notebook não inclui o scroll (ou botão de rolagem), embora os drivers para Windows permitam acrescentar a função de scroll ao touchpad.

Felizmente não fui o primeiro a sentir falta deste recurso: esta página informa que o driver de touch pad Synaptics traz o recurso de scroll, entre muitos outros. E nem precisei fazer o download: o SUSE já inclui este driver. Visitei o site do driver para saber como configurar, e foi muito simples: bastou editar o arquivo /etc/X11/XF86Config para remover o trecho abaixo, referente à configuração original do touchpad:


Section "InputDevice"
Driver "mouse"
Identifier "Mouse[1]"
Option "Device" "/dev/input/mice"
Option "Name" "Autodetection"
Option "Protocol" "explorerps/2"
Option "Vendor" "Sysp"
EndSection

inserindo no lugar dele o trecho abaixo:


Section "InputDevice"
Identifier "Mouse[1]"
Driver "synaptics"
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "LeftEdge" "1700"
Option "RightEdge" "5300"
Option "TopEdge" "1700"
Option "BottomEdge" "4200"
Option "FingerLow" "25"
Option "FingerHigh" "30"
Option "MaxTapTime" "180"
Option "MaxTapMove" "220"
Option "VertScrollDelta" "100"
Option "MinSpeed" "0.06"
Option "MaxSpeed" "0.12"
Option "AccelFactor" "0.0010"
Option "SHMConfig" "on"
EndSection

Além disso, foi necessário incluir a linha abaixo na seção "Modules" do mesmo arquivo:


Load "synaptics"

E pronto! Na próxima execução do X, pude usar o lado direito do touch pad como scroll, entre outras funções avançads descritas na página do driver. Mas não se esqueça de fazer uma cópia de segurança do seu XF86Config antes de começar a mexer nele ;-)

Dando uma utilidade às teclas Back e Forward

No teclado deste notebook, as teclas de edição (Insert, Delete) e as de movimentação do cursos (Home, End, Page Up e Page Down) estão localizadas longe das teclas de setas, e ambos os grupos precisam ser manipulados com a mão direita.

Senti dificuldade com isso, já que edito textos o dia inteiro, e quanto menos movimentação eu puder ter neste processo, menos os tendões vão sofrer. Felizmente, a solução foi simples: o teclado do ThinkPad R51 inclui uma tecla "Back" e uma tecla "Forward" junto às teclas de setas, aparentemente para uso na navegação web. Nada mais inútil para mim, portanto... que tal remapeá-las?

Existem múltiplos tutoriais sobre como remapear teclas no Linux, portanto vou poupar os detalhes técnicos e apenas descrever a solução. Após rodar o utilitário xev e pressionar as duas teclas para anotar seus "keycodes" (respectivamente 233 e 234), criei um arquivo ~/.xmodmap com as duas linhas abaixo:


keycode 233 = Delete
keycode 234 = Home End

Em seguida, rodei o comando xmodmap ~/.xmodmap e pronto: minhas teclas subitamente passaram a ter uma utilidade bem maior. Posteriormente incluí este comando no meu arquivo ~/.xinitrc (construído a partir do .xinitrc.template incluído em meu diretório pela distribuição), e agora a cada nova execução do ambiente gráfico as teclas são remapeadas automaticamente.

Ativando o suporte a wireless com o ndiswrapper

Este laptop estava sendo configurado para uso breve, e não como laboratório ou para uso prolongado. Portanto, quando a placa wireless interna (uma Intel Wireless 2200BG) não foi reconhecida automaticamente, não insisti muito: dei uma rápida olhada no ainda incipiente driver nativo para Linux, tentei um pouco com o NDISWrapper, mas como demorou mais do que 20 minutos (e eu tinha pressa), não continuei a tentar - embora ela conste como uma das suportadas pelo NDISWrapper.

Assim sendo, optei pelo caminho mais rápido, embora menos recompensador: peguei na gaveta uma placa wireless PCMCIA WN825G da Motorola, que eu sabia que funcionaria rapidamente, e inseri no slot. O CD de instalação para Windows XP me forneceu o driver necessário, embora eu tivesse que recorrer a um colega com Windows para descompactar o arquivo, em formato exe. Após transferir os arquivos do driver para o notebook, entrei em seu diretório e digitei apenas dois comandos:


ndiswrapper -i bcmwl5.inf
modprobe ndiswrapper

e pronto: com a mágica do ndiswrapper, o kernel do Linux estava reconhecendo minha placa usando o driver nativo do Windows. Curioso, não? Não é a mesma coisa que um driver nativo para Linux, mas o fato é que funciona, e nos dá acesso a periféricos para os quais ainda não há outras alternativas.

Não vou cobrir aqui os procedimentos de configuração do acesso wireless (não faltam tutoriais sobre o assunto), mas adianto que inseri o notebook na rede wi-fi aberta mas sem DHCP (do auditório de uma empresa que visitei) através dos seguintes comandos:


modprobe ndiswrapper
iwlist wlan0 scanning
ifconfig wlan0 192.168.1.67 netmask 255.255.255.0 broadcast 192.168.1.255 up
route add default gw 192.168.1.254

Os endereços IP acima foram obtidos do adminstrador da rede - nada de invasões ou sniffing. Mas se a rede tivesse DHCP habilitado, tudo seria ainda mais fácil.

Dica extra: configure-thinkpad

Um item que você não pode deixar de fora na hora de configurar seu ThinkPad é o utilitário configure-thinkpad. Eu nunca tinha ouvido falar dele, mas durante a instalação do SUSE 9.1 não pude deixar de notá-lo.

Sua interface baseada em tabs dá acesso à configuração de vários aspectos do seu notebook - principalmente na área de controle de energia, mas também em outros aspectos importantes. Não deixe de conferir.

 

Comentários dos leitores
(Termos de Uso)

» Knux () em 22/08 21:28

po, eu tinha me inscrito naquela lista para receber noticias de quando a novell voltasse a distribuir o kit com o suse... ai me mandaram um e-mail falando que tinha voltado só pra quem tinha se inscrito na lista e falaram para clicar em um link... entrei no link e o link não existia... =´(

será que eu nunca vou conseguir o suse?? vo chora =´´(

alguém mais passou por isso?


» flaviothunder () em 23/08 01:04

Já ouvi falar que esses thinkpads da IBM são muito bons, pena que são muito feios...


» oi () em 23/08 02:12

Puxa vida! Vejo que é muito fácil intalar um linux em um notebook com wifi!


» Augusto Campos () em 23/08 09:59

oi: se você acha fácil, bom pra você ;-)

Para mim, esta é uma das grandes barreiras que o Linux no desktop vai encontrar no futuro próximo, quando o wi-fi realmente se popularizar. A não ser que a situação atual mude rapidamente.

Atualmente, a situação é um pouco melhor que a dos winmodems: há alguns drivers nativos, e as adaptações para usar drivers proprietários são um pouco mais simples (no exemplo do texto, eu incluí um driver proprietário sem ter que recompilar nada, por exemplo. Nem kernel nem módulo). Longe de ser fácil, mas ao menos não é o estilo mais complexo de interação com o sistema.

Usando a distribuição que eu usei, apenas um pequeno número de placas wi-fi tem reconhecimento automático. O número de placas para as quais existe alguma solução (automática ou não), independente da solução, também é limitado.

Um recente editorial do Linux Journal coloca esta situação em primeiro lugar na lista de obstáculos à popularização do Linux. Não sei se concordo com a posição na lista, mas não tenho dúvida de que será um problema para muita gente no futuro próximo.


» oi () em 23/08 12:58

Augusto,

É claro que eu estava brincando! O complemento da minha mensagem não entrou, então vou expor meu ponto de vista:

1) A IBM é notoriamente uma das empresas que mais investe em linux.
2) A Novell redirecionou totalmente seus negócios para Linux.

Então porque um computador da IBM rodando um SO da Novell não funciona corretamente com linux ?

É no mínimo um descompasso, não é ?


» oi () em 23/08 13:15

> Então porque um computador da IBM rodando um SO
> da Novell não funciona corretamente com linux ?

Melhor dizendo:

Então porque um computador da IBM rodando um SO
da Novell não DETECTA o hardware corretamente com linux ?


» eduardo () em 23/08 13:17

tipo pode ser pq a novel nao tinha comprado a suse na epoca que saiu o 9.1 talvez na suse 10 funcione e o suse enterprise 9 ja eh com a novel nao eh ?


» Augusto Campos () em 23/08 13:23

oi, o driver para a placa wireless está em desenvolvimento: http://ipw2200.sourceforge.net/

Ela é da Intel, o que acrescenta um terceiro termo à tua equação.

Mas tua argumentação está correta. Tanto que a placa da geração imediatamente anterior desta mesma série é detectada pelo sistema corretamente, na combinação que você expôs acima.

Espero que possam resolver este nó rapidamente. Mas enquanto não o fazem, não adianta tapar o sol com a peneira: em geral há formas de fazer funcionar, mas muitas vezes os métodos estão longe de ser simples como deveriam.


» Augusto Campos () em 23/08 13:25

Só complementando: eduardo, o SUSE Linux 9.1 já foi um lançamento da Novell sim.


» oi () em 23/08 13:27

Eduardo,

Concordo com você, mas a novell não é o X da questão aqui. A IBM é que deveria afinar seus produtos com seu discurso a favor do SL.

E como o Augusto disse no artigo, o driver não existe ainda, ou seja, nem no suse 10.


» Augusto Campos () em 23/08 13:38

Mais ou menos, oi. O suse 9.1 já inclui o ndiswrapper, e recursos para fazer o download automático (via yast) de determinados drivers wireless proprietários (inclusive o da geração anterior da placa que veio no notebook acima), para facilitar a vida de quem não tiver o CD original da placa mas tiver uma forma alternativa de conectar-se para obter o driver proprietário.

Eu usei basicamente este mesmo recurso para fazer funcionar o driver da motorola.

Portanto, ainda que o driver livre ainda não esteja 100% pronto quando chegar a hora, existe a chance de o hardware funcionar em uma próxima versão da distribuição.

E acredito que outras distribuições estejam usando este mesmo recurso do ndiswrapper. Me chamou a atenção que ele recebeu destaque entre as novidades da versão anunciada hoje do Knoppix, por exemplo.


Comentários desativados: Esta discussão é antiga e foi arquivada, não é mais possível enviar comentários adicionais.



O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação, layout, tabela de caracteres, etc.) o acervo de notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter de acervo, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.