Progress On My MIDI Controller – 14-03-18

Since placing in the potentiometers into the top panel of the acrylic, there have been a few setbacks and challenges to overcome in the progression of the controller. However, all of the challenges have been overcome, allowing the controller to be mappable within Ableton Live and control parameters of your choosing. Here is what the controller currently looks like:


Here is how the wiring for the controller looks:


As you can see in the last progress report on the controller made in February, I worked out how the wiring had to configured for the arcade buttons with the Arduino. So, once knowing this, the next stage was to place the fix the arcade buttons into the top panel. Using a 28mm drill bit, I made 3 holes, equal distance apart for the buttons to be placed into. I removed the micro-switch from the button itself they could be placed into the top panel, and screwed them in place with the plastic nut that was provided with the button. Once they were fit in, I clicked the micro-switch switch back into the buttons. Once they were placed into the top panel, the next step was to wire them in series together, and also connecting the communication wire, which tells the Arduino when the button is pressed. I soldered the voltage and ground wires to each button in series, using the shirt wires that came with my Arduino Uno, making the wiring a little tidier and clearer to see. Using long wires, I soldered the communication wires to the micro-switches of all switches. It was in the testing process of the arcade buttons is where I came across the main challenge to overcome, the biggest problem so far in creating the controller.

Testing the arcade buttons on their own with Ableton and the Connections Kit was a success. However, when testing both the already installed potentiometer and the buttons together is where the issues lied. I was unable to use both the buttons and potentiometer simultaneously, both had to be used independent of each other, resetting the connections kit to do. After many hours of research and experimenting, I was unable to determine if this was an issue that lied with Ableton, the Connection Kit, or the Arduino itself. Moving forward I saw only options to be able to get the controller in a working order for the presentation. The first of which was to use the HIDUINO code. This is code that allows for the Arduino to be used as a native MIDI device. Going this route however meant that the Arduino could not be easier edited after once the code was installed, creating major delays if any other problems arising. The second option was ti use two different Arduino’s, one running the digital inputs, and the other running the analog inputs. Although this was not ideal practically, as two USB inputs would have to be used instead of one, I was certain that I could run two instances of the connections kit with Ableton, allowing me to utalise both Arduino’s at once. After some testing, I was able to use both Arduino’s, allowing me to use the arcade buttons and the potentiometers simultaneously. Once this section was completed and tested further. It was time to move forward and install the sliders.


After testing the sliders individually within Ableton, I found that one of the sliders was faulty. Despite this, I decided to install the working slider and get it wired up with the dial potentiometers, to test if these would work together. Using a smaller drill bit, I made series of holes along the top panel, using a pencil line that I made as guide. Once I made the holes, I used a file the files these holes into a rectangle shape that allowed the sliding mechanism to fit. Because of the shape of the slider, it would have been very difficult to screw the slider into the panel, so instead I used super glue to secure it in place, which worked perfectly. Once it was fitted in, I soldered the wires from the dial potentiometers to the slider, and tested the two within Ableton, which was a success.


Once all of the working components were fitted, I felt it was time to finally attach the top panel to the bottom panel, to create the box shape and have a controller that is easily place-able on any surface. Because I knew I wanted to make more changes to the controller over time, and install the second slider in the future, I wanted to create a secure way of having the controller stand up, but also be taken apart. I settled on super gluing 7cm length of dowel wood that I cut myself to the top panel, creating solid legs for the said panel. However, for the bottom panel, I used stick-able Velcro pads. This allowed me to easily remove the top panel from the bottom panel, allowing me to rewire and make changes easily. I left the sides of the controller open so you able to see the exposed wiring, components and Arduino’s for an interesting aesthetic. I used the left over Velcro pads to attach the Arduino boards to the bottom panel. This allows for the boards to be removed from the controller easily, but also allows for the Arduino’s to be placed in the controller securely.


While I was building the controller, I was able to test out the Max For Live devices that I created for my performances with fellow peers on the course. Using an Ableton Push, an Interface and a Macbook, I was able to place the devices within Ableton and allowed people to experiment with them, manipulating the sound of my guitar live. It was clear to me that some of the devices were a little too extreme in the sounds that they created, meaning that they needed to be scaled back in the breadth of their parameters. Despite this I would call the experience a success, making me very confident for the future performance with my controller.