Erstellt: 3. Mai 2015 (zuletzt geändert: 26. März 2017)

RetroPie (V4.2): WiiMote (Bluetooth)

Raspberri PiWiiMote einrichten inkl. Nunchuk oder mit dem Classic-Controller

Auch den Controller der Wii (die sog. WiiMote) könnt ihr mit RetroPie verwenden. An die WiiMote kann bekanntlich auch noch das Nunchuk oder der Classic-Controller angeschlossen werden, diese funktionieren dann ebenfalls am Raspberry Pi.

 

Ausgangsbasis ist das RetroPie-Image 4.2

 

WiiMote, Nunchuk und Classic-Controller
WiiMote, Nunchuk und Classic-Controller

Ich verwende die „einfache“ WiiMote und ausschließlich original Zubehör von Nintendo!

Falls noch nicht geschehen, richtet bitte erst mal euren Bluetooth-Adpater, wie unter „RetroPie: Bluetooth-Controller“ beschrieben ein.

 

WiiMote einrichten
Nach den eben erwähnten Vorbereitungen, sollte der Bluetooth-Adapter jetzt funktionieren und wir können mit der Einrichtung der WiiMote beginnen.

Ihr braucht nun eure WiiMote…

WiiMote_02

Als Erstes benötigen wir den Treiber für die WiiMote. Verlasst daher ggf. die EmulationStation und gebt bitte sudo apt-get install wminput ein, um die benötigten Programme zu installieren.

WiiMote-Treiber installieren
WiiMote-Treiber installieren

Wie ihr im Bild seht, werden neben wminput auch noch einige weitere benötigte Pakete installiert. Drückt einfach <ENTER>, um fortzufahren.

Nach der Installation (dauert nur einige Sekunden), müssen wir noch dafür sorgen, dass wir auch ohne Root-Rechte auf uinput zugreifen können. Legt daher mit nano eine neue Datei wiimote.rules an: sudo nano /etc/udev/rules.d/wiimote.rules. Fügt dort einfach die Zeile KERNEL=="uinput", MODE:="0666" ein und speichert eure Änderungen.

WiiMote_Setup_02Jetzt brauchen wir die MAC-Adresse der WiiMote. Um diese zu ermitteln, gebt einfach hcitool scan ein und drückt dann an der WiiMote die Buttons 1 und 2 gleichzeitig. Die LEDs an der Mote beginnen zu blinken und nach einigen Sekunden erhaltet ihr folgende Ausgabe:

Die MAC-Adresse
Die MAC-Adresse

Bei euch steht natürlich eine andere MAC-Adresse. Diese Nummer müsst ihr euch jetzt merken. Um den Treiber automatisch mit unserer WiiMote zu verbinden, editieren wir als nächstes die rc.local. Gebt dazu bitte sudo nano /etc/rc.local ein und ergänzt die Datei direkt vor dem exit 0 um sudo wminput -q -d -c retropiewii 00:19:1D:BC:71:19 &. Natürlich nehm ihr dort die von euch ermittelte MAC-Adresse. Vergesst nicht eure Änderungen zu speichern!

Den Treiber einbinden.

Jetzt brauchen wir noch die Configdatei retropiewii. In dieser könnt ihr hinterlegen, wie die Buttons, Achsen und Richtungstasten der Wii-Controller interpretiert werden sollen. Gebt dazu erst mal sudo nano /etc/cwiid/wminput/retropiewii ein. Übernehmt dann die folgenden Werte in diese Datei…

WiiMote_Setup_06

 

Speichert zum Schluß eure Eingaben. Damit die Änderungen greifen, startet den Pi jetzt per sudo reboot neu.

