まこと の ブログ

MaKoTo no burogu — Journal de bord…

Aller au contenu | Aller au menu | Aller à la recherche

Mot-clé - Rétrogaming

Fil des billets - Fil des commentaires

jeudi, 3 novembre 2022

IR Light Gun avec Arduino

Certains jeux vidéos d'arcade sont jouables uniquement avec certains accessoires.
Un volant et des pédales, un tapis de danse, des boutons à frapper, etc, tout ce qui fait le charme des bornes dédiées.
Parmi elles, il y a les jeux de flingues qui sont particulièrement amusants, mais les évolutions technologiques ont rendu les pistolets optiques obsolètes, car inopérant par la disparition du téléviseur à tube cathodique.

De plus, aucun émulateur n'est capable de faire fonctionner un pistolet optique, et ce même si on utilise une télé à tube.
En fait les émulateurs simulent le déplacement du réticule de visée soit par les mouvements de la souris, soit par les mouvements d'un joystick analogique. (mame permet les deux)

Pour résumer, la problématique :
- Dans le cas des jeux originaux, sur console ou arcade, le pistolet optique ne fonctionne pas sur une télé LCD.
- Dans le cas des jeux émulés, console ou arcade, le pistolet optique n'est pas supporté par l'émulateur.

Les solutions disponibles :
- Dans le cas des jeux originaux, certains jeux d'arcade utilisent les coordonnées X,Y d'un potentiomètre analogique pour déplacer le réticule de visée.
- Dans le cas des jeux émulés, on peut utiliser la souris ou un joystick analogique pour déplacer le réticule de visée.

  • Par le passé (oui il y a quasi 10 ans…) j’avais expérimenté ici ce pistolet infra-rouge G2N pour un appareil fonctionnel qu’il restait à finaliser, chose que je n’ai pas pris le temps de faire, emporté par d’autres sujets… (j’ai supprimé la série de billets pour plus de clarté)
  • Depuis, une nouvelle version plus simple à mettre en œuvre a fait son apparition, et après avoir réalisé rapidement un module de test fonctionnel, je me suis rendu compte qu’il me faudrait adapter le code et le hardware à mes besoins.

Je vais donc décrire ici toute la documentation utile à la réalisation de ce pistolet Infra-Rouge maison.


Schéma de principe :


Un simple Arduino Pro Micro 5V constitue le cœur du système de traitement de la donnée.
Il est chargé via le bus I²C, de récupérer les informations de positionnement en X et Y d'une caméra infra-rouge disposée dans le pistolet, par rapport à deux références infra-Rouge accrochées au dessus de l'écran.
L’Arduino fait ensuite l'interface avec l’ordinateur de jeux en transposant tout ceci en « HID Device », Joystick et Souris USB (oui, simultanément), afin de déplacer le réticule des jeux de tir.

Dans le pistolet nous retrouvons donc une caméra IR volée dans une Wiimote, à laquelle nous avons joint quelques composants essentiels.
Tout d’abord un LM317 et ses satellites permettant de fabriquer le 3,3V nécessaire au bon fonctionnement de la caméra, à partir du 5V fournit par le port USB.
Un crystal à 24 ou 25 Mhz, un circuit de reset et une conversion de niveaux logiques 3,3V <-> 5V, afin que l’Arduino puisse bien s’entendre avec la caméra sur le bus I²C.
Reste à déporter aussi quelques entrées de l’Arduino pour y raccorder des boutons faisant offices de gâchette et autre choses utiles.
Je pense qu'on pourrait se passer des conversions de tension et de niveaux logiques en 3,3V en utilisant directement un Arduino Pro Micro 3,3V, mais le fait est que je n'en disposais pas lors de la réalisation de ce sujet… À essayer à l'occasion.

Gun PCB :

On doit pouvoir se débrouiller facilement avec l’électronique disponible sous forme de modules (Arduino, Logic level converter…) et une carte perforée à souder pour fabriquer une plaquette sur mesure pour aller dans le flingue.

  • Pour autant on pourrait aussi avoir envie de router une plaquette soit-même, aussi j’ai entrepris de dessiner ce schéma que d’aucun préféreront sans doute au crobar Fritzing précédent.

Lire la suite...

mercredi, 3 février 2021

Une Borne d'Arcade maison, nouveau marquee

Suite de l'étude précédente :

