A MIDI controller which is a device that uses buttons, knobs, and faders to send serial signals to a computer which are then converted to MIDI (Musical Instrument Digital Interference) and sent to a DAW (Digital Audio Workstation).
Area of Interest
Engineering, Computer Science, Cognitive Science
Leigh High School
The enclosure for my controller has yet to arrive, so for now I only have a prototype of my MIDI controller. I used a program called The Hairless MIDI to Serial Bridge in order to connect my Arduino to FL Studio 20. I mapped samples from the FPC drum machine to 5 different buttons and the volume controls to the potentiometer. I chose this project because I’ve recently delved into music production and I saw this project as the perfect opportunity to combine my passions for both music and engineering. Throughout Bluestamp, I encountered many difficulties. The most frustrating part of the project was designing the enclosure in Autodesk Inventor, a painstaking process that took around a week. Overall, I had a great time at BlueStamp. I learned so much about circuits and the Arduino. I think given the current state of the world, it’s amazing that I even have the opportunity to work in an environment like Bluestamp. Even after this program, I plan on building other fun projects with the materials I was given.
For my second milestone, I completed the design of my MIDI controller in Autodesk Inventor. The top and sides of the enclosure will be laser cut plexiglass, fastened by 3D printed joints. I had to keep in mind that Arduino only has 6 analogue inputs for knobs/sliders and 12 digital inputs for buttons/switches. I precisely measured the dimensions of all the components using a digital caliper and drew out a 1:1 scaled copy of my design to ensure that all of the components were reachable and the layout felt comfortable.
For my first milestone, I successfully set up my Arduino and wired multiple buttons, potentiometers, pull down resistors, and LEDs. I modified code that I found online to print various types of data to the serial port such as time elapsed and voltage. I have developed a basic understanding of circuit boards and the Arduino IDE.