Welcome to android-3g-modem’s documentation!

Abstract / Resumo

  • After several tests with some applications, Operating Systems and configurations, I’ve found what I call as a “best way to use an Android Phone as 3G modem”. So this is a tutorial (in Portuguese), that explains how to setup a Linux box, OpenVpn, Android SDK and AziLink application to make a stable (with no proxies) 3G connection.
  • This document was built using several instructions found in http://netbeando.blogspot.com/2010/05/off-topic-ubuntu-104-motorola-backflip.html

Celulares Testados

  • Motorola Backflip
  • Motorola Quench
  • Motorola Milestone
  • Nexus One (HTC)

(Por favor me informem sobre o teste e funcionamento em outros celulares: jd.comment@gmail.com)

Distribuições Testadas

  • Debian Squeeze (2.6.32-3-686-bigmem)
  • Debian Lenny (2.6.30-bpo.2-686-bigmen)
  • Ubuntu 10.4

(Por favor me informem sobre o teste e funcionamento em outras distribuições e kernels: jd.comment@gmail.com)

Instalação no Celular

  1. Instale a última versão do AziLink (http://azilink.googlecode.com/files/azilink-2.0.2.apk)

    • Após instalado você deverá ver o ícone do AziLink no celular:

      _images/0.png
  2. Habilite a “Depuração USB” em Menu -> Configurações -> Aplicativos -> Desenvolvimento

Instalação no PC

  1. Faça o download e instale o Android SDK:

    $ wget http://dl.google.com/android/android-sdk_r06-windows.zip
    $ tar -xvf android-sdk_r06-linux_86.tgz
    $ cd android-sdk-linux_86/
    $ tools/android update sdk

Neste momento aparecerá uma tela do AVD Manager. Nela escolha a instalação dos SDKs, Samples e Documentations da versão do Android instalado em seu celular.

_images/sdk.png
  1. Crie o arquivo /etc/udev/rules.d/90-android.rules com o seguinte conteudo:

    SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666"
  2. Instale o OpenVPN 2.1 (Versão >= 2.1):

    sudo apt-get install openvpn
  3. Crie um arquivo no diretório {ANDROID_SDK}/tools com o nome azilink.ovpn e com o seguinte conteúdo:

    dev tun
    remote 127.0.0.1 41927 tcp-client
    ifconfig 192.168.56.2 192.168.56.1
    route 0.0.0.0 128.0.0.0
    route 128.0.0.0 128.0.0.0
    socket-flags TCP_NODELAY
    keepalive 10 30
    dhcp-option DNS 192.168.56.1
  4. Crie o /usr/bin/android3GConnect.sh, com o seguinte conteúdo:

    $ANDROID_SDK = /opt/dev/droid/android-sdk-linux_86/ ### coloque o diretório onde vc instalou o SDK ###
    cd $ANDROID_SDK/tools
    sudo echo "nameserver 192.168.56.1" >> /etc/resolv.conf
    sudo ./adb kill-server
    sudo ./adb start-server
    ./adb devices
    ./adb forward tcp:41927 tcp:41927
    sudo openvpn --script-security 2 --config azilink.ovpn
  5. Dê permissão de execução para esse script com o comando:

    $ chmod +x /usr/bin/android3GConnect.sh
  6. Para testar, primeiro reinicie o serviço do openvpn:

    $ /etc/init.d/openvpn restart
    • Agora, reinicie seu celular e conecte-o na porta USB (Escolha no celular a opção “Somente Carregar”).

    • Abra o AziLink:

      _images/1.png
    • No celular ative a opção “Service Active”

      _images/2.png
    • No PC execute o script android3GConnect.sh

      $ android3GConnect.sh
    • No PC você deverá ver a seguinte saída:

      _images/3.png
    • No celular a tela do AziLink deverá ter mudado para:

      _images/4.png