PC to CC question

Hello there :slight_smile:

I am wondering if there would be a solution for this :

  • when PC incoming goes down in the numbers (10…9…8…) I want to transform it to CC68 value 9
  • when PC incoming goes up in the numbers (10…11…12…) I want to transform it to CC68 value 8

Thank you for your help!

Sure, use “Work With” arguments of Transform pipe for this:

PgmChg To CC 68.mhp (346 Bytes)

Edit: The Transform pipes can be in series, see below.

Actually you can just place the two Transform pipes in series:


PgmChg To CC 68 in Series.mhp (321 Bytes)


Thanks for your help @Giedrius but that’s not working in my case.

Actually I have a midi keyboard with one button for program change up and one button for program change down. I would like the up button to be transformed to CC68 value 8 and the down button to be transformed to CC68 value 9.

So maybe I should’ve said :

  • when PC incoming goes down in the numbers (127…126…125…2…1…0) I want to transform it to CC68 value 9
  • when PC incoming goes up in the numbers (0…1…2…125…126…127) I want to transform it to CC68 value 8

Hope you can help :slight_smile:

@klutio, so if these buttons are not sending an (absolute) PC number, what are they sending*?

Also seems, to my mind, you’re wanting Midihub to hold some state so that it can be incremented/decremented.
In that case, it needs an initial state. How does get this? (Are you happy, for example, to have it always start on Program10 at the beginning of every session?)

*if it’s not already visible, select View>Midi Monitor

Yes they are sending a PC number but I would like to differentiate when I go up and down, so that my other machine can go up in its presets (working with cc68 value 8) with my up button and down in its presets (working with cc68 value 9) with my down button.

I can’t use program change on this other machine, that doesn’t work for what I want to do.

I hope it’s clear… :slight_smile:

What would be the starting state?
(or, the first time you press Up/Down, what does it send)

it goes up or down from the previous PC state

Reason, I’m asking is this:
I can (possibly!) see a non-standard way of doing this but (probably unlike your controller), Midihub won’t remember the state you left it in. It will always start up with the state you last saved when you had it hooked up to the Editor.
So in order to sketch a way forward, one needs to know a starting Program that you’re comfortable with.

let’s say PC 0 then :slight_smile:

OK, so at this starting point, I’m going to model it so that Down would leave it at 0!
Going to mull over this with a cuppa…

PS. In order to ‘save’ the state (while the Midihub is running) I’m almost certainly going to need a physical loopback. Do you have a spare MIDI in&out (or USB in & out with some sort of patching in your PC/Mac if you’re using it hooked up?)

1 Like

yes i have a spare midi in&out on the midihub !

OK, this is my stab at it.
Klutio_PCshift_CC.mhp (1.2 KB)
This needs a MIDI cable going from D-out to D-in.

I was about to say that it’s basically Giedrius’ idea but with the lower and upper bounds mapped to whatever your last PC was.
Now I look at it, I realise I’ve made it one pipe more convoluted than I need! (Transforming PC>CC before it gets Transformed again)

There are brief Description Notes in the patch.

Give me a shout if:

  1. You can’t figure out some aspect & need some more explanation*.
  2. You need to change any of the created CCs (resetting the Maps is a particular ritual which is why I haven’t bothered making mine more like Giedrius’)
  3. I’ve messed up and it doesn’t work as promised!

` * it is a bit arcane; best way I could think of to set maps after the event!

PS. ‘Pre-Performance’, if you hook up a controller to MIDI D-in, you can send ch16 CC60 in to set your starting Program number, then save the patch and rehook the physical loopback. There are 4 to set by hand.


I have messed up I’m sorry. I need CC69 value8 and CC69 value9 not CC68 argghh.
I’m wondering if input A and output C that you chose have any importance?

Thanks for your time !!

No worries, if you have figured out what’s going on with the pipes, you can go through and change the CC numbers to what you want.

(The only one that is a bit less straight forward is the map control ch16 CC60 cos that needs to be set up physically)

Don’t want to jump in and do it for you cos only you know what CCs and Channels you want to use (and avoid!)
Key bits: Transform:Argument 1 fields, the various Filters and finally the CC Remap:In Low|High

Let me know how you get on. (Or if you don’t!)

No, set to what you want

wow it’s working, thanks a lot !!

1 Like

I had 15 mins before next batch of chores, so I did the proper PC version

Klutio_PCshift_CC_v2.mhp (1.7 KB)

Hey! just as I was typing this I see you’ve got v1 working. Well done, glad it works.
Now you know about the crazy world of Midihub Physical Loopbacks…