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.
    • 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.