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

    Generic USB Arcade Controls with SNES + PSX?

    Scheduled Pinned Locked Moved Help and Support
    arcade controls
    18 Posts 2 Posters 1.6k 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.
    • mituM
      mitu Global Moderator
      last edited by

      @csetera said in Generic USB Arcade Controls with SNES + PSX?:

      In both cases, it is as if the joystick is not "seen" at all. If I go into RGUI, I can see that the USB controller is recognized, but I'm guessing something needs to be done configuration wise. All my navigation within RGUI has to be done via keyboard.

      Is the gamepad is configured for RetroArch ? When you configure your gamepad in EmulationStation, it should generate an configuration file for RetroArch, so the gamepad is recognized and configured when you start a libretro core. When you start RetroArch (through the snes/psx emulator cores), do you get a message that the controller is not-configured ?

      Add more info about your system, as detailed in https://retropie.org.uk/forum/topic/3/read-this-first.

      C 1 Reply Last reply Reply Quote 0
      • C
        csetera
        last edited by

        Thanks for responding. I will pull together the relevant information tonight.

        1 Reply Last reply Reply Quote 0
        • C
          csetera @mitu
          last edited by csetera

          @mitu I do see that both controllers are configured when starting a game. The read-this-first information:

          Pi Model or other hardware: Pi 4B - 4G RAN
          Power Supply used: Vilros Raspberry Pi 4 Compatible Power Supply with on/off switch
          RetroPie Version Used 4.6.1 - Latest updates
          Built From: Retropie Image for 4.6.0 (before initial release)
          USB Devices connected:

          • 046d:c21f Logitech, Inc. F710 Wireless Gamepad [XInput Mode]
          • 0079:0006 DragonRise Inc. PC TWIN SHOCK Gamepad

          Controller used: Attempting to use Arcade controls attached to DragonRise adapter
          Error messages received: N/A
          Log found in /dev/shm/runcommand.log (if relevant): https://pastebin.com/8YfWzkPn
          Guide used: N/A
          File: N/A
          Emulator: lr-pcsx_rearmed & lr-snes9x2010
          Attachment of config files: N/A - Specific configuration files available as it makes sense
          How to replicate the problem: Attempt to run emulated game with arcade controllers

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

            I see the gamepad(s) are detected

            
            [WARN] [udev]: Couldn't open any keyboard, mouse or touchpad. Are permissions set correctly for /dev/input/event*?
            [INFO] [udev]: Plugged pad: DragonRise Inc.   Generic   USB  Joystick   (121:6) on port #0.
            [INFO] [udev]: Pad #0 (/dev/input/event0) supports 0 force feedback effects.
            [INFO] [udev]: Plugged pad: Logitech Gamepad F710 (1133:49695) on port #1.
            [INFO] [udev]: Pad #1 (/dev/input/event1) supports force feedback.
            [INFO] [udev]: Pad #1 (/dev/input/event1) supports 16 force feedback effects.
            

            but I don't see loading of any auto-configuration profile for them.

            When you configure the gamepad in EmulationStation, a RetroArch auto-configuration profile is created for it in \\retropie\configs\all\retroarch-joypads. Can you check to see if you have those entries there ?

            1 Reply Last reply Reply Quote 0
            • C
              csetera
              last edited by

              Here's what I'm seeing:

              pi@retropie:/opt/retropie/configs/all/retroarch-joypads $ ls
              'DragonRise Inc.   Generic   USB  Joystick  .cfg'      'Logitech Gamepad F710.cfg'
              'DragonRise Inc.   Generic   USB  Joystick  .cfg.bak'  'Logitech Gamepad F710.cfg.bak'
              pi@retropie:/opt/retropie/configs/all/retroarch-joypads $ cat DragonRise\ Inc.\ \ \ Generic\ \ \ USB\ \ Joystick\ \ .cfg
              input_device = "DragonRise Inc.   Generic   USB  Joystick  "
              input_driver = "udev"
              input_enable_hotkey_btn = "6"
              input_l_btn = "2"
              input_load_state_btn = "2"
              input_select_btn = "6"
              input_r2_btn = "9"
              input_l_y_plus_axis = "+1"
              input_l_x_plus_axis = "+0"
              input_l2_btn = "8"
              input_l_x_minus_axis = "-0"
              input_r_btn = "5"
              input_save_state_btn = "5"
              input_l_y_minus_axis = "-1"
              input_y_btn = "1"
              input_x_btn = "0"
              input_menu_toggle_btn = "0"
              input_start_btn = "7"
              input_exit_emulator_btn = "7"
              input_b_btn = "4"
              input_reset_btn = "4"
              input_a_btn = "3"
              
              1 Reply Last reply Reply Quote 0
              • mituM
                mitu Global Moderator
                last edited by

                Here's what I'm seeing: [..]

                This looks ok - if you have the DragonRise .. controller as P1 - you can check in the RGUI - then it should work.
                If you wish to use another controller as P1, you'll have to go into the RGUI and change the controls and choose in the Port 1 Binds the Logitech Gamepad as the device, then save the a remap file for the core (so all games for this system would use the Logitech as P1).

                C 1 Reply Last reply Reply Quote 0
                • C
                  csetera @mitu
                  last edited by

                  @mitu What I'm seeing is that the buttons on the Dragonrise are properly recognized, but the joystick is not. Is it possible to use a digital joystick with SNES and PSX emulators or will that not work? I could switch to the Logitech device for those emulators per your suggestion, but would prefer to be able to use the arcade joystick if possible.

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

                    Have you tried setting the Analog to Digital Type for the P1 controls ?

                    341a1afc-bfb7-450a-b25a-b80868cb57e3-image.png

                    C 1 Reply Last reply Reply Quote 0
                    • C
                      csetera @mitu
                      last edited by

                      @mitu Does that work for Digital -> Analog? I saw that option, but it looked like it was the reverse of what I needed.

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

                        @csetera No, it's actually exactly what you're trying to do - map an Analog controller to the RetroPad's D-Pad.

                        C 1 Reply Last reply Reply Quote 0
                        • C
                          csetera @mitu
                          last edited by

                          @mitu Is there a configuration key/value that I can set in

                          ./configs/snes/retroarch.cfg
                          
                          

                          to set that value properly? Does setting the value in RGUI set it at the emulator level or the game level?

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

                            @csetera As said before - you can change the settings from the RGUI, then save a core or game remap from the RGUI. This will save the .rmp configuration file to the configuration folder of the system you're configuring.
                            The configuration option is named input_player1_analog_dpad_mode (for P1), if you wish to add it to the retroarch.cfg, you can add a line with

                            input_player1_analog_dpad_mode=1
                            
                            C 1 Reply Last reply Reply Quote 0
                            • C
                              csetera @mitu
                              last edited by

                              @mitu said in Generic USB Arcade Controls with SNES + PSX?:

                              input_player1_analog_dpad_mode

                              I must be doing something wrong, but not sure what it would be. I updated the retroarch.cfg:

                              pi@retropie:~ $ cat /opt/retropie/configs/snes/retroarch.cfg
                              # Settings made here will only override settings in the global retroarch.cfg if placed above the #include line
                              
                              input_player1_analog_dpad_mode=1
                              input_remapping_directory = "/opt/retropie/configs/snes/"
                              
                              #include "/opt/retropie/configs/all/retroarch.cfg"
                              

                              Unfortunately, the joystick still didn't want to work. I see that config being read in the runcommand.log (pasted here: https://pastebin.com/B1Fj3kM5)

                              Thanks again for helping me out with this. I'm sure I'm missing something stupid.
                              Craig

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

                                It depends on how you mapped your joystick. Can you post your controller .cfgfile, from \\retropie\configs\all\retroarch-joypads ?

                                Do you have any game/core overrides present ? Have you tried changing the option from the RGUI ?

                                1 Reply Last reply Reply Quote 0
                                • C
                                  csetera
                                  last edited by

                                  Success!

                                  I'm not sure what I was doing wrong the first time I tried, but I was just able to get this working via RGUI for a PSX game. Do changes in one game via RGUI apply to all games for that core or does it need to be done for every game individually? Where do the values set in RGUI get stored?

                                  I just began the disassembly of my bartop build (long story), so I won't be able to do much with this until I get it put back together again. I really appreciate all of your help!

                                  Craig

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

                                    @csetera said in Generic USB Arcade Controls with SNES + PSX?:

                                    Do changes in one game via RGUI apply to all games for that core or does it need to be done for every game individually?

                                    Changes in the RGUI don't save by default, you'll need to save them somehow. In your case, as I said before, save a Core/Game remap and the configuration will be applied accordingly.

                                    Where do the values set in RGUI get stored?

                                    Remaps are saved in /opt/retropie/configs/<system>/<core name>.

                                    C 1 Reply Last reply Reply Quote 0
                                    • C
                                      csetera @mitu
                                      last edited by

                                      @mitu Thanks again for all of your help. After doing the single game remap, I took a look at the generated remap file. In there I found:

                                      input_player1_analog_dpad_mode = "1"
                                      

                                      On a whim, I tried that in the retroarch.cfg files for SNES and PSX and it worked. It appears that the value needed to be quoted and that you were otherwise correct. I'm glad to be able to set that at the core level and have it apply.

                                      Thanks again,
                                      Craig

                                      1 Reply Last reply Reply Quote 1
                                      • 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.