One Man Band Midi Documentation


Inspiration: the inspiration behind my project was a midi controller called sea board rise that uses interactivity from the user to build on what instrument player can actually do with their instrument rather than merely playing the note. My Final project was my first step towards thinking critically of how to actually create something that includes interactivity much like the seaboard rise in the future.

Materials Used:

Arduino Uno

Arduino Yun

2 Prototyping sheilds

11 Push Buttons

11 10k resistors

4 Potentiometers

A lot of wires



Arduino Yun Code



Arduino Uno Code

Processing code:



Videos having fun with the controller:




Tried as hard as I can to show the wires from the 2 holes of the box without dismantling it.

final project idea

So for my final project, I’ve decided to use the idea of the interactivity the user has with the seaboard rise( ) and trying to incorporate a similar idea to my idea of a midi instrument, along the same lines.

It would be held somewhat like a guitar strapped around the person using it. The idea revolves with using preset sounds on a laptop and transforming the midi data from the instrument to the laptop to generate sound. My idea would be having two features on it, on the bottom, there would be( i dont know yet, maybe an accelerometer?) but something that would trigger an electric guitar sound and based on its position would bend the guitar sound to give a real life feel instead of the normal electric guitar sound played on a normal midi instrument which doesn’t really sound real without all the tricks guitarists use. The other feature would be above where there would be a piano or synth pad sound playing chords based on where we press (there would be indicators though). Also, for simplistic reasons, the notes and chords will correspond the C major scale.

If im to use an accelerometer, which i tested out using an example i found online, which mapped to the position i moved the accelerometer with a delay of one second, I don’t know if i’d only use one as a pitch bend and glide option or use one for each note, but I’d really like to use it for each note rather than one for the pitch bend and glide option as that feature is already present in midi instruments. As much as I could, I’d like to explore the idea of bringing something undigitized into something digitized with the same features without being any less interactive.


Material needed:

for the body of the instrument, I’d like to 3D print something that would look like a stick kind of but fatter so each note would be easily press-able, but still light-weighted so the person using it wouldn’t have his back strained.

a lot of jump wires


midi cable (i dont know yet?)

accelerometer (either a lot or just one)



Risky things

1. I’ve done a lot of research on how to connect arduino to ableton live so I could use the soundbanks i have on there, but i’m still yet to figure out how that works. Also nice i’m going to use sound from ableton rather than processing, I want to figure out a way to include processing in the project. I’m still figuring out how to use incorporate it though.

2. I haven’t used an accelerometer before, except for testing out with an example i found online in which it worked, but I’m still yet to figure out to actually use it as the thing that triggers note playing, pitch bend and glide. And how it would actually look like is still strange to me because i wanted to look kind of not like an accelerometer.


3. Mapping midi information from arduino to ableton or if it’s the other way around. From what i was thinking, and i might be wrong, the information would be taken from arduino and would be processed in ableton to give the picth bend and glide information from the accelerometer in order to give us back that sound. I still don’t know how I would be able to control that, I’ve looked a lot into ableton live itself and found a lot of information regarding pitch bend and modulation wheel in the preset sounds, but i don’t know yet how I would map it to arduino’s info.


4. I’m also thinking of adding an option for the chords feature where there would be a button where you can change the way in which the chord is being played. For example, instead of just pressing on the C major chord and it being played in three notes at the same time, there could be a variation in which they are played where they can be played (C, delay, E, delay, G, delay) or (C, delay, G, delay, higher C, delay). For this option I’d also like to have tempo controlled by a potentiometer. But i’m also struggling with how to control the playing, would it come from ableton or arduino? How would i control it using ableton?

5. Almost all of my problems are regarding connecting arduino to ableton and using accelerometers, as they are something I haven’t explored at all. However I’m really looking forward to it because it might help me with my capstone in which i was thinking of something along the lines of an interactive instrument. There would be the problem of not using processing however, but I’m trying to look into ways of adding it onto my project.


on digitization of everything

When encountering this reading, I was very intrigued by the fact that almost all the power that anything has is supplement by word of mouth. For example, if one of my friends suggests we order food from Talabat, or told me to check it out, I would easily. But seeing its ad pop up every 5 minutes on my phone when I’m on on any app makes me want to remove it from the app store literally. It’s just more trustworthy when you have someone suggest it to you rather than an anonymous person posting an ad video after every youtube video I watch. But Talabat and many other apps and creations would not be possible if it weren’t for digitization. And such an application would be needed, as I’ve been living in the UAE for over a year, I’ve never come across the concept of ordering through the phone, unlike Egypt. Most restaurants have worked alongside such apps by putting their menus there and working alongside the delivery guy to make this happen. It may have decreased our interaction with the hotline, but it’s way easier than having to look up the phone number and actually going with it. With just a click of a button, your order takes about 45 minutes to reach campus and that’s pretty much it.

