Solucionado o problema com o modem Huawei E226

Eu já tinha conseguido usar o modem E226 no Linux, porém estava com um problema intermitente. Algumas vezes o kernel detectava apenas uma porta serial:

usb 1-2: GSM modem (1-port) converter now attached to ttyUSB0

Quando apenas uma porta era detectada o modem não respondia.

Outras vezes o modem detectava duas ou três portas:
usb 1-2: GSM modem (1-port) converter now attached to ttyUSB0
usb 1-2: GSM modem (1-port) converter now attached to ttyUSB1
usb 1-2: GSM modem (1-port) converter now attached to ttyUSB2

Neste caso o wvdial conseguia inicializar e conectar corretamente.

Parece que o problema é causado porque o modem possui várias portas seriais e ao mesmo tempo funciona como um dispositivo de armazenamento o que gera problema para a detecção através do udev. Este dispositivo de armazenamento é detectado como uma unidade de CDROM, parece estranho mas esta foi a forma que a Huawei encontrou de fazer a instalação automática no Windows, uma vez que este sistema operacional automaticamente executa qualquer arquivo Autorun existente no CDROM (uma ótima forma de criar uma pen-drive modificada com um cavalo de tróia em batman?).

Procurei na internet por alguma solução para o problema, provavelmente outras pessoas já passaram por este problema. A primeira solução que achei não gostei muito, o cara sugeria remover e inserir o módulo uhci_hcd (www.mohdshakir.net/tag/gutsy). Não gostei porque ele não ataca a causa do problema, mas apenas tenta limpar a bagunça que foi feita.

Continuei a pesquisa e encontrei uma solução (bbs.archlinux.org/viewtopic.php?pid=336770) um pouco melhor, criar uma regra para que a hal ignore a detecção do dispositivo de arzemanamento. Com esta regra o kernel do Linux passou a detectar corretamente os três dispositivos. Segue abaixo a regra:

Crie o arquivo /usr/share/hal/fdi/preprobe/20thirdparty/10-huawei-e226.fdi com o conteúdo:

<?xml version="1.0" encoding="UTF-8"?>

<deviceinfo version="0.2">
  <device>
    <match key="usb.vendor_id" int="0x12d1"> <!-- Huawei -->
      <match key="usb.product_id" int="0x1003"> <!-- E220 -->
        <merge key="info.ignore" type="bool">true</merge>
      </match>
    </match>
  </device>
</deviceinfo>

“Chegará um dia onde todos os fabricantes desenvolverão drivers open-source para o Linux, quando este dia chegar todas as pessoas serão livres”

5 thoughts on “Solucionado o problema com o modem Huawei E226

  1. E ai Alan tudo tranqüilo?
    Então descobriu se tem jeito de compartilhar a internet a partir desse modem?
    Me disseram que realmente tem roteador usb, mas ainda não vi…
    Abraços

  2. E aí Marcão, você pode compartilhar a internet através da USB ou via placa de rede. Depois te mando um tutorial.

  3. Fala ae galera! Tbm gostaria de compartilhar essa conexao desse modem… tem com liga-lo direto no meu roteador NetGear 624? Ou soh roteio atraves de um pc? Grato

  4. Olá Artur,
    teoricamente seria possível fazer isto com o NetGear WGPS606, uma vez que ele possui porta USB, mas vc teria que modificar o Linux que roda nele (recompilar um novo kernel) e adicionar suporte ao modem GSM.

    Um abraço,

    Alan

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s