lundi 29 juillet 2013

Une borne d'arcade avec un Raspberry Pi - Partie 4 : construire le stick.

Comme promis, maintenant que le Raspberry Pi est configuré pour faire fonctionner des émulateurs, on continue ce tutoriel avec la construction du stick d'arcade en lui-même et son câblage.
À noter que cette partie peut vous être utile si vous souhaitez juste construire un stick d'arcade "standard" (qui se branche en USB sur un PC ou une console), même s'il existe déjà des tutoriels très détaillés à ce sujet.

Si jamais vous ne savez toujours pas de quoi on parle, jetez donc un oeil à la partie 1.
Si vous vous demandez comment configurer un Raspberry Pi pour faire fonctionner des émulateurs, rendez-vous à la partie 3.

Pour cette partie, vous avez deux alternatives :
  • Soit vous décidez de connecter les boutons et le joystick directement au Raspberry Pi via les ports GPIO.
  • Soit vous décidez de connecter les boutons et le joystick à un circuit imprimé (ou "PCB" pour "Printed Circuit Board") conçu à cet effet (par exemple le Kade), que vous brancherez en USB au Raspberry Pi.
La première a l'avantage d'être moins coûteuse (vous économisez le prix du circuit imprimé et de la rallonge USB dont vous aurez sans doute besoin), par contre elle vous demandera un peu plus de bidouillage sur le Rasberry Pi pour que ça fonctionne.
La seconde est un peu plus coûteuse, mais elle a l'avantage d'être plus simple, et surtout de garantir que votre stick d'arcade pourra facilement être converti en stick "standard" si vous décidez soudainement que vous ne voulez plus vous en servir avec le Raspberry Pi.

Plan :
1) Un mot sur la fabrication du caisson.
2) Le câblage dont vous aurez besoin dans tous les cas.
3) Si vous voulez connecter le stick directement au Rapsberry Pi sur les ports GPIO.
4) Si vous voulez utiliser un circuit imprimé.

Un mot sur la fabrication du caisson


Comme je l'ai déjà mentionné dans la partie 2, j'ai acheté un caisson de stick d'arcade vide pour mettre les boutons, le joystick, et le Raspberry Pi dedans. Cette étape n'est évidemment pas obligatoire et vous pouvez tout à fait fabriquer votre caisson comme vous l'entendez (ça demande juste d'être un peu bricoleur et d'avoir quelques outils, comme je l'ai déjà mentionné, on peut aussi bien en faire un en bois que dans un carton à pizza).
Dans ce cas, pensez-bien à : 
  • prévoir des dimensions suffisantes pour que tout rentre dedans (en particulier il vaut mieux avoir une profondeur d'au moins 6 cm). 
  • prévoir la disposition des boutons et du joystick que vous souhaitez utiliser (vous avez des exemples de dispositions des boutons disponibles sur slagcoin, mais vous pouvez aussi vous inspirer des templates utilisés pour faire des artworks personnalisés pour les stick commerciaux, par exemple ici ou ).
  • être prudents avec tous les outils qui sont dangereux (je précise, au cas où hein...).

Le câblage dont vous aurez besoin dans tous les cas


Peu importe l'option que vous choisissez, certains éléments du câblage resteront inchangés.

En particulier tous les boutons ont 2 connecteurs, donc l'un devra être relié à la masse, le plus pratique est donc d'utiliser une chaîne de masse commune, qui reliera tous les boutons, et aura son extrémité reliée à la masse.

Une série de câbles avec des cosses au bout pour relier les boutons entre eux et à la masse.
Vous remarquerez que cette image a été piquée sur le site canadianjoysticks.com (parce que je n'ai pas eu le courage de tout démonter pour prendre la mienne en photo).

Si vous voulez la faire vous même à partir de câbles et de cosses (prévoyez autant de cosses que vous avez de boutons à connecter), sachez que prévoir 20 cm entre 2 cosses est suffisant et qu'un fil de 40 à 50 cm pour relier le tout à la masse (que ça soit celle des ports GPIO ou celle du circuit imprimé) devrait suffire. Sinon vous pouvez l'acheter (le nom anglais est "common ground daisy chain" si vous en cherchez sur des sites anglophones).

Ensuite il vous faudra des câbles d'environ 40 cm avec une cosse à l'un des bouts pour les brancher aux boutons (ce qu'il y aura à l'autre bout des câble dépendra de la solution que vous avez choisie).

Voici à quoi ressemblent les cosses femelles.

Ainsi qu'un connecteur 5 broches (ou 5 câbles jumpers, au choix) pour se brancher sur le joystick (là encore l'autre bout des câbles dépendra de votre choix).

À noter que pour mettre les cosses au bout des fils, vous n'avez pas forcément besoin d'un fer à souder. Il vous suffit de dénuder le fil, d'introduire la partie dénudée dans la cosse, et d'écraser l'embout de couleur à l'aide d'une pince plate afin de bloquer le file en contact avec la cosse. (Cela demande un peu d'entraînement, mais après avoir massacré deux ou trois cosses, vous prendrez très vite le pli !).

