Sequenced Chord Player Racks

Hi All,

Note: This utility rack depends on having Cantabile Performer with the new custom rack buttons to work efficiently so use version 3644 or later and requires either CodeFN42’s Chordz plugin or Insert Piz Here’s midiChords plugin

After a request from @Corky for some help on a trigger I set about trying to better understand the CodeFN42 “Chordz” plugin he was using and how Cantabile could be used to make it easy to use and program it for the end user and (wait for it … :wink:) ended up creating a slew of new utility custom racks for CodeFN42’s Chordz plugin and Insert Piz Here’s midiChords plugin.

I will use the Chordz type rack in these instructions …

When using these racks the basic idea is the performer presses a foot pedal set to send CC64 and it advances the Chordz sequencer rack to a state where a held MIDI chord is played by the rack which is routed to a VSTi or external synth to make the sounds. With each following pedal press the rack advances to the next chord . When the last step is reached the next pedal press will reload the sequence for another round. This the type of behavior Corky had asked for originally. In the course of making it I discovered 2 other ways it could behave. One alternative was to have the last step loop back to the first chord step with no silent rest step and provide a separate CC25 input switch to break the loop and reset the rack. The other way was a safe style one shot where the single sequence played and then went silent but would nor respond to pedal presses until reset with the same reset CC mentioned above.

So here is how to set it up and use it.

Load it in a song, route it as desired and set the state behavior for the rack. Use a sustain pedal CC64 MIDI message to advance the sequence. Use a CC25 MIDI message if needed to reset the sequence and silence the notes.

The rack has 36 rack states that you use set the desired behavior and number of steps, 12 for each behavior that you select from the drop-down menu on the rack at Song Level.

The custom buttons shown below on the rack have various functions. Button 1 resets the rack and cuts the notes off, button 2 is for advancing the sequence when auditioning and button 3 opens and closes the GUI for the Chordz or midiChords plugin for preset programming and also saves the rack and song file each time it is pressed to ensure you save the preset selection number for the plugin with the song file and the preset data to the rack file.

In use the rack’s content’s are accessed from Song level only. So to access the plugin GUI press button 3 with the gear symbol and the plugin GUI for the VST inside the rack will open.

Use the plugin preset manager to select a snapshot program or use the menu on the plugin window to copy and paste to another Plugin Snapshot slot and set the chords for each trigger note using the plugin GUI itself.

The Chordz plugin allows for 12 steps when set to Scale Only:Chromatic so the sequencer plays one note after the other from low C up. For each trigger key program the desired chord in the GUI. When done press button 3 on the Chordz rack slot at Song level to save your work.

At any point during the programming you can use the audition and reset buttons on the rack to check your work.


When you close the GUi using the rack button it stores the rack and file data


but optionally using Save All from the file menu or Ctrl+Shift+S will do the same thing if you prefer.

That’s it, the pedal presses advance the sequence and play the programmed chords you made. There are 3 versions of the rack. The CodeFN42 Chordz version

Chordz Stepped CC Pedal Deluxe.cantabileRack (707.4 KB)

And 2 versions of the Insert Piz Here midiChords type, one that does 12 steps and one that does 24 steps. The trigger notes on the plugin are on the very far left of the scale (lower keyboard) and are identified as C-2 to C-1 for the 12 step type and C-2 to C0 for the 24 step type. There are 2 types of racks because the midiChords plugin allowed more trigger notes so that’s why the bigger 24 step rack was made for longer sequences of chords. The 24 possible trigger notes are shown here


12 step
midiChords Stepped CC Pedal Deluxe.cantabileRack (691.2 KB)

24 step

midiChords Stepped CC Pedal Deluxe 24step.cantabileRack (1.5 MB)

Special Thanks to Corky for reaching out and helping on designing and testing it to make it a workable solution :smiley:




This is brilliant work. Thank you so much.

Question: how can I configure this rack to use multiple instances at once? I’m using a pedal board with multiple buttons and I’d like to use three of four at a time (one button for verses, one for choruses, etc.)

I’ve tried using separate MIDI channels, as well as reconfiguring the second rack to receive CC65 instead of 64. Keeping the CC25 for note-off/reset sequence can be universal for all rack instances.

