Chord Vault - Module Idea and Design for polyphonic CV recorder / sequencer

Hey Rack community,

after years of enjoying all the rack library has to offer, I wanted to finally share a module idea and design with you that I have thought about for the past 7 months while struggling to achieve what I wanted to do with chords in my patches. I have attached my design file with a little explanation on functionality.

What problems am I trying to solve?

  1. Most of the available Chord CV modules have a maximum of 4 outputs and using multiple ones further complicates the idea of having flexible channel counts (alternating 4-note, 5-note, 3-note chords).

  2. chords input via the mouse (ie. ChordKey) is too slow and unintuitive for those of us that come up with (extended) chords on a midi keyboard

  3. trying to use multichannel sequencers to “write in” the chords also kills the workflow (manual channel switch on every gate) and output channels are again fixed…

  4. using “DAW”-style sequencers like SEQ++ doesn’t offer you the option to change the chord order randomly switch between chords.

I feel however, that a module should provide those of us who use midi keyboards and want to play in chords by hand a much quicker and more flexible way to input and store them.

So CHORD VAULT is the solution I came up with.

I know the use case I am going for could probably be solved with a couple of existing modules (polyphonic shift register maybe?). So feel free to post solutions, if you think this can be easily done.

Here’s my short description of the modules functionality though I hope the panel I designed is pretty self explanatory.

CHORD VAULT

  • Sequencer (16 Steps), up to 8 channels of flexible polyphony per step
  • CLOCK advances seq to the next step
  • auto input / step record : While GATE input is high, CV is written to the current step. 0V at Gate input also advances seq to the next step. That means: simply holding down keys on a midi keyboard adds all the notes to the step and you can input the next directly after letting go of the keys. No mouse click or anything necessary!
  • BASS output is monophonic and outputs the lowest CV value (send it to a different voice).
  • MAIN POLY OUT can include or exclude the BASS CV
  • Manually select different steps and COPY/PASTE between them.
  • Typical PLAY MODES (FWD, REV, PP, RANDOM)
  • CV step selection mode that uses 0-2V on the CV input (think impromptu sequencers)

There are so many smart people in this community, so your opinion is highly valued. I am looking forward to getting your feedback on both the concept and the design. And of course, if any developer wants to join up to make this module a reality, hit me up!

Cheers, Mirko (aetrion)

5 Likes

I like the idea a lot and the design is really nice!

There are a few things to keep in mind:

Changing polyphonic channel count from step to step can introduce strange behaviour in some modules, so maybe add an option to use the maximum numbers of channels on any of the steps as constant channel count.

A few additional ideas for the recording-mode:

  • recording active while first gate is high or any gate is high?
  • retriggering a note that was already written causes note to be removed from chord
  • output all recorded notes while recording

That way you could hold the base note and build a chord note by note with the option to change a wrong note.

1 Like

Seems like a really solid idea. I am a developer and I’d love to help. You can see the Path Set Modules to see some of my work. If your interested send me a DM.

2 Likes

reminder:

  • simpliciter multi

can record 16 tracks of CV data (or gate data) using the 100hz mode (low memory cost).

data can be stored and recalled easily as broadcast wav file

2 Likes

Yeah. Recording CV into your samplers / recorders has been one of my workarounds. :grinning:

Thanks for the feedback and for offering to help! I really like your ice tray module. Expect a DM from me :slight_smile:

Awesome feedback and suggestions.

I think the recording mode is definitely the part of the module that needs to be well thought through.

I like your „first gate is high“ approach as it doesn’t require you to hold down all keys. And deleting a note by pressing it again, that’s a great suggestion!

Can you elaborate on the issue with changing channel count per step? What I was thinking is that, even if you set a polyphony count in the VCV Midi>CV module, this is just a max number of channels that you can play the keyboard with.

2 Likes

Let’s say you have a 4-note chord and you play your VCO through a VCA with a long release. In case of another 4-note-chord every channel will be reused. In case of a 3-note-chord with 4-channel polyphony one note will not be reused and will be slowly fading out. That note would be abruply cut (most likely with an audible click) when you switch from 4 channel polyphony to 3 channel polyphony.

That means, that even if you only play 4 note-chords, but with 8 active channels of polyphony, every note can ring out - which can be not wanted, so the actual number of active polyphony channels is quite important.

2 Likes

Not the complete package you describe but my module pianoid can sustain a chord that you press down on a midi keyboard (or its interface) and keep it in the patch file. You can use 8Face from stoermelder to have different snapshots of chords. Or use a switch between different pianoids for sequencing. Since the gates are being stored in a polyphonic cable as well you can have chords with varying number of notes.

3 Likes

@aetrion-music fyi my “randomchordrecorder” module allows you to record up to 12 chords with up to 16 notes of polyphony via single v/oct and gate inputs. it is similar to your idea, but with a different core concept. the recording feature works exactly the way you described in your original post, in that recording starts when you press the first note and ends when you let go of all notes.

however, this module only has random playback (no fwd/rev) and has no copy/paste feature. These would not be hard to implement, but feel unnecessary for this particular module, and would require repurposing/ignoring the little knobs i have on each step.

this module was partially intended as practice for building a polyphonic markov chain sequencer in the vein of mr. chainkov, but i haven’t really touched that idea because it’s complex and i’m lazy.

for your module idea, it may be best to augment the gui to show all the notes in a sequence slot. i didn’t do this for my module because a) it allows the user to record any voltage, not just quantizing to 12tet notes, b) up to 16 notes of polyphony seems overwhelming to display on the gui and c) i’m lazy.

2 Likes

Thanks for bringing this up.

We actually development the sequencing part of the module a lot further (cv control, skipping, ordered, etc.). @Patheros and I are planning to release a beta very soon (would’ve been out already if I weren’t sooo slow with the first manual draft).

Looking forward to hear what you think once the beta is out.

1 Like