tech
 

Share/BookmarkHard Drive VJ/DJ

HDDJ

Since being a VJ at coachella for the past couple years, I’ve become interested in finding new ways of controlling image media. I found this instructable that I’ve been wanting to mess around with a while back. It computes the hard drive disks speed and direction using a microcontroller and sends it as serial data to a computer. The computer translates this data into MIDI or OSC which can control audio and video in a variety of applications such as Max/MSP, Modul8, or VDMX.

The instructable uses a PIC microcontroller, but since Arduino is my current microcontroller of choice, it became a matter of porting the idea. Fortunately, Matt Gilbert had done most of the work for me.

HDDJ

I ended up creating my own version of the circuit, more similar to the one on the instructable rather than using his. I tried Matt’s circuit based on the diagram he provided, but for some reason wasn’t able to get it working. His code works pretty great though and is well commented.

Because I wanted to be able to use multiple controllers at once, I decided to use the LM324 Op Amp to amplify the signal coming from the hard drive. I hooked up the hard drive signals to an oscilliscope to see what I was getting. With the help of Eric Rosenthal I was able to get some good readings.

With some tinkering, I was able to figure out a circuit that gave me a pretty decent response to the movement of the hard drive.

I started working with Marko Manriquez to design a prototype for our controller. Marko found some nice slabs of plexi, so we decided to use those. He was able to take the hard drives disks completely out of their case and reassemble them. We added some LED to indicated the moment of the two disks and wrote a simple processing sketch to visualize the data being sent by the Arduino. I hope to have better schematics and Max patch sometime soon that makes use of our controller. Until then, enjoy this video!

 

Share/BookmarkPlinko


Wrote a processing sketch to emulate plinko, the game popularized by “Let’s Make a Deal!”. You can see the sketch here. Every time a new ball hits a peg it is diverted one way or the other based on a random number that is generated (if 0 go left, if 1 go right). Once a ball reaches the bottom of the pegs they are killed, which then increase the size of the bar in the position they ended up. After the cycle continues for a while you can see the bars begin to generate a normal curve.

 

Share/BookmarkCity Noise

Noise

Concept

Instead of improving on my original concept, I decided to take a new direction that compliments one of the other interests in my work. For the data logging project I sample audio noise in Manhattan and Brooklyn. I am interested in the noise of the city an how it affects us over time and location.

The original idea was to take six samples total(3 Brooklyn, 3 Manhattan) each 10 minutes long. I am choosing major thoroughfares in each of the two boroughs which I have mapped here.

Execution

I had planned on taking the three Manhattan samples Tuesday and then Brooklyn on Wednesday so they could both be around noon on a week day. Tuesday I went out and was able to get samples from Union Square and Times Square. I positioned myself in a place about 20ft from the street and in major flow of foot traffic in all locations.

On Tuesday I went out to Broadway and Flushing and just as the recording was ending, the battery on the recorder failed. I realized the M-Audio records were very poor records and would be better off just using my iPhone with a mic.

Analysis

Now I was left with one sample from Brooklyn and two from Manhattan, so I brought these into Processing and wrote a csv with the amplitude data. Because the sound levels were so low(even though they were maxed on the recorder) I had to boost the gain, which created noise on top of noise. The data samples were taken 10 times per second. I then took this data and created a graph shown below.

Brooklyn = blue
Manhattan = red

Noise
Noise

Next steps

This data needs to be filtered. I could probably take the averages of certain time periods and create some sort of curve that would better represent the data. Still, you can see the peaks of noise which gives you somewhat of an idea about noise pollution in these areas.

 

Share/BookmarkFantasy Device – Nutrition Analysis

I feel like I’ve been all gadgeted out lately. It has become not a matter of what exists, but rather what devise works properly and have the necessary features without being overly complexified. That being said, if there was one device I would like to see, it is something that helps me keep track of my health through what I eat.

This device consists of two components and would be easily portable so that you can keep track what you eat where ever you go.  The first compontent is the analyizer. This is basically a minutre tent that easily flaps out. You then insert what ever food into this space and press the single button begins the analysis. While analyising, there is a yellow LED. Once the analysis is complete it then uploads the data to the second component—your iPhone. After uploading the data, the green LED turns on indicating a return to “ready” or “idle” status. If the analysis or upload is unsuccessful, a red LED will blink.

Your data is then store in a database on your iPhone as well as being uploaded to an online account that keeps track of your eating and drinking habits. Their are two major difference between this device and calculating typical nutrition facts.

  1. You can calculate restaurant meals and items that don’t have nutrition facts
  2. It is a much more in depth analysis than the information provided on current nutrition facts. These facts include any harmful additives (such as MSG)

 

Share/BookmarkInfrared Theremin

Infrared Theremin

I got some nifty sensors from Ada Fruit a few weeks ago to do some demos for my Intro to PComp class at 3rd Ward. They were all pretty easy to get up and running.

The one sensor I didn’t really get a chance to test out was the IR Reciever. I’ve had a bunch of Apple remotes lying around and since pretty much anyone with a Mac has one of the remotes I thought it would be a good universal control. In this case, I would have a combination of buttons activate a “lock”, thus the creation of a IR remote combo lock.

I found a sketch on the Arduino site that analyzed the various button press signals from any remote. With this I ended up with at waveform graph for each button. The documentation for this ended at this point so I emailed the creator to try to find out what to do with this info. He ended up referring me to another thread.

I ended up deciding to switch gears back to an IR distance sensor Theremin I had previously started. It was a very easy setup. I found a speaker someone had thrown away and hooked it up to the digital PWM pin as an output and then to the ground. The IR distance sensor plugs into the 5V(red) and ground(black) and then an analog input(white).

int sensorPin = 0;
int speakerPin = 9;

int val;
int distance;
int tones[] = { 1915, 1805, 1706, 1608, 1519, 1432, 1859, 1275, 1205, 1136, 1072, 1014, 956, 903, 852, 804, 759 };

void setup() {
pinMode(sensorPin, INPUT);
pinMode(speakerPin, OUTPUT);
pinMode(speakerPinB, OUTPUT);

Serial.begin(9600);
}

void loop() {
distance = int(analogRead(sensorPin));
val = map(distance, 40, 640, 0, 12);
Serial.print(distance);
Serial.print(",");
Serial.println(val);

digitalWrite(speakerPin, HIGH);
delayMicroseconds(tones[val]);
digitalWrite(speakerPin, LOW);
delayMicroseconds(tones[val]);
}