3 février 2006

Linuxisation d’une Xbox

Category: Geek — Fabien @ 11:03

Une Xbox, c’est un PC, avec un Celeron 733 MHz, une carte graphique nVidia GeForce 3MX, 64 Mo de RAM, un disque dur de 8Go, un lecteur de DVD, une carte Ethernet et quatre ports USB (déguisés en manettes de jeux), le tout pour un prix assez modique (grâce à sortie de la Xbox360, les Xbox d’occase sur eBay sont trouvables pour 100?).
Pour pleinement exploiter ce PC, il faut y installer un système d’exploitation tel que Linux ; et pour pouvoir installer Linux, il faut soit « bidouiller » logiciellement la Xbox (en utilisant des failles présentes dans certains jeux, qui permettent d’exécuter du code arbitraire), soit installer une puce qui prend la main au moment du démarrage. C’est cette option que j’ai choisie.
Il existe de nombreux sites sur Internet, qui expliquent ces manip (http://www.xbox-linux.org, par exemple), mais je présente ici la manipulation intégrale que j’ai faite sans autre alternative, ce qui présente l’avantage de pouvoir saisir l’intégralité des manipulations, mais l’inconvénient de ne fonctionner que pour une configuration donnée.
Pré-requis :

  • Une Xbox version 1.4 (pour trouver la version de votre Xbox, reportez vous au site http://www.xbox-linux.org)
  • Des tournevis torx
  • Une puce Duo X2 de préférence avec Cromwell préflashé (comme ici)
  • Un pin header (parfois fourni avec la puce), qui permet de ne pas souder directement la puce sur la carte mère
  • Un fer à souder d’électronique
  • Du fil à wrapper
  • Un ohmmètre (pour vérifier les soudures)
  • Quelques heures de patience précédées d’au moins une heure de méditation zen

La Xbox que j’ai achetée d’occasion est une Xbox version 1.4. Pour trouver la version de votre Xbox, reportez vous au site http://www.xbox-linux.org.
La première étape consiste à retirer les 6 vis du dessous de la Xbox :

Les quatre d’angles sont sous les patins anti-dérapants, et les deux autre sous les étiquettes. Si vous voulez faire plus joli, vous pouez décoller les étiquettes avec un sèche cheveux. Ca évite de faire le joli trou que l’on voit sur la photo.
On peut ensuite retirer le capot et contempler les entrailles de la bête :

Débrancher la nappe IDE du disque dur, et enlever la vis située sous la nappe entre le lecteur DVD et le disque dur.
Soulever délicatement le disque dur et le placer sur le côté. Le disque est toujours relié à la Xbox par l’alim.

Retirer ensuite la nappe IDE du lecteur, et ôter les deux vis situées de chaque côté du lecteur, vers l’avant. Soulever le lecteur et le placer sur le côté. Le lecteur est toujours relié à la Xbox par l’alim.
Débrancher ensuite tous les câbles reliés à la carte mère et enlever toutes les vis fixant la carte mère au boîter.

Retirer la carte mère de la Xbox.

Plier (ou couper) la patte du pin header qui ne rentre pas dans la carte mère et les deux pattes du pin header qui ne rentrent pas dans la puce.
Scotcher le pin header sur la carte mère.

Retourner la carte et souder les pattes qui dépassent.

Retourner la carte, enlever le scotch.
Souder le pin header et la puce.
Souder un fil à wrapper entre le point D0 de la carte mère (voir ici pour trouver le point D0 et le point BT mentionné ultérieurement) et l’endroit marqué D0 sur la puce. Souder un fil à wrapper de 25 cm sur le point marqué BT de la puce.

Remonter la carte mère dans le boîtier (sans remettre les vis). Couper le fil à wrapper à la bonne longueur, et le souder sur le point BT du bouton « Eject » du boîtier.
Rebrancher les câbles sur la carte mère, et les nappes IDE sur les disques et lecteurs.
Brancher la Xbox. L’allumer par le bouton marche/arrêt.
La puce doit clignoter en rouge, et un écran tel qui celui-ci doit apparaître :

Si c’est bon, arrêter la Xbox, revisser la carte mère dans le boîtier ; consolider la soudure D0 côté carte mère par de la paraffine ou de la cire de bougie (cette soudure est très fragile), remonter le lecteur, le disque dur, le capot, et hop, la Xbox est prête pour une nouvelle vie.
Si ce n’est pas le cas, vérifier toutes les soudures. Il est très facile de faire des points de soudure qui se touchent …
Graver ensuite une image de la distribution Xebian (version basic, sans graphisme, ou xbox, avec graphisme), sur un support CDRW ou DVD-R (il semblerait qu’un support CDR ne fonctionne qu’aléatoirement avec le lecteur de la Xbox ; personnellement, le support CDRW a très bien fonctionné). J’ai opté pour la version basic, car, avec 64Mo de RAM, la graphisme doit être très limité.
Brancher la Xbox sur votre hub Ethernet, mettre le disque dans le lecteur, allumer la Xbox, sélectionner avec la manette le boot sur le CD, valider par A, et hop, le pingouin apparaît.
Une version « Live CD » (qui n’installe rien sur le disque dur) se lance alors.
Vous pouvez vous connecter à la Xbox depuis un autre ordinateur par ssh sur l’adresse IP 192.168.0.10, user root, mot de passe xebian.
Pour installer ensuite linux sur le disque dur, taper XBOXLinuxInstall.
Le programme d’installation vous demande alors où vosu souhaitez installer Linux. Si vous répondez « sur tout le disque dur », votre xbox ne pourra plus servir de console de jeux, mais c’est ce qui permet d’avoir le plus de place sur le disque …
Une fois l’installation terminée, enlever le CD (commande eject), redémarrez (commande reboot), et votre xbox linux prend vie…

Pas de commentaire »

No comments yet.

RSS feed for comments on this post. | TrackBack URI

Leave a comment

XHTML ( You can use these tags):
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> .