Recalbox Forum

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • recalbox.com
    • Gitlab repository
    • Documentation
    • Discord

    Besoin d'ade pour un projet de retrogamepad avec joystick analogique

    Manettes/GPIO/Encodeurs
    dade projet retrogamepad joystick analogique
    6
    29
    9047
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • rockaddicted
      rockaddicted @Substring last edited by

      @substring said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

      La vraie question est : faut-il un stick analogique ou pas ? Le Pi n'a pas de convertisseurs analogique -> numérique, ce qui veut dire qu'il faut passer par un PCB externe pour réaliser ca

      hummm avis perso, si l'on souhaite faire une console à base de rpi0, clairement non.
      cette board n'est pas assez puissante pour émuler proprement la ps1/n64.
      si par contre l'on souhaite intégrer un rpi3 pourquoi pas.

      Recalbox V4.1.0 - RPI3 OC - Xbox360 wireless
      Wiki ENG : https://github.com/recalbox/recalbox-os/wiki/Mini-How-To-(EN)
      Wiki FR : https://github.com/recalbox/recalbox-os/wiki/Mini-How-To-(FR)

      Don't forget to upvote messages if it has been useful ;)

      Substring A Former User 2 Replies Last reply Reply Quote 0
      • Substring
        Substring @rockaddicted last edited by

        @rockaddicted En voilà une réponse censée qui fait autorité 🙂

        Former dev - Please reply with @substring so that i am notified when you answer me
        Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

        1 Reply Last reply Reply Quote 0
        • A Former User
          A Former User @rockaddicted last edited by A Former User

          Merci à tous pour vos réponses !
          @Substring j'ai donc bien besoin d'utiliser cet arduino où connaissez vous un moyen plus simple ?
          @rockaddicted je confirme que j'utilise bien un raspberry pi 3 .
          .
          Edit : j'ai trouvé un projet similaire au mien (https://www.thingiverse.com/thing:1792253) Il dit qu'il utilise un carte Carte Teensy 3.2 pour pouvoir utiliser les 2 joysticks + 12 boutons, mais il dit qu'il a lui même fait le programme pour l'utiliser, quelqu'un n'aurait pas une piste pour trouver un programme similaire ?
          Donc en soit utiliser l'aduino (dont j'ai accès au code) ou la carte teensy ça revient à la même chose. Le plus gros problème est surtout au niveau des branchement des joysticks et des boutons à la carte

          Substring 1 Reply Last reply Reply Quote 0
          • Substring
            Substring @Guest last edited by Substring

            @valentin-le-palud tu n'as pas répondu à me première intervention 😉

            @substring said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

            La vraie question est : faut-il un stick analogique ou pas ? Le Pi n'a pas de convertisseurs analogique -> numérique, ce qui veut dire qu'il faut passer par un PCB externe pour réaliser ca.

            Former dev - Please reply with @substring so that i am notified when you answer me
            Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

            A Former User 1 Reply Last reply Reply Quote 0
            • A Former User
              A Former User @Substring last edited by

              @substring La réponse et oui j'ai besoin de mettre deux stick analogique 😉

              Substring 1 Reply Last reply Reply Quote 0
              • Substring
                Substring @Guest last edited by

                @valentin-le-palud ben je m'emmerderais bcp moins que toi et je prendrais un pad USB que je démonterais ...

                Former dev - Please reply with @substring so that i am notified when you answer me
                Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                A Former User 1 Reply Last reply Reply Quote 0
                • A Former User
                  A Former User @Substring last edited by

                  @substring a carrément ça fonctionnerait ? Donc je deverais acheter une manette de ps3 et je pourrais la demonter et placer les boutons de chaque coter de l'écran ?

                  Substring 1 Reply Last reply Reply Quote 0
                  • Substring
                    Substring @Guest last edited by

                    @valentin-le-palud Et donc découper le PCB ? non ca ne va pas être drôle du tout là. En gros tu veux faire un gamepad WiiU avec un pi dedans ?

                    Former dev - Please reply with @substring so that i am notified when you answer me
                    Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                    A Former User 1 Reply Last reply Reply Quote 0
                    • A Former User
                      A Former User @Substring last edited by

                      @substring Oui en gros ça ressemblerait a un gamepad WiiU. Donc enfaite problème c'est que les boutons et les joysticks sont collé au PCB 😕

                      1 Reply Last reply Reply Quote 0
                      • Fardenco
                        Fardenco @Guest last edited by Fardenco

                        @valentin-le-palud said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

                        @fardenco Merci pour ta réponse. Je me disait bien que vous aviez pas fait tous cela pour rien.

                        J'ai lu ce que t'as écrit et j'ai assez bien compris, et donc dans le lien GitHub j'ai survoler et je pense avoir compris mais pour les branchements c'est aussi indiquer ou pas ? et au niveau des boutons quels sont les bon: ce pour arcade avec 2 broches (dans ce style https://www.amazon.fr/Bouton-Poussoir-Commutateur-Arcade-Multicade/dp/B01LX1KN7P/ref=sr_1_15?s=computers&ie=UTF8&qid=1502233066&sr=1-15&keywords=bouton+arcade)
                        ou des bouton arduino (https://www.amazon.fr/Contrôle-lalimentation-électrique-commutateurs-poussoir/dp/B073ZJSJ4Z/ref=sr_1_9?ie=UTF8&qid=1502232949&sr=8-9&keywords=bouton+arduino)
                        et quel fil utiliser pour les relier ?
                        (désolé mais niveau arduino je ne mis connais vraiment pas ^^ )

                        Pour les boutons n'importe lequel fera l'affaire, nous on veut simplement des contacts donc tu n'as que 2 broches à connecter.
                        Une à la masse et l'autre à l'entrée du contrôleur (que ça soit un rasp directement ou bien l'Arduino si tu veux bel et bien des sticks analogiques)
                        Pour ce qui est de savoir sur quelle broche de l'arduino le relier, c'est un peu toi qui choisis en fait, car après dans le programme UnoJoy tu associes un numéro de broche à un bouton

                        @voljega said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

                        D'ailleurs le gars est tellement à l'ouest qu'il n'a pas fait exprès de montrer des images d'un jeu qui tire parti des joysticks analogiques durant son explication de pourquoi un Arduino est utilisé pour gérer des valeurs analogiques.

                        Avant de critiquer tu te renseigneras un peu et tu verras que Recalbox ne met pas à disposition que des émulateurs d'arcade, donc avoir des joysticks analogiques est tout à fait censé, c'est même bien pratique en fait.

                        Pas vu le jeu en question (je ne vois que Mario64 dans la vidéo) mais les jeux arcade utilisant des contrôles analogiques y'en a pas énormément, et ils sont tous plutôt datés. Ils ont souvent des versions consoles qui marcheront tout aussi bien ou tout simplement les roms de ces jeux disposent de clones hackées pour fonctionner avec un joystick numérique

                        De même pour les consoles avant la Ps1 et la N64 les contrôles ne sont pas analogiques mais numériques que je sache et même sur la PS1 beaucoup de jeux n'utilisent pas de contrôles analogiques (qui ne sont d'ailleurs pas activés par défaut dans la PS1 pour Recalbox)

                        D'ailleurs les GPIO ne permettent pas de gérer L2 et R2 pour la PS1 donc je ne passerais clairement pas pas par là.

                        En effet c'est bien Mario 64, et dans ce jeu l'analogie des sticks permet par exemple de marcher, mais aussi de tourner la caméra lentement, ce qui est plutôt agréable (comme on peut voir dans la vidéo).
                        C'est vrai qu'il n'y a pas énormément d'émulateurs qui utilisent l'analogique, mais il y en a et on y trouve des jeux très intéressants (dont la PS1 et la N64).

                        Bref pour un débutant comme semble l'être Valentin ça rajoute une couche de complexité totalement inutile, et je persiste à dire que passer par un contrôleur USB ou découper un pcb de manette sera bien plus simple et accessible.

                        Tu connais peut-être les contrôleurs Xin-Mo ? Là c'est un peu ce qu'on recrée, mais avec le support des sticks analogiques. Le câblage est le même, et la mise en place est plutôt simple et bien documentée.
                        Je pense que c'est bien plus simple et fiable de faire ça que de découper le pcb d'une manette, après c'est mon avis.

                        Bref pour moi l'affirmation "Avec un Raspberry Pi ce serait pas possible de faire ça" (avoir des contrôles analogiques) est fausse et seulement vraie si tu utilises les GPIO, GPIO qui ne permettront pas d'avoir tous les contrôles pour la PS1

                        C'est quand même pas un mystère que 99% des projets de console portable qu'on voit ici ou ailleurs utilisant Recalbox ou une autre distrib numérique n'utilisent pas d'arduino, c'est carrément pas indispensable et le gain est très minime

                        Cette affirmation restera vraie tant que personne n'aura trouvé de moyen de gérer des joysticks analogiques directement depuis le rasp.
                        Par contre c'est vrai aussi qu'on n'est pas obligé d'utiliser des sticks analogiques, mais ça personne n'a dit le contraire 😃
                        Très peu utilisent un Arduino car ça n'est utile que si tu fabriques ton contrôleur toi même (console portable ou bartop), car les autres vont simplement connecter une manette toute faire.
                        Donc déjà là tu enlève une bonne partie des personnes qui utilisent Recalbox, et parmis ceux qui restent, tu ne gardes que ceux qui veulent avoir des sticks analogiques. Donc oui en effet ça fait peu de personnes.

                        Ceci dit sorry pour le "à l'ouest" qui était de trop.

                        Pas de problème

                        @rockaddicted said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

                        @substring said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

                        La vraie question est : faut-il un stick analogique ou pas ? Le Pi n'a pas de convertisseurs analogique -> numérique, ce qui veut dire qu'il faut passer par un PCB externe pour réaliser ca

                        hummm avis perso, si l'on souhaite faire une console à base de rpi0, clairement non.
                        cette board n'est pas assez puissante pour émuler proprement la ps1/n64.
                        si par contre l'on souhaite intégrer un rpi3 pourquoi pas.

                        C'est clair qu'avec un pi0, c'est une mauvaise idée d'une part comme tu dis à cause des émulateurs qui sont trop lourds, mais aussi car rajouter un Arduino qui fait presque 2 fois la taille du pi0 gâche un peu l'avantage du faible encombrement

                        @valentin-le-palud said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

                        Merci à tous pour vos réponses !
                        @Substring j'ai donc bien besoin d'utiliser cet arduino où connaissez vous un moyen plus simple ?
                        @rockaddicted je confirme que j'utilise bien un raspberry pi 3 .
                        .
                        Edit : j'ai trouvé un projet similaire au mien (https://www.thingiverse.com/thing:1792253) Il dit qu'il utilise un carte Carte Teensy 3.2 pour pouvoir utiliser les 2 joysticks + 12 boutons, mais il dit qu'il a lui même fait le programme pour l'utiliser, quelqu'un n'aurait pas une piste pour trouver un programme similaire ?
                        Donc en soit utiliser l'aduino (dont j'ai accès au code) ou la carte teensy ça revient à la même chose. Le plus gros problème est surtout au niveau des branchement des joysticks et des boutons à la carte

                        En fait avec la Teensy le principe est à peu près le même, sauf que le microcontrôleur qu'elle utilise gère l'USB directement, contrairement au Uno qui doit passer par un contrôleur annexe comme expliqué plus haut.
                        Les branchements sont vraiment simples, un côté du bouton va à la masse et l'autre à une des entrées numériques de l'Arduino (entre 2 et 13)
                        Pour les joysticks, simplement relier le curseur des potentiomètres à une entrée analogique (entre A0 et A5)

                        Il faut vraiment voir l'Arduino ici comme un Xin-Mo qu'on paramètre soi même

                        Edit : en fouillant un peu, je suis tombé là dessus :
                        Un Xin-Mo qui dispose d'entrées analogiques, c'est juste ce qu'il faut !
                        https://paradisearcadeshop.com/xin-mo/2044-xin-mo-analog-controller.html
                        Un lien en France :
                        https://www.smallcab.net/encodeur-analogique-joystick-boutons-arcade-joueur-p-278.html
                        En fouillant tu le trouveras peut-être moins cher ailleurs

                        Description tout en bas de cette page :
                        http://www.xin-mo.com/single-player-controller.html

                        A Former User 1 Reply Last reply Reply Quote 0
                        • A Former User
                          A Former User @Fardenco last edited by

                          @fardenco Merci pour t'es réponse c'est vraiment cool 😉

                          Pour les boutons n'importe lequel fera l'affaire, nous on veut simplement des contacts donc tu n'as que 2 broches à connecter.
                          Une à la masse et l'autre à l'entrée du contrôleur (que ça soit un rasp directement ou bien l'Arduino si tu veux bel et bien des sticks analogiques)

                          Donc 2 broches que je veut, au piff ? et quand tu dit a la "masse" que veut tu dire pas la ?

                          Donc du coup le plus simple est d'utiliser le Xin-Mo analog controller ? sauf que si j'ai bien compris je peut mettre seulement 1 stick c'est bien ça ?

                          voljega Fardenco 2 Replies Last reply Reply Quote 0
                          • voljega
                            voljega Banned @Guest last edited by

                            @valentin-le-palud vérifie avec la team que ce Xin-Mo là est supporté quand même, parce que pour l'instant je crois qu'à part le Xin-Mo 'standard' deux joueurs les autres n'ont pas été testé

                            Substring 1 Reply Last reply Reply Quote 0
                            • Substring
                              Substring @voljega last edited by

                              @voljega c'est in xinmo 1 joueur, donc pas de soucis particulier à première vue. Le seul sujet sera plutôt sur la valeur du potard à coller sur chaque broche analogique, savoir si c'est standard ou pas. L'autre sujet sera aussi d'etre sûr que le potard renvoie bien des évènements de stick, ce dont je n'ai aucune raison de douter vu ce que fait xinmo

                              Former dev - Please reply with @substring so that i am notified when you answer me
                              Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                              1 Reply Last reply Reply Quote 0
                              • Fardenco
                                Fardenco @Guest last edited by

                                @valentin-le-palud said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

                                @fardenco Merci pour t'es réponse c'est vraiment cool 😉

                                Pour les boutons n'importe lequel fera l'affaire, nous on veut simplement des contacts donc tu n'as que 2 broches à connecter.
                                Une à la masse et l'autre à l'entrée du contrôleur (que ça soit un rasp directement ou bien l'Arduino si tu veux bel et bien des sticks analogiques)

                                Donc 2 broches que je veut, au piff ? et quand tu dit a la "masse" que veut tu dire pas la ?

                                Donc du coup le plus simple est d'utiliser le Xin-Mo analog controller ? sauf que si j'ai bien compris je peut mettre seulement 1 stick c'est bien ça ?

                                Ce qu'on appelle la masse, c'est le potentiel de référence du circuit électrique. Souvent marqué "GND".

                                Il faut voir les boutons comme de simples contacts. Tu appuies pas, il n'y a pas de contact entre les 2 broches, tu appuies, il y a un contact.
                                Pour le premier type de bouton que tu nous as montré, il s'agit d'un inverseur :
                                https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRSwIlN8fVrrkk4a92KP1ioNgqYeSs1ioOTB5eZ9qClc31_H4rM
                                Comme tu peux voir sur le schéma, tu as 3 broches : COM, L1 et L2. Quand tu n'actionne pas l'inverseur, COM est relié à L1. Quand tu l'actionnes, COM est relié à L2.
                                Dans ton cas, L1 ne sert à rien.

                                Pour faire simple, le contrôleur de la manette considère qu'un input est activé quand la broche correspondante est reliée à la masse. Si on veux appuyer sur "X", on va simplement relier la broche associée à "X" à la masse. Pour ça, on utilise un contact : d'un côté du contact on a la masse, de l'autre on a l'entrée du contrôleur.
                                Si le contact n'est pas actionné (on n'appuie pas sur le bouton), alors l'entrée n'est pas reliée à la masse. Par contre, dès qu'on l'actionne, l'entrée est reliée à la masse, le contrôleur le détecte, et l'input "X" est activé.

                                Il faut voir tes interrupteurs (quels qu'ils soient) comme ça :
                                https://i.stack.imgur.com/2QnT6.png

                                Tout ce que tu as à faire, c'est trouver quel broche correspond à quelle partie de l'interrupteur. Pour les inverseurs du type de ceux que tu nous as montré, en général il y a un schéma sur le plastique. Pour l'autre type de bouton, les pattes opposées sont reliées entre elles :
                                http://shallowsky.com/arduino/class/buttonlegsdiag.jpg

                                Apparemment le Xin-Mo analog dispose de 4 entrées analogiques. Un joystick est sur 2 axes donc tu peux avoir 2 joysticks (pour un total de 4 axes).

                                Le câblage est toujours le même : un fil va de la masse (GND sur le xin-mo) à chacun des interrupteurs, et ensuite chaque interrupteur va à une entrée du xin-mo.
                                Le schéma sur le site montre pour 3 boutons, c'est pareil pour tous les autres :
                                http://www.xin-mo.com/

                                @substring said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

                                @voljega c'est in xinmo 1 joueur, donc pas de soucis particulier à première vue. Le seul sujet sera plutôt sur la valeur du potard à coller sur chaque broche analogique, savoir si c'est standard ou pas. L'autre sujet sera aussi d'etre sûr que le potard renvoie bien des évènements de stick, ce dont je n'ai aucune raison de douter vu ce que fait xinmo

                                Pour ce qui est de la valeur des potentiomètres, elle n'est pas standard mais elle n'est pas vraiment importante (tant qu'elle n'est pas trop élevée, si non c'est sujet aux interférences).
                                En général on utilise des potentiomètres de 10k, il me semble que c'est ce qu'on retrouve dans les joysticks de ce type :
                                http://robot.sumo.free.fr/Images/La fabrique/Joystick.png

                                Mais encore une fois, ce qui est important ça n'est pas la valeur totale du potentiomètre, car celui-ci ne sert qu'à obtenir une tension variable proportionnelle à la position du curseur. Le contrôleur mesure cette tension, et pas la résistance du potentiomètre.

                                Pour ce qui est de la compatibilité, je n'ai aucune certitude (à part pour le système avec UnoJoy)
                                Car même si c'est bien un Xin-Mo 1 joueur, ça reste une carte différente de celle qui est très utilisée (qui elle ne dispose pas d'entrée analogique).

                                A Former User 1 Reply Last reply Reply Quote 0
                                • A Former User
                                  A Former User @Fardenco last edited by

                                  @fardenco Mon dieux j'ai réussi a comprendre merci ! 🙂 et donc le mode de branchement est le même peut importe que j'utilise arduino ou Xin-Mo c'est bien ça ?

                                  Je pense que je vais utiliser Xin-Mo du coup çe me parrait nettement plus simple a mettre en place. Et donc pour les branchement des boutons et des joysticks je doit bien utiliser c'est cable ? https://www.amazon.fr/acirc-bles-BreadBoard-Femelle-Femele/dp/B00ENSOHJ0/ref=sr_1_1?ie=UTF8&qid=1502285840&sr=8-1&keywords=cable+raspberry+pi

                                  Merci encore de votre aide !

                                  Substring 1 Reply Last reply Reply Quote 0
                                  • Substring
                                    Substring @Guest last edited by

                                    @valentin-le-palud le xinmo devrait être vendu avec les bacles nécessaires. Par contre, côté connecteurs boutons/sticks, c'est du format arcade avec des osses de 4.8mm. Donc tu devras surement retoucher ca

                                    Former dev - Please reply with @substring so that i am notified when you answer me
                                    Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                                    1 Reply Last reply Reply Quote 0
                                    • Fardenco
                                      Fardenco last edited by

                                      @valentin-le-palud said in Besoin d'ade pour un projet de retrogamepad avec joystick analogique:

                                      @fardenco Mon dieux j'ai réussi a comprendre merci ! 🙂 et donc le mode de branchement est le même peut importe que j'utilise arduino ou Xin-Mo c'est bien ça ?

                                      Je pense que je vais utiliser Xin-Mo du coup çe me parrait nettement plus simple a mettre en place. Et donc pour les branchement des boutons et des joysticks je doit bien utiliser c'est cable ? https://www.amazon.fr/acirc-bles-BreadBoard-Femelle-Femele/dp/B00ENSOHJ0/ref=sr_1_1?ie=UTF8&qid=1502285840&sr=8-1&keywords=cable+raspberry+pi

                                      Merci encore de votre aide !

                                      Du côté du Xin-Mo c'est bien ce connecteur, mais du côté des boutons ça dépend de ce que tu prends.
                                      Comme l'a dit Substring, si tu utilises des boutons d'arcade c'est des cosses de 4.8mm.
                                      Mais étant donné que tu souhaites faire une console portable, je ne suis pas sûr que ça soit le plus adapté comme bouton, car ça prend beaucoup de place.
                                      Quoi qu'il en soit, si tu n'as pas l'intention de retoucher après tu peux simplement souder le bout du fil au connecteur.
                                      C'est de toutes façons ce que tu devras faire si tu utilises les même boutons que ceux utilisés dans la vidéo, qui sont à la base faits pour être soudés.

                                      1 Reply Last reply Reply Quote 0
                                      • Mr.Anonymousse
                                        Mr.Anonymousse @voljega last edited by

                                        @voljega c'est possible que la Léo-TechMaker dise de la merde mais c'est vraiment un bon youtuber high-tech , sa vaut le coup d'oeil !

                                        voljega 1 Reply Last reply Reply Quote 0
                                        • voljega
                                          voljega Banned @Mr.Anonymousse last edited by

                                          @mr-anonymousse yes au final le débat était faut il des sticks analogiques ou pas, si oui on ne peut pas se passer d'arduino ou d'un autre controleur analogique

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post

                                          Want to support us ?

                                          96
                                          Online

                                          99.6k
                                          Users

                                          28.1k
                                          Topics

                                          187.1k
                                          Posts

                                          Copyright © 2021 recalbox.com