MidiVox Ableton Instrument

arduino,max/msp,midivox — JP @ March 29, 2010

Midivox #1 together

Having assembled my MidiVox, I set about trying to use it in ableton with sequenced midi control and automation of the CC controls.

I hate dealing with native midi in abelton, the automation is never user friendly with a giant list of everything, and control isn’t exposed in the UI, so the only place to change the values is in the envelope part of the workflow. So I thought I’d delve into Max4Live and make a nice simple front end midi controller that can be added in front of the external instrument and contains all the default Live dials and is specific to MidiVox.

Attached is a zip that contains this first pass as an ableton instrument, as an ableton instrument rack including the external instrument and as the plain max patch. I have no idea if it will work on other peoples systems, as this is my first patch shared, let me know if you can get it working, or if there are issues. I have a ton of ideas for making it better, but for now it works and serves the purpose.

midvox_for_Max4Live.zip (0.1 release)

Arduino Step Sequencer

arduino,Modular,Sequencer — JP @ March 24, 2010

Ever since buying a couple of modules, I’ve fallen in love with analogue modular synths, they are addictive beyond belief and I’ve yet to find anything as engrossing as standing in front of it twiddling knobs for no apparent reason generating all sorts of swirling modulating filtering noise. I can loose hours very easily. As always though I’m never satisfied and I want to tinker. One of my projects I’m most actively researching is the idea of an arduino based Step Sequencer.

There are a million threads online with people desperately trying to get their trusty arduino’s to generate control voltage. The problem you have is that the arduino doesn’t live in a real analog world, it’s all about the digital. The only smooth it can do is PWM, and even then it’s really not go lovely to listen to. There are huge threads about people applying filtering, or faking analog with complex software, or powering 8bit, 12bit 16bit DAC and the huge amount of arduino sketches needs to handle them, and to be honest it’s totally terrifying for something that is as easy as turning a pot. So I decided to take a different approach. (if you really want to make music with an arduino, go see midivox, I just got a couple and they kick ass)

I want to keep the analog signal pure, and only handle the step side of the equation using the arduino. So the initial idea would be 8 pots, 1 thru 8. a single CV in, a single CV out. The arduino would be hooked up, so that when messages are sent down the USB connection, current passes thru 1 specific pot and comes out the other side.

Idea

So I can set up my “notes” with the analog pots, and then just trigger which one, when, how long and what order they get “played”.

After this initial prototype, I’d shoot higher and aim for 3 or 4 rows of 8 each with their own dedicated CV in and out, and gate outs, and tempo outs, and LED’s flashing, and a front accessible USB port, and way to store sequences on a memory chip that is slotted into the front and sequences chosen using nothing but the power of the mind, etc etc etc.

The other idea

It seemed like a no brainer DIY project, that maybe one day would lead to PCB’s and kits and open source and all that stuff I aspire to do.

Due to my limited real knowledge thought I’m already overflowing with questions. First of which is how I do this, and what’s the best “switching” mechanism should I use. Should I use relays, optoisolators, Voltage controlled resistors, transistors or just good old plain Jane relays. I have some open question on the arduino forums so hopefully I’ll get some validation for my madness. Any suggestions feel free to jump in.

Blipnome (eurorack mount?)

arduino,Arduinome,Bliptronic,Enclosure — JP @ February 20, 2010

Stray Technologies aka Vblank, has finished up doing his bliptronic to blipnome arduino conversion, and has made available a $70 kit to do the conversion including 4 pots which control ADC in Arduinomeserial.

This is such an awesome project and something I’ve been hoping someone would crack since the Blips first came out.

I’ve ordered two, the second one is to work on a dream of mine, and that’s a eurorack mounted monome interface.

Blipnome in a eurorack?

It fits a treat, I just need to find a faceplate with the correct holes, as the blip case isn’t ideal as it’s plastic and curved with speaker holes.

Threshold Toggle

arduino,max/msp,Software — JP @ July 22, 2009

Threshold Toggle Max Patch

thresh_hold_toggle.maxpat

I needed this functionality for one of my arduino midi projects that’s on my to do list, this was a quick 15 minute blast through. I’m sure the max isn’t awesome and probably very ugly, but it works.

Xyloduino Prototype

arduino,Build Process,Hardware,prototype,xyloduino — JP @ February 17, 2009


Xyloduino from JP Sykes on Vimeo.

I’ll post some code and details of how it’s setup later tonight when I get home.

Arduino to Servo

arduino,Build Process,servo,Software — JP @ February 14, 2009

Spent a couple of minutes this afternoon playing around with my new SG90 servos I picked up on ebay for a steal. Initially I just wanted to get them talking with an arduino – which although initially looked easy, was a bit of a time vampire. Anyway, trick seems to be code like that attached, and ensuring you have the 5v unplugged until everything has updated and started (no idea why, but seems the loading voltage changes seems to freak the servo out.


int signalPin = 8; //servo signal pin

void setup()
{
pinMode(signalPin, OUTPUT);
}

void loop()
{
for (int i=0; i <= 100; i++) // turn to CCW end, hold 2 seconds
{
digitalWrite(signalPin, HIGH); // control signal high
delayMicroseconds(900); // for 900 uS
digitalWrite(signalPin, LOW); // control signal low
delay(10); // wait 20mS
}

for (int i=0; i <= 50; i++) // turn to CW end, hold 2 seconds
{
digitalWrite(signalPin, HIGH); // control signal high
delayMicroseconds(1100); // for 1500 uS
digitalWrite(signalPin, LOW); // control signal low
delay(1); // wait 20mS
}

}

Some useful reference sites, but be aware that neither of these I could get the code to work, but probably more my issue than the code:

http://principialabs.com/arduino-serial-servo-control/
http://itp.nyu.edu/physcomp/Labs/AnalogIn

Next step, aiming low, I want to get a button in max that will trigger the servo movement:

http://www.cycling74.com/forums/index.php?t=msg&goto=165203

Once I have that, I just need to replicate the action with the 6 other servos, work out how to attach hammers to them all, and then add some sort of step sequencer in max so I can have a 6 note analog drum kit.... that is until my xylophone arrives.

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.
(c) 2012 Nomeist | powered by WordPress with Barecity