MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

23
MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab

Transcript of MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Page 1: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino

Bobby FataCC Lab

Page 2: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

How it’s used nowAudience:Performance, DJ/VJProduction

Page 3: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Pro’s/Cons

Pros:-Awesome Designs (sometimes)-Well Manufactured (also sometimes)-Easy setup with software-You can buy them online or at your local store

Cons:-Expensive: they can range between $50 for the most basic controllers

up to 700-800 and even $1000 for high end products.

-Layouts can be bland and generic -No real customization

Page 4: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Why I Want to make my Own

1. Cost: I’m going to make my MIDI controller cost less than $100

2. Customization: Now I can choose the types of buttons and sensors I want and also how they’re laid out. In this case, I’m going to start simple, but can develop into a really personal product that will be suited to the needs of the user (in this case me).

3. Learning experience: I’ve never had any real experience with Pcomp or making electronics until this program so I think it’ll be a good learning opportunity. It would involve learning about Arduino, Serial Communications, MIDI, and all the physical aspects of making the controller such as soldering, making an enclosure, as well as choosing the layout, types and numbers of buttons and sensors.

Page 5: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Parts- 4x4 Button Pad- Button Pad PCB- 2 Potentiometers- 16 LED’s

Page 6: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.
Page 7: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

NOT!MIDI? More like WTF

- Serial MIDI

- Other software required for conversion

- Working with Ableton Live

-Code- MIDI CC, debouncing, baud rate, arrays, bytes

Page 8: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Dumber than previously imagined…

Isolating switches on a keyboard matrix??

Page 9: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

A New ApproachExplore options for Arduino Max

- MIDI OX- Pure Data- Firmata - Serial MIDI Converter- Hairless MIDI- MIDI Yoke- Maxuino

Page 10: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Software

Ableton Live 8 SuiteArduinoMax 6Max For LiveTouch OSC

Page 11: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Step 1Load Serial Communication example provided with the software.

Create variables for buttons/sensors you want to attach and make sure it writes to Serial.

In this case, 2 Analog and 1 Digital

Page 12: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Step 2- Write a Max 6 Patch to read Serial Communication from Arduino and convert to MIDI Control messages…

Page 13: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Step 2

Page 14: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Step 2

Page 15: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Step 3Setup Ableton Live 8 Suite WITH Max For Live to receive input from Max

Page 16: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Step 4Map MIDI Controls in Ableton Live

Page 17: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Step 4

Page 18: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Step 4

Testing other sensors: Softpot + Flex Sensor.Results: Crap

Page 19: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Step 5Set up Touch OSC with Live Control.

Page 20: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

All Together Now!

Page 21: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

What I LearnedHardware Failure

- Goals too ambitious. Beyond my programming ability.- MIDI Control Commands difficult to program directly

into hardware.

Software Success!- Bypassed Maxuino- Serial instead of Firmata- Custom Max 6 Patch and Instrument in Max For Live- First time Touch OSC, Arduino and Max have been

used concurrently in Ableton Live?

Page 22: MIDI Control Using Serial Communication, Max 6/ Max For Live, Touch OSC + Arduino Bobby Fata CC Lab.

Next Iteration

-Fully develop Serial Communication alternative to Maxuino

-Write back to Arduino to control LED’s and Servo’s

-Use variety of sensors

-Physical MIDI Controller incorporating Arduino + Touch OSC (iPad)

-Website

-Perform using hardware/software