Projet de robot Wifi – Torture d’un routeur TPLink MR3020

J’ai en projet un robot piloté en wifi depuis un smartphone ou un PC. La base de ce robot est un routeur très économique le TP-Link MR3020.

MR3020

 

Seulement voilà, j’ai à brancher sur ce routeur:

  • Un arduino sur lequel seront connectés moteurs ( des servos modifiés ) et capteurs.
  • Une webcam basique ( Logitech CZ110 ).

 

Au départ j’avais en tête d’ajouter une connectique USB surement présente sur le microprocesseur du routeur, comme j’avais fait il y a quelque temps sur un routeur Netgear. Seulement voilà, le datasheet du microprocesseur n’est pas public et son « form factor » le rend très difficile à bidouiller.

Vous me direz, un usb, ça suffit pour la webcam. Sauf que le routeur n’a que 4Mo de mémoire flash ce qui rend impossible l’ajout de logiciels comme python et mjpeg-streamer. Il faut donc ajouter de la mémoire supplémentaire. Pour cet ajout 2 possibilités: 1 MMC utilisée avec des lignes GPIO ou 1 SD / clef en USB. Les lignes GPIO étant peu nombreuses ( sauf à retirer interrupteurs et LED ) j’ai opté pour l’USB ainsi qu’un lecteur de µSD. Je vais aussi utiliser 2 lignes GPIO en I2C pour communiquer avec l’arduino.

Je me suis procuré un hub USB STOREX à 3€ pour le démonter et récupérer son PCB. Malheureusement le hub n’est pas autoalimenté mais la consommation de la caméra + SD étant très limitée on va y remédier en branchant l’alimentation du hub sur l’USB.

Allez, hop on démonte la boîte qui est collée. Seule la carte nous intéresse. L’alimentation est inutile dans ce projet, on va la mettre de côté pour plus tard.

Le hub USB

 

La prise d’alimentation doit être retirée ainsi que les connecteurs USB afin de gagner de la place et du poids.

Hub usb / Alimentation

 

Le lecteur de µSD à 3 € est aussi démonté afin d’accéder facilement aux pistes USB. Il est démonté « proprement » pour être ensuite ré-assemblé, la carcasse de la prise USB étant indispensable au maintient de la carte µSD.

µSD reader

 

Le lecteur peut alors être directement soudé sur le hub USB toujours dans l’idée de gagner de la place.

Le hub usb

 

Ensuite, on peut ré-assembler le lecteur et le coller sur le hub.

Le hub et le lecteur de µSD

J’ai abîmé quelques pistes en dessoudant le connecteurs USB. Il faut dire qu’à 3€, le PCB ne vaut pas grand chose… mais bon c’est quand même de l’epoxy et non de la bakélite.

 

Retournons maintenant sur le routeur. Afin d’augmenter sa portée assez réduite, nous allons lui ajouter une antenne externe. Il suffit pour cela de supprimer le shunt en J4 et de venir souder l’âme du câble d’antenne sur la piste à côté de l’inscription J4 (1) et la masse sur le pad à côté (2).

 

Antenne externe en J4

 

C’est tout petit et en zoomant ont voit bien mes gros pâtés !

 

Connexion de l’antenne externe

 

voilà le résultat avec le routeur dans son coffret d’origine.

Antenne externe et console série

 

Pour ne pas abîmer le routeur, je n’ai pas dessoudé son port USB. J’ai juste soudé directement des fils sous le PCB pour les relier au hub. Un coup de fer et l’on peut rendre au routeur sa fonction d’origine. De plus, à cet endroit, la place occupée par le connecteur ne me gène pas.

 

La caméra est installée avec une nouvelle connectique à base de barette sécable en 2.54.

Le MR3020, son hub usb et la webcam

 

Voilà c’est tout pour les modifications matérielles. La suite concernera la recherche de GPIOs libres et la partie soft.

 

GPIO sur l’interrupteur de sélection du mode

 

Voilà par exemple une piste. Plutôt que de retirer les LEDS qui ont leur utilité, on peut retirer l’interrupteur de sélection du mode qui ne nous sert pas. Ça nous donnera nos 2 GPIO  (1: GND, 2: GPIO 18 & 20) pour l’i2c. Mais avant de faire ça, je vais voir s’il n’y a pas d’autres GPIO peu utiles voire inutiles comme sur son cousin le WR703N

 

Bricolage autour d’un routeur Asus WL500Gp – Partie 1

Il y a quelques temps, j’avais posté un article dans lequel je décrivais comment réparer un routeur Asus WL500Gp « bricked ».

asusWL500Gp.jpg

Le voilà ressorti du placard pour de nouvelles aventures. Je vais le doter d’une clef USB audio interne pour diffuser de la musique en streaming sur ma chaine HI-FI. Pour ce qui est du soft, je vais lui coller une openwrt.

Première étape: installer un port USB à l’intérieur du boitier de l’asus afin de ne pas utiliser les deux ports USB externes que l’on réservera pour une clef USB de stockage ou autre accessoire.

Le datasheet du composant VIA VT6212, disponible ici, nous indique la présence de 4 ports usb alors que seulement deux sont cablés en facade (en vert). On a donc deux ports libres pour s’amuser (en rouge).

VIA VT6212

Impatients s’abstenir, les soudures sur ce genre de composants CMS sont assez pénibles à réaliser. De plus, il faut disposer d’un fer à souder avec une panne très fine.

J’ai collé un connecteur USB femele avec de la colle à chaud sur le blindage de l’unité CPU du routeur.

Asus Wl500gP hack

Asus Wl500gP hack

L’alimentation 5V est prise directement sur la carte, proche de la prise du transfo.

Asus Wl500gP hack

J’ai testé avec une clef USB, ca marche impec 🙂

Bientôt la suite …



En vrac

A force de lire les articles « en vrac » de Tristan Nitot sur son blog , j’ai eu envie de faire la même chose pour vous faire partager mes découvertes du web 😉

Allez, c’est parti:

  • WordPress vient de sortir en version 2.5, avec au menu une superbe interface d’administration entièrement revue. Moins d’une semaine après ma migration Dotclear vers WordPress, me voilà déjà en train de mettre à jour… L’opération s’est faite en moins de 10 min.
  • Voilà un astucieux moyen de tirer des cables dans les gaines de ventilation. Je ne suis pas sur que ce soit terrible pour la sécurité incendie mais bon…
  • Un nouveau protocole de routage pour les réseaux mesh ( maillage wifi ) vient de voir le jour. Il porte le joli nom de B.A.T.M.A.N. Vous pouvez l’installer sur un openwrt comme indiqué ici. Je n’ai pas eu le temps de tester, mais ça semble intéressant pour couvrir de vastes zones comme un hall d’exposition.
  • Un eeepc quelque peu modifié…
  • Nagios, l’excellent système de supervision est sorti en version 3.0, que du bonheur.

Ce sera tout pour un premier billet 😉