Thanks again for your contribution.


Hi Chris,

I’ll take a look at it and get back to you. I never thought of multiples so give me a few to think on it.



1 Like

Hi Chris,

I produced 4 copies of the rack that each use a different CC (64,65,66,67) for triggering and use CC 25 for a universal reset for all racks. I switched the storage model to Entire Banks so you simply open the VST window, program the chords for each step, Close the GUI and do a Save All or Save Song. This is because the chord settings for each song are saved in the Song file and not the rack file.

Chordz Stepped Racks X (74.5 KB)

Let me know if they work out for you…



1 Like

Knowing the internet I never really expected a response, let alone such a quick one. Thank you so much for this. I’ll give it a whirl iun a bit.

1 Like

Following up, these racks are brilliant. 2 issues:

1- the MIDI output from the Chordz plugin is like 4 octaves below the usual range. I can work around this with filters to transpose the notes so not a big deal. Would I need to re-save the states with the modification to make it permamnent?

2- When changing sequences, from CC64 to CC65 for example, the CC64 sequence still rings out under the CC65 sequence. It’s as if it could use a CC25 message at the beginning of each sequence to kill all notes before moving to the next CC sequence.

Either way, this has been a big help. Thanks again.

Hi Chris,

You can fix the transpose on the Chordz plugin. Some of the racks were not set to +5 octaves so they need correction there. Also it should be set to C - Chromatic.

Ah, I didn’t get that sorted, Sorry for that. I will look and see.

Also, I had some thoughts on this and I have been using better designs of late that I can use on this task. It would take all these separate racks and put them in one with an abundance of possible chords and steps. Are you interested in that. I have built a prototype and it works! If you are interested I will have to make a video to show how to set it up.


Bien sûr! I would be very interested!

I had a method of doing this using ReaJS and a Round Robin script I found online but the script had stopped working along the way, I think due to an update to the Rea Plugs. I hadn’t needed it in a while so I hadn’t noticed. This is really getting my juices flowing again.

OK, I will get after it and post later. :smile:

Hi Chris,

I uploaded the video to here.!AoidVqrD-gldlRZ8XocuqRvO31Rg?e=IsOjh2

here is the rest of the package.

midichords Stepped CC 64 (892.6 KB)



Shout out to @Corky, who started all this line of thought up a few years back!


Awesome! I’ll have some fun with this and let you know.

Hey Chris,

I did notice an improvement to make and that was to check the “Also Reset when loading this state” box on your rack States. It saves doing a manual CC25 reset on a state change.



1 Like

Yes I did, and @dave_dore made it work perfectly!

1 Like

Ladies and germs, I thank you for all your hard work. Looking through the example racks you have provided has caused that old light bulb to go off in my brain.

I think I have what I needed. Here you go:

How simple-DOH.cantabileRack (45.2 KB)

I’m using Chordz as I prefer the interface but MIDI Chords works as well.

I’m using the manual entry of note values as in Dave’s last example. I haven’t programmed any of the rack buttons or anything fancy but I will look into it.

Combining several instances of the Chordz plugin within the same rack (I think Dave mentioned this possible solution earlier) allows for all to be reset easily.

It seems so simple now. I have learned a lot. Thanks again.

1 Like

There is another very worthy chord player that is well-maintained and free.
It’s replaced Chordz in my rig:

1 Like

Thanks for the link Neil! :slight_smile:

I’m back! I’m getting into setting up my value mapping to trigger notes and chords for multiple songs. I’m trying to create Rack states per song but the mapped values aren’t saving with each state. A change in one state is reflected in the other. I feel like I’m missing something simple here but can’t see what. Whatever insight anyone can offer would be greatly appreciated.


Hi Chris,

I looked at the rack you posted and there were some State Behavior boxes that weren’t checked. I think if you want to save the mapped values with each Song State you should check the left hand target box for each of the 4 bindings that have target note values mapped in them. e.g

This setting saves the target maps to the song file for each song state.



1 Like

You rock! I knew that there was a checkbox I had missed. Didn’t realize that the settings were so granular as to be particular to a specific binding. I was checking things off at the Group level.

Thanks so much!

1 Like