RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    MCP23017 and Retropie, some problem appears

    Scheduled Pinned Locked Moved Help and Support
    mcp23017gpiocontrollerrecalbox
    40 Posts 5 Posters 7.4k Views
    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.
    • rbakerR
      rbaker @StoneSet
      last edited by

      @stoneset said in MCP23017 and Retropie, some problem appears:

      MCP23017

      Why are you using this extender? Why not the GPIO directly?

      1 Reply Last reply Reply Quote 0
      • S
        StoneSet
        last edited by

        Because i have a 3.2 TFT screen, so the gpio are already used

        Also, with the screen, i don't have enough gpio to connect all the button (ABXYUPDOWNLEFTRIGHTRLHOTKEY)

        Thanks for your reply

        Best regards,
        http://stoneset.github.io

        rbakerR 1 Reply Last reply Reply Quote 0
        • rbakerR
          rbaker @StoneSet
          last edited by

          @stoneset Post a circuit diagram of what you built?

          1 Reply Last reply Reply Quote 0
          • S
            StoneSet
            last edited by StoneSet

            Okay !

            (https://www.raspberrypi-spy.co.uk/2013/07/how-to-use-a-mcp23017-i2c-port-expander-with-the-raspberry-pi-part-1/)

            I have been detect the chip :

            pi@raspberrypi ~ $ sudo i2cdetect -y 0
            0 1 2 3 4 5 6 7 8 9 a b c d e f
            00: -- -- -- -- -- -- -- -- -- -- -- -- --
            10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
            20: 20 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
            30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
            40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
            50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
            60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
            70: -- -- -- -- -- -- -- --

            (Instead the led, i have button)

            Best regards,
            http://stoneset.github.io

            rbakerR 2 Replies Last reply Reply Quote 0
            • rbakerR
              rbaker @StoneSet
              last edited by

              @stoneset said in MCP23017 and Retropie, some problem appears:

              (Instead the led, i have button)

              Well an LED is an output device! Replacing it with a button if you have built the example on the breadboard you linked could be a bad idea. I know the pins are bi-directional on that device but still, the software should be using I2C - is this something that you know is configured correctly? Have you built retropie from scratch or are you using the official image? I think you might need to enter the Pi configuration settings to enable I2C but this may be a raspi config setting only as opposed to a retropie thing. Also, the breadboard layout could be wrong in the graphic. Normally, you need to bridge the power rails at half way - see the actual photo - did you do this? This is a common mistake.

              1 Reply Last reply Reply Quote 0
              • rbakerR
                rbaker @StoneSet
                last edited by rbaker

                @stoneset Did you replace the 330 resistors with 10k? for your switches? The LEDs are being "driven". If switches are to be placed there as a direct replacement, they will not work. This is because the pins of the chip will be floating when the switch is not pressed. They need holding high.

                1 Reply Last reply Reply Quote 0
                • S
                  StoneSet
                  last edited by StoneSet

                  No, i forget to replace the 330 ohm resistor

                  But, i see the chip when i do "sudo i2cdetect -y 0".

                  The problem, isn't hardware, but software

                  They are another library for the mcp23017, and retropie ?

                  Best regards,
                  http://stoneset.github.io

                  mituM rbakerR 2 Replies Last reply Reply Quote 0
                  • mituM
                    mitu Global Moderator @StoneSet
                    last edited by

                    @stoneset said in MCP23017 and Retropie, some problem appears:

                    They are another library for the mcp23017, and retropie ?

                    RetroPie is not an OS, but just uses Raspbian Lite underneath, so any library geared for Raspbian should work on a RetroPie image.

                    1 Reply Last reply Reply Quote 0
                    • S
                      StoneSet
                      last edited by

                      Okay !

                      But how can I link the gpio controller to retropie ?
                      With a command ?

                      Best regards,
                      http://stoneset.github.io

                      mituM rbakerR 2 Replies Last reply Reply Quote 0
                      • mituM
                        mitu Global Moderator @StoneSet
                        last edited by

                        @stoneset You'll need a driver - seems you have picked mk_arcade_joystick_rpi - to make your GPIO input appear as a joystick/gamepad, after that you just configure the gamepad in Emulationstation and then use it in your games.

                        1 Reply Last reply Reply Quote 0
                        • S
                          StoneSet
                          last edited by StoneSet

                          But I can't install mk_arcade_joystick_rpi

                          As i say early, i have 404 errors with the script:

                          wget https://github.com/recalbox/mk_arcade_joystick_rpi/releases/download/v0.1.4/install.sh

                          Best regards,
                          http://stoneset.github.io

                          1 Reply Last reply Reply Quote 0
                          • rbakerR
                            rbaker @StoneSet
                            last edited by

                            @stoneset said in MCP23017 and Retropie, some problem appears:

                            The problem, isn't hardware

                            It could be. Unless you have a full circuit diagram of your design, it's not going to be possible to check for sure.

                            1 Reply Last reply Reply Quote 0
                            • rbakerR
                              rbaker @StoneSet
                              last edited by

                              @stoneset Also is your Reset pin definitely high? Remember "Not RST" means low to reset - active low. Must be held high to run.

                              1 Reply Last reply Reply Quote 0
                              • S
                                StoneSet
                                last edited by StoneSet

                                At this time, i don't have a full circuit diagram

                                Here is the log when i try to run the script :
                                https://pastebin.com/zZRM4ZmS

                                And the reset pin is connected to 3.3V

                                Best regards,
                                http://stoneset.github.io

                                mituM 1 Reply Last reply Reply Quote 0
                                • mituM
                                  mitu Global Moderator @StoneSet
                                  last edited by

                                  @stoneset said in MCP23017 and Retropie, some problem appears:

                                  Here is the log when i try to run the script :

                                  Just use the manual installation method from the github project page. The automated script tries to install something that's no longer available to download - there's nothing to fix that.

                                  1 Reply Last reply Reply Quote 0
                                  • simonsterS
                                    simonster
                                    last edited by simonster

                                    Hi @StoneSet

                                    Contary to @mitu's suggestion, I wouldn't follow the manual install. If you have already followed the manual install, you will probably now have overwritten your gcc with an old version after the first instruction, which may cause problems. You may need to update gcc back to the current build first.

                                    I would suggest installing using the mk_arcade_joystick in the retropie_setup script (this will do all that the install.sh would have done). Then following the instructions on the github page from More Joysticks Case downwards.

                                    Si

                                    mituM 1 Reply Last reply Reply Quote 1
                                    • mituM
                                      mitu Global Moderator @simonster
                                      last edited by

                                      @simonster is right - the mk_arcade_joystick driver is already included in the RetroPie-Setup script, in the driver section. So you just need to install it from setup script and continue on.

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        StoneSet
                                        last edited by

                                        @mitu said in MCP23017 and Retropie, some problem appears:

                                        mk_arcade_joystick

                                        Hi thanks for your reply,
                                        I installed the driver with the script, but when I run :
                                        sudo modprobe mk_arcade_joystick_rpi map=1,0x20
                                        The module was not found....

                                        Do you have any suggestion ?

                                        Best regards,

                                        when I run : dpkg-query -l
                                        I get :
                                        ii mk-arcade-joystick-rpi-dkms 0.1.4 all mk_arcade_joystick_rpi driver in DKMS format.

                                        I also try : mk-arcade-joystick-rpi-dkms
                                        mkarcadejoystick

                                        Best regards,
                                        http://stoneset.github.io

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          StoneSet
                                          last edited by

                                          I also get this erros when i try to run :
                                          sudo dpkg -i mk-arcade-joystick-rpi-0.1.4.deb

                                          (Reading database ... 89823 files and directories currently installed.)
                                          Preparing to unpack mk-arcade-joystick-rpi-0.1.4.deb ...


                                          Deleting module version: 0.1.4
                                          completely from the DKMS tree.

                                          Done.
                                          Unpacking mk-arcade-joystick-rpi-dkms (0.1.4) over (0.1.4) ...
                                          Setting up mk-arcade-joystick-rpi-dkms (0.1.4) ...
                                          Loading new mk_arcade_joystick_rpi-0.1.4 DKMS files...
                                          First Installation: checking all kernels...
                                          dpkg: warning: version '-' has bad syntax: version number does not start with digit
                                          It is likely that 4.9.77+ belongs to a chroot's host
                                          Building for architecture armv6l
                                          Module build for the currently running kernel was skipped since the
                                          kernel source for this kernel does not seem to be installed.

                                          Best regards,
                                          http://stoneset.github.io

                                          mituM 1 Reply Last reply Reply Quote 0
                                          • mituM
                                            mitu Global Moderator @StoneSet
                                            last edited by

                                            @stoneset Are you using Berryboot or the RetroPie image ? How was your system installed ?

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

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.