Aktionen

RetroPi: Emulationstation mit mehreren Controllern und Tastatur bedienen

Aus znilwiki

An meinem RetroPi habe ich

  • Funk Tastatur + Maus von Logitech
  • 2 identische USB-Gamepad
  • 1 Competition Pro Extra Joystick
  • Funk-Fernbedienung (insbesondere für Kodi)


In Kodi kann ich Tastatur, Maus und die Funkfernbedienung gleichwertig nutzen, auch die Gamepads lassen sich per AddOn einrichten und gleichzeitig(!) nutzen.
In der Emuationstation funktioniert nur der erste Controller. Ich würde dort aber auch gern die Fernbedienung nutzen können.

Verantwortlich für die Emulationstation ist die folgende Konfigurationsdatei:

nano /opt/retropie/configs/all/emulationstation/es_input.cfg

In dieser muss es pro Controller einen Abschnitt geben.
Original sah es bei mir so aus (nur ein Gamepad):

<?xml version="1.0"?>
<inputList>
  <inputAction type="onfinish">
    <command>/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh</command>
  </inputAction>
  <inputConfig type="joystick" deviceName="DragonRise Inc.   Generic   USB  Joystick  " deviceGUID="03000000790000000600000010010000">
    <input name="pageup" type="button" id="4" value="1"/>
    <input name="start" type="button" id="9" value="1"/>
    <input name="down" type="axis" id="1" value="1"/>
    <input name="pagedown" type="button" id="5" value="1"/>
    <input name="right" type="axis" id="0" value="1"/>
    <input name="select" type="button" id="8" value="1"/>
    <input name="left" type="axis" id="0" value="-1"/>
    <input name="up" type="axis" id="1" value="-1"/>
    <input name="a" type="button" id="1" value="1"/>
    <input name="b" type="button" id="2" value="1"/>
    <input name="x" type="button" id="0" value="1"/>
    <input name="y" type="button" id="3" value="1"/>
  </inputConfig>
</inputList>

Pro deviceName muss es eine Datei unter

/opt/retropie/configs/all/retroarch-joypads/

geben. Diese Dateien werden in der Regel durch den Konfigurationsdialog im Emulationstation-Menü erstellt.
Das Menü erreicht Ihr über

Start -> Configure Input

und entspricht dem Menü welches es schon beim allerersten Start gab.
Das arbeitet Ihr mit jedem Controller, Joystick oder auch der Tastatur durch.
Danach sah die Datei

cat /opt/retropie/configs/all/emulationstation/es_input.cfg

wie folgt aus:

<?xml version="1.0"?>
<inputList>
  <inputAction type="onfinish">
    <command>/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh</command>
  </inputAction>
  <inputConfig type="joystick" deviceName="DragonRise Inc.   Generic   USB  Joystick  " deviceGUID="03000000790000000600000010010000">
    <input name="pageup" type="button" id="4" value="1"/>
    <input name="start" type="button" id="9" value="1"/>
    <input name="down" type="axis" id="1" value="1"/>
    <input name="pagedown" type="button" id="5" value="1"/>
    <input name="right" type="axis" id="0" value="1"/>
    <input name="select" type="button" id="8" value="1"/>
    <input name="left" type="axis" id="0" value="-1"/>
    <input name="up" type="axis" id="1" value="-1"/>
    <input name="a" type="button" id="1" value="1"/>
    <input name="b" type="button" id="2" value="1"/>
    <input name="x" type="button" id="0" value="1"/>
    <input name="y" type="button" id="3" value="1"/>
  </inputConfig>
  <inputConfig type="joystick" deviceName="SPEEDLINK COMPETITION PRO Game Controller for Android " deviceGUID="03000000790000001c18000011010000">
    <input name="start" type="button" id="1" value="1"/>
    <input name="down" type="axis" id="1" value="1"/>
    <input name="right" type="axis" id="0" value="1"/>
    <input name="select" type="button" id="4" value="1"/>
    <input name="left" type="axis" id="0" value="-1"/>
    <input name="up" type="axis" id="1" value="-1"/>
    <input name="a" type="button" id="3" value="1"/>
    <input name="b" type="button" id="0" value="1"/>
  </inputConfig>
  <inputConfig type="keyboard" deviceName="Keyboard" deviceGUID="-1">
    <input name="start" type="key" id="1073741952" value="1"/>
    <input name="down" type="key" id="1073741905" value="1"/>
    <input name="right" type="key" id="1073741903" value="1"/>
    <input name="select" type="key" id="1073741953" value="1"/>
    <input name="left" type="key" id="1073741904" value="1"/>
    <input name="up" type="key" id="1073741906" value="1"/>
    <input name="a" type="key" id="13" value="1"/>
    <input name="b" type="key" id="27" value="1"/>
    <input name="x" type="key" id="1073741925" value="1"/>
    <input name="y" type="key" id="1073742093" value="1"/>
  </inputConfig>
</inputList>

und ich konnte alle Gamepads, den Joystick, meine Fernbedienung und die Tatstatur nutzen.

  • Da 2 der Gamepads identisch sind teilen diese sich einen Eintrag (beide gleich konfiguriert)
  • Fernbedienung und Tastatur teilen sich ebenfalls einen Eintrag da die Fernbedienung eine Tastatur emuliert.





Kommentar hinzufügen
znilwiki freut sich über alle Kommentare. Sofern du nicht anonym bleiben möchtest, trage deinen Namen oder deine Email-Adresse ein oder melde dich an. Du kannst das Feld auch einfach leer lassen.