Bring along another point brought up, most apps I use right now rely on other people also using the app. Other than the Waze GPS navigation app they talked about, most games I like to use have relied on the network effect. For example, my friends and I love this game on our phones called QuizUp and Trivia Crack where you get to challenge your friends in quizzes and you get to level up whenever you win either your friends or an anonymous player. When these apps lost their popularity, it was inevitable for me to uninstall it because it relied on other people playing the game as well. There was nothing to do if there weren’t any other people playing as well.


While these were the most interesting points to me, there is a lot to mention when it comes to digitization and their outcome, where with each technological advancement, we get to witness and evolution before our eyes. It is interesting to see what will happen in the coming years with the proliferation of technology and its constant improvement, and this chapter brought this point into my mind.

Moving Robot

Arduino code:

Processing code:


Flapping bird returns!



Processing code:





I tried to have the main character as the flappy bird itself but using the image slowed down the game drastically so I had to draw an ellipse.

Computer graphic

Actual Photo

Since i couldn’t use classes and every line had to be in a specific x and y axis, I had to make every line separately  in order to get the black figures’ to be clear.


My work




self portrait


Greatest Hits; Response

One thing that I’ve always struggled with accepting but cant help to realize how ultimately true it is, is that everything this a remix. Some may not agree but I have come to this realization, whether its music, movies or even inventions. Everything we create has initially been done and thought of before, but that does not mean that we don’t create anything anymore. On the contrary, we should take inspiration of these past inventions and enhance even if they rely on the same simplistic idea, but the idea is to make it better or even more attractive, relating to the reading we’ve done before which talked about how attractiveness is just as important as effectiveness. What I mean to say however in response to this reading and from what I’ve learned from past experiences is that creating something that has already been created before is merely a step in the creative process of remixing and it ultimately depends upon it. That’s why for example when I took this class, I always imagined designing and inventing the cliche, stereotypical robot. It isn’t something to be ashamed of to use an idea that already exists but what makes it your own is what you do with it and how you remix it to differ from what’s already preexisting.

Set the Stage, Then Shut Up and Listen; Response

One of the biggest things that make a joke unfunny after you’ve finished laughing is having someone explain why the joke was clever and witty. The idea of the element of jokes is that a person, without outside forces, would get the joke and the natural response would be his laughter. The same goes for designing something that involves interaction between the user and design and having to explain what should be done by the user. The ideal way of showcasing it would be leaving the user to try and understand what he is meant to be doing rather than being told exactly what to do. On a much smaller scale, when composing music, something I like to do is that I would never have to explain what the lyrics mean and what the song is really about. When having to explain why I wrote a specific song, what its inspiration is and what its about, it narrows down the meaning to a much limited interpretation that may not resonate with everyone. That’s why I always choose not to explain what they’re about because everyone will interpret and perceive it in their own which is much more beautiful than having a standard meaning that not everyone can relate to. A beautiful saying that reminded me of the reading say “That’s one of the greatest things about music. You sing a song to 85,000 people and they’ll sing it back for 85,000 different reasons” The reason I think this relates so much to the reading is much like music, people love specific designs for their own reasons; be it nostalgia, fast or slow pace, the fact that it reminds them of a similar game they used to play it with someone they love or even just how amazing the game itself is, everyone enjoys a game and is hooked to it for their own unique reasons and that’s why the element of talking and describing what has to be done takes that part away and narrows it down to a singular reason instead of infinite.

Midterm; Radar



For my midterm project i decided to build a radar which detects the closeness of objects which writes it into the serial monitor with the degree angle followed by the closeness. And using ‘processing’ it draws the angles and lines in order to sketch this image ultimately:


Whenever it detects an object the green light turns to red and the red color depends on the closeness of the object to the ultrasonic sensor. If an object is really close to the sensor, the line will be fully red, if it not as close, the line is split into a green and red color and depending on the closeness, either one of the colors dominates the line.




Servo motor

Ultrasonic sensor






Arduino code:


Processing code:




It was really hard understanding the code for processing since it was my first time using it, so there was a code that was supposed to connect my port to the processing which took me a lot of time to understand what it meant and why it wasn’t working. There was also a problem with the delay where when it was calculating the distance there was a delay for the servo motor to move which made it really slow to move. After making sure that my arduino code was working fine using the serial monitor, I had to read the processing code really carefully in order to connect to the right port and from then it was working fine. The hardware was also a bit tricky to adjust because the Ultrasonic sensor is really heavy so it would look down instead of upright, so for future projects i’ll have to look for a substitute for tape.