Using MIDI from Evolution to switch patterns in Sequences?

This forum is for discussing Rack Extensions. Devs are all welcome to show off their goods.
Post Reply
User avatar
dvdrtldg
Posts: 2386
Joined: 17 Jan 2015

05 Jul 2021

I've got a setup where there's an instance of Evolution playing an instance of Chordline which is playing a piano. Chordline is using three chord sets, each in a different key (C, F and G). Evolution is playing more or less random patterns

You know how Chordline works: white MIDI notes (i.e. white notes on the keyboard) fire off individual chords, while black MIDI notes switch between chord sets. Three black notes on Evolution are activated (C#, D# and F#), meaning that every now & then the chord set changes, which means the piano starts playing in a different key. So, when Evolution hits a C#, the piano plays the chord set in C, when it hits a D# the piano starts playing the F chord set, and when it hits an F# the piano starts playing the G chord set

Elsewhere I have a bass synth being played by Sequences. Sequences has three patterns set up, each corresponding to one of the three keys in Chordline - pattern 1 is in C, pattern 2 is in F, and pattern 3 is in G

What I want to do is to have the bass switch keys automatically whenever Chordline does. Which means that when Evolution hits a C#, it somehow triggers pattern 1 in Sequences. When Evolution hits a D# it triggers pattern 2, and an F# triggers pattern 3. How would you set this up?

User avatar
artotaku
Posts: 652
Joined: 09 May 2015
Location: Munich, Germany
Contact:

05 Jul 2021

dvdrtldg wrote:
05 Jul 2021
I've got a setup where there's an instance of Evolution playing an instance of Chordline which is playing a piano. Chordline is using three chord sets, each in a different key (C, F and G). Evolution is playing more or less random patterns

You know how Chordline works: white MIDI notes (i.e. white notes on the keyboard) fire off individual chords, while black MIDI notes switch between chord sets. Three black notes on Evolution are activated (C#, D# and F#), meaning that every now & then the chord set changes, which means the piano starts playing in a different key. So, when Evolution hits a C#, the piano plays the chord set in C, when it hits a D# the piano starts playing the F chord set, and when it hits an F# the piano starts playing the G chord set

Elsewhere I have a bass synth being played by Sequences. Sequences has three patterns set up, each corresponding to one of the three keys in Chordline - pattern 1 is in C, pattern 2 is in F, and pattern 3 is in G

What I want to do is to have the bass switch keys automatically whenever Chordline does. Which means that when Evolution hits a C#, it somehow triggers pattern 1 in Sequences. When Evolution hits a D# it triggers pattern 2, and an F# triggers pattern 3. How would you set this up?
One way to achieve this might be with one of the player devices from Retouch Control (e. g. https://www.reasonstudios.com/shop/rack ... /tonerows/ or maybe https://www.reasonstudios.com/shop/rack ... ix-player/)

Unfortunately I can´t try it out and test since I already had trialed Tonerows.

My idea is basically:
For each note coming from Evolution you need to filter it so only the black keys (C#, D#, etc) are taken. Each filtered note needs to be transposed to a note that lies inside a range for a certain pattern index (see below). Then, the transposed note needs to be converted to a CV value (with e. g. CVPT). The CV value needs to be send to a combinator CV input. The combinator CV input needs to be mapped to the Sequences pattern select property.
Evolution Player -> Tonerows Player (filter and transpose) -> CVPT player CV output -> Combinator CV input -> Sequences Pattern Select

For the range size to select the pattern index you can calculate:
127 / 8 =~ 15 (if you want to select between pattern 1 to 8)

So ranges are
Note Range: 0 - 15 | 16 - 31 | 32 - 47 | ... (0 is C-2 and 127 is G8)
Pattern Index 1 | 2 | 3 | ...
Example: Evolution D# needs to be transposed to a note between 16 and 31 to select pattern 2.

There might be easier ways to achieve it but this just came to my mind.

User avatar
challism
Moderator
Posts: 4642
Joined: 17 Jan 2015
Location: Fanboy Shill, Boomertown

05 Jul 2021

I wish Robotic Bean would put a pattern selection cv in on the back of Sequences. I think every player that has pattern selection should have a cv input to control it. The only way I can think to do this is to throw it in a Combi and program the pattern selection to be controlled by the Combi's CV in. But this method isn't very practical in the setup that you described. It works best if you have something else triggering the Pattern Selection, such as a Matrix running in CV mode. The reason it doesn't work well with notes triggering the pattern is that it's kind of hard to get something to trigger all the patterns; the range is just way too wide. What you will find is that it takes

A#7 and above to trigger the 8th pattern;
E6 - A7 to trigger the 7th pattern;
A#4 to Eb6 to trigger the 6th pattern;
and so on, all the way down to A-2 (negative octave) to trigger the 1st pattern... and that's nuts. So you will never really be able to trigger all the patterns from Evolution, as far as I can tell.

There could be some kind of tricky workaround that I haven't yet thought of (Maybe Carly will chime in with an answer). What I usually do is use a Matrix, CV8x4 or something routed to a Combi to control pattern selection.
Players are to MIDI what synthesizers are to waveforms.

ReasonTalk Rules and Guidelines

User avatar
tiker01
Moderator
Posts: 1423
Joined: 16 Jan 2015

05 Jul 2021

One could try to add Delta to the chain for some midi note trickery. However, I think it is worth to shoot an email to RB with a feature request.
    
Budapest, Hungary
Reason 11 Suite
Lenovo ThinkPad e520 Win10x64 8GB RAM Intel i5-2520M 2,5-3,2 GHz and AMD 6630M with 1GB of memory.
:rt: :reason: :essentials: :re: :refill: :PUF_balance: :ignition: :PUF_figure:

User avatar
dvdrtldg
Posts: 2386
Joined: 17 Jan 2015

05 Jul 2021

Yeah I sort of feel like Delta might offer a solution - not because I own it or know how it works, it's just that from what I've been reading it seems to do everything you can possibly imagine

ToneRows is an interesting (and cheaper) suggestion - I'll try that out, thanks

NTO
Posts: 10
Joined: 18 May 2021

06 Jul 2021

Delta likely an easier solution! Don't own it yet, so dunno! :lol:
I was interested, for a geeky good time :geek: , so I built a hacked solution. VERY unknowing Reason user - I only use the rack in my main DAWs. Reminded me of something else I did recently, so out comes the hammer! :oops:

I found the problem with switching Sequences w/Tone Rows was a transient signal would not work, Needed to set a CV level state,

Cannot post videos - which I thought was a quick way to describe what I ended up doing;

So here are couple component views.
RR_SwitchNoteFilter.jpg
RR_SwitchNoteFilter.jpg (129.06 KiB) Viewed 1175 times
RR_SwitchSelect&Trap.jpg
RR_SwitchSelect&Trap.jpg (130.54 KiB) Viewed 1175 times
These are the combinator patches used.
6Jul_Reason_CV_Switcher Patches.zip
(7.76 KiB) Downloaded 56 times
Rack view videos on Google Drive - can give by messaging - slows page too much to just put them here... :shock:
Don't mind a heckle - hope I can help on questions.

Good luck!

User avatar
challism
Moderator
Posts: 4642
Joined: 17 Jan 2015
Location: Fanboy Shill, Boomertown

07 Jul 2021

This could definitely be done with Delta, but it's still going to have to run thru the Combi to switch the patterns. Delta wasn't included in the initial post's equation, so I didn't include it as a possible solution. You could use MIDI-CV Converter beneath Evolution to send a duplicate of the notes to Delta. Then you could set Delta up to take those notes and transpose them to different note ranges to trigger the different patterns in Sequences. You would send those transposed notes to Delta's CV out and route that to the Combi's CV-in (only note, not gate).

(I moved this to the Rack Extension forum)
Players are to MIDI what synthesizers are to waveforms.

ReasonTalk Rules and Guidelines

User avatar
artotaku
Posts: 652
Joined: 09 May 2015
Location: Munich, Germany
Contact:

07 Jul 2021

I have another idea since I saw that RB Select CV Switch allows to switch pattern with MIDI notes C3 - C4.
In Scales and Chords Player Key C and scale Major would only allow white key notes, so any incoming sharp note would (possibly) converted to the next white key note, C3, D3, E3, etc. Not 100 % sure if it always converts to next upper note, can´t test it right now.

So the chain would be:
Evolution -> Scales & Chords -> Select CV Switch -> Combinator -> Sequences
If Scale & Chords cannot be attached to Select CV Switch since it is no instrument you could put it in the same combinator as Sequences.

User avatar
artotaku
Posts: 652
Joined: 09 May 2015
Location: Munich, Germany
Contact:

07 Jul 2021

Ok, so I have working solution based on stock players and the free Select CV Switch where you can switch between Pattern 1 to 5 with C#, D#, F#, G#, A#
Reason 11 Song file attached.

Evolution
-> Scale & Chords (used as filter to allow only black keys)
-> Note Echo (transposes black keys one semitone down to have partly white keys)
-> Combinator 1 (contains Select CV Switch that is CV connected to Combinator 2 CV 1 input)
-> Combinator 2 (contains Sequences)

I chose two combinators to avoid latency caused by CV feedback audio buffer setting when Select CV output would feedback to the same Combinator CV in.
Note that Combinator 2 CV input 1 needs to be scaled down to make the CV properly fit the pattern change value.
The CV scale down is actually the crucial trick to compensate that there is no black key between E and F.
Attachments
pattern-select.zip
(128.24 KiB) Downloaded 54 times

User avatar
mjxl
Posts: 600
Joined: 23 Nov 2018

07 Jul 2021

NTO wrote:
06 Jul 2021
"so I built a hacked solution."
No no, this is just the Reason way :P :thumbs_up:

User avatar
dvdrtldg
Posts: 2386
Joined: 17 Jan 2015

07 Jul 2021

Awesome - thanks so much for all this, I'm flogged at work for the next week or so but will test these solutions when I come up for air

Post Reply
  • Information
  • Who is online

    Users browsing this forum: Trendiction [Bot] and 28 guests