Erstellt: 13. November 2016

RetroPie (V4.0.2): Controller einrichten

Raspberri Pi
RetroPie: Controller über RGUI einrichten

Dieser Text wurde archiviert! Eine Liste aller archivierten Texte findet ihr unter „RetroPie: Einrichtung für ältere Images“.

Eine Übersicht der aktuellen Beiträge gibt es unter „RetroPie: Raspberry Pi als Emulator“.


Wie im vorherigen Beitrag „RetroPie: EmulationStation 2 einrichten“ erwähnt, könnt ihr Controller sehr einfach über die EmulationStation für RetroArch konfigurieren. Aber spätestens, wenn ihr für Multiplayerspiele mehr als einen Controller benötigt, müsst ihr doch noch selbst tätig werden. Außerdem wird es euch evtl. interessieren, wie ihr über den Controller den Emulator beendet, eine Pause einlegt, das Menü öffnet oder Snapshots speichern und laden könnt.

Falls ihr eins der vorherigen Images installieren möchtet, findet ihr die archivierten Beiträge unter „RetroPie: Einrichtung für ältere Images“.


Die Ausgangsbasis ist das RetroPie-Image 4.0.2

Als nächstes wollen wir nun den Controller konfigurieren…
Möchtet ihr ein Pad per Bluetooth anschließen (z. B. den der Playstation 3, ein FC30– bzw. NES30-Pad oder eine WiiMote), dann richtet diesen bitte vorher unbedingt, wie unter „RetroPie: Bluetooth-Controller“ beschrieben, ein!

Joystick / Gamepad einrichten

Wollt ihr nur einen Controller, so wie meinen Speedlink Competition Pro USB, einrichten, dann habt ihr die Möglichkeit, dies über die EmulationStation machen.

Wie im vorherigen Beitrag bereits erwähnt, könnt ihr einen Controller jetzt direkt über die EmulationStation für Libretro / RetroArch einrichten. Seit dem Image 4.0 werden auch die Einstellungen für mupen64plus, pifba, pisnes und Reincast automatisch über die EmulationStation vorgenommen.

So löblich diese Möglichkeit auch ist, sie geht leider an der Praxis vorbei! Die Einrichtung müsste differenzierter und vorallem für mehrere Controller (Multiplayer) möglich sein. Daher rate ich aktuell weiterhin dazu, die Controller manuell einzurichten.

Ihr solltet trotzdem einmal diesen Weg gehen, öffnet also mit eurer Start-Taste das MAIN MENU.

Einen Controller einrichten.
Einen Controller einrichten.

Wählt CONFIGURE INPUT aus, haltet dann eine Taste am Controller gedrückt…
…und drückt die jeweils abgefragten Tasten.
Falls ihr eine Funktion nicht zuweisen wollt oder könnt, weil der Controller diese evtl. nicht zur Verfügung stellt, könnt ihr durchs Halten einer Taste für ca. 1 Sekunde den Punkt überspringen. Sollte die Tastatur bereits eingerichtet sein, könnt ihr mit den Cursor-Tasten auch einfach weiterblättern oder zur Korrektur zurückgehen.

Leider unterstützt euch diese Funktionen nur bei der Einrichtung für einen RetroArch Spieler!

 