Einige Anmerkungen zur Configdatei retropiewii:
Damit der Treiber überhaupt einen Joystick ‚anmeldet‘ muss ABS_X zugewiesen worden sein! Ihr könnt den Achsen ein Minus - voranstellen, damit diese umgekehrt werden. Mit einer Tilde ~ könnt ihr absolute Achsen für die Maussteuerung verwenden. Der Treiber meldet eine Maus an, sobald ihr REL_X und REL_Y (oder die dazugehörigen absoluten Achsen mit ~), sowie BTN_LEFT zugewiesen habt. Ich habe oben auf die Lage- und Beschleunigungsensoren verzichtet. Über Plug-Ins könnt ihr aber auch diese verwenden. Ihr könnt sogar die Infrarot-Sensorleiste einsetzen. Werft einfach mal einen Blick in das Verzeichns /etc/cwiid/wminput, dort findet ihr (neben der von uns angelegten Datei retropiewii) noch weitere Configdateien. Ich habe mich allerdings nicht weiter mit der Sensorleitste beschäftigt. Wie ihr am Ende der Datei seht, könnt ihr auch die LEDs an- und abschalten.

Sobald ihr in der EmulationStation seid, drückt wieder gleichzeitig die Buttons 1 und 2 an der WiiMote. Die LEDs sollten anfangen zu blinken und zum Schluß leuchtet nur noch die 1. LED an der Mote.

WiiMote_04Jetzt ist die WiiMote einsatzbereit. Das Nunchuk bzw. den Classic-Controller könnt ihr nun auch einfach anschließen.

WiiMote_03

Ihr müsst die WiiMote abschließend nur noch für die EmulationStation und RetroArch einrichten.

Die WiiMote kann verwendet werden.
Die WiiMote kann verwendet werden.

Solltet ihr Probleme mit den in retropiewii zugewiesenen Werten haben, dann könnt ihr auch andere versuchen. Hier eine Liste, was ihr alles zuweisen könnt.

 

Zum Schluß noch eine Liste der zur Verfügung stehenden Buttons und Achsen…


Um weitere WiiMotes einzurichten, müsst ihr nur (wie oben gezeigt) die dazugehörigen MAC-Adressen ermitteln und dann für jeden Controller einen wminput-Aufruf in die /etc/rc.local aufnehmen.


Mehr fällt mir erst mal nicht ein, damit solltet ihr jetzt eigentlich eure WiiMotes inkl. Nunchuk bzw. Classic-Controller einrichten können.


Schrott!!Naja...Geht so...Ganz gut...SUPER! (16 Bewertungen | Ø 4,06 von 5 | 81,25%)

Loading...


 

<<< zurück |

