Bimini Road: Cogito Cartesian Sequencer (Current Version 0.5)

    First, thanks are in order:

    @JDRaoul - for as-yet-unimplemented help and the LCD number hack
    @afta8 - Scale mapper - (w/ 1 modification - knob instead of fixed root note - try it out!!! Sounds AMAZING especially if you modulate it just a teensy bit around a value)
    @jjthrash - more help that hasn't made it in yet

    Known issue: the number 7 (and 17) doesn't display correctly. Probably gummed something up while pasting it in. All other numbers display correctly.

    Features (Top to bottom, left to right)
    LCD Numeral Display - displays the value of the step at the intersection of the XY coordinates.
    Top 2 LED lanes - displays the maximum step value for the X sequencer
    3rd LED lane from top - current X sequencer step
    Bottom 2 LED lanes (above XY plane) - displays the cursor location on the X axis
    LED XY field (the mostly filled-in part in the picture above) - 8 stacked 16 step sequences. Sequence 1 = Y1, Sequence 2 = Y2, etc.
    2 LED lanes in from the left - displays the maximum step for the Y sequencer (Y only has 8 steps, so anything over 8 wraps around - cool bouncing effect if you set it to 12 or so)
    Next LED lane in - current Y sequencer step
    % Button - toggles the % knob on and off
    Blank button - writes the V knob value to whichever coordinate the cursor is hovering over (0=skip)
    V - "voltage," or, a number between 0-24 which then gets multiplied and shunted through @afta8's scale mapper
    X - controls X cursor position
    Y - controls Y cursor position
    O - if X sequencer is NOT running, O will control which sequence is playing
    R - root note of scale mapper - must be set to an integer to be in tune with anything on this planet, but very cool if modulated (may even build in a lil' LFO for just that purpose)
    = Button - Syncs X and Y sequencer (reset)
    ^ Button - Start/stop Y sequencer
    ^ Knob - Y sequencer speed
    Left # - X sequence max step
    Right # - Y sequence max step
    % - divides/multiplies the X sequence step number which in turn drives the MUX that controls the Y sequencer. .5 = half as fast (it's done with a multiply node). Cool stuff can happen with this knob. Only works when the Y sequencer is running.
    Output hole - internal keyboard output (very useful if connected to Y and O simultaneously)
    Lighted button, bottom left - Toggles keyboard control on/off - keyboard currently only works from C4-C5 (all white keys) - will fix this in the first full version
    > Button - Start/stop X sequencer
    > Knob - X sequencer speed
    2nd lighted knob - Write random function - whatever Y lane you have selected, it will write random values based to each step. Very useful to quickly get up and running, or just to seek songwriting inspiration. Because the scalemapper is there, everything will sound in-key. You could potentially master this function and make improv sequenced synth music (at least, that's what I plan to try to do!). Push to write - wait a brief moment, then turn it off again (if you have it on while you scroll through other steps, it will write a random value to the new lane's 16th step because of the way the one-shot works - not necessarily a bad thing, just make sure you turn the button off if you don't want that to happen - I accidentally did this at 1:06 of the sound sample above)
    <> Knob - Dividing function - shrinks the range of the random numbers
    + Knob - Raises the floor for the random numbers. To get zeros (skips) more often make this knob go negative.
    X Gate - X pulse
    Y Gate - Y pulse

    To get an idea of why I spent so many hours working on this thing, listen to the above demo - this is a recording of my first time actually playing with Cogito. The picture from above shows what it looked like while I was playing with it. I turned on the keyboard control, wired the output hole to the Y knob and the O knob, clicked C4, pushed the write random, pushed the button again to turn it off, clicked D4, repeated, etc, until the whole grid was full. Now, I can play each of the 8 sequences with the keys C4-C5. What I'm doing throughout the demo is changing the clamping values and writing new random numbers.

    To get a hang of how this works, set the <> function to 6-8 so that the steps being written hover closely together. Set the + knob to zero for the first step. Write the sequence to Y1. Repeat on Y2, Y3, etc, but increase the + knob each time - what you'll end up with is a kind of pseudo arpeggiator with more uniqueness to each step.

    Another way to use the sequencer (without a keyboard) is to set X and Y speed equal, press sync, and now the values will be read from 1*1, 2*2, ... ,7*7, 8*8, 9*1, 9*2, ... , 16*7, 16*8. Try toggling the Y sequencer on and off to switch between the "diagonal" sequencer to the "straight" or normal sequencer. This is the function that really puts the "Cartesian" in Cartesian Sequencer.

    To make this a 128 step sequencer, you have to set the Y speed 1/16th of the X speed and press the = button. IMPORTANT: Get as many decimals in there as you can - if the proportion is not a rational number, they will eventually drift apart (which will still probably sound cool, but won't work exactly like a 128 step sequencer).




    unnamed (16).png
    1136 x 640 - 146K
    unnamed (17).png
    1136 x 640 - 463K
    unnamed (18).png
    1136 x 640 - 788K
    unnamed (19).png
    1136 x 640 - 201K
    Bimini Road Cogito Cartesian Sequencer V0.5.audulus
  • A conductive stylus.. and PATIENCE. :)

    I'll give it a try later.
  • @Taylor - keeping the philosopher theme running, btw
  • @biminiroad
    This Mad Scientist hat that I've been sporting in my secret laboratory belongs to you now. Wear it wisely.
  • @biminiroad, wow the guts of this are something else! and nice use of modulating the root note on the scale mapper! Good stuff!
  • hey now all my ios phone does is get lost about there at thirty %. i looked aroud and found that rene makenoise and was ok try with only four by four. got 3oscillator a filter for each y but by then its up to 15% but that runs. really cool instrument. ive been anding the output xy for both to only play when both xy are highs to16 adsr gates ! and it reads 16 knobs for only pitch so far. add in the euclid rythm for lots of additional power thanks for posting your cartesian creation
  • thanks @hruffin3! I'm having some trouble getting Audulus to work on my new computer, but once I have that figured out, I'm going to update this and fix some things that are a little broken about it.
  • I kinda hit a brick wall with the iPhone on this one...can't wait to start designing in high res on a 23 inch monitor instead of a 5 inch one haha
  • fractal patch wauw
  • I uploaded a couple new songs using this patch. I finally have a new computer and can now use Audulus on something other than an iPhone! I used the "convert melody to midi" function in Ableton to control the samplers (instead of piping in the straight midi info) to apply a little randomness and groove to the parts. In Hywel Dda, a sweeping filter on the original synth part (the 16th-note pulses that fade in and out in the background) is causing the phrasing to happen, while the distortion is causing errors in the algorithm in Ableton that add up to a jumpy grooviness.
  • Unfortunately it does not servive the conversion to Audulus 3. It disappears after the conversion message is dismissed. Really nice though!
  • Thanks! I'm making a much better and more flexible sequencer than this one based on what I learned building it. I'm basically cloning the Monome, including its open-source philosophy.
  • Any chance you will update for v3?
  • @macromachines - probably not - I have better sequencers in the works :)
  • @robertsyrett @stschoen - ever see this thing? I did this on my iPhone. We've come a long way, baby!
  • What a tease, it's an Audulus 2 patch!
  • @RobertSyrett - I'll recreate it someday :)
  • That is absolutely massive! It’s interesting that you’ve gone from building huge, complex modules to small elegant ones. I find myself doing the same thing. The first sequencer I built had everything but the kitchen sink, chaining, quantized notes, built in BPM clock, note values, triplets, dotted notes, etc. I finally gave up when I realized it was using so much CPU, I probably wouldn’t be able to drive much with it. Truly, less is more.
  • BTW, I’m working on a seven segment display driver if you’re interested. I’ll put it in a little module, how many digits do you think I should do?
  • Well, I think I'll work on a MUCH simpler 4x4 Cartesian sequencer.
  • @stschoen - ooh maybe make it modular so you can have multiple digits? @jdraoul made one a while back too i think. a low-cpu alpha numerical one would be amazing