Exkurs: Was ist denn das bereits mehrfach erwähnte „RetroArch“ schon wieder?
Meistens „rede“ ich hier nur von RetroPie und EmulationStation, aber die eigentliche Arbeit verrichtet zum größten Teil RetroArch oder um noch genauer zu sein Libretro. Unser Emulatorsystem ist hirachisch (von unten nach oben) wie folgt aufgebaut:

  1. Libretro: Dies stellt die unterste Ebene dar. Es ist eine in C/C++ geschriebene API, die die Schnittstelle zur vorliegenden Hardware herstellt. Dabei gibt es nicht nur die hier von uns verwendete Raspberry Pi Version, sondern auch Fassung für Android, iOS, Windows, XBox360, Wii, …

  2. Emulatoren / Apps: Angepasste Programme greifen auf Libretro zu und versorgen uns so mit sehr vielen Emulatoren.

  3. RetroArch: Dies setzt auf Libretro auf und ist dessen gängige grafische Bedienoberfläche. Hierüber können bequem Einstellungen für Libretro und die Apps vorgenommen werden. Ihr könnt diese Oberfläche auch am Pi aus den zu RetroArch gehörenden Emulatoren aufrufen.

    Die RetroArch-Oberfläche (RGUI)
    Die RetroArch-Oberfläche (RGUI)
  1. EmulationStation: Die EmulationStation stellt eine einheitliche Oberfläche für die verschiedenen Systeme zur Verfügung. Sie fasst RetroArch / Libretro und andere, dort nicht enthaltene, Emulatoren zusammen (z. B. VICE oder ScummVM). Aus der Sicht der EmulationStation ist RetroArch also „nur“ ein weiterer Emulator.

  2. RetroPie: Alle oben erwähnten Einzelteile bringt RetroPie nun unter einen Hut und bietet so ein rundum sorglos Paket. Hervorzuheben ist hier natürlich das SD-Karten-Image, womit jeder sehr einfach seinen Raspberry Pi zur Emulatorzentrale machen kann.


Achtung: Die Joystick-Einrichtung, über das Setup-Script, wurde ab dem Image 3.3 entfernt!!!
Damit bleibt euch jetzt nur noch die Einrichtung über die RGUI oder ihr tippt die Werte manuell in die retroarch.cfg.

 

Es gibt übrigens keinen Zwang, was die Belegung der Tasten angeht, ich würde aber empfehlen, dass ihr euch, so weit es möglich ist, am XBox 360-Pad oder dem Controller der Playstation orientiert. Von den „RetroPie-Machern“ wird übrigens diese Belegung empfohlen:

(Bild-Quelle: GitHub / RetroPie)
(Bild-Quelle: GitHub / RetroPie)

Controller-Einstellungen, die über die EmulationStation vorgenommenen werden, findet ihr im Verzeichnis /opt/retropie/configs/all/retroarch-joypads.
RetroPieV30_026b

Hinweis: Verwendet ihr nur einen nicht RetroArch-Emulator (z. B. VICE), dann könntet ihr auf die eben gezeigte Konfiguration eigentlich verzichten, ich rate aber trotzdem dazu. Die „Einzel“-Emulatoren bringen nämlich jeweils ihre eigenen Treiber mit und werden ggf. über das entsprechende Menü oder eigene Konfigurationsdateien aktiviert und eingestellt.

Werfen wir doch mal einen Blick auf den VICE-Emulator (Achtung: Seit dem Image 4.0 müsst ihr diesen erst nachinstallieren!), der nicht zu RetroArch gehört. Zum C64 passt natürlich der Competition Pro am besten, daher verwende ich dafür einfach mal einen Speedlink Competition Pro USB.
Startet ihr z. B. das Spiel Nebulus mit VICE, dann werdet ihr merken, dass euer Controller / Joystick nicht funktioniert. Öffnet mit <F12> das Menü und folgt den Schritten auf den Bildern…

Bei VICE den Joystick aktivieren.
Bei VICE den Joystick aktivieren.

Verlasst zum Schluß das Menü und schon könnt ihr euren Joystick / Controller verwenden.

Nebulus
Nebulus

Benutzt ihr einen Controller mit mehr als einem Feuerknopf, wie z. B. das XBox 360 Pad oder auch den eben erwähnten Speedlink, dann kommt ihr mit dem B-Knopf übrigens auch ins Menü.

Dies war jetzt nur ein kleines Beispiel, wie ein eigenständiger Emulator mit den Controllern umgeht. Für die anderen Emulatoren müsst ihr ggf. mal in die mitgelieferte Dokumentation schauen.

 

Joysticks / Pads für bis zu 16 Spieler über die RGUI einrichten
Wollt ihr nur alleine spielen, dann sollten die oben gemachten Einstellungen schon reichen. Möchtet ihr aber mit mehreren Spielern gleichzeitig daddeln oder über den Controller weitere Sonderfunktionen auslösen, dann können wir dies, seit dem Image 3.3, am einfachsten über die Libretro / RetroArch-Oberfläche (RGUI) machen.

