NOTE: Nintendo Nunchuk has to be powered with 3v3 only so make sure you use the 3v3 Arduino output. (Arduino DUE owners won’t have to bother about this).
Nintendo Nunchuk is a great and cheap piece of hardware for building robotic applications (and many others) along with Arduino.
Out-of-the-box this controller has:
- 2 on/off buttons
- Analog X/Y Joystick (30KΩ axial potentiometer)
- X/Y/Z Accelerometer (LIS3L02AL)
Here you’ll find the LIS3L02AL datasheet.
Nintendo Nunchuk comes with an ungly proprietary plug (you know Nintendo guys) anyway wiring it to the Arduino board is not that hard. You may want to use this fancy adaptor or just some (4) male jumper wires.
Protocol used by this controller to communicate with host device is I2C, anyway if you are using ArduinoNunchuk library you don’t need to bother about it.
Here’s the Nintendo Nunchuk connector pinout:
Most of the applications you’ll find for this controller don’t require a teardown (far from that the ergonometric case might be a plus) but in my case I needed to attach this controller’s accelerometer to my dobsonian telescope for some astronomical application (see Star Finder project) so a teardown was necessary.
Opening the case is easy if you have the right Y0 tri-wing screwdriver. Sadly that wasn’t my case, I couldn’t find a Y0 here in town and I needed to open the case ASAP so I drilled the case where the screws were using a Dremel Rotary.
By measuring continuity from the controller’s plug to the board you’ll see:
Since I only needed the Accelerometer and Joystick the buttons and long black wire with connector were removed and this is how the Nunchuk remained, ready to be connected to the Arduino board:
Red wire – 3v3
Black wire – GND
Yellow wire – SCL
Green wire – SDA