50 Gedanken zu „RetroPie (V4.2): WiiMote (Bluetooth)“

  1. Hi ich habe die Retropie V.4.3 und ich bekomme bei dem letzten schritt vor dem Reboot wenn ich die Datei speichern möchte diese Fehlermeldung : Error writing /etc/cwiid/wminput/retropiewii: No surch file or Directory.

    könnt ihr mir sagen wo der fehler liegt?

  2. Kann mir jemand sagen, wozu ich die Datei /etc/cwiid/wminput/retropiewii brauche?

    Ich muss den Controller doch eh beim Start von EmulationStation konfigurieren.
    Oder habe ich was falsch gemacht?

    Vielen Dank.

    1. Die Datei legt fest, welchen Knopf der Treiber an das System senden soll, wenn an der WiiMote, dem Nunchuk oder Classic-Controller ein Knopf gedrückt wird. Anderenfalls würden die Emualtoren und die EmulationStation nichts bzw. nicht alle Eingaben „verstehen“. Falls es ohne geht, umso besser, dann hat sich wohl im Laufe der Zeit etwas am RetroPie geändert.
  3. Hi,
    Erstmal ein dickes Danke für die Erklärungen.
    Ich habe allerdings eine Frage/Problem. Vielleicht kann mir die Community ja weiterhelfen?!

    Ich möchte 2 WII U Pro Controller benutzen. Ich habe an meinem Pie beide Controller via Bluetooth verbunden und configuriert. Allerdings werden beide Controller als Master erkannt. Im Spiel selbst funktioniert nur ein Controller. Wie bekomme ich das konfiguriert, dass beide Controller benutzt werden können? Geht das überhaupt via Bluetooth? Im Bluetooth Menü werden beide angezeigt, dass die verbunden sind.

    Über Hilfe von euch freue ich mich sehr!

    Mit freundlichen Grüßen
    Speedyconzale

  4. Hallo Jörn, hallo liebe Pi-Bastler,

    ich kann Dank der Hilfe dieses Tutorials meine 2 Wiimotes mit Retropie nutzen. Dafür schon einmal vielen Dank!
    Viel wichtiger für einige Leser dürfte aber die Tatsache sein, dass ich über zwei Probleme gestolpert bin, die hier auch schon erwähnt wurden, bisher aber nicht behoben werden konnten. In meinem Fall konnte ich die Ursache lokalisieren und entsprechend beheben. Vorweg: Wer sich NUR an dieses Tutorial hält und NICHTS nebenbei auf eigene Faust versucht, bleibt vermutlich von den Fehler verschont…

    Fehler 1: Die Wiimote funktioniert in der Emulationstation gar nicht.
    Das ist bei mir passiert, weil ich einen Tippfehler in der Konfigurationsdatei “retropiewii” hatte (ein Y war klein geschrieben). Herausgefunden habe ich das, indem ich den Befehl, der sonst in der rc.local ausgeführt wird, manuell ausgeführt habe (nicht als daemon, ohne &):
    sudo wminput -w -c retropiewii 00:25:A0:12:34:56
    In meinem Fall erhielt ich eine Fehlermeldung mit dem Verweis auf line 37 in der Konfigurationsdatei retropiewii. So konnte ich den Tippfehler finden.

    Fehler 2: socket connect error (control channel)
    Dieser Fehler kam zustande, weil ich die Wiimotes selbständig im Bluetooth-Menü der Emulationstation gekoppelt hatte. Das sollte man nicht tun, denn wminput läuft im Hintergrund als Daemon und übernimmt das schon. Falls nicht, schaut mal Fehler 1 an.

    Zusatz: für die zweite Wiimote habe ich übrigens eine Kopie von “retropiewii” als “retropiwi2” erstellt und dort die letzte Zeile in “Plugin.led.Led2 = 1” geändert. Wird die zweite Wiimote in rc.local mit
    sudo wminput -d -c retropiewi2 00:25:A0:12:34:56 &
    aufgerufen, so leuchtet nach dem Koppeln die zweite LED.

    Viele Grüße,
    Michael

  5. Hallo,

    danke zunächst für die mühevolle Anleitung!
    Leider habe ich das gleiche Problem wie romxuk am 15. Februar 2017 um 16:50.
    Ich kann die Wiimote über Bluetooth verbinden, in der Retropie Ebene werden aber bei der Inputconfiguration nur die Pfeiltasten als Tastatur erkannt. die anderen Tasten zeigen keine Reaktion.
    Auch in Retroarch kann beim Inputmenü keine Wiimote ausgewählt werden.
    Habe die Schritte mehrmals kontrolliert und konnte keinen Fehler finden.
    Hast du vielleicht eine Ahnung was ich falsch gemacht haben könnte?

    Über eine Antwort wäre ich sehr freuen 🙂

    1. Hi,
      große Ideen habe ich leider auch nicht.
      Jedes Mal, auch nach dem Post von romxuk, wenn ich die WiiMote zum Test neu einrichte, klappt es, wie oben beschrieben.

      Hast du denn auch einen Pi3 oder verwendest du einen anderen?

  6. Worked for me on one controller. Add a second and added the mac address in the script. Both remotes function, but not accurately. Yes, there maybe some errors somewhere but games are playable with just one controller configured.

    Thanks for all your work!

  7. Hallo,
    Bei mir (Raspi2) Stürzt immer der Pi mit der Fehlermeldung
    “WARNING: Axis Duplicate” oder so ab…
    Habe keine Ahnung wo der Fehler bei mir liegen könnte…
    Bitte um Hilfe

      1. Hmm,
        bist du sicher?
        Das & am Ende sorgt eigentlich nur dafür, dass die Shell den Befehl im Hintergrund ausführt und nicht wartet, bis er erledigt ist. Es sollte eigentlich nur den Startvorgang beschleunigen.

        Es kann aber natürlich durchaus ein Timingproblem sein, das bei mir bisher evtl. nur nie aufgetreten ist. Ich werde bei der nächsten überarbeitung dann evtl. doch besser auf das & verzichten.

  8. This does not work for me for some reason, all steps followed but I can still only use directions on wiimote and classic and it still shows the device as keyboard in emulation station.

  9. Hi,
    danke für die tolle Anleitung. Hat fast alles geklappt. Ein wichtiger Hinweis ist die manuelle Input-Belegung in Retroarch.

    Folgendes Problem tritt bei mir auf: Wenn ich in einem SNES Spiel nach Rechts drücke, wird gleichzeitig auch ein Druck auf A registriert. Im Retroarch ist DPad Right 0+ und der A-Button 0. Kann es damit zusammen hängen? Habe übergangsweise DPad Right statt auf dem digitalen Kreuz auf den Analogstick des Classic Controllers gepackt. So funktioniert es gut, aber gibt es auch eine saubere Lösung. Ist das Phänomen bekannt und wie kann es dazu kommen?

    MfG

  10. …habe alles akribisch genau nach Anleitung gemacht, leider wird meine wiimote nicht erkannt, unter retropie setup wird es wie geahbt erkannt, dann aber wie gehabt Authorosierungsfehler. Idee worans liegen könnte?

        1. Ich nutze zwar nur das Image, kann es mir aber eigentlich nicht vorstellen. Auch das Image basiert ja auf Rapbian, ausschließen will ich es allerdings auch nicht. Kannst ja mal ein Backup deiner Karte machen, dann das Image installieren und nochmal versuchen, ob die WiiMote sich dann einrichten läßt.
  11. Hallo, habe alles genau nach Anleitung befolgt. Die Wiimotes funktionieren auf der Emulation Station-Oberfläche auch tadellos. Sobald ich jedoch ein Spiel starte (egal ob NES, SNES, MegaDrive etc.), sind sie komplett ohne Funktion. Hab ich irgendwas vergessen, noch einzustellen?

  12. Hallo Jörn,

    der Wii Classic-Controller funktionierte soweit bei mir.

    Jedoch bekomme ich beim neustarten oder herunterfahren immer diese Fehlermeldungen (werde förmlich zugespamt) ” socket connect error (control channel)”

    Dieser Fehler muss zudem mit dem WLAN auf irgendeinerweise zusammenhängen. Ich bin nämlich durch Zufall drauf gestoßen, nachdem immer wieder “irgendwann” meine WLAN Leitung so zusammenbrach, dass sie weder auf dem RB Pi3 funktionierte noch irgendein WLAN Gerät bei mir zuhause ging. Nachdem ich zum 100x mal den Pi neuinstallierte funktionierte er einwandfrei.. bis ich eben den Classic-Controller nach Anleitung installierte, dann kam wieder der Socket Error + dass das WLAN komplett abschmierte.

    Hast du irgendeine Lösung für mich?

    1. Raspberry Pi 3 – Jessie |
      Das Problem mit dem WLAN habe ich auch. Es liegt definitv ein Konflikt vor, dass erst nach dem Umsetzen dieses Tutorials auftritt. Ich kann ihn auch direkt dieser Installation zuordnen. Update + Upgrade haben keinen Einfluß.

      Davon abgesehen ist die Anleitung gut aufgemacht und funktioniert in Bezug auf die Installation von wiimotes.

      1. Hi,
        die oben beschriebene Vorgehensweise, entspricht im Großen und Ganzen, eigentlich der in der RetroPie-Wiki beschriebenen und empfohlenen Methode.

        Dort findet ihr auch noch zwei weitere Möglichkeiten, vielleicht bringen die ja eine Besserung.

  13. Hallo Jörn,

    diese Frage muss nicht veröffentlicht werden. Ich besitze einen neuen Raspberry Pi 3 und habe Retropie 3.7 installiert, es ist auf dem neuesten Stand.

    Innerhalb der Emulationstation wird meine Wiimote nicht erkannt (LEDs hören auf zu Blinken, keines leuchtet mehr, bei Configure Input wird sie nicht aufgeführt). Ich habe die Anleitung (super-verständlich geschrieben, herzlichen Dank!) genau befolgt und bereits mehrfach auf Tippfehler überprüft. Auch die Anleitung zum Einrichten von Bluetooth habe ich durchgelesen und mittlerweile die beiden Zeilen zum Starten der Suche nach Bluetooth-Geräten in der rc.local Datei ergänzt. Leider alles ohne Erfolg.
    Eine Fehlermeldung wird nicht angezeigt. Wie und wo könnte ich nach Fehlern suchen oder anzeigen lassen.

    Ich hoffe, trotz meiner wenigen Informationen können Sie mir vielleicht doch weiterhelfen meine Wiimote einzusetzen.

    Dankeschön und viele Grüße – Tom

    1. Hi Tom,
      ich denke, dies ist auch für andere User interessant.

      Ich habe es eben nochmal mit der WiiMote und einem frischen Image durchgespielt. Es sieht so aus, als bräuchte man mittlerweile (wie beim ping) ein sudo vor dem Treiber.

      Ändere mal deine /etc/rc.local wie hier (natürlich mit deiner MAC-Adresse):

      Es wäre nett, wenn du eine Rückmeldung geben könntest (egal ob positiv oder negativ).

      Gruß,
      Jörn

      1. Danke für die schnelle Rückmedung Jörn!

        Leider hat auch das Voranstellen des “sudo” noch keine Änderung ergeben – die Wiimote wird nicht erkannt. Hab’s auch mit einer anderen Wiimote (mit deren MAC-Adresse) getestet, leider das gleiche Ergebnis.

        Viele Grüße – Tom

        1. OK, dann bleibt nur das „Rantasten“.
          Hast du eigentlich einen Pi3 oder verwendest du einen anderen mit Bluetoothstick?

          Geh mal nach dem Neustart ins Terminal und kontrolliere mit hciconfig, ob noch UP RUNNIG PSCAN angezeigt wird. Falls nicht, gib mal direkt sudo hciconfig hci0 pscan ein und kontrolliere, ob sich die WiiMote jetzt verbinden lässt.
          Wenn UP RUNNIG PSCAN ausgegeben wird und die WiiMote nicht will, gib mal die Treiberzeile aus der rc.local direkt im Terminal ein und versuche eine Verbindung herzustellen.

          Gruß,
          Jörn

          1. Guten Morgen Jörn,

            ich habe einen Pi 3. Das “up running pscan” wurde angezeigt. Das hatte ich auch schon früher überprüft. Nachdem ich die Treiberzeile direkt im Terminal eingegeben habe, konnte die Verbindung hergestellt werden.
            Mittlerweile habe ich die SD-Karte nochmals entnommen, eingelegt und die Treiberzeile wieder zurück in die rc.local geschrieben. Verbindung kann wieder hergestellt werden – super! Es klappt.

            Herzlichen Dank! Es freut sich der Tom!

          2. Könnt ihr das mit der Treiberzeile genauer definieren? Ich habe exakt das selbe Problem wie Tom aber verstehe nicht was ich genau machen muss. Totaler Neuling!
            Danke!

          3. Hallo,
            sorry für die späte Antwort, aber ich war die letzten 10 Tage in England.
            Im Prinzip geht es um diesen Kommentar. Scroll einfach ein Wenig rauf und wirf einen Blick aufs Bild. Es wird aber auch oben im Hauptbeitrag erwähnt.
  14. Hallo! Super Anleitung, funktioniert perfekt!
    Leider möchte ich gerne die Spiele mit einer Taste speichern und laden. Dabei wären die physikalischen Tasten A und B perfekt für mich.
    Aber ich schaffe es nicht?

    Hätte unter /opt/retropie/configs/all/retroarch.cfg folgende Zeilen hinzugefügt:
    input_save_state_btn = “BTN_X”
    input_load_state_btn = “BTN_Y”

    jedoch ohne Erfolg. Kann mir jemand helfen? Danke!

  15. Hallo!

    Habe alles durch lt. Anleitung jedoch erkennt er mir die WiiMote nicht. Im Emulation Station wird das Gerät einfach nicht erkannt.
    Auch mit der oben angeführten Config Datei erhalte ich immer beim Starten sehr viele Fehlermeldungen “unexpected character”.
    Jemand eine Idee?
    Danke!

  16. Hi!
    Die Anleitung hat ganz gut geklappt auch für nen Anfänger wie mich. Ich habe allerdings das Problem das der Bluetooth dongle zwar meine Wiimote erkennt sie lässt sich in weiterer folge auch anmelden nur kann ich sie nicht konfigurieren sprich retropie wird von ihr nicht “angesprochen” meine eingaben habe ich mittlerweile mehrmals überprüft.

    1. Hallo,
      es scheint aber trotzdem irgendwo ein Fehler zu stecken.

      • Verwendest du die original WiiMote oder einen Nachbau?
      • Wie hast du überprüft, dass die WiiMote tatsächlich angemeldet wurde?
      • Hast du im Terminal mal jstest /dev/input/js0 versucht, um den ‘Joystick‘ zu testen?
    1. Hi,
      keine Ahnung, ich habe nur die abgebildete WiiMotion. Falls du bereits eine ‘Plus’ hast, probiere es doch einfach und poste dann deine Erfahrung für andere hier.
  17. Moin,

    vielen dank für die Anleitung, habe soweit alles zum laufen bekommen. Wo es nun aber scheitert ist das die Wiimote mit Classic im Menü ohne Probleme funktioniert, aber sobald ich z.B SNES starte geht dort nur die B und die ZL Taste!? Habe schon mit meinen Anfänger fähigkeiten auch die anleitung mir retroarch probiert (wohl ohne Erfolg) und bekomme es einfach nicht zum laufen.

    Bitte um Hilfe

    Grüße aus

    Hamburg 🙂

      1. Nach sehr langem rum probieren, hat es nun funktioniert 🙂

        da karm echt Frut auf, da unterschiedliche USB Gamepads sofort funktioniert haben.

        meine lösung war

        retropie -> Configure Retroarch / Launch Retroarch RGUI

        settings ->input -> User 1 Bind All

        und überprüft mit settings ->input User 1 Binds

        was mir noch fehlt ist die einstellung das ich mit dem am besten Home button oder start + select ins Hauptmenü zurück komme

        habe eine otion gesehen mit Down + L1 + L2 + Y aber das funktioniert nicht.

        grüße & danke

        PS: PS4 Controller mit Bluetooth wäre noch sehr interessant mit USB geht es ohne probleme

        1. “was mir noch fehlt ist die einstellung das ich mit dem am besten Home button oder start + select ins Hauptmenü zurück komme”
          Dazu habe ich wie in dieser Anleitung:
          https://github.com/RetroPie/RetroPie-Setup/wiki/Wiimotes-with-classic-controllers

          Die Datei /opt/retropie/configs/all/retroarch.cfg mit folgenden Zeilen ergänzt:
          savestate_auto_save = true
          savestate_auto_load = true
          input_enable_hotkey_btn = “8”
          input_exit_emulator_btn = “9”
          input_menu_toggle_btn = “10”

          Funktioniert nicht ganz wie gedacht, z.B. ich komme ins RGUI Menü mit Start + Home statt nur Home. Bei der letzten Zeile habe ich die “10” mit der “7” ergänzt (bei mir ist das der rechte Trigger) und kann damit ins RetroArch Menü zu kommen. Start + Select zum Spiel verlassen und in die Emulationstation zurückkehren klappt.

          Die Buttons für RetroArch habe ich über RetroPie Eintrag im Hauptmenü -> Configure Retroarch Keyboard/Joystick eingestellt.

  18. Hallo wollte mein Wiimote Controller an mein respberry pi 2
    mit Retropie 3.0 beta 2 verbinden hat alles soweit geklappt nur der Wiimote wir nicht erkannt. Bluetooth läuft und erkennt ihn, nur Retropie nicht. Wo könnte noch ein Fehler sein.

    1. Hi,
      ohne eine Fehlermeldung kann ich natürlich nur raten. Wenn alle Schritte funktioniert haben, dann könnte es ein Tippfehler sein. Stimmen die Angaben in den bearbeiteten Dateien wirklich?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Protected by WP Anti Spam