Transformer son téléphone Android en modem USB

Le but de cet article est de paramétrer votre Frugalware pour accéder à internet via votre mobile Android. Le cas présent fonctionne avec le téléphone HTC G1/Dream, mais à peu de choses près (udev), la manip est la même avec tous les mobiles Android.

Nous aurons pour cela besoin de l’utilitaire adb faisant partie du SDK Android.

Cela tombe bien, je viens d’ajouter le paquet android-sdk au dépôt -current, avec l’aimable autorisation de vmiklos, dans la mesure où l’engin n’est pas libre du tout.

Le revers de la médaille, c’est que vous devrez construire le paquet vous-même, le dépôt ne livrant que le FrugalBuid pour ce faire. Rassurez-vous, rien de bien compliqué, c’est juste un peu plus long (voir plus loin).

Paramétrage du téléphone

Il faut tout d’abord activer le debugage USB :

Paramètres / Applications / Développement / Debogage USB coché.

On va ensuite installer l’application qui fera office de proxy.

On a le choix, le premier utilitaire trouvé sur le net est Tetherbot, mais il faut activer les téléchargements hors Android Market. De plus, Tetherbot n’affiche pas de notification dans la barre idoïne, il est parfois difficile de savoir si le proxy est actif ou pas.

Nous utiliserons donc Proxoid, disponible sur le market, et cococorico, développé par un français. Son seul inconvénient est de diffuser un peu de pub, rien de rhédibitoire avec les forfaits data illimités associés à Android.

Préparation du PC sous Frugalware

Ne connectez pas encore le téléphone !

Ouvrez une console en root, et tapez les commandes suivantes :

# repoman upd
# repoman merge android-sdk

Si vous avez un “failed”, lisez bien la ligne en dessous, elle vous donne les paquets manquant à installer.

Fermez toutes les  consoles actives, et rouvrez-en une en utilisateur. Pour vérifier l’installation, tapez :

$ echo $PATH

Vous devez retrouver dans le path /usr/lib/android-sdk/tools.

Avant de connecter le téléphone, tapez, cette fois en root :

# lsusb

Connectez maintenant le téléphone, attendez quelques secondes et tapez à nouveau :

# lsusb

Vous devez noter une ligne de différence, c’est celle qui correspond à votre téléphone, en principe :

Bus 001 Device 003: ID 0bb4:0c02 High Tech Computer Corp.

Créons maintenant une règle pour udev (toujours en root):

# nano /etc/udev/rules.d/11-android.rules

Copiez cette ligne dedans et modifiez :

SUBSYSTEMS==”usb”, ATTR{idVendor}==”0bb4″, ATTR{idProduct}==”0c02″, MODE=”0666″, OWNER=”votrenomutilisateur”

Les valeurs idproduct et idvendor doivent coïncider avec ce que retourne lsusb (ici le HTC G1, ajuster pour d’autres modèles), et surtout pensez à modifier OWNER avec votre login utilisateur.

Enregistrez, et redémarrez udev :

# service udev restart

Ok, tout est en place !

Utilisation

Sur le téléphone connecté, démarrer Proxoid (Start/Stop Proxoid).

Sur le PC, dans une console utilisateur, tapez :

$ adb forward tcp:8080 tcp:8080

Pour arrêter le démon, tapez killall adb.

Il faut maintenant configurer les applications pour utiliser le proxy. Nous allons ici simplement utiliser Firefox, mais il est même possible de paramétrer Gnome (voir au bas de cette page).

Pour Firefox donc, ouvrez le menu Edition/Préférences, puis Avancé et Réseau, cliquez sur Paramètres et choisissez configuration manuelle du proxy. Indiquez localhost en proxy http, et 8080 pour le port.

Petite astuce :

Si vous passez régulièrement d’un environnement à un autre (routeur maison<->smartphone android), il peut être intéressant d’utiliser le gestionnaire de profils de Firefox.
Pour cela, vous devez modifier le lanceur avec l’option profilemanager, de la façon suivante : firefox %u -profilemanager
Gardez la config réseau standard pour défault, et assignez le proxy pour un autre profil que vous créerez.

Vus : 1276
Publié par Exceed : 12