Introduction: Non Contact Midi Controller
Making things non-contact has been the trend nowadays. I created a simple midi controller using Arduino Pro micro and some IR-proximity detectors board which has an in-build comparator, this should be available fairly easy and cheap. This project can be used on any Arduino which has 32u4 based board, this was done due to the ability to use these board has MIDI without the headache you have to go through using hairless midi and the glitches associated with it. This project was done for 7 major notes which could easily be extended for other notes. I used cakewalk by BandLab as my DAW because it's cool and free. Hope you have fun making this. This project was initially designed to introduce students to the beautiful world of Infra-Red and its fun application.
Supplies
Arduino Pro Micro( or any 32u4 based board)
IR-proximity sensor * no of notes you want
buttons(optional)
soldering iron and lead
berg pins
perfboard
Wire
computer
Step 1: Getting Things Together
Let us first get the things we require to make this project.You will require your computer to make use of this MIDI controller.
Arduino Pro Micro( or any 32u4 based board)
IR-proximity sensor * no of notes you want
buttons(optional)
soldering iron and lead
berg pins
perfboard
Wire
you will require Arduino IDE to program your board. MIDI-OX sofware is recommenced to check the project. Using this with a DAW gives great results.
Step 2: Understanding the Basics
The micro controller detect when the an object comes close to the IR proximity detector. Then it send an corresponding MIDI code to the computer.
We will be using an external library to achieve this. You can find the library from the link below.
https://github.com/arduino-libraries/MIDIUSB
we can check if the proper signal are received by the computer using MIDI-OX software.
We will be using Digital IO has we have a comparator in the IR proximity board. Due to the comparator we get input as 1 or 0 at the micro controller I/O port
Step 3: The Code
The code is relatively simple and easily modifiable. i have attached the code with this instruction.
When ever there is some object interfering with the IR proximity detector, we send the corresponding signal to the computer
If you want to use different notes, use the MIDI chart.
Upload the program to the micro controller
Attachments
Step 4: Connections
Power the IR proximity board by supplying VCC and ground.
Connect the output to the corresponding digital I/O pins. I have used pin 2-8 for my project.
be sure to modify the code according to the pin used.
I used female berg pins so that I could easily remove and replace the IR proximity detector and arduino when required.
Step 5: Testing Our MIDI Controller
I recommend installing MIDI-OX to your computer.
After completing all connection in the perfboard add the IR detector.
Connect the board to the computer.
Open your MIDI testing program.
Try bring one finger near the detector
Step 6: Connect to Your DAW and Make Some Music
Its going to take some time to get used to the non contact way of playing but it will be a fun experience. I personally like playing drums using this in Cakewalk. Add or block light from the board according to your taste