J'en parlais à l'époque, je n'ai jamais été satisfait du « marquee », pour la simple et bonne raison que je l'ai raté, et ce sans compter que je ne savais pas comment procéder pour les grilles de haut-parleur.
Je ne sais pas comment j'ai pu faire cette grossière erreur dans le découpage du verre synthétique, peut-être influencé par la disposition des haut-parleurs dans la borne, j'aurais voulu projeter leurs encombrements sur la face… Bref, l'artwork retrouve ses obliques découpées, mais jugez plutôt via ces deux clichés…

  • Donc mon ancien artwork, et un nouveau retravaillé et plus conforme à son modèle original !

20200919_151251.jpg 20200918_193602.jpg
Bref, fatigué de tout le travail accompli, j'avais décidé de laisser tomber… Jusqu'à ce que je retrouve la motivation pour m'y remettre. C'est donc maintenant !

  • De fait, le verre synthétique n'est plus bon, j'en ai alors découpé un nouveau et me suis mis en quête de grille de haut-parleur.

20200918_163226.jpg 20200918_163230.jpg

Lire la suite...

mardi, 29 septembre 2020

Mini Game Center -9-

Suite de l'étude précédente :

Une histoire de marquee :

Une fois la maquette sous-couchée de gris, on commence à imaginer la phase de peinture, on se projette sur ce que sera l'objet final.
Et le rendu de celui-ci va dépendre beaucoup des petits détails qui vont rendre la borne réaliste, et malheureusement ces détails sont proposés sous forme de stickers.
Bien qu'un autocolant bien découpé puisse faire l'affaire, ce n'est pas satisfaisant pour moi, d'autant plus que certaines représentations sur la planche fournie dans la boite ne sont pas de la bonne couleur. ( certaines couleurs des panels notamment ).
J'ai alors commencé à regarder comment fabriquer mes propres décals à l'eau, et durant cette réflexion me suis rapidement aperçu, évidence, que le marquee du bas était en plastique noir !
Alors que celui du haut est sur fond blanc, ce qui pourrait permettre un rétro-éclairage afin de l'illuminer, celui du bas, en noir donc rend impossible ce genre d'effet. Et vu le mal qu'on s'est donné avec l'écran et tout, autant aller jusqu'au bout des choses non ?
Il me faudrait donc envisager de rendre cette pièce noire, sinon transparente, au moins translucide…


Essais de lumière :

20200604_215307.jpg

  • En premiers, je teste le rétro-éclairage avec des led CMS 1206 ( désigne la taille du boitier des leds), et comme un blanc chaud et un blanc froid étaient disponibles, j'ai décidé de prendre les deux, histoire de comparer…
  • Découpage d'une vieille plaque électronique afin d'utiliser les pastilles comme point d'ancrage pour souder les leds, et câblage de tout ceci avec du fil émaillé. Je n'ai pas mis de résistances de protection, car pour les tests je vais utiliser une vieille pile CR2032 qui fournit juste le voltage nécessaire.

20200605_193108.jpg 20200605_203957.jpg dsc04580.jpg dsc04576.jpg

  • J'ai voulu éclairer le marquee du haut, en y appliquant le bandeau de led ainsi bricolé, mais force est de constater que ça éclaire de manière trop ponctuelle, et ce malgré l'ajout de quelques couches de papier calque pour tenter de diffuser la lumière.

dsc04577.jpg dsc04578.jpg

  • Puis j'ai eu l'idée d'éclairer indirectement le marquee du bas en espérant que le plastique blanc diffuse suffisamment bien la lumière :

dsc04586.jpg dsc04582.jpg dsc04584.jpg dsc04585.jpg

  • Bon ! Là on est pas mal, et c'est finalement le blanc froid qui l'emporte, plus proche du néon qu'utilise une Astro City !

Lire la suite...

mardi, 11 août 2020

Mini Game Center -8-

Suite de l'étude précédente :

Maintenant que tout est en place côté électronique, on va pouvoir repasser en mode maquette, et s'occuper de la préparation avant peinture.


Modifications :

  • Avant de coller les deux côtés de la borne au dos, je découpe la croix centrale afin de lui retirer une branche.

dsc04526.jpg dsc04528.jpg dsc04530.jpg

On pourrait se passer de cette pièce prévue pour stabiliser l'assemblage d'une maquette réalisée sans peinture ni colle, comme l'a prévu Wave à la base ( je prend pour preuve la disponibilité de stickers à la place de décals ), mais on va l'utiliser ici comme support au Raspberry.


  • Et la tu comprends tout de suite pourquoi j'ai modélisé3D le support de l'écran avec un trou béant… Pour pouvoir y glisser le µOrdinateur.

dsc04531.jpg dsc04532.jpg

Lire la suite...

- page 1 de 35