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

Making the Right Connections

:clock1: development: 8 testing: 3 play: 6+

Whether you’re building a patch to get the most from your gear in your “studio” or trying to get the smoothest “performance” possible, building a patch is often about evolving ideas and changing direction as you try things out.

We will “signpost” these ‘junctions’ with :left_speech_bubble:thinking aloud :speech_balloon: captions



This is our starting point:


:left_speech_bubble: I’m going to mostly leave the sequencer to do it’s stuff…
…the most I might do is mute a part/ clip every now and then.

I mainly want to add synth Lead notes with controller keyboard…
…maybe holding notes with the controller’s Arp on

I’ll change keyboard channel to switch to Bass when it feels right :speech_balloon:

Remember our set-up:

02Ins&OutsFullxClock
of course you’re writing for your set-up



To start:

In Step by Step 04, we used a Filter to stop any Clock messages getting through from MIDI-B.

:high_brightness: Now: we want to do the same thing in two pipelines:

Add: Filter pipes to stop Clock messages where they’re not needed.

Try it yourself then check:

(see also: we’ve changed the MIDI port names to make things a little clearer)




Now: we need to make sure we get the channels right for each device

SO we want to filter channels instead of events
There are two types of pipe for Filtering channels.

:arrow_lower_right: more on the need to filter channels

:high_brightness: drag these pipes into the correct pipelines:

your patch should look like this:




Let’s’ look at Channel Filter first…

…see how it works like Filter – we click the boxes we want filtered

:high_brightness: Now set the Channel Filter for the AB pipeline channels…
(…allowing only the channels we want to goto B …)

..then check:




Tip: to save lots of clicking you can just:

  • check Channel 10 then click Invert
  • click Enable All then uncheck Channel 10



Channel Range Filter does the same job in a different way

:high_brightness: Now set the Channels for the Avirtual C pipeline.
(…the sound module only wants channels 1-7)

...it should look like this

“only allow 1-7 through”


or
03c_2to3_CHRF_drop

“block 8-16”

:high_brightness: Now let’s set a Channel Filter for the virtual AA pipeline.

...it should look like this

“don’t filter out 1 & 2”

:thought_balloon: you might be thinking…
:arrow_lower_right: why two pipes that both filter channels?



Now we’ve set our channel filters, we’ll do a quick check that they are working

:pushpin: as you go on, you’ll likely form testing routines:

  • keeping a sequence running as you move from pipe to pipe, looking at MIDI Monitor
  • performing the same series of key-presses, or control moves
  • listening to output for sounds that should (and shouldn’t!) be there

don’t forget MIDI Monitor filters !

:high_brightness: check the input and output…

...of the three channel filters:

(we’ve set MIDI Monitor filters to show only Note on events so we can see more of them!)

A.SEQB.DRUM

…only lets Channel 10 through



Virtual AA.SYN

…allows Channels 1 & 2



Virtual CC.SOUND

…No channel above Channel 7 is allowed through!



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

:game_die: if you have sound gear attached to your version…
…have a play to learn how your new connections work!
…try clicking Bypass on various pipes to hear the difference they make




After running the sequences with our set-up…
…and playing lead notes…
…and using the controller’s arp…
…and switching to channel 2 for the some extra bass lines
It feels like something could be improved…


:left_speech_bubble: …All my Bass playing is in a different octave to the Lead notes

Let’s try a split keyboard so I can play both at the same time :speech_balloon:



:arrow_upper_left: more on…

...the need to filter channels...

Remember with old-style mergers and splitters, there was no way to do this.
Fortunately MIDI devices ignore channels they’re not assigned to.

So it’s not always necessary to use channel filters…
…but it can be useful…
…even if, later, you decide to remove some!

:arrow_upper_left: why two types of pipe…

... that both filter channels?

In ‘everyday’ use they do the same thing, so it’s a matter of which you prefer.

The real difference comes when you want to change the pipe with external controls
This is called “mapping”.

:thought_balloon: Look at the properties for Channel Range Filter and Channel Filter:

Imagine what will happen if you have a button…
…that will turn each ‘mappable’ checkbox…

… the Drop in range for Channel Range Filter can be quite powerful and interesting:
flipping the role of the filter turning in on & off

we’ll come back to mappings quite soon…




Our patch so far:


Our initial “wiring” is ready for use with our Setup…

…with the channels we want directed properly.

Often a simple channel routing like this is all we want


Then there are those times when you want Midihub…
… to make more of our gear…
…and performance!

The rest of this activity is about this sort of Midihub customisation

1 Like