Project start: May 2010

Wiimote


Wiimote + Nunchuck
Im Internet hab ich mal gelesen, dass man eine Wiimote mit dem PC verbinden kann
und somit auch z.B. die Maus steuern kann.
Auch kann man sich damit ein Whiteboard bauen.
Also hab ich mir für 20€ eine Wiimote + Nunchuck bei Ebay geholt (siehe Bild rechts).

Um sie über Bluetooth mit dem PC zu verbinden braucht man noch einen Bluetooth Stick,
der mit den Bluesoleil Treiber läuft.
Ich hab mit einen kleinen Stick (siehe Bild unten) für 5€ gekauft.




Wiimote und Mini USB Bluetooth-Stick


Nachdem man die beiden Utensilien hat, braucht kann man noch die BlueSoleil treiber installieren.
[Nachtrag 15.11.2013]: Wem BlueSoleil zu blöd ist oder es einfach nicht funkionieren will kann es auch mit "Toshiba Bluetooth Stack" Probieren. Eine kurze Anleitung dazu gibts bei dolphin-emu.org. Wenn die Wiimote per Bluetooth verbunden ist hier weiterlesen.
Nach der Installation und verbundenem USB-Stick sollte das (nach einem Doppelklick auf das Symbol in der Trayliste) dann so aussehn:


Jetz wird die Wiimote mit dem PC verbunden, in dem man die Knöpfe 1 und 2
gleichzeitig kurz und dann alle ein bis zwei Sekunden abwechselnd drück,
damit sie nicht zu schnell wieder ausgeht.
Die Leds unten an der Wiimote sollten nun dauerhaft blinken.


Während die LED's ihren Dienst verrichten suchen wir mit einem Doppelklick auf
"Geräte suchen" nach der Wiimote. Weiterhin die Wiimote mit betätigen der
Knöpfe 1 oder 2 am leben halten.


Es sollte ein Gamecontroller gefunden werden.
Die Wiimote weiterhin am Leben halten und mit einem Rechtsklick auf das Symbol
-> Verbinden die Wiimote verbinden.


Wenn das Symbol Grün wird, kann die Wiimote in Ruhe gelassen werden.
Sie sollte nun dauerhaft blinken.
Jetz ist die Wiimote mit dem PC verbunden.
(Hinweis: Ausgeschaltet wird sie mit zwei Sekunden drücken des Powerknopfes (oben links))


Als nächstes laden wir uns GlovePIE, um die Wiimote als Gamecontroller für Spiele
benutzen zu können.
GlovePie gibts hier (um es zu laden auf "I already have 100% Green power" klicken)
Jetzt starten wir GlovePIE und sehen folgendes:


Nun benötigen wir noch ein Script welches die Tastendrücke der Wiimote als
Tastatureingaben am PC Emuliert.
Ein Simples beispiel währe z.B.
Ich denke das Beispiel ist selbserklärend.
Es werden einfach nur alle Zuweisungen gemacht.
Wer das nicht Tippen möchte kann auch oben auf "GUI" gehn und das ganze
mit der Grafischen Oberfläche machen.

Das wars auch eigendlich schon so von den Grundlagen her.
Interessanter wird es allerdings erst mit der Abfrage der G-Sensoren oder der
IR-Kamera der Wiimote.

Auch ist es für viele Spiele besser, die Wiimote z.B. als Lenkrad zu benutzen.
Dafür emuliert man einen Joystick mit PPJoy
und übergibt die Werte der G-Sensoren per GlovePIE an PPJoy.
Die Installation von PPJoy sollte nicht allzu schwierig sein, desshalb geh ich mal davon aus,
das PPJoy korrekt installiert ist.

Um PPJoy mit GlovePIE zu benutzen, klickt man bei GlovePIE oben auf "CP-Settings" und dann auf "PPJoy".
Jetzt erstellt man einen neuen Joystick mit einem Klick auf "Add", dort stellt man oben den Port auf "Virtual port"
Controller number ist dann 1. Mit dem Klick auf Add werden nun die Treiber installiert, also einfach warten bis das fertig ist.
So damit ist das auch schon erledigt.

Jetzt schreiben wir ein kleines Script, welches die Werte der 3 G-Sensoren an den Joystick weitergibt:
PPJoy1.Analog0 = -(wiimote.RawForceX) / 60 //x-rot roll
PPJoy1.Analog1 = (wiimote.RawForceY) / 60 //y-rot yaw
PPJoy1.Analog2 = (wiimote.RawForceZ) / 60 //z-rot pitch

PPJoy1.Analog3 = -(wiimote.RawForceX) / 30 //x-rot roll
PPJoy1.Analog7 = (wiimote.RawForceY) / 30 //y-rot yaw
PPJoy1.Analog6 = (wiimote.RawForceZ) / 30 //z-rot pitch

Jetz noch das Script starten mit einem sanften klick auf "Run".
Um die funktionalität zu prüfen klicken wir auf "CP-Settings" -> "Joystick"
Wählen den Virtuellen Joystick aus und klicken auf Eigenschaften.
Dort sollten sich die Balken beim Bewegen der Wiimote verändern.
Die Tasten des Virtuellen Joysticks kann man mit:
PPJoy1.Digital0 = wiimote.A
etc. belegen.
Einfach etwas mit den Werten und Einstellungen spielen.
Dann Startet man das Script, startet ein Spiel, welches man per Joystick steuern kann,
stellt dort die Steuerung ein und es sollte funktionierten.

Hier mal ein Script für Trackmania: Download TM-Script
Die Steuerung ist wie bei vielen Wii-Rennspielen. Wiimote horizontal halten, 1 ist Gas, 2 ist Bremse.
Im Ordner von GlovePIE gibts einige Beispiel scripte, darunter auch eine Steuerung der Maus per G-Sensor oder IR.


Das wars auch eigendlich schon, viel Spass.