Preset+/Preset-Buttons

It is possible, Will @kastenbalg ; you keep the state in a mapped variable.
It was done here

–which you’ll find at the top of this thread– and several times in the Fluid Transitions patch I detailed recently.

The tricky bit is setting the ‘state’ at the end of the process.

Initialising is an issue insofar as the hub will obviously return to the state the mapped variable was when the patch was saved from Editor. That’s why I asked klutio (the OP in the above link) this

I don’t know how widely used this technique is, but it is useful when the situation demands it, like this one!
That was hard!

1 Like

I know its possible… I just think its too difficult and cumbersome. Complex hack to accomplish simple function. As I said, you have to create a variable to store that value, but even then, you have to make sure it is initialized.

I will not do anything that involves a hardware loopback by plugging the midihub into itself. For me that is a hack too far.

Simpler alternatives include transforming note number, velocity, or CC to program change. Those are all a snap with midihub.

I get that it is not the same, though. Having a button for ‘go to previous/next preset’ is a cool idea for live use.

That’s why effects pedals have this! I have an eventide space (reverb pedal), controllable by midi. I think it has preset- and preset+ built-in. You just assign a midi cc to those functions and tada! This is easy if the hardware already has it. I don’t think any of my synths do. More of a pedal thing.

Eventide’s big pedals have good midi implementations btw. Comprehensive and flexible.

Final thought, maybe use the midihub along with gig performer instead of trying to substitute it?

Yesterday arrived my MIDI Hub! I have used Funkeys Transpose File and changed the input value from MIDI Note on to CC.
I got the following setup now. As Input via USB A I have an iRig Blueboard which send on Button 1 CC 20 and on Button 2 CC 21. The DIN MIDI OUT of the hub is connected with the MIDI IN of my Nord Stage Keyboard. When I press Button 1 the a Program Change is send to the Nord Stage.
So far so good. What is missing is the Preset +/- Functionality. I see this pragmatic. I could live with it if I have to start eveytime on Preset 1. It doesn’t have to be so sophisticated that I want MIDI Hub to know that I am currently on for example Preset 24.


Happy that you’ve now got your little grey box!
Sorry not have picked this up earlier (been immersed in the news insanity in lands East of both of us!)
I’ll have a go at knocking up a patch later.

In the meantime would you hook up, say, your Nord to one of the MIDI/USB ins, and twiddle a few knobs?
I’d like a short list of CCs (eg. ‘USB C Ch16 CC77’ ‘MIDI D Ch15 CC77’ ) I know you can input to set up the mapping. If you can, change the Channel from what you’d usually use
Can explain why but don’t want to get more verbose unless you ask!

The screenshot shows all the CCs of the Nord Stage. I hope this helps.
The thing is that the solution I am looking for should be universal. So when I press the buttons of my Controller and send CC20 and CC21 then not only the Nord Stage should react to this in a preset +/- way, but also other Devices. The Gig Performer Scriptlet does exactly this. You only have to specify the MIDI IN (the controller you are using) and the MIDI out (the device you want to controll) and it just works.

Hang on! first time you mentioned this!

I’m assuming

meant “Transform Ch1.note60 (C3) to Preset+ on Ch1”. etc.
Are you now telling me something else??

PS. Just done version based on this. Will attach if this is OK

PPS. discuss whether chart means Transmit or Receive later!

The chart means both: the Nord Stage can transmit and receive those CCs!
The first example was to use c3 and e3, but my blueboard which I use mainly as my hardware controller sends the CCs 20 and 21. So the task would be to transform CC20 within the hub into Preset+ and CC21 into Preset-.

OK…
So let’s be specific:

  1. CC20->Preset+, CC21 into Preset-. Not notes.
  2. Any channel for CC20/21? always Ch1?
  3. Same Channel for PC? Or always Channel X? If variable, how is Midihub to know which?
  4. Blueboard: What value sent on button down? Any value on button up?

Will wrap this up tomorrow.

Yes, CC 20 Preset+, CC 21 Preset -
I would say always Channel 1 and the same Channel for PC.
The Blueboard sends CC20 on Button up and CC21 on Button down.

Funkeys_Preset±v2.mhp (1.6 KB)
When Testing, I would highly recommend watching the Midi Monitor as you hit 20/21 repeatedly while selecting

  1. B.TARGET to check Program Change. Check at PC0 & PC127 to see what happens.
  2. Filter before B.TARGET to see what goes thro the loop but doesn’t get out. Then
  3. Rescale to see the values there. These create the first mapping (green corner) event
  4. Transpose to note its changes what makes that happen and
  5. the same for the Transform before it. The mapping event for that is created in the pipe.

You could just ‘plug & play’ but the above will help make it make sense:
Leaving aside the (unfortunately necessary) loopback stuff, you’ll start to see what a powerful tool Transform is (took me months to realise just how powerful)!

PS. As the Description Panel says

this version works with Channels 1-15, maintaining channel… …to make it more extendable for other users.

Fixing it to Ch 1 would’ve been slightly easier, but I’d already started before I got your update…

2 Likes

resonotter is really a Master of MIDI Hub. He had a lot of patience with me and finally we got this thing working in my setup. Thank you very much, resonotter!
In my setup I am using an iRig Blueboard as Hardware Controller which sends CCs 20 and 21 to MIDI Hub. Those CCs are transformed in MIDI Hub into a Preset+/- function and then send to my Nord Stage Keyboard. I think resonotter will post his version in Patchstorage. Attached you find the individual version which I use for my specific setup which is based on his version.
Midihub 2022.09.25 16.23.06 (Preset 2).mhp (1.6 KB)

2 Likes