Une fois tout branché sur les boutons et le joystick, ça devrait ressembler en gros à ça (vous avez le droit de faire un câblage plus propre que le mien, mais tant qu'il n'y a pas de faux contact, tout devrait bien fonctionner !) :

C'est là qu'on constate qu'il n'y pas besoin d'avoir un câblage parfait pour avoir quelque chose de fonctionnel.
On ne voit peut-être pas grand chose, mais il y a un fil avec une cosse femelle connecté sur chacun des 2 connecteurs de chaque bouton, et un connecteur 5 broches avec un fil multicolore branché sur le joystick.

Si vous avez un doute quant au sens de branchement du connecteur pour le joystick, voici un petit détrompeur que j'ai trouvé sur le forum shoryuken :

Si l'image ne s'affiche pas, essayez "joystick sanwa wirering" dans google image.

Connecter un joystick et des boutons au Raspberry Pi via les ports GPIO


Les ports GPIO (pour "General Purpose Input/Output") vous permettent de faire communiquer le Raspberry Pi avec un circuit électronique en entrée ou en sortie (si vous souhaitez utiliser des boutons pour commander le Raspberry Pi, il faudra donc vous en servir en entrée).

Pour brancher les fils sur les ports GPIO, vous pouvez soit utiliser des câbles jumpers, soit utiliser un connecteur 2x13 contacts avec un pas de 2,54 mm (dans cas faites bien attention à la numérotation des connecteurs afin de ne pas connecter un bouton sur le mauvais).

Voici une image d'un connecteur 2x13 contacts avec un bloc de câbles adéquat.

La façon de vous en servir est intégralement décrite sur ce tutoriel du site Adafruit (en anglais). Je l'ai testée avant d'utiliser finalement un circuit imprimé et tout fonctionne sans problème.

