Depois de apanhar um bocado para configurar com sucesso o modem USB D301 da Claro, resolvi escrever este mini-guia de configuração, que apesar de ter sido testado no Mandriva que uso em meu eeePC 4G, pode ser utilizado para outras distribuições, sem estresse.
O problema é alguns kernels costumam se atrapalhar na identificação das funções, ativando só o pendrive, e descartando o resto.
Bastam uns poucos conhecimentos de uso do terminal, abundantes nos tutorias disponíveis no GdH.
Antes de mais nada, certifique-se de ter os seguintes pré-requisitos instalados:
– Kernel Linux 2.6.18 ou maior
– pppd versão 2.4.4 ou maior
– udev versão 118 ou maior
Essas informações podem ser rapidamente obtidas abrindo um terminal e digitando os comandos abaixo:
uname -a
pppd --version
udevd --version
Se necessário, atualize os pacotes de sua distribuição.Cabe esclarecer que o modem USB que a Claro ultimamente anda vendendo aqui no Brasil é fabricado por uma empresa sul-africana, chamada Advinne (http://www.3g.co.za). O modem Traveller/Giant D301 na verdade é um Advinne AMC D301, que é vendido para integradores na China (Giant Enterprises), e depois redistribuído no Brasil. Esses modens 3.5G são mais baratos (para a Claro) que os Huawei E226, com velocidade máxima HSDPA de 3.6Mbps, enquanto que os E226 podem chegar até 7.2Mbps (no download). Obviamente isso não vai fazer nenhuma diferença até que a Claro um dia comece a vender planos maiores que 3.6Mbps...
A boa notícia é que a Advinne teve o cuidado de verificar a compatibilidade de seu produto com o Linux, inclusive efetuando testes usando uma distribuição genérica (foi utilizado o Slackware 12.1 como base).
Em razão do modem possuir várias funções de dispositivo (além de modem ele funciona como gateway de mensagem multimídia (MMS), placa de rede, terminal de envio SMS, pendrive e outros), para que ele seja reconhecido corretamente é necessário definir algumas regras do udev. O fabricante disponibiliza um "driver" (se é que podemos chamar assim) para esse propósito, como veremos a seguir.
Um ponto interessante nesse equipamento é que a parte "pendrive", que é utilizada para transportar os drivers do Windows é completamente funcional. Ao contrário de alguns modens que emulam um CD-ROM, a memória flash pode ser gravada, particionada, formatada, etc...
No meu caso, copiei o "driver" de Linux para ele, assim meu modem vai funcionar em qualquer lugar
Além de publicar os comandos crípticos do udev aqui, vou fazer um simples passo-a-passo para instalar o modem, então vamos lá:
0. Não plugue o modem ainda, ou ele poderá ser reconhecido só como pendrive;
1. Usando seu navegador preferido, vá ao site do fabricante conhecer o modem em http://www.3g.co.za/content/view/85/31/ e clique na palavra "Linux" nas especificações, onde se lê "Supports Linux", ou vá direto em http://www.3g.co.za/files/AMC_Linux.zip e baixe o zip com os "drivers";
2. Salve o arquivo zip em algum lugar conhecido (que tal seu diretório /home?) e use o descompactador de arquivos de sua preferência para extrair o conteúdo;
3. O zip contém apenas dois arquivos, AMC Linux.pdf (o guia) e AMC.rules (as regras para o udev). Abra um terminal como root e copie as regras do udev para o diretório onde o udev observa as regras (normalmente é /etc/udev/rules.d/), como nos exemplos abaixo:
sudo cp ~/AMC.rules /etc/udev/rules.d/
ousu
cp ~/AMC.rules /etc/udev/rules.d/
supondo que você descompactou os arquivos no seu diretório /home (o seu diretório home também é conhecido como "~")4. Para fazer com que as regras passem a valer sem reiniciar o computador, digite (como root):
udevcontrol reload_rules
ouudevadm control --reload-rules
dependendo da versão do udev que estiver instalada na sua distribuição.5. Plugue o modem e voilá!!!! serão ativadas interfaces como ttyACM0, ttyACM1 (portas seriais de modem), usb0 (placa de rede, ainda não descobri como usar) e sd? (dispositivo de armazenamento).
Aí é só usar seu programa preferido para discar (wvdial, kppp, etc...), seguindo as diversas orientações do Morimoto existentes nos tutoriais e guias do GdH (tais como em https://www.hardware.com.br/tutoriais/3g-linux/). Quanto ao pendrive, é só usar o seu gerenciador de arquivos preferido.
Para os apressadinhos, aqui estão as regras do udev (copie e cole como AMC.rules no diretório /etc/udev/rules.d/)...
###
# udev rule for Advinne AMC D301 HSDPA modem with onboard memory
# This file changes the bConfigurationValue so that the ttyACM ports are detected by the kernel
#
# info@advinne.com
#
###
SUBSYSTEMS=="usb", ATTR{idVendor}=="0fd1", ATTR{idProduct}=="1000", ATTR{bConfigurationValue}=="1",RUN+="/bin/bash -c 'echo 3 > /sys/bus/usb/devices/%b/bConfigurationValue'"
SUBSYSTEMS=="usb", ATTR{idVendor}=="0fd1", ATTR{idProduct}=="1010", ATTR{bConfigurationValue}=="1",RUN+="/bin/bash -c 'echo 2 > /sys/bus/usb/devices/%b/bConfigurationValue'"
Se por acaso o modem não funcionar corretamente na primeira vez, reinicie a máquina após copiar as regras... Existem outros comandos para evitar isso, mas sem dúvida o CTRL-ALT-DEL é mais que universal... A propósito, algumas pessoas reportaram que o sistema reconhece o modem automaticamente. Isso depdende da versão do kernel instalada em seu sistema. Se o modem for reconhecido automaticamente, melhor ainda. Caso não seja, certamente é mais rápido adicionar regras no udev do que bater boca com a Claro para trocar de modem...
Meu propósito com este texto é mostrar às pessoas que conhecem pouco o Linux que diante de um problema, não há motivo para pânico (voltar imediatamente ao Windows?), apenas é necessário ler um pouco.
Esses problemas ocorrem em razão da "birra" de pessoas que tanto entram em pânico como espalham ele para os outros. Isso inclui muitos fabricantes.