When I first tried to hook up my Wii Nunchuk to an Arduino board, I only got errors. I tried several tutorials, but nothing happened. I had bought an used Wii Nunchuk for this purpose, so I feared that it was broken and that I had been scammed. Just before giving up, I realized what the problem was: I was using an Arduino Mega, but all the tutorials were intended for Arduino UNOs. When I finally managed to get it working, I decided to write a guide on how to hook up the Wii Nunchuk to an Arduino Mega.
I also noted that adapters are not necessary. I bought two different adapters, but then I realized that it is possible to connect jumper wires directly to the controller’s connector (without cutting the wire). The following images shows how you can insert wires into the connector.
The connector has six holes, but only four will be used: power (+), ground (-), I2C data (d), and I2C clock (c). The following image shows which hole corresponds to each function.
Now you should connect it to your Arduino board as follows:
- + to +3.3V
- - to GND
- d to SDA (pin 20)
- c to SCL (pin 21)
The final setup should look like:
Your Wii Nunchuk is now ready to be used with your Arduino Mega.
If you still need a library to interface it, be sure to check my Arduino Nunchuk library. It works both with UNO and Mega boards (and probably with other newer models too).