Como configurar o modem Huawei E220 no Debian (lenny - kernel 2.6.24). Este artigo é um pouco diferente dos outros porque é mais uma receita para conseguir ter o modem a funcionar do que uma explicação do que se está a passar.
Em primeiro lugar é necessário que não seja pedido o PIN do respectivo cartão de dados. Para o efeito inseri o cartão num telefóne móvel normal e acabei eventualmente por encontrar a opção correcta...
Em termos de software, é necessário instalar o wvdial e/ou o kppp (que faz parte do KDE, se usarem outro sistema de desktop, deverão adaptar estas instruções para o dialer apropriado):
# aptitude install wvdial kppp
As dependências são tratadas pelo sistema de gestão de ficheiros.
Este modem tem a particularidade de emular o comportamento de um CDROM, nesse cd-rom contém os drivers necessários para utilizar o modem no Windows e Mac OSX. Este cdrom, além de ser absolutamente desnecessário, ao ser detectado pelo HAL (hardware abstraction layer) não deixa que o modem em si seja detectado.
Para obrigar o HAL a ignorar o CDROM deve-se criar o seguinte ficheiro (/usr/share/hal/fdi/preprobe/20thirdparty/10-huawei-e220.fdi).
<?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>
Obtive este ficheiro de http://bbs.archlinux.org/viewtopic.php?id=43614.
Reiniciar o HAL:
/etc/init.d/hal restart
Se ligarem o modem a uma porta USB, neste momento, deverão surgir dois ficheiros em /dev/, ao fim de 5 ou 6 segundos (tempo necessário apra o modem ser reconhecido):
# ls /dev/ttyUSB* ttyUSB0 ttyUSB1
A seguir é necessário configurar o wvdial. Notar que convém configurar primeiro o wvdial, dado que, pelo menos comigo, funcionou à primeira e isso levou-me a persistir até ter consguido ter o kppp a funcionar.
Editar o ficheiro: /etc/wvdial.conf:
# wvdial for Vodafone Data. Created by Tazz_tux # Version 1.0 # Change Log: # # Added support for HSDPA. # Added Headers and version control. [Dialer Defaults] Phone = *99***1# Username = vodafone Password = vodafone Stupid Mode = 1 Dial Command = ATDT [Dialer hsdpa] Modem = /dev/ttyUSB0 Baud = 460800 Init2 = ATZ Init3 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 ISDN = 0 Modem Type = Analog Modem
Como root já conseguimos ligar à internet, basta fazer:
# wvdial hsdpa --> WvDial: Internet dialer version 1.56 --> Cannot get information for serial port. --> Initializing modem. --> Sending: ATZ ATZ OK --> Sending: ATZ ATZ OK --> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 OK --> Modem initialized. --> Sending: ATDT*99***1# --> Waiting for carrier. ATDT*99***1# CONNECT --> Carrier detected. Starting PPP immediately. --> Starting pppd at Thu Apr 17 23:13:23 2008 --> Warning: Could not modify /etc/ppp/pap-secrets: Permission denied --> --> PAP (Password Authentication Protocol) may be flaky. --> Warning: Could not modify /etc/ppp/chap-secrets: Permission denied --> --> CHAP (Challenge Handshake) may be flaky. --> Pid of pppd: 3150 --> Using interface ppp0 --> local IP address 93.108.1.193 --> remote IP address 10.64.64.64 --> primary DNS address 212.18.160.133 --> secondary DNS address 212.18.160.134
Pode-se fazer ctrl-c para sair (e no processo fechar a ligação):
Caught signal 2: Attempting to exit gracefully... --> Terminating on signal 15 --> Connect time 1.3 minutes. --> Disconnecting at Thu Apr 17 23:14:46 2008
Para conseguirmos ligar com o utilizador normal é necessário acrescentá-lo ao grupo dip:
# addgroup helder dip
Naturalmente que deverão mudar o nome de utilizador de 'helder' para o utilizador que vai usar o modem...
A partir de agora o vosso utilizador já pode invocar o wvdial, da mesma forma que fiz com o root.
Como o computador vai ser utilizado por uma pessoa que não está habituada à CLI, foi necessário configurar esta ferramenta gráfica. Os passos para a configurar foram os seguintes:
Clicar em 'Customize pppd Arguments' e acrescentar:
Notar que esta lista de argumentos foi encontrada algures na internet. De certeza que a opção 'Debug' não deve ser necessária e além disso se acrescentrarmos o argumento 'noauth' não deve ser necessário editar o ficheiro /etc/ppp/peers/kppp-options como se descreve mais abaixo. Agora não tenho nem tempo nem pachorra para testar isso, quando o tiver corrijo este artigo. É claro que se houver uma alma caridosa que se dê ao trabalho de compreender e testar cada uma destas opção, eu agradecia imenso que me mandasse as suas conclusões!
Pode-se ligar o registo de tráfego, que poderá ser útil:
Clicar em OK e na orelha seguinte, acrescentar um novo modem:
Na orelha 'Modem' clicar em 'Modem Commands...':
Clicar em OK para voltar ao dialogo anterior. Ainda configurei a orelha 'Misc' como se segue:
Finalmente na janela principal preencher os campos 'Login ID' e 'Password', eu usei vodafone/vodafone:
Antes de fazer a ligação usando o KPPP é necessário acrescentar o ficheiro /etc/ppp/peers/kppp-options, contendo apenas:
noauth
Neste momento deverá ser capaz de ligar à Interent usando o KPPP.
O modem contém um led que dá a seguinte informação: