New to Midihub: Step-by-Step.05: Bringing it all together & branching out

Adding an Arpeggiator

:clock1: development: 10 testing: 2 play: 6+

:left_speech_bubble: …when I turn the controller’s Arp is ON…
… the bass notes also become part of the Arp pattern :speech_balloon:

So we can’t use the Arp and play Bass at the same time.

How do we work around this?

We have several options:

:left_speech_bubble: I could…
… just NOT play bass when Arp is ON… :speech_balloon:

sometimes we decide to work within the limitations of our gear…


…but otherwise, we’re going to want to use…
… Midihub’s powerful Arpeggiator pipe.

That gives us at least two more options:

:left_speech_bubble: I could…
… make a SECOND keyboard split…
… and make a part of the keyboard “Arpeggiator only” :speech_balloon:

This would be possible – but limited – with 37 keys…
…OK with 49+ keys (depending on your style/project)…
…but probably not that viable with only 25 keys!

This option would also allow some lead notes and a separate arpeggio…


OR

:left_speech_bubble: I could…

… CONTROL the Midihub Arpeggiator
… using the MIDI controller to turn it on and off…
…and maybe more! :speech_balloon:

Depending on what kind of keyboard controller you have, (and how it fits with your playing style), this would give you…

  • …an arpeggiator over the “high” notes when you want it
  • …or just a plain split-keyboard when you don’t!
  • …but not both at the same time


Before we try either option:

Let’s try an Arp into the “high” line somewhere and see how it works!
(we can always move it later)

:high_brightness: First: drag an Arpeggiator pipe into the MIDI-BVirtual H / HIGH line…

..it should look like this:




or this:

(if you want to send a send an arpeggio to just one voice

…and a held chord to the other)

:high_brightness: Now watch the MIDI Monitor as you hold a chord and release it…

...you should find:

it doesn’t work!

Selecting the Arp pipe…


… the MIDI Monitor only shows Note_off events getting through…


… and selecting the OUT pipe after it…

…confirms this


Why?

the answer is in the Context Help panel for Arpeggiator:

“The notes produced are quantized to the tempo, so MIDI Clock messages must reach this pipe for it to be able to do its work.”


and at the moment we have no Clock going to that pipeline!



So we need to get clock messages through to the Arpeggiator…
…no matter how you decide to build your Arp!

We need to provide a clock like this:

:high_brightness: Add a MIDI-AVirtual H / HIGH pipeline…
…and add a filter to only let Clock messages through…

...like this:

Remember, even if your MIDI-A-IN device can’t send Clock messages…
…Midihub can…

...like this:


so you can still get Arpeggiator to work!




Now: let’s join things up!

we need add new pipeline to hold the ARP pipe…
…so it can receive Clock messages to work

Here’s the change we want in a simplified diagram:
SbS05.9_newARPline1
let’s go through the steps…

:high_brightness: create a new pipeline…
…so the Arpeggiator can receive the Clock…
…coming into HIGH

…we want to send the HIGHArpeggiator notes out to a new Virtual pipe…
(…we’ll use Virtual E
…so a new HIGHVirtual E pipeline)

…then we’ll connect Virtual E to Virtual A and Virtual C !

Your changes should look like...

…this:

We’ve made a few changes here:

  • Arpeggiator is now in a new HIGHVirtual E pipeline
  • HIGHVirtual A and Virtual C is now…
    Virtual EVirtual A and Virtual C and …
  • :eye_in_speech_bubble: …did you spot the new Filter pipe?
it is needed because:
  • we need clock messages to make Arpeggiator
  • but we don’t want them to conflict later

06d_2to3_E_temp_arpFiltDetail

See: it’s like our earlier Filter, but Inverted

:high_brightness: Now check the MIDI Monitor again when you hold a chord…

...you might find:

That selecting the Arp pipe itself…

still shows only Note_off when the chord is released

Before you get concerned…

try selecting the Filter pipe after it…

…this shows the Arpeggiated notes just as expected!

:pushpin: some “Clock-reliant” pipes…
…like Arpeggiator, Note Repeater, and Delay
… give unexpected results in MIDI Monitor. It’s a confirmed bug that will get fixed.

When this happens
Monitor the Incoming events at the next pipe…
…to see the real Outgoing events from Arpeggiator or Note Repeater/ Delay


:pushpin: Testing by ear!
It’s very useful to be able to Monitor what events are going through a particular pipe…
…but it’s also important to hear what coming from several outputs.

Sometimes it’s also useful to cut off certain inputs too…
to allow us to concentrate on the input that we’re really focussed on.

Here we’ve stopped everything from A.SEQ

A.SEQ_Bypass_for_Sound

…apart from the Clock for the HIGH pipelines.




We know we’ve still got…
…decisions to make and…
…more to build

But take some time to…

:game_die: play with the patch so far:

  • play some left hand bass while holding right-hand Arp chords
  • use Bypass to listen to combinations of the ‘voices’ on MIDI-A and MIDI-C
  • and explore the Arpeggiator pipe…
    (…if possible with a ‘Mouse Hand’ and a ‘Chord Hand’…)
The ARP pipe has quite a few features:

some are found in many arps:

  • like Time Division and maybe…
  • Note Length and Swing
    …but others are more unusual:
    like maybe Accent and the Chord Type

…and not many arps have:

  • Repetitions and
  • an Octave Range of -7!
    (maybe the arp should be on the bass notes!)

Now Save your patch with a name like 2In3Out_5.mhp

…it will be the starting point for both of the next developments!

1 Like