Este é um script que escrevi para ativar a conexão ao Claro 3G usando o celular como modem, via Bluetooth. Ele é destinado a quem está usando um chip de dados no aparelho para navegar.
A idéia foi fazer um script que configure a conexão de forma prática e disque usando o wvdial, de forma a funcionar sem modificações em qualquer distribuição. Para usá-lo, é necessário estar usando uma distribuição atual, com o suporte a Bluetooth ativado.
Baixe o script no: https://e.cdn-hardware.com.br/static/media/press/arquivos/conectar-claro3g
O script está bem comentado, de forma que você pode ler todo o código para entender melhor o que ele faz:
#!/bin/sh # Script escrito para uso pessoal, modifique a gosto antes de usar # Por Carlos E. Morimoto – http://www.gdhpress.com.br/blog/ # Antes de usar é necessário ativar o bluetooth. # Não se esqueça de fazer o pairing com o smartphone, usando o PIN informado na linha abaixo: pim=”49557567″ # Endereço do transmissor Bluetooth do smarphone. blueaddr=”00:1B:AF:E4:AA:5B” # Canal usado pelo DUM no smartphone. channel=”channel 2″ # Descobre qual é o nome da máquina: echo “Use –config da primeira vez, para gerar a configuração” if [ “$1” = “–scan” ]; then if [ “$1” = “–config” ]; then ## Workaround para corrigir um bug do Ubuntu 7.10, que não coloca o PC em modo discoverable (descomente para ativar): cat </etc/bluetooth/hcid.conf cd /var/lib/bluetooth/??:??:??:??:??:?? /etc/init.d/bluetooth restart echo ‘rfcomm0 {‘ > /etc/bluetooth/rfcomm.conf /etc/init.d/bluetooth restart ## Desativa a rota padrao atual para que seja usada a conexao 3G (use caso conecte mas não navegue) # Certifica-se de que o transmissor bluetooth está ativado: echo “Gerando configuracao do wvdial…” sed -i -e “/lcp-echo-interval 30/D” /etc/ppp/options echo ‘[Modem0]
Modem = /dev/rfcomm0 Password = claro Phone = *99***1# Mode = 1 Stupid mode = 1 Auto Reconnect = on Inherits = Modem0 [Dialer Defaults] Modem = /dev/rfcomm0 Baud = 921600 Auto DNS = off Init1 = ATZ Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 Init5 = AT+CGDCONT=1,”IP”,”claro.com.br”,””,0,0 ISDN = 0 Modem Type = Analog Modem Phone = *99***1# Username = claro Password = claro ‘ > /etc/wvdial.conf echo “discando…” wvdial claro O script termina aqui: exit 0 # Comandos adicionais que voce pode executar manualmente: # Compartilha a conexao (execute como root para ativar) # Substitui o DNS do provedor |
Em resumo, o script ativa o Bluetooth, gera os arquivos de configuração necessários e ativa a conexão usando o wvdial. Dentro do script, existem alguns workarounds para problemas comuns, que você pode descomentar para ativar.
Depois de salvar o script, altere as três primeiras linhas (pim=, blueaddr= e channel=), especificando o PIN (que você informa ao fazer o pairing no smarphone), o endereço do transmissor Bluetooth do smarphone, que você descobre qual é usando o comando “hcitool scan” e o canal usado pelo DUM no smartphone, sendo que telefones da Nokia usam o canal 2 e os de outras marcas usam quase sempre o canal 1.
Em seguida, transforme-o em executável usando (como root) o:
# chmod +x conectar-claro3g
Ao executá-lo pela primeira vez, use a opção “–config”, que gera a configuração inicial:
# ./conectar-claro3g –config
Devido ao uso do “echo” para escrever nos arquivos de configuração, o script precisa ser executado diretamente (não funciona se você usar o sudo). Se você usa o Ubuntu, destrave a conta de root e logue-se diretament usando:
$ sudo passwd
<senha>
$ su –
<mesma senha>
A partir da segunda vez, execute-o sem parâmetros para que ele simplesmente abra a conexão, sem fazer toda a configuração de novo:
# ./conectar-claro3g
Você pode também discar diretamente, usando o wvdial:
# wvdial claro
Se, mesmo depois de tudo configurado e revisado a conexão estiver falhando com um erro como:
–> Sending: ATZ
ERROR
ERROR
–> Bad init string.
–> Cannot get information for serial port.
… experimente desligar e ligar novamente o smartphone. Por estranho que possa parecer, travamentos no sub-sistema de comunicação serial usado no Bluetooth são extremamente comuns e são resolvidos com o bom e velho reset. Se você achava que os paus e resets eram coisa do Windows, seja bem-vindo ao fantástico mundo dos smartphones… 🙂
Concluindo, o script também funciona com chips da Tim, basta substituir a linha:
Init5 = AT+CGDCONT=1,”IP”,”claro.com.br”,””,0,0
por:
Init5 = AT+CGDCONT=1,”IP”,”tim.br”,””,0,0
Naturalmente, para que o script funcione é necessário que o wvdial esteja instalado. Instale-o usando o gerenciador de pacotes, como em:
# apt-get install wvdial
ou:
# urpmi wvdial
Uma dica: salve o script no cartão de memória do smartphone, assim você pode tê-lo sempre a mão caso precise conectar usando outro micro.
Deixe seu comentário