Slackware + ZTE MF 626 + VIVO
Depois de muito sofrimento, madrugadas em claro (mas não perdidas), váaaaaarios tutoriais lidos, ajuda de amigos (valeu Diegão) e do pessoal do gus no FISL10, consegui colocar nos trilhos o rebelde modem zte mf 626 3G da vivo.
Entre as várias referências que li, vou me basear no post do Alexandre Catão, Fedora + ZTE MF 626 + OI. E como na Internet tudo se copia (com os devidos créditos é claro :p) e se adapta, vamos lá então.
A instalação foi realizada em um Notebook Itautec C4t8j W7650 Core 2 Duo T5550 1.83ghz 3Gb RAM, com Slackware Linux 12.2.
Vou procurar ser o mais direto possível, pois o tutorial que me baseei explica muito bem o conceito de cada programa.
Como instalei o Slackware full, o pacote libusb já está instalado.
Baixe o arquivo usb_modeswitch
Baixe o pacote wvdial
Baixe o pacote wvstreams
Abra um terminal. Transforme-se em super usuário. Vá para o diretório onde baixou os pacotes. Execute os comandos abaixo para instalar os programas.
# installpkg wvdial-1.56-noarch-1ztm.tgz
# installpkg wvstreams-4.2.2-i486-1ztm.tgz
# tar -xvjf usb_modeswitch-1.0.2.tar.bz2
# cd usb_modeswitch-1.0.2
# make install
Agora, vamos configurar o programa:
# vim /etc/usb_modeswitch.conf
O arquivo ficou como no exemplo abaixo. IMPORTANTE! As descrições dos modens e o autor devem ser descomentadas também.
ZTE MF628+ (tested version from Telia / Sweden)
ZTE MF626
# ZTE MF636 (aka “Telstra / BigPond 7.2 Mobile Card”)
#
Contributor: Joakim Wennergren
DefaultVendor= 0×19d2
DefaultProduct= 0×2000
TargetVendor= 0×19d2
TargetProduct= 0×0031
# only for reference
MessageEndpoint=0×01
MessageContent=”55534243123456782000000080000 c85010101180101010101000000000000″
# if that command doesn’t work, try the other (“eject”)
MessageContent=”55534243123456780000000000000 61b000000030000000000000000000000″
Vamos adicionar uma regra no udev colando o trecho abaixo no arquivo /etc/udev/rules.d/15-zte-mf626.rules
# Is this the ZeroCD device?
SUBSYSTEM==”usb”, SYSFS{idProduct}==”2000″,
SYSFS{idVendor}==”19d2″, GOTO=”ZTE_ZeroCD”
# Is this the actual modem?
SUBSYSTEM==”usb”, SYSFS{idProduct}==”0031″,
SYSFS{idVendor}==”19d2″, GOTO=”ZTE_Modem”
LABEL=”ZTE_ZeroCD”
# This is the ZeroCD part of the card, remove
# the usb_storage kernel module so
# it does not get treated like a storage device
#RUN+=”/sbin/rmmod usb_storage”
RUN+=”/usr/sbin/usb_modeswitch -d 1 -v 0×19d2 -p 0×2000 -V 0×19d2 -P 0×0031″
LABEL=”ZTE_Modem”
# This is the Modem part of the card, let’s
# load usbserial with the correct vendor
# and product ID’s so we get our usb serial devices
RUN+=”/sbin/modprobe usbserial vendor=0×19d2 product=0×0031″,
# Make users belonging to the dialout group
# able to use the usb serial devices.
MODE=”660″, GROUP=”dialout”
#MODE=”660″, GROUP=”tty”
LABEL=”ZTE_End”
Vou pular o 4º passo no tutorial do Alexandre, que visa testar se o modem foi detectado. E ir para a parte, o pulo do gato, de automatização da detecção do modem.
Crie o arquivo /etc/udev/rules.d/45-hotplug.rules e cole o texto abaixo nele:
SUBSYSTEM==”usb”, SYSFS{idProduct}==”0031″, SYSFS{idVendor}==”19d2″, RUN+=”/sbin/modeswitch-kmod.sh”
Crie o arquivo /sbin/modeswitch.sh e cole o texto abaixo nele:
#exec 1<&- 2<&- 5<&- 7<&-
sh -c “sleep 4; /usr/sbin/usb_modeswitch” &
exit 0
Crie o arquivo /sbin/modeswitch-kmod.sh e cole o texto abaixo nele:
/sbin/rmmod option
sh -c “sleep 4; /sbin/modprobe option” &
exit 0
Não esqueça de dar permissão de execução para os dois arquivos:
# chmod 766 /sbin/modeswitch*.sh
Reinicie o udev:
# /etc/rc.d/rc.udev restart
Plugue o modem e assim que a luz azul acender, execute os comandos abaixo para verificar se deu tudo certo. Demora em média uns 30 segundos o processo.
# lsusb | grep ONDA
O resultado deve ser parecido com este:
Bus 002 Device 006: ID 19d2:0031 ONDA Communication S.p.A.
Mas o teste matador deve ser feito em relação à criação dos dispositivos ttyUSB. Digite ls /dev/ttyUSB*
Se o resultado for esse: /dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2. A parada funfou! Agora é hora de configurar a conexão.
Executando o wvdialconf o modem foi detectado em ttyUSB1, MAAAAAAAAAAS não sei o porque só funcionou em ttyUSB2, fica aqui a atenção. Abaixo segue o meu /etc/wvdial.conf
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init5 = AT+CGDCONT=1,”IP”,”zap.vivo.com.br”
Modem Type = Analog Modem
ISDN = 0
New PPPD = yes
Phone = *99#
Modem = /dev/ttyUSB2
Username = vivo
Stupid Mode = 1
Password = vivo
Baud = 921600
Crie também o arquivo /etc/ppp/peers/wvdial
noauth
debug
/dev/ttyUSB2
115200
defaultroute
noipdefault
user “vivo”
remotename vivo
persist
maxfail 0
ipparam
#name wvdial
usepeerdns
Mais uma dica (ATUALIZADA: Valeu Franco!), para usar o DNS da vivo que muda após cada conexão é preciso criar um link simbólico, substituindo o arquivo /etc/resolv.conf
E para finalmente conectar e navegar na net digite como root wvdial.
Resumindo a história, este benedito pen-modem 3g funcionou no MAC de um amigo com instalador e tudo, no Windows, não cheguei a testar no Ubuntu, não foi por falta de insistência de amigos, mas queria ver até onde ia a minha paciência
.
E repetindo o que gosto de falar: “Linux é Linux”, não importa a distribuição.

