Convert CC to Start/Stop messages...?

Hi, I am clearly out of my depth with the MidiHub…

I did get my main setup working in a matter of minutes, but some specific operations still elude me.

I’ve got a MidiAnt sending clock to everything and a Roland FC300/VG99 sending data only here and there. Clock goes to: Adrenalinn 3, Boss SY300, Roland RC202, TC Helicon Voicelive 3, an Organelle, eventually ORAC in my Pisound equipped RPi4, and so on…

So far I managed to block the Start/Stop messages where I need to block them completely, but since the Boss SY300 doesn’t use Start/Stop for it’s arp, I was hoping to assign a CC value (say, CC#2) to the arp start/stop control pedal, send that CC#2 to the MidiHub, convert it to MIDI Start/Stop, and send it out to ORAC in the Organelle and/or in the RPi4/Pisound.

So, essentially, is it possible to convert a CC number to a Start/Stop command? And how can you do that? Say, making it Start with a CC#2 value of 127 and Stop with a value of 0…

As for more reasonable usage of this MidiHub, it has already saved me space, cables, and the massive headaches from too many cables and not enough space (I was using a JLC midi rack thing, a blue and a couple of pink MIDI merges…). Thanks for you excellent work!


1 Like

Have you tried Transform pipe?

yeah sure Transform pipe…
The thing I’m having a hard time is addressing each CC2 value isolated, so

1 Like

Although testing the Transform pipe in a great 5 min rush leaves me with an unsuccessful attempt for CC>Start purpose…

Ha ha! Got the message just as I was packing up for practice tonight… and you are absolutely correct… 5 minutes as you’re packing away synths and cables is not enough time for it. Will try this tomorrow morning with a clear head, well, at least once the hangover passes…

1 Like

My thoughts about Tranform pipe I tested for CC>Start:

So you can use Transform pipe to transform CC message to Start message:

  • it captures any CC number with any value, so first you have to filter CCs in pipeline if you want separate CC to convert from and remap values if you want specific value (then create separate pipelines for Start or Stop messages).
  • Start message you then get from Transform pipe is System Realtime message, value=FA (HEX). If your gear receives such message - it starts.

My old Korg Electribe A mkII’s sequencer starts when I turn any encoder, sending any CC, any value through Transform pipe. Midi implementation for AmkII shows:

But my Octatrack’s sequencer doesn’t start because it starts after receiving A#1 (34) note so need another type of message for:

Must be one of those thing “… under my nose…” and I can’t find it…
how to filter CC values from the same CC??

1 Like

Take a look a this new post (not to hijack this one)

1 Like

We have to add a ‘value filter’ pipe (or argument for existing range filters to act on message values (data byte 2) instead of numbers (data byte 1)) to make use cases like this simple to create, so you could filter out messages whose value is not in the required range, and react to things only in the required range.

In the mean time, it’d be possible to use Transform pipe to swap the CC number and CC value, use CC range filter pipe, and afterwards swap it back using Transform again.


Here you go ! this preset only accepts CC2 and further converts it to START / STOP
CC2value0=START CC2value127=STOP.mhp|attachment (181 Bytes)

Thanks for the tips @Giedrius, I start to believe there is always a way to get what you want with MH :wink:


hey - this was a really helpful thread for me. I’m starting to get my head around how midihub works, but the manual just isn’t enough to get through cases like this for a beginner. Even after reading this thread I sorta got there but not quite - i’m really glad you posted this file.


Hello I have the same question but in a little different way.

I want to add a start message on a cc4 127.
With your solution the cc 2 127 become a cc 127 2 at the end right?
If i can’t add a message I have to transform it and use another pipe to let pass the message?

Thank tou

The idea to swap CC Value with CC Number is to make use of the CC Range Filter pipe to do filtering based on the value, while there’s no pipe working with value directly available yet. If necessary, an identical Transform pipe can swap things back into place.

What kind of processing do you want to get done?

1 Like

Yes I understand but I thought in a complicated way.
I just wanted to add a start message on a CH5 CC3.
I just have to use a pipe to let the message pass and another pipe to transform the message.

Is it right?

Yes, you have to first set up the filters so only CC3 on Ch. 5 remains, and then transform it to what you want it to be.

1 Like