Can I use PatchboxOS + MODEP to toggle effects with my MIDI pedalboard

Hi. I came across PatchboxOS + MODEP these days and after trying it out and reading through the docs & forums I am not quite sure if it is the right tool for me or if I am doing something wrong.

I have a very simple (and obvious?) use case in that I want to set up a effects pedal board (mainly for guitar) and control the different effects on this board with a MIDI footswitch pedal board: Step on a certain foot switch pedal → toggle a certain effect on the pedal board on and off.
This is what I thought this whole MODEP thing would be about :wink: ?

Now it does not work for me and I don’t know if it is because I misunderstood the use case of PatchboxOS/MODEP or if it is because of my DIY MIDI pedalboard sends wrong commands or I am missing something else.

I do this:

  1. Launch PatchboxOS on Raspberry PI 4,
  2. connect to MODEP Web-UI with a Browser and
  3. Set up some efffects
  4. Click on the gears symbol of the effect I want to toggle
  5. Click on the Sliders Icon next to the ON/OFF switch
  6. Select MIDI
  7. Click Save
  8. Press any Pedal on my physical MIDI pedalboard, this sends a CC, f.e. CC16
  9. The WebUI issues a notification that it has recognized the CC and displays the correct CC nr.
  10. Effect is off now. When I press the footswitch pedal, nothing happens
  11. If I manually enable the effect in the Web-UI and THEN hit the foot pedal, the effect goes off.
  12. I cannot toggle the effect, just turn a manually activated effect off.

Now my questions:

  1. Is this the intended behaviour?
  2. If yes, Can I somehow achieve a simlpe “Stomp on a pedal to toggle an effect on-and-off”?
  3. Could I at least have two different CCs for toggling one effect on and off? I could not find a way to do this either.

The MIDI Footswitch i am using is an old ROLLS-MP80 which I excavated and put a Raspberry Pico inside with some custom C-Code, that just sends CC or PC commands over USB to the host. I would be willing and capable to do some programming either on the Pico side or inside PatchboxOS to hack some sort of bridging / workaround together but if it is not at all intended to work this way then I might be better off searching for other solutions.

Thanks for helping me out on this :slight_smile:

What CC values does your controller send? It should send values between 0-63 for the off state, and values between 64-127 for the on state.

Could you please explain how this works? In the Web-UI I can only assign one CC to the ON/OFF switch. I also tried to add 64 (or 0x40) to the CC that I assigned to, so f.e. I assigned CC 11 to the ON/OFF Switch and tried sending a CC 75 – but no success.

@Johannes_Braun let me see if I can explain a bit further. I built my own MIDI controller so I have firsthand experience with this topic. Each MIDI message has two important parts: the type and the value. So in the case of turning on/off plugin parameters you send a “type” of Control Change (CC) and part of the message contains the “value”. So if you mapped a parameter to MIDI CC 11 then to turn it on you send CC 11 with a value of 127. To turn it off you send CC 11 with a value of 0.

1 Like

Ah, I see, that was the explanation i was missing, thank you! In Guitarix there is the option to set “always toggle” for a CC command, so that it always toggles it’s on/off state regardless of the CC’s value. Is such a feature on the roadmap?

@Johannes_Braun from a strictly MIDI perspective you can’t “get” the current state of the “value” so I don’t think that will be possible. That being said, if you were to write some code to talk to MODEP to determine the state of the parameter that you’re toggling you could potentially indicate in a custom MIDI controller if the parameter is on or off. Then the next sending of the CC could set the value to toggle the parameter on or off as needed.

I’m personally working on expanding the code in my MIDI controller to be aware of MODEP’s current settings. It would technically be possible at some point to make the controller aware of the state of the parameter.