julho 26th, 2009 at 21:26
[...] Leia mais no blog do gus-pa [...]
julho 31st, 2009 at 12:45
Eu tenho um modem desse, me deu um trabalhinho para colocar para funcionar, então andei pesquisando mais sobre ele e pelo que vi, ele possui um driver para Linux interno sim, uma versão (não)-modificada do módulo option (o módulo que conecta esses modems 3G genéricos, baseados no da empresa Option), chamado de zte, além do módulo, ainda tem uma interface gráfica.
Os drivers estariam no “CD” do modem, mas os kerneis mais novos tem um pedaço de código que tratam esse dispositivo ZeroCD como “defeituoso”, fazendo assim com que ele não seja emulado.
Pra minha surpresa, em um Ubuntu mais antigo, kernel 2.6.22, o ZeroCD foi reconhecido, eu pude instalar o driver do modem e o seu discador.
O procedimento que o discador executa para que o modem seja reconhecido pelo sistema é um simples “eject /dev/”
Após isso, o wvdial é utilizado normalmente.
As informações estão ai, para quem quiser criar algo especifico, isso foi resultado de uma pesquisa que fiz em fóruns do Ubuntu, bugzilla do Fedora, Posts de outros blogs e olhando o “código-fonte” do discador (analise de “strings ZMC”)
Uma opção para se livrar do usb_modeswitch e numa maquina windows, abrir o discador, deixar q ele transforme o modem em modem e dai então, usar o HyperTerminal na porta do modem e digitar: “AT+ZCDRUN=8″, assim o modem entra direto em modo modem =).
Abraços a todos.
agosto 6th, 2009 at 12:45
Tentei adaptar esse tutorial pro mandriva 2009.1 (os outros q achei na net nao funfaram) e tb nao funcionou.
Instalei os pacotes via urpmi todo. OK
Criei os arquivos e inseri as linhas onde foi mencionado OK
apos inserir o modem, lsusb | grep ONDA tb achou, OK
mas USBTTY falhou, nao criou os dispositivos
pergunta pra serve os arquivos criados modeswitch se vc nao instrui a usa-los depois em nenhum lugar ?
obrigado
agosto 19th, 2009 at 22:03
tá.. mas e cade o tutorial?
agosto 22nd, 2009 at 11:42
O tutorial que tirei como base é o link Fedora + ZTE MF 626 + OI, que está logo no início do post, fiz a adaptação para o Slackware.
setembro 20th, 2009 at 12:49
Fiz no slack 13 rolou conctei e naveguei, apos um dia fui tentar novamete e o mesmo não funcionou mais ele diz que n existe /dev/ttyUSB alguem te algum sugestão. j´refiz a configuração
dezembro 1st, 2009 at 19:12
eae rapazeada, seguinte, ewvdial e wvstreams ta kebrado o link
corrigeaeeee por favor
valeu!
dezembro 10th, 2009 at 09:27
Rapaz valeu mesmo as dicas,
Utilizei seu tutorial para instalar um modem ZTE MF645 (MF628+) da Vivo com sucesso no Slackware64-current com kernel 2.6.32 , os únicos problemas foram ter que baixar os sources do WVSTREAMS e WVDIAL e compilar no meu laptop(galho fraquissimo!!).
esse modem é lançamento e vem com receptor para TV digital , essa é próxima briga !!!
Parabéns !!
Valeu mesmo!!
Francisco – Belém-PA
janeiro 1st, 2010 at 22:09
Segui esse tutorial para instalar o modem ZTE MF 645 com receptor digital da VIVO no meu Slackare64-current com kernel 2.6.32.2 e tá funcionando perfeitamente. Tive apenas que baixar alguns sources e compilar, mas tudo tranquilo!!
Parabéns pelo tuto !!!
janeiro 1st, 2010 at 22:15
Só mais um detalhe , faça com que o /etc/resolv.conf seja um link sinbólico do resolv.conf encontrado no diretório do wvdial , visto que o DNS da vivo muda em cada conexão.
janeiro 2nd, 2010 at 00:24
Segui esse tutorial mas usando o modem ZTE MF 645 com recptor digital da Vivo no meu slackware64-current e está funcionando bem.
só que para usar o DNS da vivo que muda após cada conexão é preciso fazer um ln -sf /etc/ppp/resolv.conf /etc/resolv.conf
isso acaba o problema de DNS
janeiro 27th, 2010 at 00:36
Galera, valeu o feedback e as dicas. Atualizei o post. Estamos por aqui slackers!
E entrem na lista de discussão para conversarmos mais.
janeiro 28th, 2010 at 09:03
Bom pessoal, um escritorio daqui da cidade comprou um modem da vivo e queria compartilhar a internet com os outros computadores..
Lá vai a missão de instalar esse modem no servidor linux, MF 100 ou ZTE 626.
Li esse tutorial que me ajudou em muito em criar um script, para que não haja problema na detecção, conexão, pois perderia muito tempo indo nesse escritorio toda vez que o modem parasse de funcionar.
http://pastebin.com/m46b94e37
Não sei muito de shellscript, mas fui estudando e testando.
No meu caso ta dando certo.
Peço pro usuário conectar o modem, ligar a maquina e pronto…
Na inicialização ele tenta detectar e depois conectar.
Se não da certo, ele tenta mais 4 vezes.
Coloquei no cron de 5 em 5 minutos, e ele testa a conexão. Se ok, exit se não, ele tenta conectar denovo.
Podem usar e modificar a vontade. Qualquer dica sobre o script é bem vinda.
janeiro 28th, 2010 at 11:04
[...] as informações do Luiz Sanches consegui configurar e fazer o compartilhamento, mas isso foi o de menos. Todo dia pela manhã o [...]