Seit RetroArch 1.1 werden übrigens bis zu 16 Spieler unterstützt. Ob tatsächlich alle möglich sind, hängt dann natürlich vom jeweiligen Emulator und dem Spiel ab!

Ich zeige hier mal, wie man zwei verschiedene Eingabegeräte (XBox360-Pad & Speedlink Competition Pro USB) für Spieler 1 & 2 über die RGUI (das steht übrigens für RetroArch Graphical User Interface) einrichten kann.

Wichtig ist nun, dass alle Controller am Pi angeschlossen sind und ihr die Tastatur über die EmulationStation eingerichtet habt!

Geht dann in der EmulationStation zum RetroPie-Bereich…

RetroPie-Einstellungen über die EmulationStation
RetroPie-Einstellungen über die EmulationStation

… und wählt dort RETROARCH aus.

RETROARCH
RETROARCH

Daraufhin öffnet sich die RetroArch-Oberfläche RGUI:

Das RetroArch-Menü (RGUI)
Das RetroArch-Menü (RGUI)

Hier könnt ihr euch mit der Tastatur oder später einem Joystick / Pad bewegen.

Als Erstes sollten wir kontrollieren, ob das Speichern beim Beenden aktiv ist.

Ihr bewegt euch in der RGUI übrigens mit den Tasten, die ihr in der EmulationStation festgelegt habt. Mit den D-Pad-Tasten (bei der Tastatur habt ihr wohl die Cursor-Tasten genommen) bewegt ihr euch, wie gewohnt. Zur Auswahl dient die vor euch vergebene A-Taste und um einen Schritt zurück zugehen, nehmt ihr eure B-Taste.

Folgt jetzt einfach den Schritten auf den Bildern…

Settings
Settings
Configuration
Configuration

 

ACHTUNG:
Eventuell erscheint bei euch statt dem obigen Menü, das folgende:

Falsches Menü!?!
Falsches Menü!?!

Hier scheinen zwei Tastenklicks erkannt zu werden. Falls euch dies häufiger passiert, geht einfach mit der B-Taste einen Schritt zurück. Lasst Settings markiert und drückt eure SELECT-Taste, es erscheint folgender Hinweis:

Die Meldung mit A bestätigen.
Die Meldung mit A bestätigen.

Bestätigt die Meldung einfach mit eurer A-Taste und ihr landet im gewünschten Menü.

Configuration
Configuration

Benutzt ihr später einen Controller im RetroArch-Menü, dann kann es durchaus sein, dass sich dieses Fehlverhalten nicht mehr zeigt.

 

Save Configuration On Exit auf ON stellen!
Save Configuration On Exit auf ON stellen!

Stellt hier sicher, dass Save Configuration On Exit auf ON steht, erst dann werden eure Änderungen beim Verlassen gespeichert! Achtung: Save Configuration On Exit wird aktuell nicht mehr mitgespeichert, ihr müsst es also jedes Mal erneut einschalten.

Geht anschließend zurück ins Hauptmenü.

Wir richten nun aber endlich die Controller ein, folgt dazu wieder diesen Bildern…

Settings
Settings

Denkt an das oben erwähnte Problem!

Input
Input
Input User 1 Binds
Input User 1 Binds

Mit dem Punkt Input User 1 Binds definiert ihr die Tasten für den ersten Controller. Die folgenden Menüpunkte sind dann für den 2, 3 usw. Spieler / Controller. Verwendet ihr mehr als 5-Controller, dann könnt ihr mit dem obersten Punkt Max Users die Anzahl erhöhen oder auch verringern, wenn es gewünscht ist. Ich lasse den Wert aber unverändert.

Die Joystick-Einstellungen
Die Joystick-Einstellungen

Mit dem Punkt User 1 Device Type könnt ihr festlegen, ob der Controller Analog-Sticks besitzt, dies ist z. B. für die Playstation-Emulation interessant. Konfigurieren könnt ihr die Analog-Sticks aber immer.

