Author Archives: aereed@andrew.cmu.edu

Project 2 – Magic 8 Ball – Alex Reed

For this project I wanted to explore the possibility for using voice to text to control Max. After a lot of research and trial and error I found that speech processing is better suited to other programs, like Processing or Google APIs. So the project transformed in to small “performance” piece, where with a little behind the scenes magic, the user can ask to know their future.

Here is a demo video:

And some screenshots:

Gist:

Project 1- Alex

I like taking digital mediums and making them more accessible for untrained artists. I think that everyone should be able to mess around with computers and make cool stuff. For this project, I decided to make a physical interface for the media lab control patch Jesse gave us.

insert photo of the arduino I forgot to take here

Arduino control code

// constants won’t change. They’re used here to set pin numbers:
const int buttonOnePin = 3; // the number of the redlight pushbutton pin
const int ledOnePin = 9; // the number of the LED pin
const int buttonTwoPin = 4; // the number of the yellowlight pushbutton pin
const int ledTwoPin = 10; // the number of the LED pin
const int buttonThreePin = 5; // the number of the bluelight pushbutton pin
const int ledThreePin = 8; // the number of the LED pin

// variable buttons
int buttonOneState = 0; // variable for reading the pushbutton status
int buttonTwoState = 0;
int buttonThreeState = 0;

//variables knob
const int potPin = 3; // select the input pin for the potentiometer
int potVal = 0; // variable to store the value coming from the sensor
int mappedPotVal = 0;

//variables slider
const int slidePin = 0;
int slideVal = 0;
int mappedSlideVal = 0;

//variables for ir detector
const int irPin = 5;
int irVal = 0;
int mappedIrVal = 0;

//joystick
const int swPin = 2; // digital pin connected to switch output
const int xPin = 2; // analog pin connected to X output
const int yPin = 1; // analog pin connected to Y output

int xState = 0;
int yState = 0;
int mappedXState = 0;
int mappedYState = 0;

void setup() {
Serial.begin(9600);
// initialize the LED pin as an output:
pinMode(ledOnePin, OUTPUT);
pinMode(ledTwoPin, OUTPUT);
pinMode(ledThreePin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonOnePin, INPUT);
pinMode(buttonTwoPin, INPUT);
pinMode(buttonThreePin, INPUT);

}

void loop() {
// read the state of the pushbutton value:
buttonOneState = digitalRead(buttonOnePin);
buttonTwoState = digitalRead(buttonTwoPin);
buttonThreeState = digitalRead(buttonThreePin);

// check if the redlight pushbutton is pressed. If it is, the buttonState is HIGH:
if (buttonOneState == HIGH) {
// turn LED on:
digitalWrite(ledOnePin, HIGH);
} else {
// turn LED off:
digitalWrite(ledOnePin, LOW);
}

// check if the yellowlight pushbutton is pressed. If it is, the buttonState is HIGH:
if (buttonTwoState == HIGH) {
// turn LED on:
digitalWrite(ledTwoPin, HIGH);
} else {
// turn LED off:
digitalWrite(ledTwoPin, LOW);
}

// check if the bluelight pushbutton is pressed. If it is, the buttonState is HIGH:
if (buttonThreeState == HIGH) {
// turn LED on:
digitalWrite(ledThreePin, HIGH);
} else {
// turn LED off:
digitalWrite(ledThreePin, LOW);
}

//check the turn potentiometer values, map them to the bay range
potVal = analogRead(potPin); // read the value from the potentiometer
mappedPotVal = map(potVal, 0, 1023, 1, 9);

//check the slide potentiometer values, map them to the saturation range
slideVal = analogRead(slidePin);
mappedSlideVal = map(slideVal, 0, 1023, 0, 255);

//check switch
xState = analogRead(xPin);
yState = analogRead(yPin);
mappedXState = map(xState, 0, 1023, 0, 255);
mappedYState = map(yState, 0, 1023, 0, 255);

//check the ir values
irVal = analogRead(irPin);
mappedIrVal = map(irVal, 0, 550, 0, 8);

Serial.print(buttonOneState);
Serial.print(” “);
Serial.print(buttonTwoState);
Serial.print(” “);
Serial.print(buttonThreeState);
Serial.print(” “);
Serial.print(mappedPotVal);
Serial.print(” “);
Serial.print(mappedSlideVal);
Serial.print(” “);
Serial.print(mappedXState);
Serial.print(” “);
Serial.print(mappedYState);
Serial.print(” “);
Serial.println(mappedIrVal);
delay(50);
}

Control patch

bpatcher edits

video of working is too big sorry

heres the gist

Assignment 4 – Alex

For this assignment I decided to make a voice changer, I found a tutorial online for a robot voice, so I started there then I explored the [gizmo] object and added  speed and pitch shifter. Here’s the gist, if you have time, record your voice in and play around!

