User:MundaneUser/enes100/My Work Beatmaker

Beatmaker (Music Project)

Write problem/project Goal
To design and construct a music maker using infrared sensors, a printer scanner, an Arduino, and computer software.

My First Task
To research and devise a list of materials necessary for the construction of our project.

Summary of actual work over first weekend
How is what you did different than what you planned?

Week1 Narrative
Tell a detailed story describing what you did for your team over the weekend.

My Second Task
Assemble MIDI-Shield component to attach to an Arduino-UNO. Control synthesizer using Arduino + MIDI shield.

Summary of actual work over second weekend
I successfully completed both of my goals. I was able to assemble the components on a MIDI shield, attach it to an Arduino, and program the Arduino to control the synthesizer through a MIDI cable.

Week2 Narrative
The first goal was to solder the necessary components on an empty MIDI shield. I started with the MIDI-In and MIDI-Out ports which required 7 through hole solder connections (shown to the right). Referencing the bottom-view picture, I also had to solder rows on pin connectors on both the right and left side of the board to allow the MIDI Shield to be connected directly into the corresponding pins on the Arduino chip. During all of the connection points, be sure to keep each solder connection separate, if the pins are soldered together the MIDI Shield will malfunction due to shorting within the circuitry. Once I had the MIDI ports connected and the pins soldered I was able to stack the MIDI shield on to the Arduino and begin testing a previous student's programs:
 * I attempted to upload the code while the MIDI shield was attached and I repeatedly got sync errors during the end of the upload phase. I tried multiple Arduinos and the errors persisted. I tried uploading the program to the Arduino while the MIDI Shield was disconnected. Once I attached the MIDI shield and ran the MIDI cable from the MIDI-Out on the shield to MIDI-In on the synthesizer, the program was successful. This specific program plays every note on the Synthesizer in ascending order with a 100 millisecond delay. Next I uploaded another program into the Arduino:

Following the same process during the upload phase, the program functioned. I began playing around with the variables, changing notes and timing to learn what, specifically, each line of code does.

My Third task
Find out how to control synthesizer settings through the Arduino. Construct the BeatBearing assembly.

Summary of actual work over third weekend
I was not able to control the synthesizer settings with the Arduino. I am still attempting to do so but I will require more research. Instead, I researched potential building materials for the base of the Beatmaker and dissected the wire diagrams. I also continued the previous groups work to understand how to program the Arduino to be controlling the synthesizer in real time instead of looping a program.

Week3 Narrative
Continuing with Dom's work, I tried uploading a program to the Arduino that would change the input based on a sensor value attached to the Arduino. Using the analogRead function.

The analogRead can pick up very random values, based on a massive amount of conditions - the one that I noticed was the closeness of one's hand. I loaded the Analog Input test code that will blink a light for a length of time based on the analogRead (the lower the voltage, the faster it blinks, the higher the voltage, the slower).

The light was not behaving consistently and I do not know why. I will be revisiting this issue once we have the board built and I can begin controlling the Arduino and Synthesizer with simple switches.

Next, I analyzed the wiring diagrams provided by Makezine and sketched out a simple wiring setup that fits our material list. Hopefully the schematics work through an Arduino, otherwise I will have to hard-wire a separate circuit to control the input from the main board.

Finally, Patrick Marsden, a member of my team, drew a CAD model of our main board that I will be mounting the circuitry on to. I've decided that PMMA will be the safest and most workable material.

My Fourth task
To construct the main board of the Beatbearing. To edit synthesizer settings using Arduino. To create each bearing circuit, using washers and wire, then mount the wiring on to the board.

Summary of actual work over fourth weekend
I spent the week splitting washers and wiring them to the ribbon cable. I was unable to hack the synthesizer or mount the ribbon cables on to the board.

Week4 Narrative
I began connecting the washers to the ribbon cables. In order to do so, I followed the steps below to prepare the ribbon cable and attach the washers, assuming that the washers are already cut in half. The precision of the split in the washers is not important.
 * Step 1: Remove pin connector from one side of the ribbon cable


 * Step 2: Pull the red wire apart from the ribbon cable, this will be your ground wire. Be sure not to remove the wire completely from the cable.


 * Step 3: Split ribbon cable in half, similar to how the red wire was detached. I used my fingernail to split them and then pulled them apart by hand. The reason behind splitting the ribbon cable is so that each half will be utilized under each track of the Beatbearing. So, because I have four tracks included on the Beatbearing, I must use 2 split ribbon cables.
 * Step 4: Use a dremel or power sander to remove coating on washer to allow solder to stick.
 * Step 5: Once the coating is removed from the washers, strip 1/4 inch of insulation off the end of each cable in the ribbon.


 * Step 6: Solder wire to washer. If the solder begins to bead on the washer more heat must be applied so heat the washer to allow the solder to attach.
 * Step 7: Repeat step 6 until all the washers are attached to separate wires within the ribbon.
 * Step 8: Repeat steps 1-7 in order to have duplicate wiring for the other 2 tracks on the Beatbearing. If there are only two tracks then one ribbon cable is sufficient.