User 1 Analog To Digital Type
User 1 Analog To Digital Type

Möchtet ihr, statt mit dem D-Pad, bei entsprechenden Spielen, lieber mit einem Analog-Stick steuern, dann könnt ihr dies unter User 1 Analog To Digital Type einstellen.

User 1 Device Index
User 1 Device Index

Nun ist es an der Zeit, den richtigen Controller auszuwählen. Unter dem Punkt User 1 Device Index könnt ihr alle angeschlossenen Joysticks durchschalten. Wählt hier den Controller für den 1. Spieler.

Wenn ihr euren Blick auf die untere Hälfte des Bildes richtet, dann seht ihr, dass dort evtl. schon Zuweisungen vergeben sind. Dies sind die Einstellungen aus der EmulationStation, z. B. für die Tastatur, die man ja auch für den ersten Spieler nehmen kann.

Ihr habt nun zwei Möglichkeiten. Ihr könnt alle Tasten am Stück zuweisen oder ihr geht auf die jeweilige Taste, drückt A und dann die entsprechende Pad-Funktion. Nehmt aber ruhig erstmal User 1 Bind All.

User 1 Bind All
User 1 Bind All

Jetzt werden nacheinander alle Tasten abgefragt. Falls eurem Controller eine Funktion fehlt, wartet einfach den Countdown ab, dann wird die Abfrage automatisch mit der nächsten Taste fortgesetzt.

Buttons zuweisen (zum Überspringen, einfach etwas warten)
Buttons zuweisen (zum Überspringen, einfach etwas warten)

Zum Schluß sollten eure Zuweisung ungefähr so aussehen…

Zugewiesene Pad-Buttons und Tastatureingaben
Zugewiesene Pad-Buttons und Tastatureingaben

Jetzt könnt ihr mit B einen Schritt zurück gehen und die ganze Prozedur nochmal für die weiteren Spieler wiederholen.

Input User 2 Binds
Input User 2 Binds

So sieht es z. B. nach der Einrichtung des Speedlink Competition Pro USB bei mir aus.

Der zweite Controller ist eingerichtet.
Der zweite Controller ist eingerichtet.

Geht jetzt mit der B-Taste zurück ins Hauptmenü und verlasst die RGUI, dabei werden eure Einstellungen automatisch gespeichert, da wir oben den entsprechenden Schalter aktiviert haben.

Quit RetroArch
Quit RetroArch

Sobald ihr wieder in der EmulationStation seid, könnt ihr ein Mehrspieler-Spiel starten. Spielt ihr nun z. B. eine Partie Mario Bros. auf dem NES, dann könnt ihr ab jetzt auch den 2-Spieler-Modus mit zwei Controllern zocken.

Mario Bros. im Menü der EmulationStation (hier mit Bild & Text)
Mario Bros. im Menü der EmulationStation (hier mit Bild & Text)
Der 2-Spielermodus mit zwei Controllern.
Der 2-Spielermodus mit zwei Controllern.

 

Sonderfunktionen festlegen
Wollt ihr möglichst auf die Tastatur verzichten, dann wäre es doch hilfreich, wenn ihr den Emulator auch über den Controller beenden könntet. Dies geht tatsächlich!

Mittlerweile werden die folgenden Einstellungen automatisch vorbelegt:

Wie euch in der Liste bestimmt auffällt, wird jede Aktion in Kombination mit eurer SELECT-Taste aufgerufen. Diese ist standardmäßig der sog. Hotkey. Durch diesen wird u. a. verhindert, dass ihr in der Hitze eines Bosskampfes, ausversehen eine „tödliche“ Funktion wie z. B. Verlassen des Emulators oder einen Reset auslöst. Außerdem erlaubt der Hotkey die Doppelbelegung der Tasten.

Möchtet ihr die Tasten ändern, dann geht das auch über die RGUI. Startet diese ggf. nochmal, wie oben beschrieben und folgt dann den Bildern… (Achtung: Schaltet vorher „Save Configuration on Exit“ wieder ein!)