https://gist.github.com/alexesreed/0d02756669b748476983e9fff502652d.js

For funsies you can listen to Trevor Noah do a set as a speedy robot.

 

Assignment 3 – Alex Reed

Mostly Screaming

Proposal #1 – Alex Reed

As an interaction designer, interfacing the virtual world with the physical is super interesting to me. For this first project I would like to see how Max interacts with sensors and microprocessors like arduino.

I’ll be using physical inputs, like motion, light, buttons, poteniometers, etc. to “dj” a short piece. Kind of like an unnecessarily complicated midi board interface.

Assignment 2

Three videos (Spaceballs, Little People Doing the Single Ladies Dance, and Funniest Star Trek Moments) are played simultaneously. The frames are triggered to start/stop via the various levels of the song Remember the Name by Fort minor. Then the song is shifted 1 second off and fed back to the system

FLicker


----------begin_max5_patcher----------
2477.3oc6bsrjaqaDc83p7+.iVkaUSTgW7UV4rJaRVkkWmxEDEjFXSRvKIzL
dxsh+1CdPR8Xnjnffn0jDWkGogj.c2GbP2MZ.N+9G+vCyVH9NqYVveN3WCd3
geWckGLWSekG5tvCyJneOKm1XdvYErlF5Z1rGauoj8co4FMRQU+U4KMWSr3q
+ITT+UK2TH1HyYRSWA6tbEUl8Dub8WpYYRq1fw34fGCHgg5Or+BBMGD7O6ZT
i70blQH8cusukuVwrcxrYaebkn4kcRFYt3+9ieP+o5iGudq+kZtjMn4Sbw7i
fFyGPLlez8h4WxdQYSu05qC9GxMqVMn8Cbv9IPigSZYAH+Z+.ua+ekKm+bV8
P1OL8H1O5j1ug2GhRrz.2rekV8kBprl+8YOdbz.OkrAXhKrAjYBPbb76C1Py
Ir+3iX+fSX+PKM.BiSmGp..xn.f8LR3MXPVofh5kEC50C5vvbDxP5IvT8GQo
2+CymBAvNLPGAMDcXngnGCmxw4LQQAqT9Vyrpl0vpelorVZtjWvBT+Po2A+Q
5xkAh5fk0hpfU0TUrw.ZSPIisjs7WlGDHVsJXwqAKYqnaxk+g9tNmWp.tMkx
8bCtRTJa3+Ki0A0yw245kpN2nL+kZNMeP3NwA7NkDaiuZcvhsQaI+jAbchTA
57Izfr7IVPg3Y9VN10gSQN.SI.iKWLBtCLg.+jgISFWATK57nk.VSUWh2D74
YXk58YUXuLwRVl8ReshsVeoeaCMmKe0dwRQcAMWeYM0tIil21AQ.U6+b4vjV
reFLbIXPhMX.Bg2YvfjLMCFTordC2STwzyEiPKMarlVOOyNAtDmB1YtLLD32
vGP+ujg8Vvz0AkjXGh2FGs6z52cqwZODCeoHFzkkkDkZhWfRr.mchH99cYY5
kk7ax41zTBhH.kiBPvm5CjC8D8CBcXMNQo1z8ro4.SB87hbzp9JZFaOGpdZN
sFXWU0r1a9Bgnq.ASMoJm.5pUvERGmNX6nwxoMuVlonkK0IYtrwj0ye8uoBd
Wpej.doTnhzqPcIqNvNZGrRzsDDEpnx1T2F8.fJsSy2egWtT7RPiRqey8rcw
7gCtGNTULfNDpNNB2ttscBIEGNMgp8OEEeNJZgJWq8xNZ.LIDaCLCgyIDLFk
9tf3dJGrs7rU47ruoXmeZUtfZRcGF7ICmq0u6fXJwkhCYKGRB1tBYhiNNWPK
Wep5BccTuJKrL3R0Bcvna4MsKM1RYPw6ZymieLATg04y25IqmPP2HEJGN7rc
h2tKGH5JfCqqED.eKqPn+AqkzreL3pScwMKpsXow1rxhu7pl3+LuT9.VpyiM
HD.7j+WjSkNEXvFXjcZS38xhhNFtUQy9V.vmnVp6nFxtwK9tRj2.1lJ8ke3I
.CCbIjTKfEeU6WUCecoVoZiM4e3aSwBVsuvoylwtRm4EaJNm6qNry5C245V7
VTqhpKIlJi4uvJoKxmzDijzJkJ5MNI1gIwnTnd2Rv1cUHDdUbxIyAnB33k+H
.B.dyEHl3N5Awvcx25hQOk0nVCWooWmr5pIpXkCFJvkhjgB6q18nysXBhDHE
qWmO74Mvo4JfH8ns0JQjtedYVIuTNwdeNJEPm.9fkb1oCiPnIA.HHzlfY38d
5.5khX1UjfOkKDUGqLeWbMSScoLecnGrMSTHvspl9SoNeWLAKF4nu1+OASid
tTYfNz6+tHXOKxCFrjQwt3BCZO5L8Lrn69854XSvhbYUvcGfl+meBVXhCSv5
O9QuGmfsXiTJFLcvPx0jKf8j53ZpRmZ8s2Da8JBKkZ2l36KS8nmIqpbtLHJH
dPT.3d9KowI1SjoatNz4F+3goHeiOFlVrfDDN3IFH08PsoVx+6Or.DfGDKtB
uhIHz8JVbb2ADh6AQShuC87kyelMeMkWtshSOSq6iGNvsOVIU1ciY1Nwo4Iw
Kc8FXXnK77KuFa8jZqn.b+M77DECc62z+2r8h5ujyaN25sgiOBaOUug9La4W
zG8Jth.w19sl1AftQ.MDmugIV0c89arqxjKJWehwg8dVEJWKG6C2AUfgtYgx
xz2Tks77i7.TCgJZ3ayK4RUJTC.kC8X1QLkr5GM16o1ndp9oFj1Gnkku8Kd0
a2ppb5q+vyIORvtDxvR8SrGrY66yxkm53H2Yf84vJcVoFmh.uf1vyjpwGcep
FaH8jAEjjmKdYctXAMWxJpD6w0T2ttfVJyD0ZSkKJ2+1cmDBqD54uyD070bk
kjyJWKepEgvXbRxbBHAFgUVnjm8slsl31F0qFPzNr5YUbEneLEo8rtNjtXNu
qxZlp0VEQMl3AJ496wxNzmqHHab76w8F4nqsMBLGE5qIkNUM.CpFE29RVcub
LFUg1T8jm.Fj6zsH6IqIbf04Zl2ad5n2w6NWgTrxWUTv8LIis4P1toJ3a0gR
v9Xl8H+vW0UitouwAfXiXScVmb5dGVC1Q+Vp7bpbI24u8W29p906EcvwqwKP
xTKPvnEHxKBTmcc.bTBbmmRTujUelWmqKSEFMHeaTgQoAPuMLCGm.Q9SffI1
B0uJDSp.Sm5gvQ4KBGdDVKb5Tga37lzwwii8FpGGNwBTWp9IUfvwIPh2DHdb
PJ1eyTGkunT+MUcTHJIwejTzXDXGU1GB7hPzahmfwoBw2R2giSENbBcuJf7f
JDkbIpfObOQl34RgSM2Nbbip9ye3nbG5uQPxnRbID4WAd1L96fceHvjwHPRp
eE34c36OJCgLwS6I3Qk4G4F5vebp.7V5vebnt+RTZTxC6uDkviGhg9Qfix4N
xeyTwfKAR2dh9WVI3kxls+UpRusd.S4Bw.66Qu927SIYFkCZr+7WhFk6Kr+h
HfF0Z0I9iXivSs.mVOEiqhVQvaYsAFUc8Lp.7VpBjy5MYPTusZwzppmY0Mss
vJpYEzuJLJY7i1emWZ+c6K77rZ1y7tlPrWhVm8DWxxjaps0y96Qs6XiYOBqK
2v6rZswpEso12GVo59Bw+RAB.CAgH.ssz3yZ+6qzAnhtX+YhbgdWp0lRK.Y1
Sis+.t+larsh+JP5uKJoYhcJyNMKiUZ6ztNKIDBR08UBAgH1ugA.B5ftlkyJ
NrswIfTHwzD..ASrcCFFkbPi2qUvjjDj9QQIIPfo43PHFCOnQKVuhmm22z81
22tcQX15Z5R9N+EI3.YgRAvzHiH.oIsBSeoCDVayfsaugEcSU+Klz8szgaBp
GHg3X.z.An3HrEVT1p9Eje+1QKWa2aDT7daCbsnRT2uCvywoaawFon2R6yBq
ivYAq8r6TkXIXipGmDFFa+FBA6FV6lz7X2LyZUW+lMsYVghVx6knY10G+f5i
+CjYNpRM
-----------end_max5_patcher-----------

Assignment 1 – Alex Reed

The system I selected was the information database, Wikipedia. I started with a simple search term, Signal, and followed what I thought were interesting links from page to page. Many times I have gone down the wormhole that is Wikipedia links, and ended up nowhere close to the topic I started off on.

This particular trip took me from internet history, to U.S governance, back to computer science, to Carnegie and Mellon, to golf, to horse shows, to obsessive compulsive disorders, to polio, to history, to math, to data, to film, to mythology, to national disasters, and finally currency.