Nunchuck Controller als Eingabe-Instrument

By | 28. Januar 2017

Der Nunchuck Controller ist ein Eingabe-Instrument für die bekannte Wii-Spieleconsole. Er verfügt über 2 Druckknöpfe, einen Joystick und einen eingebauten 3-Achsen-Beschleunigungssensor. Dieser Controller ist aufgrund der hohen Verbreitung für wenig Geld erhältlich, sehr robust und verfügt über eine gut dokumentierte I2C-Schnittstelle, die es erlaubt, diesen mit dem Arduino zu verbinden. Somit kann der Controller für die verschiedensten Steuerungsaufgaben zweckentfremdet werden.

Da viele Maker diesen Controller aufgrund des günstigen Preises und der qualitativ hochwertigen Sensorik bereits in Ihren Projekten verwenden, finden sich viele Programm-Bibliotheken im Internet, die eine einfache Verwendung in eigenen Vorhaben erlauben. Im folgenden wird die Bibliothek wiinunchuck verwendet, die über das Github Portal geladen werden kann.

Die Bibliothek bereitet die Daten vom Controller so auf, dass diese über eine Anweisung ausgelesen werden können. Insgesamt benötigt man einen Speicherpuffer mit 75 Zeichen, in die sämtliche Sensorwerte geschrieben werden.

Wie das geht, zeigt das erste Beispiel-Programm, dass aufgrund der Übersichtlichkeit nur die Joystick-Position und die Zustände der beiden Schalter C und Z ausliest. Das Prinzip wie auf die Daten des WII-Objektes zugegriffen werden kann, wird dadurch aber sehr deutlich und kann so leicht auf die anderen Inhalte übertragen werden.

Um die Daten mit einem Arduino verarbeiten zu können, ist folgende Anschlussbelegung zu verwen- den. Es gibt sechs Steckplätze, wobei nur die vier Äusseren belegt sind. In der folgenden Abbildung ist dargestellt, wie diese mit dem Arduino zu verbinden sind.

Wichtig dabei ist, dass die Farben des Steckerkabels beachtet werden (stehen in Klammer in der Abbildung), falls man sich dazu entschliesst, den Standardstecker abzuschneiden und mit einem eigenen weiter zu arbeiten. Beim Arduino werden neben den Versorgungsanschlüssen GND und +3,3V die an die Farben Weiß und Rot angeschlossen werden auch die Analog Pins A4 (an Grün) und Pin A5 (an Gelb) verbunden. Danach müsste sich folgende Ausgabe ergeben:

Der folgende Programmcode basiert auf dem ausgezeichneten Beitrag von Adi Dax in seinem Maker-Blog.at. Dort gibt es auch ein sehr anschauliches Video das in allen Einzelheiten erklärt wie vorzugehen ist.