Programmatically change presets without a physical cable

Hi all!

Been using MidiHub to operate a guitar amp/cab selector and the one selected amp.

Each one of the 8 presets handles the specifics of one of the 8 amps, providing an “on the fly” uniformity of the diverse amps controls, ironing out the differences from the MIDI controllers point of view. So far, so good.

As the amp selector has more than 8 presets. I programmed MH to watch for (and transform) the PC changes addressed to the amp selector, such that PC=11,12,13,14 correspond to MH preset 1 ; PC=21,22,23,24 to MH preset 2 ; etc. Fine and dandy BUT…

To get it to work, I send the transformed PC messages to the output #4 and I physically patch that output back into input #4 where I ask the MH to listen for the PC changes. It works fine…

How to get this to work without sacrificing 25% of the ports?

I supposed I could use a Virtual output for that task, but MH cannot listen for preset PCs on a Virtual input (only MIDI and USB inputs). Too bad.

Neither can I figure out a way to use a virtual mapping to trigger a preset change…

Did I miss something? Is there a way to programmatically jump to a different preset?

Looking forward to your input (pun intended)!

Hey, @sdellap, I’m afraid you’re correct; Program Changes trigger preset changes only when received at one of the 8 physical ports.

Sorta makes sense (in that PC changes at virtuals could create havoc when one of the presets happens to route other PCs via that Virtual) so my hunch is that @Blokas will not change this.


One possible solution might be use a host to route (say) USB-D to USB-D. A headless rPi could do this cheaply
At least then USB-D could then be used for other functions as well…



welcome to MH forums, btw.

Hi resonotter.

Thanks for you swift reply… even if I hoped I missed something obvious ;^(

I will give the USB idea a thought, but it comes with drawbacks… argh.

Thanks for the welcome as well!

1 Like

Well… a preset trigger pipe would do the trick.

Or a “preset” output, dedicated to this specific task?

Any chance it could be implemented? Is it worth asking for that?

The user would have to remember to include that pipe in every preset, but go for it.

Or not!

I could envision scenarii where the user might want to stay put in a preset and not change :slight_smile:

Shall I redact a request for enhancement?

1 Like

Yes, I’ll look forward to seeing you spec it out.

envision scenarii where the user might want to stay put

good point; I like the flexibility

Right there: