you are the best @SrMouraSilva. This is the thing I tried to build so many times with onboard plugins but couldn’t get to work. Please consider to add four more switches - or have another version with 8 config sliders each.
If you’d like I could help out with the mod-ui part.
I’m having difficulties for connecting the pedal state with the ui state. I would like to emit an event for the plugin when I press on a knob or a switch (and also, vice-versa). Do you know any source code of a plugin that I can check it use as an example?
If you have some curiosity, there is the current state
Imagine that you have a pedalboard with the following pedals:
Octaver
Distorsion
Fuzz
Amplifier + Cabinet Simulator
Chorus
Delay
Reverb
You decide that you will use it in mainly four scenarios, that can be interchangeable at in any moment of your musics:
Clean: Just Amplifier + Cabinet Simulator on
Modulation: Amplifier + Cabinet Simulator, Chorus, Delay, Reverb on
Distortion: Distorsion, Amplifier + Cabinet Simulator on
Solo: Octaver, Fuzz, Amplifier + Cabinet Simulator, Delay, Reverb on
A way for you do it is creating four snapshots. But it could be an inconvenient if you want to change the values of pedals after create them.
An alternative is using tetr4 switch pedal. You can imagine it as a less powerful alternative to snapshots, that avoid this previous situation .
With it, you have four CVs that you can assign with any of pedal parameters. So the idea is that you assign CVs with the pedalboards bypasses. For instance, I decided to assign as the following way:
CV 1: Distortion bypass
CV 2: Octaver, Fuzz bypasses
CV 3: Chorus bypass
CV 4: Delay, Reverb bypasses
I rename it to make more clear with each one means:
Tetr4 Switch has four presets. At each preset you have four toggles/switches. If I want to make a clean sound when Preset 1 enable, they I will make all switches as off. If I want to make Preset 2 just a distortion, then I will make only the CV that is assigned to Distortion on.
Yes, CV restricts the management of the octaver plugin by Web UI. Is it the problem that you thought?
I’m sorry, but it’s possible to assign notes generated by a plugin to another plugin parameter? I didn’t know that it is possible.
Anyway, I think that isn’t possible to assign more than one parameter for the same MIDI command, I remember that I tried last week, I think. So the assignment for multiple footswitches for the same tetr4 switch parameter probably requires a more complex strategy that send more than one midi message for each for four tetr4 switch possible parameters.
My current update, maybe the last one. I think that I finished the physical part, but I have not tested. I’m having troubles for connecting my device with a computer, apparently the dwarf USB B doesn’t work anymore.
The source code is on my Github if someone would to explore it.
Yep, since you program the 1st switch with Fuzz+Oct you can’t have the Octaver only. Another solution would have to “sacrifice” another switch from your plugin to make it engage the Octaver only… so having 4 switches would become rapidly not enough and it would make sense to have a switch for each plugin + the actual 4 switches for combinaisons.
Yep, you can send the midi to the “virtual loopback” so the ModDevice is listening to the message you generate inside the ModDevice !
I use this a lot so I can engage plugins with my midi controller, or with the dwarf (when I don’t need the MC8 midi-controller), or with the computer of a friend (with midi-bluetouth)
Nope, but you can send multiple midi message with one single footswitch !
And it could be really nice to set some parameters precisely :
switch 1 : delay ON + delay feedback 58 + octaver ON + octaver wet 127
switch 2 : crunch ON + Gain 102 + delay OFF + reverb wet 50
Ok, I think that I understood the problem. For switches per preset just allows fine control of four plugins without aggregate them in a unique switch.
At a similar way, maybe the number of presets could not be sufficient for some musicians.
–
I think that a version that can assign any plugin individually with midi messages is a good idea, but at the moment MIDI is something that I don’t have programming skills. I could offer a extended version of tetra switch with more switches (8 switch with 8 presets?), but my Dwarf pre diagnosis is not good.
I added a select list parameter for this plugin. It is useful if you want assign a device footswitch (B, C or B+C).
You can also use the four paratemeters `Preset [1…4] if you want to assign a specific preset for a footswitch. Actually, you couldn’t yet… the device leds values aren’t showing the current state I’m trying to fix a wrong behavior.
But you can use they as well for assign an external device, like M-VAVE Chocolate. Talking about this controller, as it doesn’t shows any information because it doesn’t has leds related for each parameter, I added a “dummie parameter” just for enable showing notification on device
You can see an example here:
Note: Maybe you have seen this following parameters. Actually they didn’t work. I’m trying to understand how can I use it for customize the message showed on notification.
Now it works. So, if you assign the Preset 1-4 parameters for some of the device footswitches, the led is turned on if the respective patch is in use. The led colour is based on the preset number.
Maybe you prefer to assign the “current preset” parameter. I tried to change the led colour based on the preset, but I noticed that it doesn’t work appropriately when a parameter is a list like that. I opened a issue for mod team (Lv2-hmi.h issues on lv2:portProperty lv2:integer, lv2:enumeration).
I noticed something that makes me sad. Unfortunately the notifications will only appears If the assigned parameter is showing on device led. It is something that I wasn’t expecting.
I also refactored the source code to be easier to make the Hep7a Switch. And yes, the extended version will to be 7 instead of 8 because of the number of colours assignable for the Dwarf LEDs.
it does, we should get back to more developments very soon.
but going forward we only want to have stuff in beta that is 100% confirmed to be pushed into stable eventually, for the final stages of testing.
while a plugin is in development we should find some other way. I have some ideas on how to do it, should happen later in the month.