Comme le tutoriel est très clair et détaillé, je ne vais répéter que les éléments essentiels (en traduisant au passage en français) :
Sur les modèles B version 2 du Raspberry Pi (reconnaissables au fait qu'il y a des trous prévus pour le visser sur un support), les ports GPIO sont numérotés comme suit :

À noter que ceci peut changer avec les futures version du Raspberry Pi, si vous venez ici longtemps après la rédaction de ce tutoriel, pensez à vérifier que ce schéma s'applique toujours bien.

Vous avez donc 15 ports disponibles (ceux-ci sont représentés en vert avec marqué "GPIO" suivi d'un numéro) pour brancher boutons et joystick (sans compter les masses symbolisés par le sigle "GND" pour "ground"). Cela vous autorise donc à brancher un joystick à 4 directions, et 11 boutons supplémentaires.

Il vous faut ensuite utiliser un script fournit par Adafruit qui commandera au Raspberry Pi de réagir au signal reçu sur ces ports de la même façon que si on appuyait sur des touches du clavier. Il est disponible sur GitHub.

La procédure pour l'adapter aux touches que vous utilisez ainsi que pour faire qu'il se lance automatiquement au démarrage est décrite sur le tutoriel d'Adafruit.

Connecter un joystick et des boutons à un circuit imprimé (PCB)

Si vous choisissez cette option, les connecteurs dont vous aurez besoin à l'autre bout des fils branchés aux bouton et au joystick dépendront du circuit imprimé que vous prendrez.

Il existe différents circuits imprimés disponibles dans le commerce (certains compatibles PC/PS3/Xbox360 peuvent se trouver jusqu'à 60€ !), et il est également possible de désosser une vieille manette pour récupérer son circuit imprimé et souder les contacts à la place des contacts des boutons (autrement dit, vous avez le choix du circuit que vous utiliserez).

Comme je l'ai déjà mentionné, je recommande d'utiliser le Kade qui n'est pas très cher (26€, frais de ports compris), qui est très simple d'utilisation et est prévu pour servir de clavier ou de manette sur PC, mac, Linux, PS3, PS2, PS1, Xbox (et théoriquement sur Game Cube, Wii, Dreamcast et Xbox360 avec des adaptateurs). Comme ce circuit imprimé dispose de connecteurs vissages, il vous faudra soit des fils dénudés (de préférence étamés) soit des connecteurs de type "banane", des cosses mâles ou des embouts de câblage (en gros, quelque chose qui n'est pas trop gros et qui permettra d'avoir un bon contact une fois vissé).

Si vous ne voyez pas la photo, rendez-vous sur le site officiel "kadevice".

Il vous suffit ensuite de brancher les câbles dans les connecteurs (deux sont reliés à la masse, et vous en avez 20 disponibles, ce qui vous autorise donc à connecter un joystick 4 directions et 16 boutons supplémentaires). Puis de brancher le Kade à votre ordinateur en USB et de le configurer en utilisant le logiciel téléchargeable sur le site officiel, pour attribuer les fonctions que vous voulez aux différentes entrées  physiques (vous pouvez donc attribuer une touche du clavier à chaque bouton, et les flèches directionnelles aux 4 directions du joystick).

Tout est très simple d'utilisation. Vous pouvez trouver un tutoriel sur le câblage ainsi qu'un tutoriel pour utiliser l'utilitaire de configuration sur le site officiel (en anglais, une fois encore).

Pour la configuration, j'ai opté pour l'attribution suivante des touches (à gauche le bouton du stick, à droite la touche du clavier correspondante) :

Une image du stick vue de dessus pour visualiser la position des boutons.

Home = Echap (Escape)
Select = Retour arrière (Backspace)
Start = Entrée (Enter)
A = A
B = B
C = C
X = X
Y = Y
Z = Z
L = Espace (Space)
R = F1
Les flèches de direction pour les 4 directions du Joystick (Up, Down, Left, Right)

Faites attention, le Kade est par défaut configuré en QWERTY, donc si votre Raspberry Pi est en français (et s'attend donc à avoir un clavier AZERTY), il faudra mettre Q à la place de A et W à la place de Z.

Une fois que tout est configuré, il ne vous reste plus qu'à brancher votre Kade au Raspberry Pi à l'aide d'un câble USB (ce dernier le reconnaîtra automatiquement comme s'il s'agissait d'un clavier) et à trouver la place de tout mettre dans le caisson du stick d'arcade, avant de le refermer. Voilà à quoi ressemble l'intérieur du mien :

Voici l'intérieur du caisson du stick, il contient les câbles, le Raspberry Pi, une rallonge USB et le Kade.

Vous pouvez constater qu'il semble rester pas mal de place, mais ne vous y trompez pas, ça passe tout juste à cause de la place prise par le joystick et les boutons ! À noter que j'ai vissé le Kade sur un emplacement disponible à cet effet afin qu'il ne se balade pas, et que le Raspberry Pi est calé par la partie inférieure du joystick (une fois le couvercle vissé) et donc qu'il ne bouge pas même s'il n'est pas fixé. Le câble USB (de marque Carrefour) est simplement scotché au fond en plastique (on sent le bricolage d'expert !).

Une fois votre caisson fermé, il faudra vous assurer que le Raspberry Pi ne chauffe pas trop à l'intérieur (et éventuellement envisager de percer des aérations si vous voyez que la température monte significativement). Pour avoir fait des essais avec le mien, après 1h00 de jeu, la température reste raisonnable, donc je suppose qu'il n'y a pas besoin de ventiler en plus (mais je n'ai pas testé de pré-réglage d'overclocking supérieur à "Medium", ni eu le temps de tester de longues sessions de jeu pour l'instant).

Voilà, c'est terminé pour le tutoriel en lui-même, dans la dernière partie on verra des conseils divers que je ne sais pas trop où mettre (et surtout que j'aurai oublié de préciser dans les autres parties !).

40 commentaires:

  1. Bonjour Antoine,
    je suis débutant en électronique et je n'ai pas bien compris comment connecter les boutons au RPI. Merci d'avance

    RépondreSupprimer
    Réponses
    1. Bonjour,

      De manière générale les boutons ont 2 connecteurs, l'un qui doit être mis à la masse du circuit électronique (on peut donc tous les relier entre eux à l'aide d'une "chaîne de masse", car il n'y a qu'une seule masse dans le circuit), et l'autre qui doit être connecté à un endroit différent pour chaque bouton (pour le stick il n'y a qu'une seule sortie qui va à la masse et quatre autres pour les quatre directions).

      Après tout dépend de quelle méthode tu veux utiliser :
      - Si l'on choisit de brancher les boutons directement aux ports GPIO du RPI, il faut brancher la masse sur un des ports GND (pour "ground" en anglais), et chaque bouton sur un des ports numérotés (sauf le 14 et le 15). Le branchement peut se faire simplement avec un cable jumper mais il existe aussi des câbles spéciaux comme le "Pi cobbler". Tu dois pouvoir trouver plus de précision en faisant une recherche sur les ports GPIO du Raspberry Pi.
      - Si on choisit de brancher les câbles à une carte de type Kade (qui se branche en USB au Raspberry Pi), du câble électrique avec des cosses suffit (il y a des emplacements sur la carte où l'on peut visser une extrémité de fil dénudée pour la brancher). Sur la carte les entrées sont numérotées et la masse est indiquée par "GND".

      Ensuite, il faut utiliser un logiciel pour faire correspondre des touches du clavier aux entrées (que ça soit les ports GPIO ou les entrées de la carte Kade) sur lesquelles on a branché les boutons (c'est expliqué en détail dans les tutoriels que je cite sur le blog et normalement ce n'est pas très difficile).

      N'hésite pas si tu as des questions plus précises parce que là je ne sais pas trop quoi expliquer... :O

      Supprimer
    2. Merci Antoine pour cette réponse,
      Ce que je voudrais savoir c'est comment connecter les fils électriques des boutons au Raspberry Pi et avec quoi.

      Merci d'avance

      Supprimer
    3. Salut Antoine,
      est-ce que ce pack conviendrait pour connecter au raspberry pi ou il faut d'autres cabels en plus ?
      http://fr.aliexpress.com/item/Arcade-parts-Bundles-kit-With-Joystick-chrome-Pushbutton-Microswitch-2-player-USB-to-Jamma-Build-Up/651414116.html

      Merci d'avance

      Supprimer
    4. Bonjour,

      Je pense qu'il y a tout ce qu'il faut comme câbles et boutons (par contre, la marque n'est pas précisée donc c'est sûrement du matériel générique), et avec un peu de chance, la carte USB est peut-être compatible directement avec le Raspberry Pi, ce qui évite d'avoir à acheter une carte Kade ou équivalent (sans garantie, puisque moi j'avais aussi une carte pour Windows XP/Vista et j'avais vu en ligne qu'elle était censée être compatible aussi avec Windows 7, mais je n'ai jamais réussi à la faire marcher sur Windows 7 ni sur le Raspberry Pi).
      Après je trouve toujours que c'est un peu bête de payer plus cher de frais de ports que de produit, mais le prix total reste raisonnable.

      Supprimer
  2. Bonjour,

    merci pour ce tutoriel très sympa, je souhaiterai connecter un joystick (la pièce provient d'une manette de Xbox cela convient t'il ?) pour cette partis la j'ais compris.
    C'est pour les boutons, je voudrais en connecter 6 : Home,Start,Select,et 3 boutons d'action pour les jeux. il n'y a pas assez de "GND" pour chaque boutons, faut-il une carte a connecter en plus au raspberry pi ou alors faire une masse pour tous les boutons (cela ne serait-il pas risquer).

    Merci d'avance

    RépondreSupprimer
    Réponses
    1. Bonjour Alexis,

      En fait tout dépend du circuit imprimé (PCB) que vous utilisez. La plupart ont une masse commune (GND), donc il n'y a aucun problème à relier toutes les masses entre elles, mais les manettes plus récentes ont apparemment des circuits plus compliqués avec des "common lines" qui se comportent plus ou moins comme différentes masses dans le circuit (et qu'il ne faut donc pas relier entre elles a priori).
      Si vous connaissez le modèle de la manette, vous pouvez regarder sur slagcoin le diagramme correspondant qui vous dira où est sont les connecteurs "signal" de chaque bouton, et où sont les masses correspondantes (qui peuvent être reliées entre elles s'il n'y a qu'une seule masse dans le circuit).
      Pour ce qui est de la compatibilité, je n'ai jamais essayé avec une manette de Xbox, et les manettes de Xbox 360 doivent normalement fonctionner en rajoutant un driver, mais sont plus compliquées à modifier (car elles n'ont pas une masse commune justement).

      Après, en pratique, à part pour le joystick où c'est un peu plus compliqué, les boutons sont toujours symétriques, et ne servent qu'à faire le contact entre deux parties du circuit imprimé dont l'une est "signal" et l'autre est "GND" ou "common" (généralement vous avez deux petits connecteurs qui se font face, juste sous l'emplacement du bouton), donc si vous avez un doute, il vous suffit de brancher une extrémité du bouton d'un côté du contact, et l'autre extrémité du bouton de l'autre côté du contact, et vous n'avez alors pas à vous préoccuper de qui est le signal et qui est la masse (mais évidemment, ça fait plus de câblage que si on peut relier toutes les masses entre elles !).

      Je suis désolé, comme je n'ai pas tellement traficoté de circuits imprimés de manettes je ne suis pas expert, mais j'espère que ça vous aidera quand même.

      Supprimer
    2. Merci de ta raiponce aussi rapide

      je me suis peut-être mal exprimé dans mon premier message, je vais tenter d’être plus précis.

      lien du joystick :http://www.conrad.fr/ce/fr/product/425624/Joystick-3D-pour-Xbox-360-avec-interrupteur-10-k-60-W-20-/?ref=detview1&rt=detview1&rb=2

      c'est une pièce seul sans circuit, je cherche a savoir si il était possible de connecter directement les pins de celui-ci aux pins GPIO du raspberry pi.

      et pour les bouton ce sons pas les boutons de la manette de la console, mais de simple bouton a deux patte (+ et -), et savoir si il était possible de relier plusieurs - ensemble car il n'y a pas assez de GND.

      Merci d'avance

      Supprimer
    3. Ah ok, oui effectivement j'avais mal compris.
      Oui, a priori tu peux relier toutes les masses entre elles et les brancher sur une seule masse du Raspberry Pi, parce qu'effectivement il n'y a pas assez de masses sur les ports GPIO !

      Supprimer
    4. Merci

      je connais a présent le schéma de câblage pour les boutons et le joystick.
      si j'ais bien compris on peut associer une lettre ou une action par défaut (les 2 sont-il possible ?) aux boutons au démarrage du raspberry pi.

      Supprimer
  3. comment fait tu pour associer un mouvement a une lettre dans les jeux émulés
    ex: A= saut, B=coup de point, etc

    RépondreSupprimer
    Réponses
    1. Alors :
      - pour associer un bouton à une lettre du clavier, en passant par les ports GPIO, le plus simple est de suivre le tutoriel sur Adafruit (mais ça je pense que tu l'as déjà fait du coup !)
      - ensuite pour associer une lettre (qui est associée à un bouton) à une action, il suffit de configurer les émulateurs que tu utilises, pour mame4all et PiSnes j'en parle dans la partie 3 du tutoriel. Pour d'autres émulateurs, tu dois pouvoir trouver l'info sur leurs sites dédiés (ou avec une recherche du type "nom de l'émulateur + config" dans un moteur de recherche).

      Supprimer
  4. Bonjour

    Connais-tu le fonctionnement des broches GPIO sur le Raspberry Pi ?

    Merci d'Avance

    RépondreSupprimer
    Réponses
    1. Bonjour,

      Voilà quelques tutoriels en français sur les broches GPIO (pour comprendre le fonctionnement général, pas en rapport direct pour s'en servir comme joystick et boutons) : MagdiBlog, ModMyPi et Idleman.
      Après pour utiliser les ports GPIO, le plus simple est de faire ce que j'indique dans le tutoriel, à savoir utiliser le script Retrogame pour lier automatiquement des entrées sur les ports GPIO avec des touches de clavier virtuelles. Tout est expliqué en détail sur Adafruit (en anglais), et je ne pense pas pouvoir t'apporter beaucoup plus qu'eux...

      Supprimer
    2. j'ai un tft lcd tactile que je veux brancher sur le raspberry pi via les ports GPIO (utilisation classique sans tactile) et en utilisé le moins possible pour faire de la place pour les boutons
      lien de l’écran :http://www.ebay.com/itm/3-2-240x320-262K-TFT-LCD-Module-Display-Touch-Screen-with-PCB-Adapter-SD-Card-/200963764343?pt=LH_DefaultDomain_0&hash=item2eca5fb077

      Supprimer
    3. Je n'ai pas connecté d'écran LCD à mon Rapsberry Pi, mais apparemment, ça ne prend que 5 ports GPIO (plus alimentation 5V et la masse).
      Voilà ce que j'ai trouvé en ligne : Adafruit, Gallot.be, RaspberryPi.org !
      D'après le dernier lien, seul 3 ports sont nécessaires pour l'écran (les autres servent pour le tactile), mais je ne peux vraiment pas vous aider plus pour ça, désolé.

      Supprimer
  5. bonjour c'est encore moi
    comment adapté le code :
    entrée sortie ( de / usr / inclure / linux / entrée . h )
    { 25 } KEY_LEFT ,
    { 9 } KEY_RIGHT ,
    { 10 , KEY_UP },
    { 17 } KEY_DOWN ,
    { 23 } KEY_LEFTCTRL ,
    { 7 , KEY_LEFTALT }

    pour un joystick a seulement 2 axes
    haut,bas et droite, gauche

    et que mettre pour les boutons pour na pas avoir a brancher un clavier a chaque fois

    merci d'avance

    RépondreSupprimer
    Réponses
    1. Bonjour,

      Ce code associe une entrée de port GPIO (le numéro à gauche) à une fonction de clavier (KEY_LEFT pour la flèche qui pointe vers la gauche par exemple), il est adapté pour un joystick à seulement deux axes, il suffit de faire correspondre les 4 axes du joystick aux 4 fonctions flèches qui vont bien. Ensuite il faut faire correspondre les boutons à des touches du clavier (en l'occurrence sur l'exemple le port 23 est associé à la touche "CTRL" qui se trouve à gauche du clavier, et le port 7 à la touche "ALT" qui se trouve à gauche du clavier).
      Une fois que le code est configuré et s'il a été compilé (une fois suffit) puis exécuté (ça il faut le faire après chaque rédemarrage du Raspberry Pi), les boutons et le joystick reliés aux ports GPIO seront reconnus comme des touches de clavier, et il n'y a alors qu'à configurer les émulateurs avec ces touches là. Dans le reste du tutoriel sur Adafruit ils expliquent comment faire pour que le code soit exécuté automatiquement au démarrage du Raspberry Pi (ce qui évite d'avoir à le lancer manuellement à chaque fois qu'on veut jouer, et alors qu'il n'y a pas de clavier branché).

      Supprimer
  6. Faut-il mettre:
    entrée sortie ( de / usr / inclure / linux / entrée . h )
    { 23 } KEY_VRx ,
    { 24 } KEY_VRy,
    { 0 } KEY_ESCAPE,
    { 1 } KEY_ENTER,
    { 4 } KEY_BACKSPACE,
    { 17 } KEY_A,
    { 21 } KEY_B,
    { 22 } KEY_C,
    { 25 } KEY_SPACE

    (VRx et VRy s'agissent des axes x et y)

    RépondreSupprimer
    Réponses
    1. Ah pardon, j'avais mal compris.
      Non il ne faut pas mettre KEY_VRx et KEY_VRy, ça ne fonctionnera pas.
      Je n'avais pas fait attention qu'il s’agissait d'un joystick "analogique" (il n'y a qu'une sortie pour chaque axe, dont la valeur sera différente selon la pression exercée sur le joystick). Le Raspberry Pi n'est pas capable de gérer directement ce type de Joysticks (on peut le faire, mais ça demande un peu de bidouille, voir ici par exemple).
      Du coup, vu que ce n'est pas une pièce très coûteuse, je recommanderai plutôt de prendre un autre joystick avec 4 sorties "tout ou rien", qui fonctionnera directement comme les boutons.

      Supprimer
  7. les explications son pour mame4all et moi j'ai trouver une image disque sans passer par raspbian
    (PiMAME) et sa ne correspond donc pas

    RépondreSupprimer
    Réponses
    1. Les émulateurs fonctionnent à peu près tous de la même façon. Soit il y a un fichier config à modifier, soit il y a une touche du clavier qui permet d'accéder à un menu de configuration ("tab" sur mame4all). Je ne connais pas PiMAME en particulier, mais ça m'étonnerait qu'il ne permette pas de modifier la disposition des touches ;)

      Supprimer
  8. les joysticks a 4 sorties sont trop gros car je veux faire une" mini borne d'arcade"

    RépondreSupprimer
    Réponses
    1. Je vais voir s'il en existe des petits, sinon il y a toujours la possibilité de le transformer en joystick "digital" à peine plus gros (et sans faire trop de soudures) : tutoriel ici !

      Supprimer
    2. en gros il faut retiré le plastique graté un peut pour séparé l'axe en 2 parties le remèttre et le tour et joué

      Supprimer
  9. voici le schéma de ce que j'avais prévu de faire:
    http://hpics.li/69ec796

    RépondreSupprimer
  10. Bonjour
    y a t-il que le KADE pour brancher les boutons dessus car du-coup il faut 2 broches gpio en plus pour le joystick. ou quelque chose de plus petit avec moins de trous car mon but est de faire quelque chose le plus compact possible. le kade est trop grand pour mes besoins.

    RépondreSupprimer
  11. Ou peut-être qu'il y a trop de broche de l'écran relier au raspberry pi, et donc faire un pey de place pour le jojstick

    RépondreSupprimer
    Réponses
    1. Il existe d'autres cartes que le Kade, mais elles font tout à peu près la même taille (voir par exemple ici), mais je pense effectivement qu'il y a peut-être moyen de libérer 2 ports qui servent pour l'instant à l'écran (comme je le disais, je n'ai jamais testé l'écran connecté aux ports GPIO, mais d'après les informations que j'avais trouvées, seul un petit nombre de ports était nécessaire).

      Supprimer
  12. Bonsoir,

    En premier je souhaitais vous remercier et saluer le travail que vous avez effectué et que vous avez partagé via ce blog. Je me permet de vous contacter que je suis à la recherche d'un système pour encoder les touches sur mon raspberry.

    Sur votre blog, vous parlez de deux solutions:
    - passer par les ports GPIO (nombre d'entrée faible...)
    - PCB (nombre d'entrée important)

    Je souhaiterai opter pour la seconde solution, malheureusement le KADE n'est plus disponible. Saurez vous ou je peux trouver des PCB similaire ?

    Merci pour votre disponibilité et votre réponse.

    RépondreSupprimer
    Réponses
    1. Bonsoir,

      Merci pour votre commentaire !

      D'après le site du Kade, il devrait être remis en vente prochainement.
      Mais dans tous les cas, ce n'est pas la seule interface qui existe pour brancher des boutons à un ordinateur.
      Vous pouvez trouver des encodeurs claviers ou manettes chez différents revendeurs. Par exemple ceux ci : ultimarc, smallcab et starcab (la liste n'est évidemment pas exhaustive et une liste plus longue des modèles existant peut se trouver à cette adresse).
      Pour les encodeurs claviers il ne devrait pas y avoir de soucis avec le Raspberry Pi (pour les encodeurs manettes en revanche il y a un risque qu'ils ne soient pas reconnu, c'était d'ailleurs le cas pour le seul que j'ai testé), la seule chose qui peut varier d'un modèle à l'autre c'est le temps de latence et le nombre maximal de touches qui peuvent être appuyée et reconnues simultanément (problèmes de "ghosting").

      Supprimer
    2. Merci pour votre réponse rapide !

      En effet après divers recherches sur le net, j'ai bien observé que plusieurs vendeurs proposé des interfaces. Mon souhait est un encodeur clavier, malheureusement j'ai peur est que ces interfaces ne soient pas reconnu sur le raspberry.

      Vous parlez d'un problème de reconnaissance pour un encodeur manette. Peut on avoir le même problème pour des encodeurs claviers?

      Encore merci de partagé votre connaissance,

      Supprimer
    3. Pour les encodeurs clavier je pense qu'il y a moins de risques parce qu'a priori le Raspberry Pi est tout à fait capable de reconnaître un clavier "automatiquement", et le principe des encodeurs est justement de mimer un clavier.
      Pour les encodeurs manette, ça dépend plus de l'OS de l'ordinateur (par exemple j'ai pu constater que certains encodeurs prévus pour "PS3 et Windows XP/Vista" ne fonctionnent ni sous Windows 7 64 bits, ni sous Rapsbian).

      Supprimer
    4. Merci une nouvelle fois pour votre réponse rapide.

      Bon c'est décider je me lance.

      Je vais suivre toutes vos indications à lettre car je les trouve assez détaillé.

      Au plaisir de vous recontacter en cas de soucis.

      Merci

      Supprimer
    5. Bonjour ANTOINE,

      Le Kade est à nouveau disponible. Est il possible de brancher 2 Kade sur le raspberry?

      Supprimer
    6. Bonjour,

      Je n'ai pas testé, mais a priori il n'y a pas de raison que ça ne fonctionne pas.
      Pour faire un test à moindre frais, essayez de brancher 2 claviers en même temps sur le Raspberry Pi (si ça fonctionne, je ne vois aucune raison pour laquelle 2 Kade ne fonctionneraient pas) !
      (Mais si vous avez besoin de plus que 20 connecteurs, vous pouvez aussi prendre un encodeur clavier qui en propose d'avantage).

      Supprimer
  13. Bonjour,
    Déjà en première, je tiens à vous remercier de votre blog qui est vraiment géniale.
    J’aimerais avoir ton avis car je nage un peu.
    Mon projet est vraiment similaire au votre (sauf que je construire le stick). Je compte commander les boutons et les joysticks et j’hésite entre deux encodeurs :

    - http://www.smallcab.net/encodeur-joystick-boutons-arcade-usb-joueur-cosses-28mm-p-273.html

    - http://www.smallcab.net/encodeur-clavier-usb-p-476.html#.U7qZAJjrOVE

    A savoir que j’aimerais faire un démarrage du même style que le tient pour choisir les émulateurs (a = mame4all, b = Snes, ex.).

    Merci par avance.

    RépondreSupprimer
    Réponses
    1. Bonjour,
      Merci pour votre commentaire !

      Les deux encodeurs sont possibles, par contre dans le cas où vous choisissez le premier (encodeur joystick), il est probable que ça ne fonctionne pas directement (car l'encodeur ne sera pas reconnu par la distribution Raspbian), mais ian57 a compilé une distribution "clefs en main" qui fonctionne avec ce type d'encodeur (raspicade, et on peut la voir en action dans cette vidéo).
      Pour l'encodeur clavier je pense qu'il n'y a aucun problème pour faire comme j'avais fait.

      Faites également bien attention à prendre des cosses de la bonne dimension en fonction des boutons que vous avez achetés !

      Supprimer
  14. Ce commentaire a été supprimé par l'auteur.

    RépondreSupprimer
    Réponses
    1. Bonjour,

      Pour les boutons et joysticks il n'y aura évidemment aucun problème, en revanche il est probable que la carte fournie avec ne soit pas compatible avec la plupart des distributions pour Raspberry Pi.
      Il est possible qu'elle fonctionne avec la distribution de ian57 (ici), car il me semble qu'il l'avait développée exprès pour ce genre de compatibilité, mais je ne peux pas vous le garantir.
      Vous aurez peut-être plus de chance en demandant directement aux gens qui s'occupent de Retropie s'ils pensent que c'est compatible ou non !

      Supprimer