This project contains code and information for making a Teensy-based Wii Nunchuck MIDI controller.
- Wii Nunchuck controller
- Teensy (I'm using version 3.2)
- WiiChuck adapter
- Two 4.7K resistors
- Breadboard (or some other means of wiring the components)
- Header pins for the WiiChuck adapter
- Connect the WiiChuck '-' to GND
- Connect the WiiChuck '+' to 3.3V
- Connect the WiiChuck 'D' to the Teensy SDA0
- Connect the WiiChuck 'C' to the Teensy SCL0
- Use 4.7K pullup resistors on SCL0 and SDA0
Install the Arduino IDE and the Teensyduino add-on for the Arduino IDE.
- Open the TeensyNunchuckMidi sketch
- Select "MIDI" from the Tools / USB Type menu
- Run Verify/Compile
- Push the button on the Teensy to upload
The Teensy sketch sends analog stick position and Nunchuck roll and
pitch orientation as MIDI control change events. The channel number
and control numbers are specified in constants at the top of the
TeensyNunchuckMidi.ino
file.
The default channel number is 1.
The default control assignments are:
Value | Control number |
---|---|
Analog stick X | 0 |
Analog stick Y | 1 |
Roll | 2 |
Pitch | 3 |
The code for interfacing with the Nunchuck controller is based on:
Further information on the protocol for interfacing with the Nunchuck controller can be found at the following:
Resources for Teensy programming:
This project is distributed under the terms of the MIT License.