Giter Club home page Giter Club logo

retropie-joystick-selection's Introduction

RetroPie-joystick-selection

A script to let the user choose the controllers to use for RetroArch players 1-4. It shows several user-friendly dialog boxes to perform this task. You can set the global and/or the system specific configuration.

The joystick selection has two methods of work:

  1. The traditional joystick selection by its index number
  2. The new joystick selection by name method

The advantage of the selection by name method is that there is no need to care about the joystick connection order. You can configure your "Generic USB SNES gamepad" to be the player1 no matter what USB port you use. Or, better yet, configure your "Fancy Bluetooth joypad" to be the player1 no matter what was the order it was paired or how many USB joysticks are connected.

It was made for use with RetroPie only.

Installation

[30-June-2017] The installation procedure has changed (again)!

Some people were having issues with the previous installation procedure, then I changed it to simplify things.

  1. If you're on EmulationStation, press F4 to go to the Command Line Interface.

  2. Download the install.sh script, and launch it:

curl https://raw.githubusercontent.com/meleu/RetroPie-joystick-selection/master/install.sh -o install.sh
bash install.sh
  1. The script will automatically download the joystick-selection scriptmodule and install everything you need. After installation you can safely delete the install.sh file:
rm install.sh
  1. After that you are ready to use it via RetroPie menu in emulationstation:
emulationstation

Update

After installing, you can update it through RetroPie-Setup.

To update the joystick-selection tool, go to RetroPie-Setup and:

Manage packages >> Manage experimental packages >> joystick-selection >> Update from source

Donate

If you would like to buy me a beer and say thanks, click the button below.

paypal

Screenshots

Main menu:

main-meu

Global configuration (with no configs):

config-all-unset

Joystick selection screen:

joy-select

Global configuration (by index method, all 4 joysticks are set):

config-all-index

Global configuration (by name method, all 4 joysticks are set):

config-all-configured

Systems menu (I have just a few of them installed):

system-menu

System specific (by index method, some joysticks are set):

config-nes-index

System specific (by name method, some joysticks are set):

config-nes

Known Issues

  • If you are using joysticks with equal names, then, yes, the connection order matters.
  • [This issue doesn't happen if you use the joystick selection by name method] If the joystick list order changes (adding/removing devices), your configuration changes too. So you have to run joystick_selection.sh again.
  • [This is RetroArch issue. It doesn't happen because of the joystick selection tool] Due to the dynamic nature of bluetooth connections, if you configure a bluetooth joystick as Player 1, and somehow lose the connection during a game, if you don't have a keyboard plugged in it'll be annoying to exit RetroArch (connect to RetroPie via ssh and kill RetroArch process. If your raspi isn't on the LAN, :( I think you'll have to unplug your power supply.).

retropie-joystick-selection's People

Contributors

meleu avatar tootallnate avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.