raphnet.net banner
This page is also available in English
Convertisseur manette N64/Gamecube à USB
Contenu: Résumé du projet | Photos | Shéma | Circuit imprimé | Logiciel | Références | Avertissement
Résumé du projet [cacher]
Les manettes de N64 et Gamecube sont d'excellentes manettes qui conviennent parfaitement à une multitude de jeux sur PC. Comme ce circuit utilise la class HID du standard USB, il n'est pas nécéssaire d'utiliser des pilotes spécifiques. J'ai testé sous Linux et Windows.

Caractéristiques:
  • Supporte les Manettes Gamecube et les tapis de danse (Officiels et Clonés)
  • Supporte les Manettes Sans-fil pour Gamecube, dont la Nintendo Wavebird (depuis la version 1.2) et les manettes Sans-fil Intec.
  • Supporte les Manettes de N64 (Officielles et Clonées)
  • NE SUPPORTE PAS ENCORE: Le "Rumble Pack" pour N64, Les cartes mémoires ni la fonction vibration des manettes Gamecube. Notez que je ne peux pas pour l'instant donner d'estimé de temps pour l'ajout de ces fonctions.

Pourquoi?
Un de mes amis souhaitait pouvoir jouer à des jeux de Nintendo 64 sur son PC avec une manette d'origine. J'ai donc mis au point ce convertisseur. Puisque le protocol des manettes de Gamecube est très similaire, il m'a été facile de supporter du même coup les manettes de Gamecube.

Étant donné que les manettes de N64 et Gamecube requièrent une alimentation à 3.3 volts et que le bus USB fournit seulement du 5 volts, il est nécéssaire d'utiliser un régulateur de voltage. À l'exception du logiciel, c'est la seule différence (et complexité additionelle) avec mon projet de Manettes Nes/Snes à USB.


goto top Retour en haut


Photos [cacher]
Convertisseur N64 ou Gamecube à USB avec régulateur sur petit circuit imprimé:



Photos du circuit-imprimé avec régulateur lm1117:
Dessus

Dessus

Dessous

Dessous

Correction

Correction



Développement avec le nouveau circuit imprimé:



Photos du prototype N64. J'ai utilisé un régulateur lm317:



Voici des photos que Declan Williams (16 ans!), m'a fait parvenir:


Sean Green a construit et utilisé ce circuit pour certains projets:
The Bliss 4-pack

The Bliss 4-pack

The Bliss Worm

The Bliss Worm


goto top Retour en haut


Shémas [cacher]
Voici les shémas:

Notes et commentaires: Certains documents sur internet prétendent que les manettes de Gamecube fonctionnent à 3.43 volts, d'autres disent que c'est avec un voltage entre 3.3 à 3.8! volts... J'ai vu un vieux message dans le newsgroup comp.emulators.game-consoles ou l'auteur prétendait que le N64 donne du 5 volts à ses manettes! (C'est faux). Certains projets abaissent le voltage à 3.3 volts (plus ou moins) en faisant passer l'alimentation de la manette à travers des diodes. J'ai mesuré 3.36 volts sur mon N64 alors pour ma part, je choisi d'alimenter les manettes de N64 et Gamecube avec 3.3 volts.

Pour obtenir du 3.3 volts, vous pouvez utiliser un régulateur de voltage fixe tel que le 78M33C ou un régulateur de voltage variable comme le lm317 ou lm1117 (exemple). Si vous utilisez un régulateur variable comme le lm317, voici un petit outil permettant de trouver une valeur de résistance R1 adéquate. Un voltage de sortie entre 3.26 à 3.40 volts devrait être parfait.
Résistance d'ajustement (R2):
Résistance Fixe (R1):
Voltage de sortie (Vout):
Note: L'image provient du datasheet du lm317 par motorola, que voici: lm317rev1g.pdf

goto top Retour en haut


Circuit imprimé [cacher]
Dessus

Dessus

Le circuit imprimé est une amélioration du PCB du projet Manettes Nes/Snes à USB. Sur celui-ci, il y a maintenant un régulateur et des contacts de reprogrammatin sur la face inférieure. Voici des vues composées pour connaître le placement des composantes:


Dessous

Dessous

Le régulateur utilisé est un lm1117mp-adj. Des résistances de 0 ohms doivent être installés pour sélectionner la source d'alimentation (5 volts d'USB ou voltage de sortie du régulateur) du Microcontrôleur et de la sortie d'alimentation du circuit (ce qui va à la manette). Dans notre cas, il faut installer R5 et R8:


Voici un shéma de câblage pour ce circuit imprimé:


Et voici finalement les fichiers gerbers à partir desquels vous pouvez reproduire ce circuit:
multiuse.zip

Étant donné tout les 'vias' sur ce circuit, le fabriquer chez soi peut être difficile ou désagréable. J'offre donc des circuits fait en usine dans mon magasin en ligne. Cependant, les circuits que j'offre ne sont pas aussi à jour que dans les gerbers ci-haut. J'en ai fait produire quelques centaines avec une légère erreur: Le 5 volts d'USB ne se rends pas au régulateur!

Il est donc nécéssaire de souder un petit fil sur la face inférieure du circuit:
Correction

Correction


goto top Retour en haut


Logiciel [cacher]
Here is the hexfile which must be programmed into the Atmega8:
gc_n64_usb-1.2.hex
Pour que le microcontrôleur fonctionne à la bonne vitesse, il est essentiel de configurer les 'fuses' correctement. Les valeurs pour ce projet sont: high_byte=0xc9 low_byte=0x9f.

Pour de l'information sur la programmation d'un AVR, visitez ma page sur la programmation d'AVR


Code source:
Le code source est rendu publique sous la license d'Objective Development (GPL modifiée). Voir License.txt pour plus d'information. Le projet se compile avec avr-gcc.
gc_n64_usb-1.2.tar.gz

Anciennes versions:
gc_n64_usb-1.1.tar.gz
gc_n64_usb-1.1.hex
gc_n64_usb-1.0.tar.gz
gc_n64_usb-1.0.hex

goto top Retour en haut


Références [cacher]
Informations techniques à propos des manettes de Nintendo 64:
http://www.mixdown.ca/n64dev/

Informations techniques à propos des manettes de Gamecube:
http://www.int03.co.uk/crema/hardware/gamecube/gc-control.htm

Le 'pinout' des manettes de Nintendo 64 apparait sur ces pages:
http://www.hardwarebook.info/N64_Controller
http://www.fpga-games.com/n64tst.htm

goto top Retour en haut


Avertissement [cacher]
Je ne saurais être tenu responsable pour les dommages que la mise en oeuvre des instructions présentées sur cette page pourraient causer à votre équipement ou à vous-même. Aussi, je ne donne aucune garantie quant à l'exactitude des informations et à leur fonctionnement. Notez toutefois que les procédures ci-haut ont fonctionnées sans aucun problème pour moi.

goto top Retour en haut


Copyright © 2002-2009, Raphaël Assénat
Les marques de commerce utilisées dans ce site appartiennent à leurs propriétaires respectifs.
Site codé avecSite codé avec vimDernière mise à jour: 17 Mai 2009