Recalbox Forum

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

    Solved Ecran 3.2 + boutons sur ports GPIO

    Recalbox Général
    3.2 boutons ports gpio
    7
    74
    25820
    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.
    • anachris
      anachris last edited by

      resalut,
      j'ai essayé la procédure que tu m'a donnée.
      Au niveau du remplacement du module, je n'ai pas de dossier /usr/lib/modules..
      J'ai copié les mk_arcade_joystick_rpi-hotkey.ko dans mon dossier /usr/lib
      ###est-ce le bon emplacement?????
      En suivant le tuto indiqué, je plante après ceci :
      ###mkdir mkjoystick
      ###cd mkjoystick
      ###wget https://github.com/digitalLumberjack/mk_arcade_joystick_rpi/releases/download/v0.1.4
      le sh ./install.sh updatesystem me renvoi:
      /install.sh
      Updating system
      ./install.sh: line 6: sudo: command not found
      ERROR : Unable to apt-get update

      donc bloqué...
      le tuto est fait pour un système linux style retropie mais sur recalbox cela ne fonctionne pas à moins que je me trompe?????????????????????????????

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

        @anachris tu n'as pas copié le ko où il faut. un find /usr/lib -name mk_arcade_joystick_rpi-hotkey.kodevrait t'éclairer.

        La procédure que tu cites ne marches pas sur recalbox parce que recalbox est un OS minimaliste, pas une distrib complète comme raspbian

        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
        • anachris
          anachris last edited by anachris

          effectivement ce n'est pas une distribution complète, mais du coup comment puis réussir a suivre ce tuto?

          le # find /usr/lib -name mk_arcade_joystick_rpi-hotkey.ko me renvoi uniquement
          /usr/lib/mk_arcade_joystick_rpi-hotkey.ko

          1 Reply Last reply Reply Quote 0
          • anachris
            anachris @ian57 last edited by

            @ian57 dans ton mess tu me dit avoir réussi avec un pi zero a brancher des bouton arcades ainsi que l'écran waveshare 3.2 sur les port gpio, mais tu utilisais bien recalbox? car je n'arrive pas à réaliser le tuto que tu m'a conseillé.

            1 Reply Last reply Reply Quote 0
            • ian57
              ian57 Staff last edited by

              oui recalbox 4.1.
              sur le tuto il faut regarder la parti configuration, pas compilation puisqu'il est déjà compilé le module!

              il faut remplacer le .ko existant pas celui que j'ai fournis (fais une sauvagarde du tiens on ne sait jamais) par ecrasement.

              "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

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

                oui mais c'est un de mes soucis lorsque je fais un find /usr/lib -name mk_arcade_joystick_rpi-hotkey.ko, je n'ai aucune réponse.

                1 Reply Last reply Reply Quote 0
                • ian57
                  ian57 Staff last edited by

                  parce qu'il s'appelle mk_arcade_joystick_rpi.ko le hotkey et i2c accolé c'est pour différencier les 2 modules, l'un compilé avec le support i2c et incompatible avec le hotkey. ça sert à ceux qui utilise des montages multiplexés sur bus i2c à base de composant mcp23017. l'autre c'est celui que tu veux.

                  "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

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

                    oui mais un find -name mk_arcade_joystick_rpi.ko ne me renvoi rien non plus, et je doit le remplacer par lequel???
                    excuse moi franchement de t'embêter avec cela mais je ne comprend pas ce que je doit faire. Il me manque plus que cette partie pour avoir un système opérationnel et je suis dessus depuis lundi je m'arrache les cheveux! je voudrai faire une petite console pour mon fils c'est son anniv dans 5 jours et il ne me reste plus que cela a mettre en place, je devient fou!!!

                    peux tu me dire exactement ce que je doit faire stp???

                    j'ai trouvé un dossier mk_arcade_joystick_rpi dans /sys/modules, mais aucun .ko à l'intérieur.

                    1 Reply Last reply Reply Quote 0
                    • ian57
                      ian57 Staff last edited by

                      j'ai pas de pi sous la main... je regarde dès que je peux

                      "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

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

                        merci bcp bcp bcp!!!

                        1 Reply Last reply Reply Quote 0
                        • ian57
                          ian57 Staff last edited by

                          ben tu as peut être mis le doigts sur un truc là ... on vérifie 😉

                          "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

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

                            super pour une fois que je trouve quelque chose!!! : )

                            voilà où j'en suis, j'ai edité le fichier /etc/modules.conf, où j'ai
                            snd_bcm2835
                            uinput

                            j'ai ajouté la ligne :
                            mk_arcade_joystick_rpi

                            j'ai ensuite créé le fichier :
                            nano /etc/modprobe.d/mk_arcade_joystick.conf

                            j'y ai inscrit, pour tester juste avec 2 bouton (left et start):
                            options mk_arcade_joystick_rpi map=4 gpio=-1,-1,31,-1,35,-1,-1,-1,-1,-1,-1,-1,-1

                            ensuite j'active les ports gpio danbs le fichier de conf de recalbox et je redemarre.
                            et là c'est le drame! ecritures blanches qui défilent, le pi ne ping plus, bref je fou la m...

                            heureusement que j'ai créé une image que j'ai pu restaurer!

                            enfin voilà où j'en suis.

                            ps: par contre si je customize les port gpio, faut il les activer dans le recalbox.conf?

                            1 Reply Last reply Reply Quote 0
                            • ian57
                              ian57 Staff last edited by ian57

                              bon an fait c'est normal qua ça marche pas, il faut que je te file la version compileé avec la version de noyau de la 4.0. Moi je t'ai filé un module pour un noyau de la 4.1. je te fais cela

                              et oui il faut activer le gpio dans recalbox.conf

                              par contre je te conseille de tester le module avec un ecran de PC dans un premier temps pour pouvoir vérifier facilement que ç amarche

                              ensuite tu remets la config du 3.2

                              "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

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

                                ok super merci j'attend ton retour, pour info quand je fait un uname -a :
                                Linux RECALBOX 4.1.19-v7 #1 SMP Mon Oct 31 20:09:55 UTC 2016 armv7l GNU/Linux

                                donc je suis bien en 4.1???

                                1 Reply Last reply Reply Quote 0
                                • ian57
                                  ian57 Staff last edited by

                                  Nop le noyau de la 4.1 est un 4.4.13-v7. tu es bien sur un pi3 que je build pour la bonne arch.

                                  "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

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

                                    oui c'est un pi3 b

                                    1 Reply Last reply Reply Quote 0
                                    • ian57
                                      ian57 Staff last edited by

                                      bon ben ça compile....

                                      "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

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

                                        t'es un chef!
                                        sans vouloir abuser pourra tu me guider pour l'intégration?
                                        merci par avance.

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

                                          tu sais combien de temps prend une compilation?

                                          1 Reply Last reply Reply Quote 0
                                          • ian57
                                            ian57 Staff last edited by

                                            bah c'est fini depuis un moment...mais j'ai des trucs à faire aussi 😉
                                            https://mega.nz/#!ygMGxTZI!icFwxfu3EPG8wOejXsvMpig2MjSaRqFfKFQf_ssLIRY

                                            le fichier mk_arcade_joystick_rpi.ko à placer dans le répertoire /lib/modules/4.1.19-v7/extra/ (fais une copie de l'ancien avant)

                                            ensuite comme indiqué ici https://github.com/recalbox/mk_arcade_joystick_rpi/tree/hotkeybtn

                                            "Loading the driver

                                            The driver is loaded with the modprobe command and take one parameter nammed "map" representing connected joysticks. When you will have to load the driver you must pass a list of parameters that represent the list of connected Joysticks. The first parameter will be the joystick mapped to /dev/input/js0, the second to js1 etc.."

                                            "If you don't want to use all pins or wants a custom gpio map use:

                                            sudo modprobe mk_arcade_joystick_rpi map=4 gpio=pin1,pin2,pin3,.....,pin12
                                            Where pinx is the number of the gpio you want. There are 12 posible gpio with button order: Y-,Y+,X-,X+,start,select,a,b,tr,y,x,tl,hk. Use -1 for unused pins. For example gpio=21,13,26,19,-1,-1,22,24,-1,-1,-1,-1,-1 uses gpios 21,13,26,19 for axis and gpios 22 and 24 for A and B buttons, the rest of buttons are unused.

                                            If you want customization for both players use map=4,5 and gpio= for player 1 and gpio2= for player 2. Example:

                                            same configuration as map=1,2 but manually:

                                            sudo modprobe mk_arcade_joystick_rpi map=4,5 gpio=4,17,27,22,10,9,25,24,23,18,15,14,2 gpio2=11,5,6,13,19,26,21,20,16,12,7,8,3
                                            

                                            If you use a TFT and want two players, you can´t use all gpios.
                                            Example with two players and only axes, A and B buttons

                                            sudo modprobe mk_arcade_joystick_rpi map=4,5 gpio=4,17,27,22,-1,-1,25,24,-1,-1,-1,-1,-1 gpio2=11,5,6,13,19,-1,-1,20,16,-1,-1,-1,-1,-1
                                            

                                            The GPIO joystick 1 events will be reported to the file "/dev/input/js0" and the GPIO joystick 2 events will be reported to "/dev/input/js1"

                                            Auto load at startup

                                            Open /etc/modules :

                                            sudo nano /etc/modules
                                            and add the line you use to load the driver :

                                            mk_arcade_joystick_rpi
                                            

                                            Then create the file /etc/modprobe.d/mk_arcade_joystick.conf :

                                            sudo nano /etc/modprobe.d/mk_arcade_joystick.conf
                                            

                                            and add the module configuration :

                                            options mk_arcade_joystick_rpi map=4,5
                                            

                                            Testing

                                            Use the following command to test joysticks inputs :

                                            jstest /dev/input/js0"
                                            

                                            et dans le recalbox.conf

                                            # ------------ D3 - GPIO Controllers ------------ #
                                            ## GPIO Controllers         
                                            ## enable controllers on GPIO with mk_arcarde_joystick_rpi (0,1)
                                            controllers.gpio.enabled=1
                                            ## mk_gpio arguments, map=1 for one controller, map=1,2 for 2 (map=1,map=1,2)
                                            controllers.gpio.args=map=4,5 
                                            

                                            "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

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

                                            Want to support us ?

                                            76
                                            Online

                                            99.6k
                                            Users

                                            28.1k
                                            Topics

                                            187.1k
                                            Posts

                                            Copyright © 2021 recalbox.com