Settings
Settings

Beachtet evtl. wieder das oben beschriebene Problem.

Input
Input
Input Hotkey Binds
Input Hotkey Binds

Hier findet ihr jetzt alle Funktionen, die ihr direkt (z. B. über den Controller) aufrufen könnt. Zum Ändern müsst ihr nur den entsprechenden Punkt mit eurer A-Taste auswählen und dann die Gewünschte Controllertaste drücken.

Hier ein Beispiel
Da ich beim XBox360-Controller gerne den GUIDE-Button also Hotkey haben möchte, gehe ich erstmal fast ans Ende der Liste

Den Hotkey ändern
Enable hotkey
GUIDE-Button drücken
GUIDE-Button drücken
Statt Auto: 6 steht da jetzt eine 8 für den GUIDE-Button.
Statt „Auto: 6“ steht da jetzt eine „8“ für den GUIDE-Button.

Außerdem möchte ich mit dem BACK-Button den Emulator verlassen und mit START das Menü öffnen. Dazu sind nur diese beiden Änderungen notwendig:

Button zum Verlassen festlegen
Button zum Verlassen festlegen
Neue Taste, um das Menü zu öffnen.
Neue Taste, um das Menü zu öffnen.

So könnt ihr jetzt alle Funktionen auf die von euch gewünschten Tasten legen.

Als Nächstes findet ihr noch den manuellen Weg, wie ihr die eben gesehenen Einstellungen von Hand in der retroarch.cfg vornehmt. Ich würde euch zwar nahelegen, diesen Abschnitt ebenfalls zu lesen, wer daran kein Interesse hat, sollte hier weitermachen.

Hotkeys manuell festlegen
Verlasst dazu mal wieder die EmulationStation und wechselt ggf. das Verzeichnis cd /opt/retropie/configs/all. Öffnet die Configdatei mit nano retroarch.cfg und fügt am Schluß die folgenden Zeilen ein.

Achtet dabei ganz genau auf die Schreibweise! Schon ein Verzicht auf die Leerzeichen vor oder hinter dem =, kann (wie ich leidvoll feststellen mußte) zu Problemen führen!!

Da man bestimmt nicht direkt aus dem Emulator fliegen möchte, nur weil man im Eifer des Gefechts versehentlich auf den falschen Knopf gekommen ist, sollten wir auch noch einen sog. Hotkey festlegen. Dadurch lassen sich diese Sonderfunktionen nur noch auslösen, wenn man den Hotkey zusammen mit der entsprechenden Taste drückt. Ich verwende hier die Tastennummern vom kabellosen XBox360 Controller, ihr könnt die von euch gewünschten / benötigten Nummern der Tasten aus der retroarch.cfg oder mit der RGUI heraussuchen.

Mein Hotkey ist die GUIDE-Taste:

Drücke ich dazu zusätzlich BACK, dann soll der Emulator verlassen werden.

Bei GUIDE + A möchte ich den Emulator pausieren.

Mit GUIDE + START möchte ich das RetroArch-Menü öffnen.

Verlasst nano mit <STRG> + <X>, antwortet auf die Frage, ob ihr speichern möchtet mit <Y>es und bestätigt abschließend den vorgeschlagenen Dateinamen mit <ENTER>.

Mit der Raute # könnt ihr Kommentare ins Script schreiben oder einen Schalter deaktivieren, indem ihr an die erste Stelle der Zeile eine Raute schreibt. Startet nun wieder ein Spielchen (es muss natürlich ein RetroArch-Emulator sein) und ihr könnt die eben zugewiesenen Tasten verwenden. Mit GUIDE + START erscheint z. B. das RetroArch-Menü.

Die RetroArch-Oberfläche (RGUI)
Die RetroArch-Oberfläche (RGUI)

Das waren jetzt nur vier Sonderfunktionen, es gibt aber noch einen ganzen Haufen mehr! Auch zusätzliche Einstellungen gibt es massenhaft. Ihr könnt z. B. übers Pad das Laden & Speichern von Snapshots oder die Aufnahme von Screenshots steuern.

