A New Musical Controller:
The "COWE" by Perry Cook 2003
the zen master said to the hot dog vendor:
"make me one with everything"
Well, this controller is my shot at making
"one with everything," thus the name:
Controller, One With
Everything
or COWE (pronouced "cow")
*Thanks to Michael Gurevich for the inspiration for the name
The basic idea started out as an experiment
to make the ultimate shaker/scraper percussion controller,
for use with my PhISEM (Physically Inspired Stochastic
Event Model) instruments (see STK, my book, articles,
etc. about PhISEM). So I wanted to be able to shake,
scrape, rub, etc., plus have lots of control for managing
presets and parameters while playing. Once it got underway,
it looked so much like a little wind instrument that I
added a breath controller too. There's also a couple of
other treasures hidden in the case.
The microprocessor is a BasicStampIISX, with a MAXIM 1271
8-channel A/D, and a 251MUX for switch decoding.
The total complement of sensors on this device, and roughly
how they're hooked up, includes:
- 4 Rotary Pots, connected to 1271 A/D channels 4-7
- 1 Slide Pot (with motorized positioning for haptics),
connected to 1271 A/D channel 3
- Motorola MPX5010DP air pressure sensor,
connected to 1271 A/D channel 2
- Linear Force Sensing Resistor, wiper connected
to 1271 A/D channel 1
- Further, this wiper is connected via a 100K resistor
- to pin 1 of the BSIISX (more on this later)
- One side of the FSR is connected to ground,
and the other is connected to pin 2 of the BSIISX
- 8 pushbutton switches, arranged in a line (so we
do fake recorder/flute instrument fingerings,
connected to the 8 inputs of the MUX251
- The output of the MUX is connected to BSIISX pin 5
- The three address pins of the MUX are connected to
the BSIISX pins 9-11
- Two extra push buttons located on the lower side of
the COWE, connected to BSIISX pins 3 and 4
- Analog Devices ADXL202 2-axis accelerometer,
connected to pins 6 and 7 of the BSIISX
- The interface pins between the MAXIM A/D are connected:
CS, BSIISX pin 11
SCLK, pin12
DATA In, pin13
DATA Out, pin14
- MIDI output from pin 15 of the BSIISX
There's also an LED connected to this pin to indicate MIDI activity
Here's my original lab notebook page (yep I put many/most
of my thoughts/designs into one of these):
And finally, here's a big chunk of code that
includes routines for accessing the sensors, and various test/demo
functions
|