Projet : borne d’arcade Raspberry Pi

Depuis l’acquisition d’une Raspberry Pi 2, son utilisation a été assez limitée : j’y ai fait tourner un OS, installé un serveur multimédia, puis je me suis rabattue sur l’émulateur RetroPie, notamment pour les jeux de SNES et PlayStation 1.

La sortie de la Raspberry Pi 3 a ravivé mon envie de faire une utilisation un peu plus poussée de cette technologie avec un projet et j’ai décidé de construire une borne d’arcade.

Mon projet est basé sur le tutoriel de I Like To Make Stuff et sera assez simple : les boutons et joysticks seront reliés à un PCB (pour émuler un clavier) qui sera relié à la Raspberry Pi.

Matériel :

  • Une Raspberry Pi avec un émulateur de jeux
  • Un PCB IPAC
  • Des boutons et joysticks
  • Du fil électrique
  • Une pince à dénuder
  • Des cosses femelles plates
  • Un coffre en bois
  • Une perceuse

Préparation :

Pour cette “borne” d’arcade j’ai décidé de faire simple : pas d’écran, pas d’enceintes, juste une console de contrôle reliée à la Raspberry Pi qui est elle même branchée sur la télé via HDMI, comme une manette 2-joueurs géante.

Pour éviter de faire monter trop les dépenses, la plupart du matériel vient d’AliExpress : les boutons et joysticks, le fil électrique, les cosses et la pince à dénuder. L’IPAC vient de Focus Attack, et le coffre à jouet vient d’Amazon.

En attendant de recevoir tout le matériel, la première étape c’est de s’organiser car une fois monté, il y aura beaucoup de fils électriques à gérer. Je fais d’abord un premier schéma pour avoir une idée claire et définitive de l’emplacement des boutons.

Une fois satisfaite de l’emplacement des boutons, je passe à un plan grandeur nature et recto verso sur une feuille A3. Cela me permet notamment d’avoir un aperçu clair du câblage.

This slideshow requires JavaScript.

Assemblage du panneau :

La première étape de l’assemblage c’est de faire des trous dans le coffre à jouet pour les boutons et les joysticks. Selon les boutons, il faut une mèche à bois plate de 26 et 28mm. Pour éviter d’abimer le bois, je perce la moitié d’un côté, puis lorsque la pointe sort, je perce de l’autre côté.

This slideshow requires JavaScript.

On passe ensuite à la mise en place des boutons : pour les commandes, j’ai choisi un joystick et quatre boutons d’action par joueur plus cinq boutons de commande. Jamie m’aide à ajouter et visser l’ensemble des boutons en suivant les couleurs du schéma. Pour le joystick, j’ai fait un trou similaire à ceux des boutons pour laisser de la place à la tige pour se déplacer. L’ensemble se visse directement sur le panneau du coffre.

Câblage des boutons et du PCB

ipac

Les boutons sont LED mais pour cette première version, j’ai décidé de faire sans. Au niveau du câblage, il y a deux choses à faire :

  • une guirlande “daisy chain” pour l’alimentation (GND) qui est reliée à tous les boutons et joysticks (il y en a quatre par joystick).
  • un fil par boutons (et quatre par joystick)

En fait, la guirlande permet de faire passer le courant dans l’ensemble des boutons et ce courant est alimenté directement par l’alimentation de la Raspberry Pi. C’est assez pratique, car ça permet de n’avoir qu’un branchement sur prise. Les fils uniques vont directement dans l’IPAC.

Je commence d’abord par ajouter mes fils électriques à l’ensemble des boutons, puis quand tout est prêt, il ne reste plus qu’à dénuder le bout de chaque fils et à les visser sur l’IPAC.

This slideshow requires JavaScript.

Et c’est à peu près tout ! La dernière difficulté consiste à faire comprendre à RetroPie qu’il s’agit de 2 manette et non d’une seule.
L’IPAC est considéré comme un (unique) clavier et pour régler cela, j’ai ouvert l’assistant de connexion de manette de RetroPie, et noté à quelle touche correspondait chaque bouton. Ensuite, il suffit de récupérer le fichier retroarch.cfg via FTP et rentrer manuellement chaque touche pour le joueur 1 et le joueur 2.

Voici à quoi ressemble mon fichier :

input_player1_a = enter
 input_player1_b = p
 input_player1_y = alt
 input_player1_x = ctrl
 input_player1_start = num5
 input_player1_select = num1
 input_player1_l = shift
 input_player1_r = z
 input_player1_left = up
 input_player1_right = down
 input_player1_up = right
 input_player1_down = left
 # input_player1_l2 =
 # input_player1_r2 =
 # input_player1_l3 =
 # input_player1_r3 =
input_player2_a = escape
 input_player2_b = tab
 input_player2_y = a
 input_player2_x = s
 input_player2_start = num6
 input_player2_select = num2
 input_player2_l = w
 input_player2_r = i
 input_player2_left = r
 input_player2_right = f
 input_player2_up = g
 input_player2_down = d
 # input_player2_l2 =
 # input_player2_r2 =
 # input_player2_l3 =
 # input_player2_r3 =

Et voilà, le tour est joué ! Il suffit ensuite de brancher le câble USB de l’IPAC sur la Raspberry Pi, brancher le tout, éventuellement faire des derniers réglages sur l’assistant de connexion de manette et c’est tout !

cabinet-arcade-final

arcade-joysticks

  • Max Fri

    Super manette. Je compte bien en faire autant d’ici peu.