Den aktuellen Emulatorstatus, könnt ihr nach hinzufügen der folgdenden Zeilen zur retroarch.cfg, mit L1 speichern und mit L2 laden (immer in Kombination mit dem Hotkey GUIDE).

Wenn ihr lieber mit einem der analogen Sticks, statt dem D-Pad, spielt, dann könnt ihr dies durch die Zeile

erreichen. Hier für den ersten Spieler 0 = keiner | 1 = linker | 2 = rechter Stick. Das D-Pad geht dann parallel immer noch.

Im folgenden Block findet ihr einen ganzen Haufen 😉 (oder so gar alle?) Schalter.

Wie ihr seht, gibt es nicht nur Controller-Einstellung in der retroarch.cfg. Alle Möglichkeiten zu erklären würde den Rahmen sprengen, ich überlasse es daher eurem Forscherdrang, den Schaltern auf den Grund zugehen.

Ihr könnt übrigens auch einige der Sondertasten direkt mit retroarch-joyconfig zuweisen! Dazu müsst ihr nur den Parameter -M für viele oder -m für wenige Sondertasten mit angeben, also z. B. sudo ./retroarch-joyconfig -o player1.cfg -p 1 -j 0 -t 5 -M. Wie oben angedeutet, gibt es retroarch-joyconfig ab dem Image 3.3 nicht mehr!

Ich habe vorhin erwähnt, dass die Werte aus der retroarch.cfg im Verzeichnis /opt/retropie/configs/all immer dann genommen werden, wenn für den jeweiligen Emulator keine eigenen Werte vorliegen. Ihr braucht nur mit cd .. aus dem all-Verzeichnis eine Ebene zurückgehen. Dort findet ihr dann unter /opt/retropie/configs eigene Unterordner für die unterschiedlichen RetroArch-Systeme.

In diesen Verzeichnisssen könnt ihr Einstellungen für den jeweiligen Emulator hinterlegen.
In diesen Verzeichnisssen könnt ihr Einstellungen für den jeweiligen Emulator hinterlegen.

Ihr könnt mittlerweile auf diese Ordner auch direkt übers Netzwerk zugreifen. Schaut einfach in das \\retropie\configs-Verzeichnis.

Auch übers Netzwerk habt ihr Zugriff auf den „configs“-Ordner
Auch übers Netzwerk habt ihr Zugriff auf den „configs“-Ordner

Möchtet ihr z. B. den NES-Emulator lieber mit GUIDE + Y verlassen, dann reicht es im nes-Verzeichnis in die dort befindliche retroarch.cfg die Zeile

aufzunehmen.

Beachtet dabei bitte den Hinweis am Anfang der Datei:

Die Übersteuerungen müssen also vor #include "/opt/retropie/configs/all/retroarch.cfg" stehen!

Sollte es keine retroarch.cfg geben, legt einfach eine an. Alle anderen Einstellungen kommen aus der retroarch.cfg im all-Verzeichnis, nur die Taste zum Verlassen wurde übersteuert.

Beim XBox-Pad das Blinken verhindern
Achtung: Seit dem Image 4.0 leuchtet bereits direkt nur noch die passende LED, es ist nicht mehr notwendig dies manuell zu ändern. Möchtet ihr trotzdem wissen, wie es gemacht wurde, findet ihr die Infos im archivierten Vorläufer, dieses Beitrages.

Geschafft, nur eine LED leuchtet.
Geschafft, nur eine LED leuchtet.

Jetzt müsst ihr noch, wie eingangs erwähnt, den Controller erneut konfigurieren. Richtet ihn nochmal in der EmulationStation ein und geht dann ggf. in die RGUI, um die Controller erneut für RetroArch zu konfigurieren.


Ich hoffe ihr konntet nun eure Controller einrichten und habt ein paar neue Anregungen, was sich alles einstellen läßt, bekommen.


Schrott!!Naja...Geht so...Ganz gut...SUPER! (2 Bewertungen | Ø 5,00 von 5 | 100,00%)

Loading...


 

<<< zurück | weiter >>>